EP1829286A1 - 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

Info

Publication number
EP1829286A1
EP1829286A1 EP05845631A EP05845631A EP1829286A1 EP 1829286 A1 EP1829286 A1 EP 1829286A1 EP 05845631 A EP05845631 A EP 05845631A EP 05845631 A EP05845631 A EP 05845631A EP 1829286 A1 EP1829286 A1 EP 1829286A1
Authority
EP
European Patent Office
Prior art keywords
pim
message
record
database
handheld device
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.)
Granted
Application number
EP05845631A
Other languages
German (de)
French (fr)
Other versions
EP1829286A4 (en
EP1829286B1 (en
Inventor
Anish Kumar Agrawal
Zhigang Ruan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BlackBerry Ltd
Original Assignee
Research in Motion Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Research in Motion Ltd filed Critical Research in Motion Ltd
Publication of EP1829286A1 publication Critical patent/EP1829286A1/en
Publication of EP1829286A4 publication Critical patent/EP1829286A4/en
Application granted granted Critical
Publication of EP1829286B1 publication Critical patent/EP1829286B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/273Asynchronous replication or reconciliation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/06Message adaptation to terminal or network requirements
    • H04L51/066Format adaptation, e.g. format conversion or compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/58Message adaptation for wireless communication

Definitions

  • 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.
  • PIM personal information management
  • 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.
  • 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.
  • 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.
  • 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 1 handheld device.
  • PIM applications such as calendar
  • the architecture automatically pushes the change to the desktop computer to synchronize the desktop computer with the handheld device immediately.
  • PIM applications such as calendar
  • the change is automatically pushed to the handheld device to immediately update the PIM application such as calendar information.
  • 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.
  • PIM personal information management
  • 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.
  • 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.
  • PIM personal information management
  • 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.
  • 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.
  • LAN local area network
  • WAN wide area network
  • MAN metropolitan area network
  • 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.
  • a trusted relay network 128 may be disposed between Internet 124 and the infrastructure of wireless packet data service network 102.
  • 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.
  • 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.
  • 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.
  • GPRS General Packet Radio Service
  • GSM Global System for Mobile Communications
  • 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.
  • EDGE Enhanced Data Rates for GSM Evolution
  • IDEN Integrated Digital Enhanced Network
  • CDMA Code Division Multiple Access
  • 3G 3rd Generation
  • 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.
  • 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 200 implements continuous synchronization of PIM applications between host desktop computer 108 and client wireless handheld device 202.
  • Client handheld device 202 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.
  • desktop computer 108 is a host device
  • 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.
  • 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.
  • 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.
  • synchronizer 216 controls the message to be transported through transport mechanism rather than email communication module 208.
  • 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.
  • 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.
  • 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 208 stores the email message into email database 212 so that it may be displayed by UI 234.
  • 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.
  • 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 238 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.
  • 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.
  • 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.
  • 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.
  • the transport mechanism 206 performs an interface process from network 201 to handheld device 202.
  • Transport mechanism 206 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • step 402 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.
  • 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.
  • 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.
  • step 416 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.
  • 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.
  • 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.
  • 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.
  • desktop computer 108 is a host device
  • 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.
  • 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.
  • 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.
  • synchronizer 516 directs the message through transport mechanism 506 rather than email communication module 508.
  • 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.
  • email communication module 508 email database 512 and UI 534.
  • 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.
  • 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.
  • 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.
  • PIM personal information management
  • 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.
  • 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.
  • 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.
  • PIM personal information management
  • 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.
  • 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.
  • 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
  • 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.

Abstract

A wireless handheld device operable to continuously synchronize PIM information with a host desktop computer. The device comprises a software module for updating a handheld PIM database to reflect a change to PIM information, a software module for updating a handheld mirror database to reflect the change to PIM information, a software module for generating a PIM message relating to the change to the PIM information, a software module for translating the PIM message from a handheld data format into a network data format and a software module 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 wireless1 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 200 implements continuous synchronization of PIM applications between host desktop computer 108 and client wireless handheld device 202. Client handheld device 202 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 208 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 238 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 206 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.
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

CLAIMS:
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, the method comprising: 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.
2. The method of claim 1, further comprising the steps of: extracting appointment data from the PIM message 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 handheld PIM database with the appointment data, and updating the handheld mirror database with the appointment data.
3. 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.
4. The method of claim 3, wherein the calendar record is an appointment record.
5. The method of claim 3, wherein the calendar record is a meeting request record.
6. The method of claim 3, wherein the calendar record is a meeting response record.
7. 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.
8. 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.
9. 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.
10. A wireless handheld device operable to continuously synchronize PIM information with a host desktop computer, the device comprising: 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.
11. The device of claim 10, wherein the change is one of: creation of a calendar record, an update to a calendar record and deletion of a calendar record.
12. The device of claim 11 , wherein the calendar record is an appointment record.
13. The device of claim 11 , wherein the calendar record is a meeting request record.
14. The device of claim 11, wherein the calendar record is a meeting response record.
15. The device of claim 10, 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.
16. The device of claim 10, 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.
17. The device of claim 10, 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.
18. 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, 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; 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.
19. The system of claim 18, further comprising a synchronizer operable to create a new email message if the second PIM message is an email message, and to attach appointment data to the new email message.
20. The system of claim 18, 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.
EP05845631A 2004-12-23 2005-12-22 Systems and methods for continuous pim synchronization between a host computer and a client handheld device Active EP1829286B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US63905304P 2004-12-23 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 (3)

Publication Number Publication Date
EP1829286A1 true EP1829286A1 (en) 2007-09-05
EP1829286A4 EP1829286A4 (en) 2008-01-23
EP1829286B1 EP1829286B1 (en) 2010-12-22

Family

ID=36601329

Family Applications (1)

Application Number Title Priority Date Filing Date
EP05845631A Active EP1829286B1 (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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6826407B1 (en) 1999-03-29 2004-11-30 Richard J. Helferich System and method for integrating audio and visual messaging
US6253061B1 (en) 1997-09-19 2001-06-26 Richard J. Helferich Systems and methods for delivering information to a transmitting and receiving device
US6636733B1 (en) 1997-09-19 2003-10-21 Thompson Trust Wireless messaging method
US7003304B1 (en) 1997-09-19 2006-02-21 Thompson Investment Group, Llc Paging transceivers and methods for selectively retrieving messages
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
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
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
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
US20080195619A1 (en) * 2007-02-09 2008-08-14 Jain Rohit Rocky Electronic device and method of sharing calendar-event information
US20080195455A1 (en) * 2007-02-09 2008-08-14 Research In Motion Limited Electronic device and method of scheduling calendar events
US20080191896A1 (en) * 2007-02-09 2008-08-14 Jain Rohit Rocky Electronic device and method of adding parties to a calendar event
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
CA2699089A1 (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
US8171080B2 (en) * 2008-05-01 2012-05-01 Embarq Holdings Company Llc Click to create meeting makers from electronic messages
US8296671B2 (en) * 2008-05-01 2012-10-23 Microsoft Corporation Enabling access to rich data by intercepting paste operations
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

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0917077A2 (en) * 1997-11-18 1999-05-19 Lucent Technologies Inc. Wireless remote synchronization of data between PC & PDA
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
US6295541B1 (en) * 1997-12-16 2001-09-25 Starfish Software, Inc. System and methods for synchronizing two or more datasets

Family Cites Families (41)

* Cited by examiner, † Cited by third party
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
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
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
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
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
GB2371902B (en) * 1999-09-10 2004-11-17 Avantgo Inc System, method, and computer program product for interactive interfacing with 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
AU2001289008A1 (en) 2000-09-11 2002-03-26 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
JP2005509979A (en) 2001-11-15 2005-04-14 ヴィスト・コーポレーション Asynchronous synchronization system and method
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
US20040044674A1 (en) * 2002-05-17 2004-03-04 Said Mohammadioun 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
CA2542330A1 (en) 2003-10-10 2005-04-21 Accenture Global Services Gmbh Tool for synchronization of business information
AU2005299366A1 (en) * 2004-10-25 2006-05-04 Empower Technologies Inc., A Washington Corporation 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

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
EP0917077A2 (en) * 1997-11-18 1999-05-19 Lucent Technologies Inc. Wireless remote synchronization of data between PC & PDA
US6295541B1 (en) * 1997-12-16 2001-09-25 Starfish Software, Inc. System and methods for synchronizing two or more datasets

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of WO2006066413A1 *

Also Published As

Publication number Publication date
DE602005025527D1 (en) 2011-02-03
EP1829286A4 (en) 2008-01-23
WO2006066413A1 (en) 2006-06-29
EP1829286B1 (en) 2010-12-22
US20060218224A1 (en) 2006-09-28
CA2594100A1 (en) 2006-06-29
CN101151841A (en) 2008-03-26
ATE492969T1 (en) 2011-01-15
US8548943B2 (en) 2013-10-01
CA2594100C (en) 2012-10-16

Similar Documents

Publication Publication Date Title
CA2594100C (en) Systems and methods for continuous pim synchronization between a host computer and a client handheld device
US20200313735A1 (en) Power saving management for mobile devices based on battery charge remaining
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
US7334001B2 (en) Method and system for data collection for alert delivery
US7840528B2 (en) System and method for integrating continuous synchronization on a host handheld device
US20070288614A1 (en) Method and apparatus for folder synchronization and management
US20100267359A1 (en) Mobile Phone Rapid Emergency Dispatch and Paging System and Method
US8171172B2 (en) Method, system and apparatus for selective application access and synchronization
CN101895579A (en) Address book synchronization method and system
CA2522477C (en) System and method for integrating continuous synchronization on a host handheld device
US20080130812A1 (en) Data synchronization system
CA2558146C (en) Method, system and apparatus for selective application access and synchronization
CN115221239A (en) Multi-data-source calendar data bidirectional synchronization method and system
CA2771955C (en) Method and apparatus for folder synchronization and management
EP1868148B1 (en) Method and apparatus for folder synchronization and management
JP2004005199A (en) Shared information management method, mobile communication terminal and shared information management system

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20070625

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC NL PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA HR MK YU

A4 Supplementary search report drawn up and despatched

Effective date: 20071220

RIC1 Information provided on ipc code assigned before grant

Ipc: H04L 12/58 20060101AFI20071214BHEP

17Q First examination report despatched

Effective date: 20080502

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC NL PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA HR MK YU

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

REF Corresponds to:

Ref document number: 602005025527

Country of ref document: DE

Date of ref document: 20110203

Kind code of ref document: P

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602005025527

Country of ref document: DE

Effective date: 20110203

REG Reference to a national code

Ref country code: NL

Ref legal event code: VDEP

Effective date: 20101222

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

LTIE Lt: invalidation of european patent or patent extension

Effective date: 20101222

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

Ref country code: LV

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

Ref country code: AT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

Ref country code: SI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

Ref country code: BG

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20110322

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20110402

Ref country code: BE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20110323

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20110422

Ref country code: CZ

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20110422

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

Ref country code: MC

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20101231

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: NL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

Ref country code: PL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

Ref country code: LI

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20101231

Ref country code: IE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20101222

Ref country code: CH

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20101231

26N No opposition filed

Effective date: 20110923

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602005025527

Country of ref document: DE

Effective date: 20110923

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: HU

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20110623

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20101222

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: TR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101222

REG Reference to a national code

Ref country code: DE

Ref legal event code: R082

Ref document number: 602005025527

Country of ref document: DE

Representative=s name: MERH-IP MATIAS ERNY REICHL HOFFMANN, DE

REG Reference to a national code

Ref country code: DE

Ref legal event code: R081

Ref document number: 602005025527

Country of ref document: DE

Owner name: BLACKBERRY LTD., WATERLOO, CA

Free format text: FORMER OWNER: RESEARCH IN MOTION LTD., ONTARIO, CA

Effective date: 20141215

Ref country code: DE

Ref legal event code: R082

Ref document number: 602005025527

Country of ref document: DE

Representative=s name: MERH-IP MATIAS ERNY REICHL HOFFMANN, DE

Effective date: 20141215

Ref country code: DE

Ref legal event code: R082

Ref document number: 602005025527

Country of ref document: DE

Representative=s name: MERH-IP MATIAS ERNY REICHL HOFFMANN PATENTANWA, DE

Effective date: 20141215

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 11

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 12

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 13

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20221228

Year of fee payment: 18

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20231227

Year of fee payment: 19

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20231227

Year of fee payment: 19