Synchronizing communications and data between mobile devices and servers
First Claim
1. A method for synchronizing a data object between a mobile device and a server, the method comprising:
- (a) determining whether there is a data object to be synchronized from said mobile device to said server;
(b) indicating to said server that there is a data object to be synchronized if it is determined in step (a) there is a data object to be synchronized from said mobile device;
(c) saving the data object to be synchronized in a request cache, wherein said request cache is accessible from said server, and wherein the request cache includes at least a unique record identifier identifying the data object;
(d) queuing the synchronization of said data object if it is determined that said mobile device is offline;
(e) repeating step (d) until it is determined that said mobile device is online; and
(f) receiving synchronization results at said mobile device after said data object has been synchronized on said server, wherein the synchronization results include at least a synchronization status and a unique record identifier identifying the data object.
1 Assignment
0 Petitions
Accused Products
Abstract
A system, method, and computer program product for synchronizing communications, data, application workflow events, and business processes between a mobile device and a server are described herein. In an embodiment, the method operates by determining whether there is a data object to be synchronized between a source and a target, wherein the source and target are one of either a mobile device or a server. An indication is sent to the target when there is a data object to be synchronized from the source. The data object to be synchronized is saved in a cache on the source and it is determined whether the mobile device is connected to the server. The synchronization operation is queued for the target until it is determined that the mobile device is connected to the server, and results are returned to the source after the data object is synchronized on the target.
-
Citations
22 Claims
-
1. A method for synchronizing a data object between a mobile device and a server, the method comprising:
-
(a) determining whether there is a data object to be synchronized from said mobile device to said server; (b) indicating to said server that there is a data object to be synchronized if it is determined in step (a) there is a data object to be synchronized from said mobile device; (c) saving the data object to be synchronized in a request cache, wherein said request cache is accessible from said server, and wherein the request cache includes at least a unique record identifier identifying the data object; (d) queuing the synchronization of said data object if it is determined that said mobile device is offline; (e) repeating step (d) until it is determined that said mobile device is online; and (f) receiving synchronization results at said mobile device after said data object has been synchronized on said server, wherein the synchronization results include at least a synchronization status and a unique record identifier identifying the data object. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A method for synchronizing a data object between a server and a mobile device, the method comprising:
-
(a) determining whether there is a data object to be synchronized from said server to said mobile device; (b) indicating to said mobile device that there is a data object to be synchronized if it is determined in step (a) there is a data object to be synchronized from said server; (c) saving information identifying the data object to be synchronized in a request cache, wherein said request cache is accessible from said mobile device, and wherein the request cache includes at least a unique record identifier identifying said data object; (d) queuing synchronization of said data object for said mobile device if it is determined that said mobile device is offline; (e) repeating step (d) until it is determined that said mobile device is online; and (f) receiving synchronization results at said server after said data object has been synchronized on said mobile device, wherein the synchronization results include at least a synchronization status and a unique record identifier identifying the data object.
-
-
19. A computer program product comprising a computer usable medium having computer program logic recorded thereon for enabling a processor to synchronize communications from a plurality of mobile devices to a plurality of servers, the computer program logic comprising:
-
listening means for enabling a processor to determine whether there is a data object to be synchronized from one of the plurality of mobile devices to one of the plurality of servers; flagging means for enabling a processor to indicate to said one of the plurality of servers that there is a data object to be synchronized if the listening means determines that there is a data object to be synchronized from said one of the plurality of mobile devices; caching means for enabling a processor to save the data object to be synchronized in a request cache, wherein the request cache is accessible from said one of the plurality of servers, wherein the request cache includes at least a unique record identifier identifying said data object; determining means for enabling a processor to determine whether said one of the plurality of mobile devices is offline; queuing means for enabling a processor to queue the synchronization of said data object for said one of the plurality of servers if the determining means determines that said one of the plurality of mobile devices is offline; and receiving means for enabling a processor to receive synchronization results at said one of the plurality of mobile devices after said data object has been synchronized on said one of the plurality of servers, wherein the synchronization results include at least a synchronization status and a unique record identifier identifying the data object.
-
-
20. A computer program product comprising a computer usable medium having computer program logic recorded thereon for enabling a processor to synchronize communications from a plurality of servers to a plurality of mobile devices, the computer program logic comprising:
-
listening means for enabling a processor to determine whether there is a data object to be synchronized from one of the plurality of servers to one of the plurality of mobile devices; flagging means for enabling a processor to indicate to said one of the plurality of mobile devices that there is a data object to be synchronized if the listening means determines that there is a data object to be synchronized from said one of the plurality of servers; caching means for enabling a processor to save the data object to be synchronized in a request cache, wherein the request cache is accessible from said one of the plurality of mobile devices, and wherein the request cache includes at least a unique record identifier identifying said data object; determining means for enabling a processor to determine whether said one of the plurality of mobile devices is offline; queuing means for enabling a processor to queue the synchronization of said data object for said one of the plurality of mobile devices if the determining means determines that said one of the plurality of mobile devices is offline; and receiving means for enabling a processor to receive synchronization results at said one of the plurality of servers after said data object has been synchronized on said one of the plurality of mobile devices, wherein the synchronization results include at least a synchronization status and a unique record identifier identifying the data object.
-
-
21. A system capable of synchronizing data objects between a mobile device and a server, the system comprising:
-
a listening module configured to determine whether there is a data object to be synchronized from said mobile device to said server; a flagging module configured to indicate to said server that there is a data object to be synchronized if the listening module determines that there is a data object to be synchronized from said mobile device; a caching module configured to save the data object to be synchronized in a request cache on said server, wherein the request cache includes at least a unique record identifier identifying said data object; a determining module configured to determine whether said mobile device is offline; a queuing module configured to queue the synchronization of said data object for said server if the determining module determines that said one of the plurality of mobile devices is offline; and a receiving module configured to receive synchronization results at said mobile device after said data object has been synchronized on said server, wherein the synchronization results include at least a synchronization status and a unique record identifier identifying the data object.
-
-
22. A system capable of synchronizing data objects between a server and a mobile device, the system comprising:
-
a listening module configured to determine whether there is a data object to be synchronized from said server to said mobile device; a flagging module configured to indicate to said server that there is a data object to be synchronized if the listening module determines that there is a data object to be synchronized from said mobile device; a caching module configured to save the data object to be synchronized in a request cache on said server, wherein the request cache includes at least a unique record identifier identifying said data object; a determining module configured to determine whether said mobile device is offline; a queuing module configured to queue the synchronization of said data object for said server if the determining module determines that said one of the plurality of mobile devices is offline; and a receiving module configured to receive synchronization results at said server after said data object has been synchronized on said mobile device, wherein the synchronization results include at least a synchronization status and a unique record identifier identifying the data object.
-
Specification