SYNCHRONIZED COLLABORATIVE USER INTERFACE
First Claim
1. A computer-implemented method for synchronizing collaborative user interfaces, the method performed at a network server and comprising:
- maintaining a master dictionary at a network server representing a state of a shared workspace;
receiving, from an originating client device, an update message indicating a change made by the client device to a local dictionary that is synchronized with the master dictionary;
updating the master dictionary based on data received in the update message from the client device;
sending a confirmation message to the originating client device indicating that the change has been made to the master dictionary; and
propagating the change to one or more peer devices of the originating device.
2 Assignments
0 Petitions
Accused Products
Abstract
A cloud based collaborative work environment enables users to work collaboratively within a shared workspace. An application server on a host device is accessible to client devices via a communication network and maintains the shared workspace for collaboration between users. Client applications hosted on client devices enable users of the workspace to access and make changes in the shared workspace, such as adding or deleting items to or from the workspace, editing or annotating existing items, viewing items in the workspace, or downloading items in the workspace. Local copies of the shared workspace are maintained by the client devices and are synchronized with the shared workspace maintained by the application server so that any changes made to by a user to its local copy of the shared workspace are propagated to other users. Thus, synchronization is maintained between master workspace and the local workspaces on the client devices.
15 Citations
4 Claims
-
1. A computer-implemented method for synchronizing collaborative user interfaces, the method performed at a network server and comprising:
-
maintaining a master dictionary at a network server representing a state of a shared workspace; receiving, from an originating client device, an update message indicating a change made by the client device to a local dictionary that is synchronized with the master dictionary; updating the master dictionary based on data received in the update message from the client device; sending a confirmation message to the originating client device indicating that the change has been made to the master dictionary; and propagating the change to one or more peer devices of the originating device.
-
-
2. A network-based computing device comprising:
-
a memory circuit configured to store a master dictionary that comprises information representing a state of a shared workspace; a communications interface configured to receive, from an originating client device, an update message indicating a change made by the client device to a local dictionary that is synchronized with the master dictionary; and a processing circuit configured to; update the master dictionary based on data received in the update message from the client device; send a confirmation message to the originating client device, wherein the confirmation message indicates that the change has been made to the master dictionary; and propagate the change in an update message to one or more peer devices of the originating device.
-
-
3. A computer-implemented method for synchronizing collaborative user interfaces, the method performed at a client device and comprising:
-
applying a first update to a local dictionary, wherein the local dictionary represents a state of a shared workspace and is synchronized with a master dictionary at a network-based server; sending an update message including the first update to the server; storing the first update in an undo registry at the client device; waiting for a confirmation message from the server; and undoing the first update if; no confirmation message is received from the server after a predetermined period of time;
ora second update is received from the server before the confirmation message for the first update is received.
-
-
4. A client device comprising:
-
a memory circuit configured to store a local dictionary, wherein the local dictionary represents a state of a shared workspace and is synchronized with a master dictionary at a network-based server; a communications interface configured to communicate with the network-based server; and a processing circuit configured to; apply a first update to the local dictionary; send an update message including the first update to the server; store the first update in an undo registry; wait to receive a confirmation message from the server; and undo the first update if; no confirmation message is received from the server after a predetermined period of time;
ora second update is received from the server before the confirmation message for the first update is received.
-
Specification