IP Library Granted Patent US 12,341,856
Granted Patent B2
US 12,341,856 · App. 18/526,017 · Granted Jun 24, 2025

Communication protocols for an online content management system

Inventors: Andrew Bortz (San Francisco, CA); Sang Tian (San Francisco, CA); Joshua Kaplan (San Francisco, CA); Devdatta Akhawe (Berkeley, CA)
Assignee: Dropbox, Inc.
H04L67/141H04L63/08H04L67/02H04L67/1095H04L67/306H04L67/51
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,341,856
App. No.
18/526,017
Granted
Jun 24, 2025
Kind
B2
Abstract

In some embodiments, a client application at a client device can receive, from a browser application at the client device, a first message including a unique identifier associated with a session of the browser application at a website associated with a content management system. The client application can extract the unique identifier from the first message, and establish a connection between the client application and the content management system by sending, from the client application to the content management system, a second message including the unique identifier. The client application can then receive, from the content management system through the connection, a third message relayed by the content management system from the website, where the third message is associated with the unique identifier.

Claims (44)

1. A computer-implemented method comprising:

receiving, by a content management system from a client application on a client device, a unique identifier uniquely identifying a browser application on the client device;

mapping, at the content management system, the browser application with the client application based on the unique identifier; and

in response to receiving a message from the browser application identified by the unique identifier, sending to the client application a response message, based on the mapping, that relays the message to the client application.

2. The computer-implemented method of claim 1 , wherein the message is a portion of the message received by the browser application.

3. The computer-implemented method of claim 1 , wherein a web interface at the content management system communicates with the browser application.

4. The computer-implemented method of claim 1 , wherein in addition to the unique identifier, the message includes metadata identifying a type of information that the client application is expecting or a source or session associated with the message that the client application is expecting.

5. The computer-implemented method of claim 1 further comprising:

receiving a message that includes the unique identifier, wherein the content management system maintains an open communication channel based on the message.

6. The computer-implemented method of claim 1 further comprising:

receiving a message that includes the unique identifier, wherein the message further includes a request for the content management system to relay to the client application any messages which includes a reference to the unique identifier.

7. The computer-implemented method of claim 1 , further comprising:

receiving a second message at a web interface of the content management system; and

forwarding the second message from the content management system to the client application.

8. The computer-implemented method of claim 1 , further comprising:

identifying, by the content management system, a plurality of client devices associated with a user at the content management system; and

determining, based on the unique identifier, a first client device of the plurality of client devices to receive the response message.

9. A system comprising:

one or more processors;

a computer-readable medium; and

computer-readable instructions, stored on the computer-readable medium, that when executed cause the one or more processors to:

receive, by a content management system from a client application on a client device, a unique identifier uniquely identifying a browser application on the client device;

map, at the content management system, the browser application with the client application based on the unique identifier; and

in response to receiving a message from the browser application identified by the unique identifier, sending to the client application a response message, based on the mapping, that relays the message to the client application.

10. The system of claim 9 , wherein the message is a portion of the message received by the browser application.

11. The system of claim 9 , wherein a web interface at the content management system communicates with the browser application.

12. The system of claim 9 , wherein in addition to the unique identifier, the message includes metadata identifying a type of information that the client application is expecting or a source or session associated with the message that the client application is expecting.

13. The system of claim 9 , the computer-readable instructions, when executed, further cause the one or more processors to receive a message that includes the unique identifier, wherein the content management system maintains an open communication channel based on the message.

14. The system of claim 9 , the computer-readable instructions, when executed, further cause the one or more processors to receive the message that includes the unique identifier, wherein the message further includes a request for the content management system to relay to the client application any messages which includes a reference to the unique identifier.

15. The system of claim 9 , the computer-readable instructions, when executed, further cause the one or more processors to receive a second message at a web interface of the content management system; and

forward the second message from the content management system to the client application.

16. The system of claim 9 , the computer-readable instructions, when executed, further cause the one or more processors to identify, by the content management system, a plurality of client devices associated with a user at the content management system; and

determine, based on the unique identifier, a first client device of the plurality of client devices to receive the response message.

17. A non-transitory computer-readable storage medium having stored therein instructions which, when executed by one or more processors, cause the one or more processors to:

receive, by a content management system from a client application on a client device, a unique identifier uniquely identifying a browser application on the client device;

map, at the content management system, the browser application with the client application based on the unique identifier; and

in response to receiving a message from the browser application identified by the unique identifier, sending to the client application a response message, based on the mapping, that relays the message to the client application.

18. The non-transitory computer-readable storage medium of claim 17 , wherein further instructions which, when executed by the one or more processors, cause the one or more processors to:

receive a message that includes the unique identifier, wherein the content management system maintains an open communication channel based on the message.

19. The non-transitory computer-readable storage medium of claim 17 , wherein further instructions which, when executed by the one or more processors, cause the one or more processors to:

receiving a message that includes the unique identifier, wherein the message further includes a request for the content management system to relay to the client application any messages which includes a reference to the unique identifier.

20. The non-transitory computer-readable storage medium of claim 17 , wherein further instructions which, when executed by the one or more processors, cause the one or more processors to:

identify, by the content management system, a plurality of client devices associated with a user at the content management system; and

determine, based on the unique identifier, a first client device of the plurality of client devices to receive the response message.

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 Dec 1, 2023
From: BORTZ, ANDREW; TIAN, SANG; KAPLAN, JOSHUA; AKHAWE, DEVDATTA
To: DROPBOX, INC.
Reel/Frame 065730/0505 →