Data processing: database and file management or data structures – Database design – Data structure types
Reexamination Certificate
2000-10-04
2004-10-26
Robinson, Greta (Department: 2177)
Data processing: database and file management or data structures
Database design
Data structure types
C707S793000, C707S793000, C709S203000
Reexamination Certificate
active
06810405
ABSTRACT:
COPYRIGHT NOTICE
A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
BACKGROUND OF THE INVENTION
The present invention relates generally to synchronizing data between multiple datasets. More particularly, the present invention relates to methods for synchronizing data between mobile wireless communication devices and synchronization servers.
Increasingly, people are discovering the power of computer-based personal information managers (PIMs) for managing appointments and other personal information such as tasks (“to-do's”) and addresses. Individuals employ PIMs for example on personal computers (PCs), handheld electronic information devices, and World Wide Web servers accessed via browsers. Examples of PC-based PIMs include the Sidekick® software application, which is available from Starfish® Software, Inc. (“Starfish”), the present assignee. Examples of handheld-information-device-based PIMs include the StarTAC® clipOn Organizer device and the REX PRO™ organizer device—both of which include licensed technology from Starfish—as well as the popular Palm family of organizer devices. Examples of “Web-based” PIMs include an online PIM called TrueSync.com, provided by Starfish. Starfish®, Sidekick®, and TrueSync® are registered trademarks of Starfish. StarTAC® is a registered trademark of Motorola, Inc. of Schaumburg, Ill. REX™ m and REX PRO™ are trademarks of Franklin Electronic Publishers of Burlington, N.J. Palm organizers are produced by Palm, Inc. of Santa Clara, Calif.
The use of PIMs is ever expanding, and it has become common for an individual person to keep multiple “copies” of the same information on separate devices. For example, a user may keep his or her appointments in a dataset (i.e., collection of data) on a desktop PC at work, in a dataset on a notebook PC at home, and also in a dataset on a handheld device while in the field. Such a user is free to change the information in any one of these datasets independently of the other datasets. By doing so, the user may cause the data in the multiple datasets to differ from one another, so that the datasets are unsynchronized. For example, the user may enter a person's home address in one of the datasets, but the other datasets may not contain the person's home address. Alternatively, the user may change a person's telephone number in one of the datasets, so that the one dataset has the user's new telephone number, while the other datasets have the person's old telephone number. The user may cause the datasets to be the same again, by synchronizing the multiple datasets to bring them back into equivalence. To perform such synchronization, the user generally uses a synchronization system, such as one that is described in commonly-owned U.S. Pat. No. 5,519,606, which is hereby incorporated by reference.
As modern mobile wireless communication devices, such as pagers and cellular phones, are gaining capabilities and becoming information devices in their own right, e.g. by supporting PIM functionality, it is desirable for such devices to also support synchronization of information (e.g. PIM information, downloaded information, and the like) stored on the device. In particular, it is desirable that such wireless communication devices use their inherent wireless communication abilities for synchronization.
Many existing synchronization systems exchange data over a direct, wired connection between two devices, which provides a fast, accurate and reliable interface between the two devices. Exchanging data over a wireless interface is generally not so easy or predictable. Errors are more likely to occur during transmission of data over a wireless interface, communication sessions may be interrupted, data packets may be lost, data transmission may be delayed or slow, data transmissions may be intercepted by eavesdroppers, data may arrive at its destination in a different order from the order in which it was sent from its source, and many other problems may adversely affect the wireless transmission of data. Many existing synchronization systems may not work effectively in such an environment. In addition, wireless devices generally have limited processing, capabilities and storage space, and limited access to software upgrades, which further complicates the process for synchronizing data with a wireless device.
What is needed are a wireless communication system and methods for managing synchronization between a wireless communication device and a synchronization server. In particular, what is needed are such a system and methods that are efficient, cost-effective, and convenient for the user, that work within the processing, storage and upgrade limitations of a wireless device, and that will work effectively and reliably in a wireless environment.
BRIEF SUMMARY OF THE INVENTION
The present invention provides methods for synchronizing data between multiple datasets on multiple devices. In one method, a communication interface, including a wireless interface, is established between a first device and a second device. The first device sends its changed data values to the second device. The second device resolves conflicts between the changed data values received from the first device and the second device's own changed data values. The second device incorporates the changed data values received from the first device into its own dataset if the received data values survive the conflict resolution. The second device also sends those of its own changed data values that survived the conflict resolution to the first device. The first device incorporates the changed data values that it receives from the second device into the first dataset.
In specific embodiments of the present invention, the multiple devices may include a wireless telephone and a sync server, and the communication interface may comprise a data call between the wireless telephone and the sync server. The datasets may contain PIM data and one or more of the multiple devices may include a PIM application. In one embodiment, one device may need to log on to the second device before a synchronization can be performed, where logging on requires that the first device send log on information to the second device and the second device confirms that the log on information is valid. In another embodiment, a conflict resolution may occur between two changed data values if both of the changes relate to the same data record. In this case, timestamps indicating the times at which each of the data values were changed may be compared, and data from the earlier changed data value may be discarded, and the more recently changed data value may survive the conflict resolution.
Other embodiments of the invention may include a method of sending data value changes from a first device to a second device that involves repeating the following steps until the second device receives all of the data value change from the first device: the first device sends to the second device one or more changes from its set of data value changes that have not yet been received by the second device; the second device sends a message to the first device acknowledging receipt of whichever changes the second device actually received; and the first device determines which, if any, of its set of data value changes have not yet been received by the second device, based on the acknowledgement message from the second device. In one embodiment, the second device sends the acknowledgment message in response to an acknowledgment request sent from the first device to the second device. Other embodiments may also involve the first device determining if a change received from the second device involves creating a new data record in the first device and, if so, sending a message to the s
Feague Roy W.
Gray Jeff
LaRue Chris
Beffel, Jr. Ernest J.
Haynes Beffel & Wolfeld LLP
Lewis Cheryl
Robinson Greta
Starfish Software, Inc.
LandOfFree
System and methods for synchronizing data between multiple... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with System and methods for synchronizing data between multiple..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System and methods for synchronizing data between multiple... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3318945