CA2594100C - Systems and methods for continuous pim synchronization between a host computer and a client handheld device - Google Patents
Systems and methods for continuous pim synchronization between a host computer and a client handheld device Download PDFInfo
- Publication number
- CA2594100C CA2594100C CA2594100A CA2594100A CA2594100C CA 2594100 C CA2594100 C CA 2594100C CA 2594100 A CA2594100 A CA 2594100A CA 2594100 A CA2594100 A CA 2594100A CA 2594100 C CA2594100 C CA 2594100C
- Authority
- CA
- Canada
- Prior art keywords
- pim
- message
- database
- record
- handheld
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/273—Asynchronous replication or reconciliation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/107—Computer-aided management of electronic mailing [e-mailing]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/06—Message adaptation to terminal or network requirements
- H04L51/066—Format adaptation, e.g. format conversion or compression
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/58—Message adaptation for wireless communication
Abstract
A wireless handheld device operable to continuously synchronize PIM
information with a host desktop computer. The device comprises means for updating a handheld PIM database to reflect a change to PIM information, means for updating a handheld mirror database to reflect the change to PIM
information, means for generating a PIM message relating to the change to the PIM information, means for translating the PIM message from a handheld data format into a network data format and means for sending the PIM message from the client wireless handheld device to the host desktop computer via a wireless network.
information with a host desktop computer. The device comprises means for updating a handheld PIM database to reflect a change to PIM information, means for updating a handheld mirror database to reflect the change to PIM
information, means for generating a PIM message relating to the change to the PIM information, means for translating the PIM message from a handheld data format into a network data format and means for sending the PIM message from the client wireless handheld device to the host desktop computer via a wireless network.
Description
SYSTEMS AND METHODS FOR CONTINUOUS PIM SYNCHRONIZATION
BETWEEN A HOST COMPUTER AND A CLIENT HANDHELD DEVICE
TECHNICAL FIELD
The present application relates, in general, to personal information management (PIM) applications in a wireless network, and in particular, to systems and methods for implementing continuous synchronization of PIM applications between a host desktop computer and a client handheld device.
BACKGROUND
Many wireless handheld devices in wireless networks may implement PIM
applications and provide personal information services such as calendar, contacts, tasks, memos or the like. Some of these wireless handheld devices are capable of wireless synchronization with the desktop computer, that is, information is transferred between the desktop computer and the handheld device to update each. However, these wireless handheld devices usually utilize a pull based technique where the synchronization only happen on a periodic basis. For example, a user may configure to make synchronization happen every 10 minutes, and the wireless handheld device asks server to send all the accumulated changes since the last synchronization event.
Many wireless handheld devices are not capable of continuous synchronization to update the information stored on the desktop computer when changes are made to the personal information stored on the handheld device or update the information stored on the handheld device when changes are made to the personal information stored on the desktop computer. A need has arisen for systems and methods for implementing continuous synchronization of PIM applications between a desktop computer and a handheld device.
BRIEF DESCRIPTION OF THE DRAWINGS
Fig. 1 shows an exemplary network environment including a host desktop computer and a client wireless handheld device wherein an embodiment of the present application may be practiced;
Fig. 2 shows a system for implementing continuous wireless synchronization of PIM applications between a host desktop computer and a client wireless handheld device according to an embodiment of the present application;
Fig. 3 shows a flowchart showing an embodiment of a method to implement continuous wireless synchronization of PIM applications from a host desktop computer to a client wireless handheld device;
Fig. 4 shows a flowchart showing another embodiment of a method to implement continuous wireless synchronization of PIM applications to a host desktop computer from a client wireless handheld device; and Fig. 5 shows a system for implementing continuous wireless synchronization of PIM applications between a host desktop computer and a client wireless handheld device according to an additional embodiment of the present application.
DETAILED DESCRIPTION
Generally speaking, the present application utilizes push based wireless transport architecture to implement continuous synchronization of PIM applications between a host desktop computer and a client wireless' handheld device. Whenever there is a change in PIM applications such as calendar, in the handheld device, the architecture automatically pushes the change to the desktop computer to synchronize the desktop computer with the handheld device immediately. Similarly, whenever there is a change in PIM
applications such as calendar in the desktop computer, the change is automatically pushed to the handheld device to immediately update the PIM application such as calendar information.
According to a first aspect, the present disclosure relates to a method for implementing continuous synchronization of personal information management (PIM) applications from a host desktop computer having a desktop PIM database to a client wireless handheld device having a handheld PIM database. The method includes the steps of generating a PIM message at the host desktop computer whenever there is a change in the desktop PIM database, sending the PIM message from the host desktop computer to the client wireless handheld device via a wireless network, determining the type of the PIM message and storing the PIM message in a handheld PIM database and in a handheld mirror database if the PIM message is a non-email message.
According to a second aspect, the present disclosure relates to a wireless handheld device operable to continuously synchronize PIM information with a host desktop computer. The device comprises means for updating a handheld PIM database to reflect a change to PIM information, means for updating a handheld mirror database to reflect the change to PIM information, means for generating an email message, means for attaching to the new email the change to the PIM information, means for translating the change to the PIM information from a handheld data format into a network data format and means for sending the email message from the client wireless handheld device to the host desktop computer via a wireless network.
According to a third aspect, the present disclosure relates to a system for implementing continuous synchronization of personal information management (PIM) between a host desktop computer and a client wireless handheld device via a wireless network. The system comprises a host desktop computer having a desktop PIM
database and operable to send a first PIM message via the wireless network to the client wireless handheld device, to receive a second PIM message from the client wireless handheld device via the wireless network and to update the desktop PIM database if the second PIM
message is a non-email message. The system further comprises a client wireless handheld device having a handheld PIM database and a mirror database, operable to receive the first PIM message via the wireless network, to update the PIM database and mirror database according to the content of the first PIM message and to send the second PIM
message via the wireless network.
Referring initially to Figure 1, depicted therein is an exemplary network environment 100 including a wireless packet data service network 102 wherein an embodiment of the present patent application may be practiced. An enterprise network 104, which may be a packet-switched network, can include one or more geographic sites and be organized as a local area network (LAN), wide area network (WAN), metropolitan area network (MAN) or the like for serving a plurality of corporate users. A
number of application servers 106-1 through 106-N disposed as part of the enterprise network 104 are operable to provide or effectuate a host of internal and external services such as email, video mail, Internet access, corporate data access, messaging, calendaring and scheduling, information management and the like. Accordingly, a diverse array of personal information appliances such as desktop computers, laptop computers, palmtop computers and the like, which are generically and collectively referred to herein and depicted as desktop computer 108, may be operably networked to one or more of the application servers 106-i, where i = 1, 2,...,N, with respect to the services supported in enterprise network 104.
Additionally, a remote services server 120 may be interfaced with enterprise network 104 for enabling a corporate user to access or effectuate any of the services from a remote location using a suitable handheld device 122. A secure communication link with end-to-end encryption may be established that is mediated through an external IP
network, i.e., a public packet-switched network such as the Internet 124, as well as the wireless packet data service network 102 operable with handheld device 122 via suitable wireless network infrastructure that includes a base station 126. In one embodiment, a trusted relay network 128 may be disposed between Internet 124 and the infrastructure of wireless packet data service network 102. By way of example, handheld device 122 may be a data-enabled handheld device capable of receiving and sending voice, text messages, web browsing, interfacing with corporate application servers and the like.
For purposes of the present patent application, the wireless packet data service network 102 may be implemented in any known or heretofore unknown mobile communications technologies and network protocols, as long as a packet-switched data service is available therein for transmitting packetized information. For instance, the wireless packet data service network 102 may be comprised of a General Packet Radio Service (GPRS) network that provides a packet radio access for mobile devices using the cellular infrastructure of a Global System for Mobile Communications (GSM)-based carrier network. In other implementations, the wireless packet data service network 102 may comprise an Enhanced Data Rates for GSM Evolution (EDGE) network, an Integrated Digital Enhanced Network (IDEN), a Code Division Multiple Access (CDMA) network, any 3rd Generation (3G) network or the like.
Figure 2 shows a system for implementing continuous wireless synchronization of PIM applications between a host desktop computer and a client wireless handheld device according to an embodiment. Information is transferred between the desktop computer and the handheld device to update each immediately whenever there is a change occurred in the desktop computer or the handheld device. As shown in figure 2, the desktop computer 108, application server 106 are all similar to those of figure 1, and network 201 generally refers to enterprise network 104, remote services server 120, Internet 124, relay network 128, wireless network 102, and base station 126 as shown in figure 1. System implements continuous synchronization of PIM applications between host desktop computer 108 and client wireless handheld device 202. Client handheld device comprises the following modules: transport mechanism 206, synchronizer 216, database accessor 224, mirror database 220, PIM database 238, reconciler 226, database listener 230, email communication module 208, email database 212, and user interface (UI) 234.
Client handheld device 202 preferably includes a microprocessor (not shown) which controls the overall operation of handheld device 202.
In the illustrated embodiment, desktop computer 108 is a host device, and handheld device 202 is a client device. Transport mechanism 206 is an interface between the host device and the client device. It handles network communication protocols such as packet assembling, disassembling, encryption, decryption, retry and etc. When a PIM
message is sent from desktop computer 108, transport mechanism 206 receives the message and translates the message data from the data format of network 201 to the data format of handheld device 202. Similarly, when a PIM message is sent from handheld device 202, transport mechanism 206 translates the message data from the data format of handheld device 202 to the data format of network 201. Transport mechanism 206 sends a notification regarding a message coming from network 201 to synchronizer 216.
Synchronizer 216 initializes PIM applications and receives a message from transport mechanism 206 to verify if the message is valid or not. If the message is stale or conflicting, it is invalid. When a user sends a non-email message such as a calendar appointment from handheld device 202, synchronizer 216 controls the message to be transported through transport mechanism rather than email communication module 208.
Similarly, when the user sends a non-email message such as a calendar appointment from desktop computer 108, synchronizer 216 controls the message to be transported from transport mechanism 206 to database accessor 224, mirror database 220, PIM
database 238, and UI 234. When the user sends an email related message from desktop computer 108 or handheld device 202, such as a meeting request or a meeting response, synchronizer 216 controls the message to go through email communication module 208, and email database 212 and in addition to those modules for a non-email message.
When an email message such as a meeting request or a meeting response comes from desktop computer 108, appointment data is extracted from the email message and synchronizer 216 determines if the appointment data is valid. If the appointment data is valid, that is, the appointment data is not stale or conflicting, PIM database 238 and mirror database 220 are updated with the appointment data. Email communication module stores the email message into email database 212 so that it may be displayed by UI 234.
When an email message such as a meeting request or a meeting response is created on handheld device 202, synchronizer 216 may create a new email message according to the specified network protocol, store it into email database 212, and then attach appointment data to the new email message to send the message to transport mechanism 206.
Database accessor 224 accesses mirror database 220 and PIM database 238 to update the databases and synchronize them with desktop database 246 whenever there is a message from desktop computer 108. It also responds to any query of an entry in database and retrieves it from mirror database 220. PIM database 238 stores PIM
message, and the change of a message may be displayed on UI 234. For example, PIM database 238 may be a calendar database for storing calendar entries. Any changes in the entries may be automatically reflected on UI 234. Mirror database 220 mirrors entries in the PIM
database. It stores entries corresponding to entries in the PIM database and supplements it with additional information necessary for synchronization. Whenever there is a change in PIM database 238 from the handheld device 202, the change may be identified by comparing the contents of PIM database 238 and the contents of mirror database 220.
Reconciler 226 maintains mirror database 220 and PIM database 23 8 to be synchronized at start time of the system 200. Database listener 230 receives a notification with respect to any change in PIM database 238. Regarding any change notification it receives, database listener 230 compares the content of PIM database 238 with the content of mirror database 220 to identify what has changed, and confirm if the change is valid. If the change violates the protocol, the change is invalid. Otherwise, it is valid. Afterwards, the change information is passed to synchronizer 216 to send it to desktop computer 108 so as to synchronize to desktop computer 108.
Email database 212 stores email messages, meeting requests and meeting responses. Meeting requests and meeting responses of calendar applications are treated as email messages to send and receive. Appointment data are attached to the email messages.
Email communication module 208 sends and receives emails. Email communication module 208 receives a meeting request or a meeting response as an email from network 201 and stores it into email database 212. UI 234 is an interface between handheld device 202 and a user. UI 234 retrieves data from PIM database 238 and email database 212 for display, and writes data to PIM database 238 for any PIM change made on handheld device 202. PIM data in this embodiment may be calendar, contacts, tasks, memos or the like.
Figure 3 shows a flowchart showing an embodiment of a method to implement continuous wireless synchronization of PIM applications from a host desktop computer to a client wireless handheld device. The process starts at block 300 and proceeds to step 302, where a PIM message is sent from host computer 108. This will generally occur when a user creates a PIM entry, such as a calendar entry, on a host desktop computer 108 and stores it into desktop database 246. At step 304, the transport mechanism 206 performs an interface process from network 201 to handheld device 202. Transport mechanism receives the PIM message from network 201 according to network communication protocols such as packet assembling, disassembling, encryption, decryption, retry or the like, translates the PIM message data from the data format of network 201 to the data format of handheld device 202, and sends a notification regarding a message coming from network 201 to synchronizer 216. The data format of network 201 may, for example, be ASCII string format. The data format of handheld device 202 may, for example, be Windows CE data format.
Synchronizer 216 receives the notification and determines the type of the message at step 306. If the message is not an email message, process flow proceeds directly to step 316. If the message is an email message such as a meeting request or a meeting response, the process proceeds to step 308 where the message is sent to email communication module 208 from transport mechanism 206. Email communication module 208 then extracts appointment data from the message at step 310.
Synchronizer 216 determines whether the appointment data is valid at step 312.
If the appointment data is not valid for some reason, for example, the appointment data is stale or conflicting with an existing appointment data, then the appointment data is rejected and the process returns to step 302, where the user sends an another message such as a meeting request or a meeting response. If the appointment data is valid, synchronizer 216 stores the email message into email database 212 at step 314 for displaying on UI 234.
The process then proceeds to step 316, where PIM database 238 is updated with the valid appointment data. Mirror database 220 is updated with the valid appointment data at step 318, and then the message is read by means of UI 234 at step 320. Process flow ends at step 322.
If the message type is not an email message, for example, the message is an appointment data; PIM database 238 and mirror database 220 are updated with the appointment data subsequently at 316 and 318, and the appointment data is read on UI at 318.
It is clear from the above process that a message is synchronized from desktop database 246 of desktop computer 108 to PIM database 238 of handheld device 202 as soon as the message is created and sent from desktop computer 108. The user may read the message from UI 234. The PIM message in this embodiment refers to calendar, contacts, tasks, memos or the like.
For the calendar application, the PIM message may be the creation of a new record, an update to an existing record or a deletion to an existing record. A
calendar record may be an appointment, a meeting request or a meeting response. A meeting request or a meeting response is an email message attached with appointment data.
The following will describe a continuous synchronization of PIM message from a handheld device with reference to figure 4. Fig. 4 shows a flowchart showing another embodiment of a method to implement continuous wireless synchronization of PIM
applications to a host desktop computer from a client wireless handheld device.
The process starts in block 400 and proceeds to step 402, where a PIM change is made. This may occur, for example, where a user makes a PIM change such as a calendar entry by means of UI 234 of handheld device 202, and saves the PIM change to PIM
database 238. PIM database 238 is updated at step 404. At step 406, PIM
database 238 sends a notification there is a change in PIM database 238. The database listener 230 receives the notification and compares the content of PIM database with the content of mirror database to identify what change has been done at step 408. In step 410, it is determined whether the change is valid. If the change is invalid, the message is rejected at 412 and process flow returns to step 402 for the user to create another change. If the change is valid, then mirror database 220 is updated with the change at 414.
The change may be, for example, the appointment data coming from handheld device 202.
The process proceeds to step 416, where the type of the message is determined by synchronizer 216. If the message is not an email message, process flow proceeds directly to step 424, described below. If the message is an email message, such as a meeting request or a meeting response, the process goes to step 418 where a new email message is created by synchronizer 216, and at step 420, the new email message stores into email database 212. At step 422, the synchronizer 216 attaches the appointment data identified by database listener 230 at step 408 to the new email message and sends the new email message attached with the appointment data to transport mechanism 206. The process then proceeds to step 424.
At step 424, the system performs an interface process between handheld device 202 and network 201. Transport mechanism 206 translates the message data format from the data format of handheld device 202 to the data format of network 201 and sends the message to network 201 according to communication protocols such as packet assembling, disassembling, encryption, decryption, retry or the like, and desktop computer 108 extracts the appointment data and updates desktop database 246 with the appointment data at 426.
The message is displayed on desktop computer at step 428. Process flow ends in block 430.
The above process illustrates that a message is synchronized from PIM database 238 of handheld device 202 to desktop database 246 of desktop computer 108 as soon as the message is created and sent from handheld device 202. The PIM message in this embodiment refers to calendar, contacts, tasks, memos or the like. For the calendar application, the PIM message may be the creation of a new record, an update to an existing record, or a deletion to an existing record. A meeting request or a meeting response is an email message attached with appointment data. Continuous synchronization of PIM applications between host desktop computer 108 and client handheld device 202 is implemented by means of the processes as shown in figure 3 and figure 4.
Figure 5 shows an additional embodiment of a system for implementing continuous wireless synchronization of PIM applications between a host desktop computer and a client wireless handheld device. Information is transferred between the host desktop computer 108 and the client handheld device 502 to update each immediately whenever there is a change in the host desktop computer 108 or the client handheld device 502.
As shown in figure 5, the host desktop computer 108 and application server 106 are similar to those of figures 1 and 2. Network 201 generally refers to enterprise network 104, remote services server 120, Internet 124, relay network 128, wireless network 102, and base station 126 as shown in figure 1. System 500 implements continuous synchronization of PIM applications between host desktop computer 108 and client wireless handheld device 502. Client handheld device 502 comprises the following modules: transport mechanism 506, mirror listener 510, synchronizer 516, database accessor/listener 524, mirror database 520, PIM database 538, reconciler 526, PIM listener 530, email communication module 508, email database 512, and user interface (UI) 534.
Client handheld device 502 preferably includes a microprocessor (not shown) which controls the overall operation of handheld device 502.
In the illustrated embodiment, desktop computer 108 is a host device, and handheld device 502 is a client device. Transport mechanism 506 is an interface between the host device 108 and the client device 502. It handles network communication protocols such as packet assembling, disassembling, encryption, decryption, retry and etc. When a PIM message is sent from host desktop computer 108, transport mechanism 506 receives the message and translates the message data from the data format of network 201 to the data format of client handheld device 502. Similarly, when a PIM message is sent from client handheld device 502, transport mechanism 506 translates the message data from the data format of handheld device 502 to the data format of network 201.
Transport mechanism 506 sends a notification regarding a message coming from network 201 to synchronizer 516.
Synchronizer 516 initializes PIM applications and receives a message from transport mechanism 506 to verify if the message is valid or not. If the message is stale or conflicting, it is invalid. When a user sends a non-email message such as a calendar appointment from handheld device 502, synchronizer 516 directs the message through transport mechanism 506 rather than email communication module 508. Similarly, when the user sends a non-email message such as a calendar appointment from desktop computer 108, synchronizer 516 controls the message to be transported from transport mechanism 506 to database accessor/listener 524, mirror database 520, PIM
database 538 and UI 534. When the user sends an email related message from host desktop computer 108 or handheld device 502, such as a meeting request or a meeting response, synchronizer 516 directs the message through email communication module 508, email database 512 and UI 534.
When an email message such as a meeting request or a meeting response comes from host desktop computer 108, appointment data is extracted from the email message and synchronizer 516 determines if the appointment data is valid. If the appointment data is valid, that is, the appointment data is not stale or conflicting, PIM
database 538 and mirror database 520 are updated with the appointment data. Email communication module 508 stores the email message in email database 512 so that it may be displayed by UI 534.
When an email message such as a meeting request or a meeting response is created on handheld device 502, synchronizer 516 may create a new email message according to the specified network protocol, store it into email database 512, and then attach appointment data to the new email message to send the message to transport mechanism 506.
Database accessor/listener 524 accesses mirror database 520 in order to update and synchronize it with desktop database 246 whenever there is a message from host desktop computer 108 or whenever there is a PIM change from handheld device 502. It also responds to any database query and retrieves the requested information from mirror database 520. PIM database 538 stores PIM messages, and the change of the message is displayed on UI 534. For example, it may be a calendar database storing calendar entries.
Any changes in the entries get automatically reflected on UI 534. Mirror database 520 mirrors the entries in the PIM database 538. It keeps entries corresponding to the entries in the PIM database 538 and supplements it with any additional information necessary for synchronization. Whenever there is a change in the PIM database 538 initiated from the client handheld device 502, the change may be identified by comparing the contents of PIM database 538 and the contents of mirror database 520.
Reconciler 526 maintains mirror database 520 and PIM database 538 to be synchronized at start time of the system 500. PIM listener 530 receives a notification from PIM database 538 whenever there is a change in PIM database 538. Regarding any change notification it receives, PIM listener 530 updates mirror database 520.
Email database 512 stores email messages, meeting requests and meeting responses. Meeting requests and meeting responses of calendar applications are treated as email messages to send and receive. Appointment data are attached to the email messages.
Email communication module 508 sends and receives emails. Email communication module 508 receives a meeting request or a meeting response as an email from network 201 and stores it into email database 512.
UI 534 is an interface between client handheld device 502 and user. It reads data from PIM database 538 and email database 512 for displaying a PIM message, and writes data to PIM database 538 for any PIM change made on handheld device 502. PIM
data in this embodiment may be calendar entries, contacts, tasks, memos or the like.
Although those of skill will recognize that the structure of client handheld device 502 is similar in many respects to client handheld device 202 of figure 2, those of skill in the art will also recognize a number of distinctions between the two. Mirror Listener 510 listens for any changes in mirror database 520 and propagates any such changes to the PIM database 538. This function is similar to the function performed by the database accessor 224 of figure 2. In contrast to database accessor 224 of figure 2, however, database accessor/listener 524 does not update the PIM database 538. Database accessor/listener 524 interacts with mirror database 520 only and saves any updates coming from the synchronizer 516 to mirror database 520. Database accessor/listener 524 also listens for any changes in the mirror database 520 and communicates any such changes to synchronizer 516.
Those of skill in the art will appreciate that the foregoing disclosure includes a variety of aspects and embodiments. According to a further aspect, the present disclosure relates to a method for implementing continuous synchronization of personal information management (PIM) applications between a host desktop computer and a client wireless handheld device. The method comprises sending a PIM message from the host desktop computer to the client wireless handheld device via a wireless network, receiving the PIM
message in the client wireless handheld device, translating the PIM message from network data format into handheld data format, determining the type of the PIM
message, updating a PIM database with the PIM message if the PIM message is a non-email message and updating a mirror database with the PIM message. The PIM database stores every PIM
message entry, while the mirror database stores a mirror image of every PIM
message entry in the PIM database along with information for synchronizing the host desktop computer with the client wireless handheld device.
According to certain embodiments, the method further comprises extracting appointment data if the PIM message is an email message, determining if the appointment data is valid, storing the email message into an email database if the appointment data is valid, updating the PIM database with the appointment data and updating the mirror database with the appointment data.
According to a further embodiment, the present disclosure relates to a method for implementing continuous synchronization of personal information management (PIM) applications between a host desktop computer and a client wireless handheld device. The method comprises sending a PIM message from the client wireless handheld device, updating a PIM database, notifying there is a change in the PIM database, comparing the contents of the PIM database and the contents of a mirror database, identifying the change information in the PIM database, updating a mirror database based on the change information, determining the type of the PIM message, translating the change information from handheld data format into network data format if the PIM message is a non-email message, sending the change information from the client wireless handheld device to the host desktop computer via a wireless network, updating a desktop database of the host desktop computer based on the change information. The PIM database stores every PIM
message entry, while the mirror database stores a mirror image of every PIM
message entry in the PIM database along with additional information for synchronizing between the host desktop computer and the client wireless handheld device.
In one aspect, the method further comprises creating a new email message if the PIM message is the email message, storing the new email message into an email database, attaching appointment data identified from the change information to the new email, translating the new email message attached with appointment data from handheld data format into network data format, sending the new email message attached with appointment data from the client wireless handheld device to the host desktop computer via a wireless network, updating a desktop database of the host desktop computer based on the appointment data, and displaying the new email message attached with appointment data.
According to a further embodiment, the present disclosure relates to a system for implementing continuous synchronization of personal information management (PIM) applications between a host desktop computer and a client wireless handheld device. The system comprises a host desktop computer having a desktop database for creating a first PIM message and sending the first PIM message from the host desktop computer via a wireless network to the client wireless handheld device, and receiving a second PIM
message resulted from a PIM change from the client wireless handheld device and updating the desktop database based on the change information if the second PIM message is an non-email message, a wireless network communicably linked to the host desktop computer, a client wireless handheld device communicably linked to the wireless network, the client wireless handheld device including an interface mechanism for receiving the first PIM message and sending the second PIM message according to network communication protocols and translating the first second PIM from handheld data format into network data format if the second message is an non-email message, a synchronizer for determining the validity of the first PIM message from the host, desktop computer and the validity of the second PIM message, determining the types of the first PIM
message and the second PIM message, a PIM database for storing first PIM message from the host desktop computer and the PIM change from the client wireless handheld device, a mirror database for storing a mirror image of every message in the PIM database and additional information for synchronizing the host desktop computer with the client wireless handheld device, and updating means for updating the PIM database and the mirror database based on the first PIM message from the host desktop computer, and updating the PIM database and mirror database based on the PIM change from the client wireless handheld device.
In one aspect, the synchronizer creates a new email message if the second PIM
message is an email message, and attaches appointment data to the new email message.
The system may further comprise an email communication module for receiving the first PIM message from the interface mechanism if the type of the first PIM message is an email message and for sending the new email message attached with the appointment data if the second PIM message is an email message, and an email database for saving the email message from the host desktop computer and the email message from the client wireless handheld device. The interface mechanism translates the new message attached with the appointment data from handheld data format into network data format, and the desktop computer extracts the appointment data and updates the desktop database.
While this application has described a wireless network with reference to illustrative embodiments, this description is not intended to be construed in a limiting sense. Various modifications and combinations of the illustrative embodiments as well as other embodiments of the mobile device, will be apparent to persons skilled in the art upon reference to the description. It is, therefore, intended that the appended claims encompass any such modifications or embodiments.
BETWEEN A HOST COMPUTER AND A CLIENT HANDHELD DEVICE
TECHNICAL FIELD
The present application relates, in general, to personal information management (PIM) applications in a wireless network, and in particular, to systems and methods for implementing continuous synchronization of PIM applications between a host desktop computer and a client handheld device.
BACKGROUND
Many wireless handheld devices in wireless networks may implement PIM
applications and provide personal information services such as calendar, contacts, tasks, memos or the like. Some of these wireless handheld devices are capable of wireless synchronization with the desktop computer, that is, information is transferred between the desktop computer and the handheld device to update each. However, these wireless handheld devices usually utilize a pull based technique where the synchronization only happen on a periodic basis. For example, a user may configure to make synchronization happen every 10 minutes, and the wireless handheld device asks server to send all the accumulated changes since the last synchronization event.
Many wireless handheld devices are not capable of continuous synchronization to update the information stored on the desktop computer when changes are made to the personal information stored on the handheld device or update the information stored on the handheld device when changes are made to the personal information stored on the desktop computer. A need has arisen for systems and methods for implementing continuous synchronization of PIM applications between a desktop computer and a handheld device.
BRIEF DESCRIPTION OF THE DRAWINGS
Fig. 1 shows an exemplary network environment including a host desktop computer and a client wireless handheld device wherein an embodiment of the present application may be practiced;
Fig. 2 shows a system for implementing continuous wireless synchronization of PIM applications between a host desktop computer and a client wireless handheld device according to an embodiment of the present application;
Fig. 3 shows a flowchart showing an embodiment of a method to implement continuous wireless synchronization of PIM applications from a host desktop computer to a client wireless handheld device;
Fig. 4 shows a flowchart showing another embodiment of a method to implement continuous wireless synchronization of PIM applications to a host desktop computer from a client wireless handheld device; and Fig. 5 shows a system for implementing continuous wireless synchronization of PIM applications between a host desktop computer and a client wireless handheld device according to an additional embodiment of the present application.
DETAILED DESCRIPTION
Generally speaking, the present application utilizes push based wireless transport architecture to implement continuous synchronization of PIM applications between a host desktop computer and a client wireless' handheld device. Whenever there is a change in PIM applications such as calendar, in the handheld device, the architecture automatically pushes the change to the desktop computer to synchronize the desktop computer with the handheld device immediately. Similarly, whenever there is a change in PIM
applications such as calendar in the desktop computer, the change is automatically pushed to the handheld device to immediately update the PIM application such as calendar information.
According to a first aspect, the present disclosure relates to a method for implementing continuous synchronization of personal information management (PIM) applications from a host desktop computer having a desktop PIM database to a client wireless handheld device having a handheld PIM database. The method includes the steps of generating a PIM message at the host desktop computer whenever there is a change in the desktop PIM database, sending the PIM message from the host desktop computer to the client wireless handheld device via a wireless network, determining the type of the PIM message and storing the PIM message in a handheld PIM database and in a handheld mirror database if the PIM message is a non-email message.
According to a second aspect, the present disclosure relates to a wireless handheld device operable to continuously synchronize PIM information with a host desktop computer. The device comprises means for updating a handheld PIM database to reflect a change to PIM information, means for updating a handheld mirror database to reflect the change to PIM information, means for generating an email message, means for attaching to the new email the change to the PIM information, means for translating the change to the PIM information from a handheld data format into a network data format and means for sending the email message from the client wireless handheld device to the host desktop computer via a wireless network.
According to a third aspect, the present disclosure relates to a system for implementing continuous synchronization of personal information management (PIM) between a host desktop computer and a client wireless handheld device via a wireless network. The system comprises a host desktop computer having a desktop PIM
database and operable to send a first PIM message via the wireless network to the client wireless handheld device, to receive a second PIM message from the client wireless handheld device via the wireless network and to update the desktop PIM database if the second PIM
message is a non-email message. The system further comprises a client wireless handheld device having a handheld PIM database and a mirror database, operable to receive the first PIM message via the wireless network, to update the PIM database and mirror database according to the content of the first PIM message and to send the second PIM
message via the wireless network.
Referring initially to Figure 1, depicted therein is an exemplary network environment 100 including a wireless packet data service network 102 wherein an embodiment of the present patent application may be practiced. An enterprise network 104, which may be a packet-switched network, can include one or more geographic sites and be organized as a local area network (LAN), wide area network (WAN), metropolitan area network (MAN) or the like for serving a plurality of corporate users. A
number of application servers 106-1 through 106-N disposed as part of the enterprise network 104 are operable to provide or effectuate a host of internal and external services such as email, video mail, Internet access, corporate data access, messaging, calendaring and scheduling, information management and the like. Accordingly, a diverse array of personal information appliances such as desktop computers, laptop computers, palmtop computers and the like, which are generically and collectively referred to herein and depicted as desktop computer 108, may be operably networked to one or more of the application servers 106-i, where i = 1, 2,...,N, with respect to the services supported in enterprise network 104.
Additionally, a remote services server 120 may be interfaced with enterprise network 104 for enabling a corporate user to access or effectuate any of the services from a remote location using a suitable handheld device 122. A secure communication link with end-to-end encryption may be established that is mediated through an external IP
network, i.e., a public packet-switched network such as the Internet 124, as well as the wireless packet data service network 102 operable with handheld device 122 via suitable wireless network infrastructure that includes a base station 126. In one embodiment, a trusted relay network 128 may be disposed between Internet 124 and the infrastructure of wireless packet data service network 102. By way of example, handheld device 122 may be a data-enabled handheld device capable of receiving and sending voice, text messages, web browsing, interfacing with corporate application servers and the like.
For purposes of the present patent application, the wireless packet data service network 102 may be implemented in any known or heretofore unknown mobile communications technologies and network protocols, as long as a packet-switched data service is available therein for transmitting packetized information. For instance, the wireless packet data service network 102 may be comprised of a General Packet Radio Service (GPRS) network that provides a packet radio access for mobile devices using the cellular infrastructure of a Global System for Mobile Communications (GSM)-based carrier network. In other implementations, the wireless packet data service network 102 may comprise an Enhanced Data Rates for GSM Evolution (EDGE) network, an Integrated Digital Enhanced Network (IDEN), a Code Division Multiple Access (CDMA) network, any 3rd Generation (3G) network or the like.
Figure 2 shows a system for implementing continuous wireless synchronization of PIM applications between a host desktop computer and a client wireless handheld device according to an embodiment. Information is transferred between the desktop computer and the handheld device to update each immediately whenever there is a change occurred in the desktop computer or the handheld device. As shown in figure 2, the desktop computer 108, application server 106 are all similar to those of figure 1, and network 201 generally refers to enterprise network 104, remote services server 120, Internet 124, relay network 128, wireless network 102, and base station 126 as shown in figure 1. System implements continuous synchronization of PIM applications between host desktop computer 108 and client wireless handheld device 202. Client handheld device comprises the following modules: transport mechanism 206, synchronizer 216, database accessor 224, mirror database 220, PIM database 238, reconciler 226, database listener 230, email communication module 208, email database 212, and user interface (UI) 234.
Client handheld device 202 preferably includes a microprocessor (not shown) which controls the overall operation of handheld device 202.
In the illustrated embodiment, desktop computer 108 is a host device, and handheld device 202 is a client device. Transport mechanism 206 is an interface between the host device and the client device. It handles network communication protocols such as packet assembling, disassembling, encryption, decryption, retry and etc. When a PIM
message is sent from desktop computer 108, transport mechanism 206 receives the message and translates the message data from the data format of network 201 to the data format of handheld device 202. Similarly, when a PIM message is sent from handheld device 202, transport mechanism 206 translates the message data from the data format of handheld device 202 to the data format of network 201. Transport mechanism 206 sends a notification regarding a message coming from network 201 to synchronizer 216.
Synchronizer 216 initializes PIM applications and receives a message from transport mechanism 206 to verify if the message is valid or not. If the message is stale or conflicting, it is invalid. When a user sends a non-email message such as a calendar appointment from handheld device 202, synchronizer 216 controls the message to be transported through transport mechanism rather than email communication module 208.
Similarly, when the user sends a non-email message such as a calendar appointment from desktop computer 108, synchronizer 216 controls the message to be transported from transport mechanism 206 to database accessor 224, mirror database 220, PIM
database 238, and UI 234. When the user sends an email related message from desktop computer 108 or handheld device 202, such as a meeting request or a meeting response, synchronizer 216 controls the message to go through email communication module 208, and email database 212 and in addition to those modules for a non-email message.
When an email message such as a meeting request or a meeting response comes from desktop computer 108, appointment data is extracted from the email message and synchronizer 216 determines if the appointment data is valid. If the appointment data is valid, that is, the appointment data is not stale or conflicting, PIM database 238 and mirror database 220 are updated with the appointment data. Email communication module stores the email message into email database 212 so that it may be displayed by UI 234.
When an email message such as a meeting request or a meeting response is created on handheld device 202, synchronizer 216 may create a new email message according to the specified network protocol, store it into email database 212, and then attach appointment data to the new email message to send the message to transport mechanism 206.
Database accessor 224 accesses mirror database 220 and PIM database 238 to update the databases and synchronize them with desktop database 246 whenever there is a message from desktop computer 108. It also responds to any query of an entry in database and retrieves it from mirror database 220. PIM database 238 stores PIM
message, and the change of a message may be displayed on UI 234. For example, PIM database 238 may be a calendar database for storing calendar entries. Any changes in the entries may be automatically reflected on UI 234. Mirror database 220 mirrors entries in the PIM
database. It stores entries corresponding to entries in the PIM database and supplements it with additional information necessary for synchronization. Whenever there is a change in PIM database 238 from the handheld device 202, the change may be identified by comparing the contents of PIM database 238 and the contents of mirror database 220.
Reconciler 226 maintains mirror database 220 and PIM database 23 8 to be synchronized at start time of the system 200. Database listener 230 receives a notification with respect to any change in PIM database 238. Regarding any change notification it receives, database listener 230 compares the content of PIM database 238 with the content of mirror database 220 to identify what has changed, and confirm if the change is valid. If the change violates the protocol, the change is invalid. Otherwise, it is valid. Afterwards, the change information is passed to synchronizer 216 to send it to desktop computer 108 so as to synchronize to desktop computer 108.
Email database 212 stores email messages, meeting requests and meeting responses. Meeting requests and meeting responses of calendar applications are treated as email messages to send and receive. Appointment data are attached to the email messages.
Email communication module 208 sends and receives emails. Email communication module 208 receives a meeting request or a meeting response as an email from network 201 and stores it into email database 212. UI 234 is an interface between handheld device 202 and a user. UI 234 retrieves data from PIM database 238 and email database 212 for display, and writes data to PIM database 238 for any PIM change made on handheld device 202. PIM data in this embodiment may be calendar, contacts, tasks, memos or the like.
Figure 3 shows a flowchart showing an embodiment of a method to implement continuous wireless synchronization of PIM applications from a host desktop computer to a client wireless handheld device. The process starts at block 300 and proceeds to step 302, where a PIM message is sent from host computer 108. This will generally occur when a user creates a PIM entry, such as a calendar entry, on a host desktop computer 108 and stores it into desktop database 246. At step 304, the transport mechanism 206 performs an interface process from network 201 to handheld device 202. Transport mechanism receives the PIM message from network 201 according to network communication protocols such as packet assembling, disassembling, encryption, decryption, retry or the like, translates the PIM message data from the data format of network 201 to the data format of handheld device 202, and sends a notification regarding a message coming from network 201 to synchronizer 216. The data format of network 201 may, for example, be ASCII string format. The data format of handheld device 202 may, for example, be Windows CE data format.
Synchronizer 216 receives the notification and determines the type of the message at step 306. If the message is not an email message, process flow proceeds directly to step 316. If the message is an email message such as a meeting request or a meeting response, the process proceeds to step 308 where the message is sent to email communication module 208 from transport mechanism 206. Email communication module 208 then extracts appointment data from the message at step 310.
Synchronizer 216 determines whether the appointment data is valid at step 312.
If the appointment data is not valid for some reason, for example, the appointment data is stale or conflicting with an existing appointment data, then the appointment data is rejected and the process returns to step 302, where the user sends an another message such as a meeting request or a meeting response. If the appointment data is valid, synchronizer 216 stores the email message into email database 212 at step 314 for displaying on UI 234.
The process then proceeds to step 316, where PIM database 238 is updated with the valid appointment data. Mirror database 220 is updated with the valid appointment data at step 318, and then the message is read by means of UI 234 at step 320. Process flow ends at step 322.
If the message type is not an email message, for example, the message is an appointment data; PIM database 238 and mirror database 220 are updated with the appointment data subsequently at 316 and 318, and the appointment data is read on UI at 318.
It is clear from the above process that a message is synchronized from desktop database 246 of desktop computer 108 to PIM database 238 of handheld device 202 as soon as the message is created and sent from desktop computer 108. The user may read the message from UI 234. The PIM message in this embodiment refers to calendar, contacts, tasks, memos or the like.
For the calendar application, the PIM message may be the creation of a new record, an update to an existing record or a deletion to an existing record. A
calendar record may be an appointment, a meeting request or a meeting response. A meeting request or a meeting response is an email message attached with appointment data.
The following will describe a continuous synchronization of PIM message from a handheld device with reference to figure 4. Fig. 4 shows a flowchart showing another embodiment of a method to implement continuous wireless synchronization of PIM
applications to a host desktop computer from a client wireless handheld device.
The process starts in block 400 and proceeds to step 402, where a PIM change is made. This may occur, for example, where a user makes a PIM change such as a calendar entry by means of UI 234 of handheld device 202, and saves the PIM change to PIM
database 238. PIM database 238 is updated at step 404. At step 406, PIM
database 238 sends a notification there is a change in PIM database 238. The database listener 230 receives the notification and compares the content of PIM database with the content of mirror database to identify what change has been done at step 408. In step 410, it is determined whether the change is valid. If the change is invalid, the message is rejected at 412 and process flow returns to step 402 for the user to create another change. If the change is valid, then mirror database 220 is updated with the change at 414.
The change may be, for example, the appointment data coming from handheld device 202.
The process proceeds to step 416, where the type of the message is determined by synchronizer 216. If the message is not an email message, process flow proceeds directly to step 424, described below. If the message is an email message, such as a meeting request or a meeting response, the process goes to step 418 where a new email message is created by synchronizer 216, and at step 420, the new email message stores into email database 212. At step 422, the synchronizer 216 attaches the appointment data identified by database listener 230 at step 408 to the new email message and sends the new email message attached with the appointment data to transport mechanism 206. The process then proceeds to step 424.
At step 424, the system performs an interface process between handheld device 202 and network 201. Transport mechanism 206 translates the message data format from the data format of handheld device 202 to the data format of network 201 and sends the message to network 201 according to communication protocols such as packet assembling, disassembling, encryption, decryption, retry or the like, and desktop computer 108 extracts the appointment data and updates desktop database 246 with the appointment data at 426.
The message is displayed on desktop computer at step 428. Process flow ends in block 430.
The above process illustrates that a message is synchronized from PIM database 238 of handheld device 202 to desktop database 246 of desktop computer 108 as soon as the message is created and sent from handheld device 202. The PIM message in this embodiment refers to calendar, contacts, tasks, memos or the like. For the calendar application, the PIM message may be the creation of a new record, an update to an existing record, or a deletion to an existing record. A meeting request or a meeting response is an email message attached with appointment data. Continuous synchronization of PIM applications between host desktop computer 108 and client handheld device 202 is implemented by means of the processes as shown in figure 3 and figure 4.
Figure 5 shows an additional embodiment of a system for implementing continuous wireless synchronization of PIM applications between a host desktop computer and a client wireless handheld device. Information is transferred between the host desktop computer 108 and the client handheld device 502 to update each immediately whenever there is a change in the host desktop computer 108 or the client handheld device 502.
As shown in figure 5, the host desktop computer 108 and application server 106 are similar to those of figures 1 and 2. Network 201 generally refers to enterprise network 104, remote services server 120, Internet 124, relay network 128, wireless network 102, and base station 126 as shown in figure 1. System 500 implements continuous synchronization of PIM applications between host desktop computer 108 and client wireless handheld device 502. Client handheld device 502 comprises the following modules: transport mechanism 506, mirror listener 510, synchronizer 516, database accessor/listener 524, mirror database 520, PIM database 538, reconciler 526, PIM listener 530, email communication module 508, email database 512, and user interface (UI) 534.
Client handheld device 502 preferably includes a microprocessor (not shown) which controls the overall operation of handheld device 502.
In the illustrated embodiment, desktop computer 108 is a host device, and handheld device 502 is a client device. Transport mechanism 506 is an interface between the host device 108 and the client device 502. It handles network communication protocols such as packet assembling, disassembling, encryption, decryption, retry and etc. When a PIM message is sent from host desktop computer 108, transport mechanism 506 receives the message and translates the message data from the data format of network 201 to the data format of client handheld device 502. Similarly, when a PIM message is sent from client handheld device 502, transport mechanism 506 translates the message data from the data format of handheld device 502 to the data format of network 201.
Transport mechanism 506 sends a notification regarding a message coming from network 201 to synchronizer 516.
Synchronizer 516 initializes PIM applications and receives a message from transport mechanism 506 to verify if the message is valid or not. If the message is stale or conflicting, it is invalid. When a user sends a non-email message such as a calendar appointment from handheld device 502, synchronizer 516 directs the message through transport mechanism 506 rather than email communication module 508. Similarly, when the user sends a non-email message such as a calendar appointment from desktop computer 108, synchronizer 516 controls the message to be transported from transport mechanism 506 to database accessor/listener 524, mirror database 520, PIM
database 538 and UI 534. When the user sends an email related message from host desktop computer 108 or handheld device 502, such as a meeting request or a meeting response, synchronizer 516 directs the message through email communication module 508, email database 512 and UI 534.
When an email message such as a meeting request or a meeting response comes from host desktop computer 108, appointment data is extracted from the email message and synchronizer 516 determines if the appointment data is valid. If the appointment data is valid, that is, the appointment data is not stale or conflicting, PIM
database 538 and mirror database 520 are updated with the appointment data. Email communication module 508 stores the email message in email database 512 so that it may be displayed by UI 534.
When an email message such as a meeting request or a meeting response is created on handheld device 502, synchronizer 516 may create a new email message according to the specified network protocol, store it into email database 512, and then attach appointment data to the new email message to send the message to transport mechanism 506.
Database accessor/listener 524 accesses mirror database 520 in order to update and synchronize it with desktop database 246 whenever there is a message from host desktop computer 108 or whenever there is a PIM change from handheld device 502. It also responds to any database query and retrieves the requested information from mirror database 520. PIM database 538 stores PIM messages, and the change of the message is displayed on UI 534. For example, it may be a calendar database storing calendar entries.
Any changes in the entries get automatically reflected on UI 534. Mirror database 520 mirrors the entries in the PIM database 538. It keeps entries corresponding to the entries in the PIM database 538 and supplements it with any additional information necessary for synchronization. Whenever there is a change in the PIM database 538 initiated from the client handheld device 502, the change may be identified by comparing the contents of PIM database 538 and the contents of mirror database 520.
Reconciler 526 maintains mirror database 520 and PIM database 538 to be synchronized at start time of the system 500. PIM listener 530 receives a notification from PIM database 538 whenever there is a change in PIM database 538. Regarding any change notification it receives, PIM listener 530 updates mirror database 520.
Email database 512 stores email messages, meeting requests and meeting responses. Meeting requests and meeting responses of calendar applications are treated as email messages to send and receive. Appointment data are attached to the email messages.
Email communication module 508 sends and receives emails. Email communication module 508 receives a meeting request or a meeting response as an email from network 201 and stores it into email database 512.
UI 534 is an interface between client handheld device 502 and user. It reads data from PIM database 538 and email database 512 for displaying a PIM message, and writes data to PIM database 538 for any PIM change made on handheld device 502. PIM
data in this embodiment may be calendar entries, contacts, tasks, memos or the like.
Although those of skill will recognize that the structure of client handheld device 502 is similar in many respects to client handheld device 202 of figure 2, those of skill in the art will also recognize a number of distinctions between the two. Mirror Listener 510 listens for any changes in mirror database 520 and propagates any such changes to the PIM database 538. This function is similar to the function performed by the database accessor 224 of figure 2. In contrast to database accessor 224 of figure 2, however, database accessor/listener 524 does not update the PIM database 538. Database accessor/listener 524 interacts with mirror database 520 only and saves any updates coming from the synchronizer 516 to mirror database 520. Database accessor/listener 524 also listens for any changes in the mirror database 520 and communicates any such changes to synchronizer 516.
Those of skill in the art will appreciate that the foregoing disclosure includes a variety of aspects and embodiments. According to a further aspect, the present disclosure relates to a method for implementing continuous synchronization of personal information management (PIM) applications between a host desktop computer and a client wireless handheld device. The method comprises sending a PIM message from the host desktop computer to the client wireless handheld device via a wireless network, receiving the PIM
message in the client wireless handheld device, translating the PIM message from network data format into handheld data format, determining the type of the PIM
message, updating a PIM database with the PIM message if the PIM message is a non-email message and updating a mirror database with the PIM message. The PIM database stores every PIM
message entry, while the mirror database stores a mirror image of every PIM
message entry in the PIM database along with information for synchronizing the host desktop computer with the client wireless handheld device.
According to certain embodiments, the method further comprises extracting appointment data if the PIM message is an email message, determining if the appointment data is valid, storing the email message into an email database if the appointment data is valid, updating the PIM database with the appointment data and updating the mirror database with the appointment data.
According to a further embodiment, the present disclosure relates to a method for implementing continuous synchronization of personal information management (PIM) applications between a host desktop computer and a client wireless handheld device. The method comprises sending a PIM message from the client wireless handheld device, updating a PIM database, notifying there is a change in the PIM database, comparing the contents of the PIM database and the contents of a mirror database, identifying the change information in the PIM database, updating a mirror database based on the change information, determining the type of the PIM message, translating the change information from handheld data format into network data format if the PIM message is a non-email message, sending the change information from the client wireless handheld device to the host desktop computer via a wireless network, updating a desktop database of the host desktop computer based on the change information. The PIM database stores every PIM
message entry, while the mirror database stores a mirror image of every PIM
message entry in the PIM database along with additional information for synchronizing between the host desktop computer and the client wireless handheld device.
In one aspect, the method further comprises creating a new email message if the PIM message is the email message, storing the new email message into an email database, attaching appointment data identified from the change information to the new email, translating the new email message attached with appointment data from handheld data format into network data format, sending the new email message attached with appointment data from the client wireless handheld device to the host desktop computer via a wireless network, updating a desktop database of the host desktop computer based on the appointment data, and displaying the new email message attached with appointment data.
According to a further embodiment, the present disclosure relates to a system for implementing continuous synchronization of personal information management (PIM) applications between a host desktop computer and a client wireless handheld device. The system comprises a host desktop computer having a desktop database for creating a first PIM message and sending the first PIM message from the host desktop computer via a wireless network to the client wireless handheld device, and receiving a second PIM
message resulted from a PIM change from the client wireless handheld device and updating the desktop database based on the change information if the second PIM message is an non-email message, a wireless network communicably linked to the host desktop computer, a client wireless handheld device communicably linked to the wireless network, the client wireless handheld device including an interface mechanism for receiving the first PIM message and sending the second PIM message according to network communication protocols and translating the first second PIM from handheld data format into network data format if the second message is an non-email message, a synchronizer for determining the validity of the first PIM message from the host, desktop computer and the validity of the second PIM message, determining the types of the first PIM
message and the second PIM message, a PIM database for storing first PIM message from the host desktop computer and the PIM change from the client wireless handheld device, a mirror database for storing a mirror image of every message in the PIM database and additional information for synchronizing the host desktop computer with the client wireless handheld device, and updating means for updating the PIM database and the mirror database based on the first PIM message from the host desktop computer, and updating the PIM database and mirror database based on the PIM change from the client wireless handheld device.
In one aspect, the synchronizer creates a new email message if the second PIM
message is an email message, and attaches appointment data to the new email message.
The system may further comprise an email communication module for receiving the first PIM message from the interface mechanism if the type of the first PIM message is an email message and for sending the new email message attached with the appointment data if the second PIM message is an email message, and an email database for saving the email message from the host desktop computer and the email message from the client wireless handheld device. The interface mechanism translates the new message attached with the appointment data from handheld data format into network data format, and the desktop computer extracts the appointment data and updates the desktop database.
While this application has described a wireless network with reference to illustrative embodiments, this description is not intended to be construed in a limiting sense. Various modifications and combinations of the illustrative embodiments as well as other embodiments of the mobile device, will be apparent to persons skilled in the art upon reference to the description. It is, therefore, intended that the appended claims encompass any such modifications or embodiments.
Claims (18)
1. A method for implementing continuous synchronization of personal information management (PIM) applications from a host desktop computer having a desktop PIM
database to a client wireless handheld device having a handheld PIM database and a handheld mirror database, the method comprising:
receiving at the client wireless handheld device, via a wireless network, a PIM
message generated at the host desktop computer upon a change in the desktop PIM database;
determining whether the PIM message is an email message or a non-e-mail message;
storing the PIM message in the handheld PIM database and in the handheld mirror database if the PIM message is a non-email message;
extracting appointment data from the PIM message if the PIM message is an email message with appointment data; and determining whether the appointment data extracted from the email message conflicts with an existing appointment in the handheld PIM database;
when the appointment data extracted from the email message does not conflict with an existing appointment in the handheld PIM database, storing the email message into an e-mail database, storing the extracted appointment data in the handheld PIM database, and storing the extracted appointment data in the handheld mirror database.
database to a client wireless handheld device having a handheld PIM database and a handheld mirror database, the method comprising:
receiving at the client wireless handheld device, via a wireless network, a PIM
message generated at the host desktop computer upon a change in the desktop PIM database;
determining whether the PIM message is an email message or a non-e-mail message;
storing the PIM message in the handheld PIM database and in the handheld mirror database if the PIM message is a non-email message;
extracting appointment data from the PIM message if the PIM message is an email message with appointment data; and determining whether the appointment data extracted from the email message conflicts with an existing appointment in the handheld PIM database;
when the appointment data extracted from the email message does not conflict with an existing appointment in the handheld PIM database, storing the email message into an e-mail database, storing the extracted appointment data in the handheld PIM database, and storing the extracted appointment data in the handheld mirror database.
2. The method of claim 1, wherein the PIM message is one of: creation of a calendar record, an update to a calendar record and deletion to a calendar record.
3. The method of claim 2, wherein the calendar record is an appointment record.
4. The method of claim 2, wherein the calendar record is a meeting request record.
5. The method of claim 2, wherein the calendar record is a meeting response record.
6. The method of claim 1, wherein the PIM message is one of: creation of a contacts record, an update to a contacts record and deletion of a contacts record.
7. The method of claim 1, wherein the PIM message is one of a creation of a tasks record, an update to a tasks record and a deletion to a tasks record.
8. The method of claim 1, wherein the PIM message is one of a creation of a memos record, an update to a memos record and a deletion to a memos record.
9. A wireless handheld device operable to continuously synchronize PIM
information with a host desktop computer, the device comprising:
means for receiving at the wireless handheld device via a wireless network a PIM
message from the host desktop computer whenever there is a change in the desktop PIM
database;
means for determining whether the PIM message is an email message or a non-e-mail message;
storing the PIM message in the handheld PIM database and in the handheld mirror database if the PIM message is a non-email message;
extracting appointment data from the PIM message if the PIM message is an email message with appointment data; and determining whether the appointment data extracted from the email message conflicts with an existing appointment in the handheld PIM database;
when the appointment data extracted from the email message does not conflict with an existing appointment in the handheld PIM database, storing the email message into an e-mail database, storing the extracted appointment data in the handheld PIM database, and storing the extracted appointment data in the handheld mirror database.
information with a host desktop computer, the device comprising:
means for receiving at the wireless handheld device via a wireless network a PIM
message from the host desktop computer whenever there is a change in the desktop PIM
database;
means for determining whether the PIM message is an email message or a non-e-mail message;
storing the PIM message in the handheld PIM database and in the handheld mirror database if the PIM message is a non-email message;
extracting appointment data from the PIM message if the PIM message is an email message with appointment data; and determining whether the appointment data extracted from the email message conflicts with an existing appointment in the handheld PIM database;
when the appointment data extracted from the email message does not conflict with an existing appointment in the handheld PIM database, storing the email message into an e-mail database, storing the extracted appointment data in the handheld PIM database, and storing the extracted appointment data in the handheld mirror database.
10. The device of claim 9, wherein the change is one of: creation of a calendar record, an update to a calendar record and deletion of a calendar record.
11. The device of claim 10, wherein the calendar record is an appointment record.
12. The device of claim 10, wherein the calendar record is a meeting request record.
13. The device of claim 10, wherein the calendar record is a meeting response record.
14. The device of claim 9, wherein the change to PIM information is one of:
creation of a contacts record, an update to a contacts record and deletion of a contacts record.
creation of a contacts record, an update to a contacts record and deletion of a contacts record.
15. The device of claim 9, wherein the change to PIM information is one of:
creation of a tasks record, an update to a tasks record and deletion of a tasks record.
creation of a tasks record, an update to a tasks record and deletion of a tasks record.
16. The device of claim 9, wherein the change to PIM information is one of:
creation of a memos record, an update to a memos record and deletion of a memos record.
creation of a memos record, an update to a memos record and deletion of a memos record.
17. A system for implementing continuous synchronization of personal information management (PIM) between a host desktop computer and a client wireless handheld device via a wireless network, the system comprising:
a host desktop computer having a desktop PIM database and operable to send a first PIM message via the wireless network to the client wireless handheld device;
a client wireless handheld device having a handheld PIM database and a mirror database, the handheld device operable to receive the first PIM message via the wireless network and determine whether the PIM message is an email message or a non-e-mail message; to store the PIM message in the handheld PIM database and in the handheld mirror database if the PIM message is a non-email message; to extract appointment data from the PIM message if the PIM message is an email message with appointment data and determine whether the appointment data extracted from the email message conflicts with an existing appointment in the handheld PIM database, and if the appointment data extracted from the email message does not conflict with an existing appointment in the handheld PIM database, to store the email message into an e-mail database, store the extracted appointment data in the handheld PIM database, and store the extracted appointment data in the handheld mirror database.
a host desktop computer having a desktop PIM database and operable to send a first PIM message via the wireless network to the client wireless handheld device;
a client wireless handheld device having a handheld PIM database and a mirror database, the handheld device operable to receive the first PIM message via the wireless network and determine whether the PIM message is an email message or a non-e-mail message; to store the PIM message in the handheld PIM database and in the handheld mirror database if the PIM message is a non-email message; to extract appointment data from the PIM message if the PIM message is an email message with appointment data and determine whether the appointment data extracted from the email message conflicts with an existing appointment in the handheld PIM database, and if the appointment data extracted from the email message does not conflict with an existing appointment in the handheld PIM database, to store the email message into an e-mail database, store the extracted appointment data in the handheld PIM database, and store the extracted appointment data in the handheld mirror database.
18. The system of claim 17, wherein the first PIM message relates to one of:
creation of a calendar record, an update to a calendar record and deletion of a calendar record.
creation of a calendar record, an update to a calendar record and deletion of a calendar record.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US63905304P | 2004-12-23 | 2004-12-23 | |
US60/639,053 | 2004-12-23 | ||
PCT/CA2005/001960 WO2006066413A1 (en) | 2004-12-23 | 2005-12-22 | Systems and methods for continuous pim synchronization between a host computer and a client handheld device |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2594100A1 CA2594100A1 (en) | 2006-06-29 |
CA2594100C true CA2594100C (en) | 2012-10-16 |
Family
ID=36601329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA2594100A Active CA2594100C (en) | 2004-12-23 | 2005-12-22 | Systems and methods for continuous pim synchronization between a host computer and a client handheld device |
Country Status (7)
Country | Link |
---|---|
US (1) | US8548943B2 (en) |
EP (1) | EP1829286B1 (en) |
CN (1) | CN101151841A (en) |
AT (1) | ATE492969T1 (en) |
CA (1) | CA2594100C (en) |
DE (1) | DE602005025527D1 (en) |
WO (1) | WO2006066413A1 (en) |
Families Citing this family (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6253061B1 (en) | 1997-09-19 | 2001-06-26 | Richard J. Helferich | Systems and methods for delivering information to a transmitting and receiving device |
US7003304B1 (en) | 1997-09-19 | 2006-02-21 | Thompson Investment Group, Llc | Paging transceivers and methods for selectively retrieving messages |
US6826407B1 (en) | 1999-03-29 | 2004-11-30 | Richard J. Helferich | System and method for integrating audio and visual messaging |
US6636733B1 (en) | 1997-09-19 | 2003-10-21 | Thompson Trust | Wireless messaging method |
US6983138B1 (en) | 1997-12-12 | 2006-01-03 | Richard J. Helferich | User interface for message access |
US7631017B2 (en) * | 2005-12-08 | 2009-12-08 | Motorola, Inc. | Method and system for maintaining current data for wireless devices |
US8433753B2 (en) * | 2005-12-15 | 2013-04-30 | International Business Machines Corporation | Providing meeting information from a meeting server to an email server to store in an email database |
US8171104B2 (en) * | 2005-12-15 | 2012-05-01 | International Business Machines Corporation | Scheduling and searching meetings in a network environment |
KR100678126B1 (en) * | 2006-03-24 | 2007-02-02 | 삼성전자주식회사 | Method of managing duplication schedule in mobile communication terminal |
US8370423B2 (en) | 2006-06-16 | 2013-02-05 | Microsoft Corporation | Data synchronization and sharing relationships |
CN100461702C (en) * | 2006-08-29 | 2009-02-11 | 中国移动通信集团公司 | Friendly-synchronizing management method for network community |
US8768332B2 (en) * | 2006-09-01 | 2014-07-01 | At&T Mobility Ii Llc | Interactive personal information management system |
US8453066B2 (en) | 2006-11-06 | 2013-05-28 | Microsoft Corporation | Clipboard augmentation with references |
US20080186807A1 (en) * | 2007-02-02 | 2008-08-07 | Research In Motion Limited | Electronic device and method of controlling an electronic device for calendar event updates |
US9552571B2 (en) * | 2007-02-02 | 2017-01-24 | Blackberry Limited | Electronic device and method of meeting notification |
US7738503B2 (en) * | 2007-02-02 | 2010-06-15 | Palm, Inc. | Multi-way, peer-to-peer synchronization |
US20080191896A1 (en) * | 2007-02-09 | 2008-08-14 | Jain Rohit Rocky | Electronic device and method of adding parties to a calendar event |
US20080195455A1 (en) * | 2007-02-09 | 2008-08-14 | Research In Motion Limited | Electronic device and method of scheduling calendar events |
US20080195619A1 (en) * | 2007-02-09 | 2008-08-14 | Jain Rohit Rocky | Electronic device and method of sharing calendar-event information |
US7849056B2 (en) * | 2007-02-09 | 2010-12-07 | Research In Motion Limited | System and method for managing databases associated with respective personal information manager service accounts |
US8751442B2 (en) * | 2007-02-12 | 2014-06-10 | Microsoft Corporation | Synchronization associated duplicate data resolution |
IL182029A (en) * | 2007-03-19 | 2014-06-30 | Emoze Ltd | Method and system for email and pim synchronization and updating |
CN101296507B (en) * | 2007-04-29 | 2012-06-27 | 华为技术有限公司 | Method and system and server for implementing list information synchronization |
US7895246B2 (en) * | 2007-05-31 | 2011-02-22 | Microsoft Corporation | Collection bin for data management and transformation |
US20090089342A1 (en) * | 2007-09-28 | 2009-04-02 | Research In Motion Limited | Electronic device and method for managing storage of data |
US20090150569A1 (en) * | 2007-12-07 | 2009-06-11 | Avi Kumar | Synchronization system and method for mobile devices |
US20090164667A1 (en) * | 2007-12-21 | 2009-06-25 | General Instrument Corporation | Synchronizing of Personal Content |
US8296671B2 (en) * | 2008-05-01 | 2012-10-23 | Microsoft Corporation | Enabling access to rich data by intercepting paste operations |
US8171080B2 (en) * | 2008-05-01 | 2012-05-01 | Embarq Holdings Company Llc | Click to create meeting makers from electronic messages |
US20090282169A1 (en) * | 2008-05-09 | 2009-11-12 | Avi Kumar | Synchronization programs and methods for networked and mobile devices |
US8285675B2 (en) * | 2008-05-12 | 2012-10-09 | Research In Motion Limited | Electronic device and method for managing storage of data |
JP4612715B2 (en) * | 2008-09-05 | 2011-01-12 | 株式会社日立製作所 | Information processing system, data update method, and data update program |
US8386773B2 (en) * | 2008-12-09 | 2013-02-26 | Research In Motion Limited | Verification methods and apparatus for use in providing application services to mobile communication devices |
US9330100B2 (en) * | 2009-02-26 | 2016-05-03 | Red Hat, Inc. | Protocol independent mirroring |
US8503984B2 (en) * | 2009-12-23 | 2013-08-06 | Amos Winbush, III | Mobile communication device user content synchronization with central web-based records and information sharing system |
US20110149086A1 (en) | 2009-12-23 | 2011-06-23 | Winbush Iii Amos | Camera user content synchronization with central web-based records and information sharing system |
GB2511717A (en) * | 2011-09-26 | 2014-09-17 | Theappbuilder Ltd | Updating mobile applications |
US9436701B2 (en) * | 2012-07-03 | 2016-09-06 | Salesforce.Com, Inc. | Methods and systems for regulating user engagement |
US9489440B2 (en) * | 2012-12-13 | 2016-11-08 | Microsoft Technology Licensing Llc | Opportunistic, priority-based object synchronization |
US20140222951A1 (en) * | 2013-02-05 | 2014-08-07 | Samsung Electronics Co. Ltd. | Apparatus and method for syncing device notifications |
US9858052B2 (en) * | 2013-03-21 | 2018-01-02 | Razer (Asia-Pacific) Pte. Ltd. | Decentralized operating system |
US9021569B1 (en) * | 2014-01-21 | 2015-04-28 | Avaya Inc. | Wireless guest access |
GB2543067A (en) * | 2015-10-06 | 2017-04-12 | Vodafone Ip Licensing Ltd | Synchronisation of communications contacts between devices |
US10447773B2 (en) * | 2015-12-29 | 2019-10-15 | General Motors Llc | Aggregating vehicle-related big data |
Family Cites Families (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US575042A (en) * | 1897-01-12 | Automatic regulator for liquid-heaters | ||
US5666530A (en) * | 1992-12-02 | 1997-09-09 | Compaq Computer Corporation | System for automatic synchronization of common file between portable computer and host computer via communication channel selected from a plurality of usable channels there between |
US5790974A (en) * | 1996-04-29 | 1998-08-04 | Sun Microsystems, Inc. | Portable calendaring device having perceptual agent managing calendar entries |
US5752042A (en) | 1996-06-07 | 1998-05-12 | International Business Machines Corporation | Server computer for selecting program updates for a client computer based on results of recognizer program(s) furnished to the client computer |
US5974238A (en) * | 1996-08-07 | 1999-10-26 | Compaq Computer Corporation | Automatic data synchronization between a handheld and a host computer using pseudo cache including tags and logical data elements |
US5758355A (en) | 1996-08-07 | 1998-05-26 | Aurum Software, Inc. | Synchronization of server database with client database using distribution tables |
US5926816A (en) * | 1996-10-09 | 1999-07-20 | Oracle Corporation | Database Synchronizer |
US6006274A (en) | 1997-01-30 | 1999-12-21 | 3Com Corporation | Method and apparatus using a pass through personal computer connected to both a local communication link and a computer network for indentifying and synchronizing a preferred computer with a portable computer |
US6125369A (en) | 1997-10-02 | 2000-09-26 | Microsoft Corporation | Continuous object sychronization between object stores on different computers |
US6633924B1 (en) | 1997-10-02 | 2003-10-14 | Charles Wu | Object synchronization between objects stores on different computers |
US6034621A (en) * | 1997-11-18 | 2000-03-07 | Lucent Technologies, Inc. | Wireless remote synchronization of data between PC and PDA |
US6295541B1 (en) * | 1997-12-16 | 2001-09-25 | Starfish Software, Inc. | System and methods for synchronizing two or more datasets |
US6463463B1 (en) | 1998-05-29 | 2002-10-08 | Research In Motion Limited | System and method for pushing calendar event messages from a host system to a mobile data communication device |
US7209949B2 (en) * | 1998-05-29 | 2007-04-24 | Research In Motion Limited | System and method for synchronizing information between a host system and a mobile data communication device |
US20010054115A1 (en) * | 1998-05-29 | 2001-12-20 | Tabitha Ferguson | System and method for bundling information |
US6308201B1 (en) * | 1999-04-08 | 2001-10-23 | Palm, Inc. | System and method for sharing data among a plurality of personal digital assistants |
US6757698B2 (en) * | 1999-04-14 | 2004-06-29 | Iomega Corporation | Method and apparatus for automatically synchronizing data from a host computer to two or more backup data storage locations |
US6421717B1 (en) * | 1999-09-10 | 2002-07-16 | Avantgo, Inc. | System, method, and computer program product for customizing channels, content, and data for mobile devices |
JP4374725B2 (en) * | 1999-09-22 | 2009-12-02 | パナソニック株式会社 | Communication method and communication station |
US6671757B1 (en) * | 2000-01-26 | 2003-12-30 | Fusionone, Inc. | Data transfer and synchronization system |
US6694336B1 (en) | 2000-01-25 | 2004-02-17 | Fusionone, Inc. | Data transfer and synchronization system |
US6820088B1 (en) * | 2000-04-10 | 2004-11-16 | Research In Motion Limited | System and method for synchronizing data records between multiple databases |
US20020016818A1 (en) * | 2000-05-11 | 2002-02-07 | Shekhar Kirani | System and methodology for optimizing delivery of email attachments for disparate devices |
JP2002056260A (en) * | 2000-08-10 | 2002-02-20 | Itsuo Kagami | System and method for reserving beauty parlor |
WO2002023330A2 (en) | 2000-09-11 | 2002-03-21 | Avantgo, Inc. | Method, system, and computer program product for synchronization of similar data objects with event information |
US6611849B1 (en) * | 2000-09-29 | 2003-08-26 | Palm Source, Inc. | System for synchronizing databases on multiple devices utilizing a home base |
DE10053016A1 (en) * | 2000-10-17 | 2002-04-25 | Libelle Informatik Gmbh | Device for data mirroring has mirror system with older data version, temporary memory for data related to actions leading from older version to current one, monitoring/changeover program |
AU2002237758A1 (en) | 2001-01-03 | 2002-07-16 | Synchrologic, Inc. | A system and method for data synchronization between remote devices |
US6601076B1 (en) | 2001-01-17 | 2003-07-29 | Palm Source, Inc. | Method and apparatus for coordinated N-way synchronization between multiple database copies |
US7013350B2 (en) * | 2001-02-16 | 2006-03-14 | Microsoft Corporation | System setting flags based on address types in destination address field of a message to indicate different transports to deliver the message |
US7363388B2 (en) * | 2001-03-28 | 2008-04-22 | Siebel Systems, Inc. | Method and system for direct server synchronization with a computing device |
US8346718B2 (en) * | 2001-09-07 | 2013-01-01 | Extended Systems, Inc. | Synchronizing recurring events |
US7107316B2 (en) * | 2001-09-20 | 2006-09-12 | International Business Machines Corporation | Controlling throughput of message requests in a messaging system |
CA2467404A1 (en) | 2001-11-15 | 2003-05-30 | Visto Corporation | System and methods for asychronous synchronization |
US20030182391A1 (en) * | 2002-03-19 | 2003-09-25 | Mike Leber | Internet based personal information manager |
US6650088B1 (en) | 2002-04-23 | 2003-11-18 | Palm, Inc. | Apparatus and system for charging a portable electronic device |
WO2003100690A1 (en) * | 2002-05-17 | 2003-12-04 | Synchrologic | A system and method for parsing itinerary data |
US7318073B2 (en) * | 2002-05-31 | 2008-01-08 | Microsoft Corporation | System and method for downloading information to a mobile device |
US20030229654A1 (en) * | 2002-06-10 | 2003-12-11 | Advanced Barcode Technology, Inc. | PDASync - a synching method between a PDA (Personal Digital Assistant) client or clients and a host computer supporting one-to-many and many-to-one database synchronization |
US7177886B2 (en) * | 2003-02-07 | 2007-02-13 | International Business Machines Corporation | Apparatus and method for coordinating logical data replication with highly available data replication |
US20050065995A1 (en) * | 2003-09-23 | 2005-03-24 | Microsoft Corporation | Content and task-execution services provided through dialog-based interfaces |
WO2005036365A2 (en) | 2003-10-10 | 2005-04-21 | Accenture Global Services Gmbh | Tool for synchronization of business information |
WO2006047650A2 (en) * | 2004-10-25 | 2006-05-04 | Empower Technologies, Inc. | System and method for global data synchronization |
US7519924B2 (en) * | 2004-11-03 | 2009-04-14 | Research In Motion Limited | Handheld electronic device including appointment and meeting conflict notification, and associated method |
-
2005
- 2005-12-22 CN CNA2005800437277A patent/CN101151841A/en active Pending
- 2005-12-22 AT AT05845631T patent/ATE492969T1/en not_active IP Right Cessation
- 2005-12-22 US US11/317,216 patent/US8548943B2/en active Active
- 2005-12-22 DE DE602005025527T patent/DE602005025527D1/en active Active
- 2005-12-22 WO PCT/CA2005/001960 patent/WO2006066413A1/en active Application Filing
- 2005-12-22 EP EP05845631A patent/EP1829286B1/en active Active
- 2005-12-22 CA CA2594100A patent/CA2594100C/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN101151841A (en) | 2008-03-26 |
DE602005025527D1 (en) | 2011-02-03 |
WO2006066413A1 (en) | 2006-06-29 |
EP1829286B1 (en) | 2010-12-22 |
US8548943B2 (en) | 2013-10-01 |
ATE492969T1 (en) | 2011-01-15 |
EP1829286A1 (en) | 2007-09-05 |
US20060218224A1 (en) | 2006-09-28 |
EP1829286A4 (en) | 2008-01-23 |
CA2594100A1 (en) | 2006-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2594100C (en) | Systems and methods for continuous pim synchronization between a host computer and a client handheld device | |
US7644125B2 (en) | Method, system, and computer program product for synchronization of similar data objects with event information | |
US8880735B2 (en) | Mail server based application record synchronization | |
EP1338968B1 (en) | Synchronizing over a number of synchronization mechanisms using flexible rules | |
CN101448317B (en) | Apparatus and methods for operation of a wireless communication system | |
US7840528B2 (en) | System and method for integrating continuous synchronization on a host handheld device | |
US20040054739A1 (en) | System and method for maintaining wireless file folders at a wireless device | |
US20070288614A1 (en) | Method and apparatus for folder synchronization and management | |
KR20070014188A (en) | Method, device and software for updating data in mobile devices | |
US8171172B2 (en) | Method, system and apparatus for selective application access and synchronization | |
CN101001243A (en) | System and method for implementing mobile information synchronous | |
CN101895579A (en) | Address book synchronization method and system | |
CA2522477C (en) | System and method for integrating continuous synchronization on a host handheld device | |
US8874795B2 (en) | Data synchronization system | |
CA2620453C (en) | System and method for managing databases associated with respective personal information manager service accounts | |
CA2558146C (en) | Method, system and apparatus for selective application access and synchronization | |
CN101764851A (en) | Method and mechanism for providing on-line address-book recycle bin | |
CN115221239A (en) | Multi-data-source calendar data bidirectional synchronization method and system | |
CA2771955C (en) | Method and apparatus for folder synchronization and management | |
JP2004005199A (en) | Shared information management method, mobile communication terminal and shared information management system | |
EP1868148A1 (en) | Method and apparatus for folder synchronization and management |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request |