IP Library Granted Patent US 12,596,687
Granted Patent B2
US 12,596,687 · App. 17/751,579 · Granted Apr 7, 2026

Prioritizing content item synchronization based on sharing

Inventor: Dwayne Litzenberger (San Francisco, CA)
Assignee: Dropbox, Inc.
G06F16/178
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,596,687
App. No.
17/751,579
Granted
Apr 7, 2026
Kind
B2
Abstract

Content items queued for synchronization between a client device and a content management system can be automatically prioritized to improve the sharing process. That is, the content items can be prioritized based on whether a share link has been created to the content item. A share link can enable a user to access the shared content item from a content management system. Content items that have been shared using a share link can be given higher priority to be synchronized prior to content items that have not been shared. The queued content items can be synchronized in the synchronization order resulting from the prioritization. Further, multiple shared content items queued for synchronization can be sub-prioritized based on one or more sub-prioritization criteria.

Claims (80)

1 . A method comprising:

identifying, by a client device, a plurality of content items queued for synchronization with a content management system, the plurality of content items queued for synchronization according to a first synchronization order, the first synchronization order based on a share status of the plurality of content items, wherein the share status indicates that a share link to a content item in the plurality of content items has been requested;

synchronizing the plurality of content items, with the content management system, based on the first synchronization order;

pausing the synchronization of the plurality of content items, prior to completion of the synchronization based on the first synchronization order;

determining, by the client device, a second synchronization order based on metadata associated with the plurality of content items, wherein the metadata identifies a source, when a content item was shared, a size, a current location, or a data type; and

resuming, by the client device, synchronization of the plurality of content items with the content management system based on the second synchronization order.

2 . The method of claim 1 , further comprising:

after uploading a subset of the plurality of content items based on the second synchronization order, uploading a remaining portion of the plurality of content items based on the first synchronization order.

3 . The method of claim 1 , further comprising:

identifying a subset of the plurality of content items having the metadata identify the share status;

applying the second synchronization order to the subset of the plurality of content items having the metadata identify the share status based on a first content item in the subset of the plurality of content items having a first share status indicating that a share link to the first content item has been requested by the client device and at least one second content item in the subset having a second share status indicating that a share link to the at least one second content item has been requested by the content management system; and

prioritizing synchronization of the subset by the second synchronization order.

4 . The method of claim 3 , further comprising:

indicating, via the first share status, that the share link to the first content item was shared with a user account associated with the client device;

indicating, via the second share status, that the share link to the at least one second content item was shared with the user account associated with the client device; and

synchronizing the first content item and the at least one second content item with the content management system according to the second synchronization order.

5 . The method of claim 1 , further comprising:

after determining the second synchronization order, canceling the synchronization of the plurality of content items based on the first synchronization order.

6 . The method of claim 1 , further comprising:

identifying an additional content item added to a queue for synchronization while the client device is synchronizing the plurality of content items according to the second synchronization order;

gathering additional metadata associated with the additional content item;

pausing the synchronization of the plurality of content items based on the second synchronization order;

determining a third synchronization order based on the additional metadata wherein the additional metadata identifies an additional source, additional share status, additional size, additional location, or additional data type; and

uploading the plurality of content items based on the third synchronization order.

7 . The method of claim 1 , further comprising:

determining a fourth synchronization order using the metadata that is different from the metadata used to determine the second synchronization order; and

uploading the plurality of content items according to the fourth synchronization order.

8 . A computing device comprising:

one or more processors; and

a memory containing instructions that, when executed, cause the one or more processors to:

identify, by a client device, a plurality of content items queued for synchronization with a content management system, the plurality of content items queued for synchronization according to a first synchronization order, the first synchronization order based on a share status of the plurality of content items, wherein the share status indicates that a share link to a content item in the plurality of content items has been requested;

synchronize the plurality of content items, with the content management system, based on the first synchronization order;

pause the synchronization of the plurality of content items, prior to completion of the synchronization based on the first synchronization order;

determine, by the client device, a second synchronization order based on metadata associated with the plurality of content items, wherein the metadata identifies a source, share status, size, location, or data type; and

resume, by the client device, synchronization of the plurality of content items with the content management system based on the second synchronization order.

9 . The computing device of claim 8 , wherein the instructions that, when executed, further cause the one or more processors to:

after uploading a subset of the plurality of content items based on the second synchronization order, upload a remaining portion of the plurality of content items based on the first synchronization order.

10 . The computing device of claim 8 , wherein the instructions that, when executed, further cause the one or more processors to:

identifying a subset of the plurality of content items having the metadata identify the share status;

applying the second synchronization order to the subset of the plurality of content items having the metadata identify the share status based on a first content item in the subset of the plurality of content items having a first share status indicating that a share link to the first content item has been requested by the client device and at least one second content item in the subset having a second share status indicating that a share link to the at least one second content item has been requested by the content management system; and

prioritizing synchronization of the subset by the second synchronization order.

11 . The computing device of claim 10 , wherein the instructions that, when executed, further cause the one or more processors to:

indicate, via the first share status, that the share link to the first content item was shared with a user account associated with the client device;

indicate, via the second share status, that the share link to the at least one second content item was shared with the user account associated with the client device; and

synchronize the first content item and the at least one second content item with the content management system according to the second synchronization order.

12 . The computing device of claim 8 , wherein the instructions that, when executed, further cause the one or more processors to:

after determining the second synchronization order, cancel the synchronization of the plurality of content items based on the first synchronization order.

13 . The computing device of claim 8 , wherein the instructions that, when executed, further cause the one or more processors to:

identify an additional content item added to a queue for synchronization while the client device is synchronizing the plurality of content items according to the second synchronization order;

gather additional metadata associated with the additional content item;

pausing the synchronization of the plurality of content items based on the second synchronization order;

determine a third synchronization order based on the additional metadata wherein the additional metadata identifies an additional source, additional share status, additional size, additional location, or additional data type; and

upload the plurality of content items based on the third synchronization order.

14 . The computing device of claim 8 , wherein the instructions that, when executed, further cause the one or more processors to:

determine a fourth synchronization order using the metadata that is different from the metadata used to determine the second synchronization order; and

upload the plurality of content items according to the fourth synchronization order.

15 . A non-transitory computer-readable medium containing instructions that, when executed by a computing device, cause the computing device to:

identify, by a client device, a plurality of content items queued for synchronization with a content management system, the plurality of content items queued for synchronization according to a first synchronization order, the first synchronization order based on a share status of the plurality of content items, wherein the share status indicates that a share link to a content item in the plurality of content items has been requested;

synchronize the plurality of content items, with the content management system, based on the first synchronization order;

pause the synchronization of the plurality of content items, prior to completion of the synchronization based on the first synchronization order;

determine, by the client device, a second synchronization order based on metadata associated with the plurality of content items, wherein the metadata identifies a source, share status, size, location, or data type; and

resume, by the client device, synchronization of the plurality of content items with the content management system based on the second synchronization order.

16 . The non-transitory computer-readable medium of claim 15 , wherein the instructions further cause the computing device to:

after uploading a subset of the plurality of content items based on the second synchronization order, upload a remaining portion of the plurality of content items based on the first synchronization order.

17 . The non-transitory computer-readable medium of claim 15 , wherein the instructions further cause the computing device to:

identify a subset of the plurality of content items having the metadata identify the share status;

apply the second synchronization order to the subset of the plurality of content items having the metadata identify the share status based on a first content item in the subset of the plurality of content items having a first share status indicating that a share link to the first content item has been requested by the client device and at least one second content item in the subset having a second share status indicating that a share link to the at least one second content item has been requested by the content management system; and

prioritize synchronization of the subset by the second synchronization order.

18 . The non-transitory computer-readable medium of claim 17 , wherein the instructions further cause the computing device to:

indicate via the first share status, that the share link to the first content item was shared with a user account associated with the client device;

indicate, via the second share status, that the share link to the at least one second content item was shared with the user account associated with the client device; and

synchronize the first content item and the at least one second content item with the content management system according to the second synchronization order.

19 . The non-transitory computer-readable medium of claim 15 , wherein the instructions further cause the computing device to:

after determining the second synchronization order, cancel the synchronization of the plurality of content items based on the first synchronization order.

20 . The non-transitory computer-readable medium of claim 15 , wherein the instructions further cause the computing device to:

identifying an additional content item added to a queue for synchronization while the client device is synchronizing the plurality of content items according to the second synchronization order;

gathering additional metadata associated with the additional content item;

pausing the synchronization of the plurality of content items based on the second synchronization order;

determining a third synchronization order based on the additional metadata, wherein the additional metadata identifies an additional source, additional share status, additional size, additional location, or additional data type; and

uploading the plurality of content items based on the third synchronization order.

Assignments (2)
SECURITY INTEREST Recorded Dec 12, 2024
From: DROPBOX, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069604/0611 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2022
From: LITZENBERGER, DWAYNE
To: DROPBOX, INC.
Reel/Frame 059992/0859 →
Continuity (3)
Continuation 15977340 · May 11, 2018
Continuation 13950679 · Jul 25, 2013
Related Publication 20220283992A1 · Sep 8, 2022
References Cited (40)
US 6466980B1 · Lumelsky et al. · 2002 [cited by applicant]
US 8255545B1 · Schmidt et al. · 2012 [cited by applicant]
US 8527602B1 · Rasmussen et al. · 2013 [cited by applicant]
US 20050114538A1 · Rose et al. · 2005 [cited by applicant]
US 20050147130A1 · Hurwitz · 2005 [cited by examiner]
US 20060074750A1 · Clark · 2006 [cited by examiner]
US 20070174246A1 · Sigurdsson et al. · 2007 [cited by applicant]
US 20070209005A1 · Shaver et al. · 2007 [cited by applicant]
US 20080005114A1 · Li · 2008 [cited by applicant]
US 20080040673A1 · Zuckerberg et al. · 2008 [cited by applicant]
US 20080049714A1 · Commarford · 2008 [cited by examiner]
US 20080168526A1 · Robbin et al. · 2008 [cited by applicant]
US 20090300169A1 · Sagar et al. · 2009 [cited by applicant]
US 20100174805A1 · Jones et al. · 2010 [cited by applicant]
US 20140067929A1 · Kirigin et al. · 2014 [cited by applicant]
US 20140067997A1 · Saabas et al. · 2014 [cited by applicant]
US 20140101434A1 · Senthurpandi · 2014 [cited by examiner]
US 20140215020A1 · Baset · 2014 [cited by examiner]
JP 2009524889A · 2009 [cited by applicant]
JP 2009230369A · 2009 [cited by applicant]
JP 2012510094A · 2012 [cited by applicant]
JP 2013050847A · 2013 [cited by applicant]
JP 2013178640A · 2013 [cited by applicant]
WO 2010048324A1 · 2010 [cited by applicant]
WO 2012158654A2 · 2012 [cited by applicant]
WO 2012177253A1 · 2012 [cited by applicant]
Advisory Action from U.S. Appl. No. 15/977,340, mailed Dec. 1, 2021, 3 pages. [cited by applicant]
Bartel M.A.J., et al., “World Intellectual Property Organization,” Dec. 27, 2012, pp. 1-19. [cited by applicant]
Brew S., “Top 10 Tips to Get the Most Out of Dropbox,” ITPRO, Mar. 2, 2012, retrieved from http://www.itpro.co.uk/639331/top-10-tips-to-get-the-most-out-of-dropbox/page/0/_1 on Sep. 18, 2014, 1 page. [cited by applicant]
Communication Pursuant to Article 94(3) EPC for European Application No. 14747441.5 mailed on Dec. 4, 2019, 7 pages. [cited by applicant]
Decision to refuse European Patent Application No. 14747441.5 mailed on Feb. 28, 2022, 12 pages. [cited by applicant]
European Summons to Attend Oral Proceedings Pursuant to Rule 115(1) EPC for EP Application No. 14747441.5 dated May 3, 2021, 10 pages. [cited by applicant]
Final Office Action from U.S. Appl. No. 15/977,340, mailed Aug. 20, 2021, 20 pages. [cited by applicant]
Final Office Action from U.S. Appl. No. 15/977,340, mailed Jul. 20, 2020, 21 pages. [cited by applicant]
International Search Report and Written Opinion for PCT Application No. PCT/US2014/045360 dated Sep. 30, 2014, 12 pages. [cited by applicant]
Microsoft, “Introduction to Sync Framework Database Synchronization,” Jul. 4, 2013, XP002729916, Retrieved from the Internet: URL: https://web.archive.org/web/20130704012626/http://msdn.microsoft.com/en-us/sync/bb887608… [cited by applicant]
Non-Final Office Action from U.S. Appl. No. 15/977,340, mailed Apr. 8, 2020, 18 pages. [cited by applicant]
Non-Final Office Action from U.S. Appl. No. 15/977,340, mailed May 10, 2021, 19 pages. [cited by applicant]
Notice of Allowance from U.S. Appl. No. 15/977,340, mailed Feb. 15, 2022, 18 pages. [cited by applicant]
Superuser.com, “Bittorrent prioritize torrents for uploading,” Apr. 24, 2012, XP002729918, Retrieved from the Internet: URL: http://superuser.com/questions/416112/bittorrent-prioritize-torrents-for-uploading on Sep. 18,… [cited by applicant]