Technique for synchronizing data with a mobile device based on a synchronization context
First Claim
1. A method for a mobile device to synchronize data comprising:
- permitting users via a graphical user interface to define a plurality of different custom contexts independent of a plurality of applications of the mobile device, wherein each custom context is able to be evaluated by a context engine of the mobile device as being true or false, wherein each custom context permits a user to establish via the graphical user interface a plurality of different dynamic conditions of the mobile device and user configurable thresholds for the dynamic conditions;
associating via the graphical user interface each custom context with a user selected synchronization action, wherein the synchronization actions apply to any of the plurality of applications of the mobile device;
a resource monitor continuously monitoring values of the dynamic conditions of the mobile device;
a context engine running on the mobile device continuously evaluating the custom contexts utilizing the values of the dynamic conditions provided by the resource monitor;
whenever any custom context evaluates as TRUE, the mobile device triggering the associated set of synchronization actions, wherein at least one of the set of synchronization actions are application-specific actions to be taken by a specific one of the plurality of applications executing upon the mobile device, wherein application specific synchronization rules are overridden by those established by the custom contexts and associated with synchronization actions; and
wherein the context engine, a synchronization engine, and the resource monitor are computer program products that are stored in a tangible medium executing on hardware of the mobile device and that are implemented independent of any of the plurality of applications of the mobile device.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention discloses a technique for a user to control a manner in which a data store of a mobile device synchronizes with a remotely located data store. More specifically, synchronization actions can be automatically executed by comparing combinations of user modifiable device settings against device-specific conditions. Device conditions can include device resources, timing parameters, and user-defined criteria, such as data priority, device location, and application-specific conditions. In one embodiment, the invention provides a means to override an application'"'"'s existing synchronization rules. This permits synchronization for a device that includes multiple applications to be centrally and consistently handled, even when the applications normally lack synchronization control capabilities.
36 Citations
19 Claims
-
1. A method for a mobile device to synchronize data comprising:
-
permitting users via a graphical user interface to define a plurality of different custom contexts independent of a plurality of applications of the mobile device, wherein each custom context is able to be evaluated by a context engine of the mobile device as being true or false, wherein each custom context permits a user to establish via the graphical user interface a plurality of different dynamic conditions of the mobile device and user configurable thresholds for the dynamic conditions; associating via the graphical user interface each custom context with a user selected synchronization action, wherein the synchronization actions apply to any of the plurality of applications of the mobile device; a resource monitor continuously monitoring values of the dynamic conditions of the mobile device; a context engine running on the mobile device continuously evaluating the custom contexts utilizing the values of the dynamic conditions provided by the resource monitor; whenever any custom context evaluates as TRUE, the mobile device triggering the associated set of synchronization actions, wherein at least one of the set of synchronization actions are application-specific actions to be taken by a specific one of the plurality of applications executing upon the mobile device, wherein application specific synchronization rules are overridden by those established by the custom contexts and associated with synchronization actions; and wherein the context engine, a synchronization engine, and the resource monitor are computer program products that are stored in a tangible medium executing on hardware of the mobile device and that are implemented independent of any of the plurality of applications of the mobile device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A mobile device comprising:
-
a data store; a user interface configured to permit a user to establish a plurality of different contexts independent of a plurality of applications on the mobile device, each context is able to be evaluated by a context engine of the mobile device as being true or false, wherein each context permits a user to establish via the user interface a plurality of different dynamic conditions of the mobile device and user configurable thresholds for the dynamic conditions, wherein the user interface permits a user to associate each custom context with a user selected synchronization action, wherein the synchronization actions apply to any of the plurality of applications of the mobile device, wherein at least a portion of the dynamic conditions established for the custom contexts comprise application specific conditions and application independent resource consumption conditions of mobile device resources, wherein said application specific conditions are usage conditions specific to different ones of a plurality of application of the mobile device, wherein said application independent resource consumption conditions indicate a state of a physical component of the mobile device or a physical location of the mobile device; a resource monitor configured to continuously monitor values of the dynamic conditions of the mobile device; a condition engine configured to intercept an attempted application-specific synchronization actions fired by at least one of the plurality of applications executing upon the mobile device; a context engine running on the mobile device configured to continuously evaluate the context utilizing the values of the dynamic conditions provided by the resource monitor, wherein the attempted application-specific synchronization action is considered as one of the dynamic conditions; and a synchronization engine configured to automatically and selectively synchronize the mobile device responsive to results of the comparisons between the condition values and synchronization settings, wherein whenever any context evaluates as TRUE, the synchronization engine triggers the associated set of synchronization actions, wherein the context engine, the synchronization engine, the condition engine and the resource monitor are implemented independent of any of the plurality of applications of the mobile device. - View Dependent Claims (14, 15, 16, 17)
-
-
18. A computer program product for a mobile device to synchronize data the computer program product comprising:
-
a non-transitory computer usable storage having computer usable program code embodied therewith, the computer usable program code comprising; computer usable program code operable to permit users via a graphical user interface to define a plurality of different custom contexts independent of a plurality of application on the mobile device, wherein each custom context is able to be evaluated by a context engine of the mobile device as being true or false, wherein each custom context permits a user to establish via the graphical user interface a plurality of different dynamic conditions of the mobile device and user configurable thresholds for the dynamic conditions, wherein at least a portion of the dynamic conditions established for the custom contexts comprise application specific conditions and application independent resource consumption conditions of mobile device resources, wherein said application specific conditions are usage conditions specific to different ones of the plurality of application of the mobile device, wherein said application independent resource consumption conditions indicate a state of a physical component of the mobile device or a physical location of the mobile device; computer usable program code operable to associate via the graphical user interface each custom context with a user selected synchronization action, wherein the synchronization actions apply to any of a plurality of applications of the mobile device, wherein the graphical user interface permits the user to associate, with at least one custom context, only a portion of synchronization actions performed by any one of the plurality of applications of the mobile device; computer usable program code operable to, via a resource monitor, continuously monitor values of the dynamic conditions the mobile device; computer usable program code operable to, via a context engine running on the mobile device, continuously evaluate the custom context utilizing the values of the dynamic conditions provided by the resource monitor; computer usable program code operable to whenever any custom context evaluates as TRUE, trigger the associated set of synchronization actions, wherein the context engine, the synchronization engine, wherein at least one of the set of synchronization actions are application-specific actions to be taken by a specific one of the plurality of applications executing upon the mobile device; and wherein, the context engine, the synchronization engine, and the resource monitor are computer program products that are stored in a tangible medium executing on hardware of the mobile device and that are implemented independent of any of the plurality of applications of the mobile device. - View Dependent Claims (19)
-
Specification