IP Library Granted Patent US 8,103,728
Granted Patent B2
US 8,103,728 · App. 12/051,933 · Granted Jan 24, 2012

Database synchronization on a network

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,103,728
App. No.
12/051,933
Granted
Jan 24, 2012
Kind
B2
Abstract

Systems, methods and media for database synchronization on a network are disclosed. More particularly, hardware and/or software for database synchronization on a network protected with firewalls are disclosed. Embodiments include an e-mail listener for receiving e-mails from a plurality of computer systems and modifying a central database based on the received e-mails. In one embodiment, the computers systems and central database are protected by a firewall. Other embodiments provide for a transaction log that includes information about received e-mails. In these embodiments, the transaction log may optionally be used to synchronize other databases, including local databases located at the computer systems.

Claims (47)

1. A data processing system for synchronizing a database on a network, the system comprising:

a plurality of computer systems each having one or more processors in communication with the network and a local database, the computer systems being capable of transmitting a transaction e-mail, the transaction e-mail comprising an indication of a modification by the user to a local database of the user's computer system;

a central database in communication with the network and having a firewall that prevents access to the central database by users of the plurality of computer systems; and

an e-mail listener in communication with the network, the e-mail listener being capable of receiving a transaction e-mail transmitted from one of the plurality of computer systems via the network, wherein the e-mail listener analyzes received transaction e-mail by determining if the transaction e-mail contains a pre-defined string of characters associated with the central database and, in response to determining that the pre-defined string of characters is present, determining whether the transaction e-mail adds information to the central database; and

wherein the e-mail listener modifies the central database based on the analysis of the transaction e-mail to synchronize the central database with the local database, wherein:

the user's computer system, prior to the transmitting, modifying of a record in the local database and creating the transaction email;

the e-mail listener determining, in response to receiving the transaction e-mail, whether the transaction e-mail is written in a second language different from a first language of entries in the central database, and translating the transaction e-mail to the first language if the transaction e-mail is written in the second language;

the e-mail listener updating a transaction log based on the analysis of the transaction e-mail and transmitting the transaction log to the user's computer system through a server computer system firewall; and

the user's computer system receiving the transaction log and modifying the local database based on the receiving of the transaction log.

2. The system of claim 1 , wherein at least one of the plurality of computer systems is protected by a firewall.

3. The system of claim 1 , wherein the e-mail listener is capable of updating a transaction log based on the received e-mail.

4. The system of claim 1 , wherein at least one of the plurality of computer systems is a personal digital assistant.

5. The system of claim 1 , further comprising an administrator computer in communication with the e-mail listener, the administrator computer being adapted to adjust settings of the e-mail listener.

6. A computer-implemented method for synchronizing a central database on a network, the method comprising:

modifying, by a user's computer system, a record in a local database associated with the user's computer system;

creating, by the user's computer system, a transaction e-mail;

by an e-mail listener executing on one or more processors of a server computer system, receiving the transaction e-mail from the user's computer system through a firewall that prevents access to a central database by the user's computer system, the transaction e-mail comprising an indication of the modification to the local database;

analyzing the transaction e-mail, by the e-mail listener, by determining if the transaction e-mail contains a pre-defined string of characters associated with the central database and, in response to determining that the pre-defined string of characters is not present, deleting the transaction e-mail;

in response to determining that the pre-defined string of characters is present in the transaction e-mail, determining, by the e-mail listener, whether the transaction e-mail adds information to the central database;

in response to determining that the transaction e-mail adds information to the central database, modifying, by the e-mail listener, a central database based on the analysis of the transaction e-mail to synchronize the central database with the local database, wherein modifying the central database comprises determining, by the e-mail listener, whether the transaction e-mail is written in a second language different from a first language of entries in the central database, and translating, by the e-mail listener, the transaction e-mail to the first language if the transaction e-mail is written in the second language;

updating, by the e-mail listener, a transaction log based on the analysis of the transaction e-mail and transmitting, by the e-mail listener, the transaction log to the user's computer system through a server computer system firewall;

receiving, by the user's computer system, the transaction log; and

modifying, by the user's computer system, the local database subsequent to, and based on, the received transaction log.

7. The method of claim 6 , further comprising updating a transaction log based on the analysis of the transaction e-mail.

8. The method of claim 6 , further comprising:

updating a transaction log based on the analysis of the transaction e-mail;

transmitting the transaction log;

receiving the transaction log at a computer system; and

modifying the local database based on the transaction log.

9. The method of claim 6 , further comprising before analyzing the transaction e-mail, decrypting the transaction e-mail.

10. The method of claim 6 , further comprising before analyzing the transaction e-mail, authenticating the transaction e-mail.

11. The method of claim 6 , further comprising transmitting the transaction log.

12. The method of claim 6 , further comprising modifying a second database based on the analysis of the transaction e-mail.

13. A machine-accessible medium of a storage device containing instructions effective, when executing in a data processing system, to cause said data processing system to perform operations comprising:

modifying, by a user's computer system, a record in a local database associated with the user's computer system;

creating, by the user's computer system, a transaction e-mail;

by an e-mail listener executing on one or more processors of a server computer system, receiving the transaction e-mail from the user's computer system through a firewall that prevents access to a central database by the user's computer system, the transaction e-mail comprising an indication of the modification to the local database;

analyzing the transaction e-mail, by the e-mail listener, by determining if the transaction e-mail contains a pre-defined string of characters associated with the central database and, in response to determining that the pre-defined string of characters is not present, deleting the transaction e-mail;

in response to determining that the pre-defined string of characters is present in the transaction e-mail, determining, by the e-mail listener, whether the transaction e-mail adds information to the central database;

in response to determining that the transaction e-mail adds information to the central database, modifying by the e-mail listener the central database based on the analysis of the transaction e-mail to synchronize the central database with the local database, wherein modifying the central database comprises determining, by the e-mail listener, whether the transaction e-mail is written in a second language different from a first language of entries in the central database, and translating, by the e-mail listener, the transaction e-mail to the first language if the transaction e-mail is written in the second language;

updating, by the e-mail listener, a transaction log based on the analysis of the transaction e-mail and transmitting, by the e-mail listener, the transaction log to the user's computer system through a server computer system firewall;

receiving, by the user's computer system, the transaction log; and

modifying, by the user's computer system, the local database subsequent to, and based on, the received transaction log.

14. The machine-accessible medium of claim 13 wherein the operations further comprise decrypting the transaction e-mail.

15. The machine-accessible medium of claim 13 wherein the operations further comprise authenticating the transaction e-mail.

16. The machine-accessible medium of claim 13 wherein the operations further comprise transmitting the transaction log.

17. The machine-accessible medium of claim 13 wherein the operations further comprise modifying a second database based on the analysis of the transaction e-mail.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 1, 2016
From: MIDWAY TECHNOLOGY COMPANY LLC
To: SERVICENOW, INC.
Reel/Frame 038324/0816 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 17, 2016
From: JOHNSON, GLEN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 038016/0098 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 5, 2016
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: MIDWAY TECHNOLOGY COMPANY LLC
Reel/Frame 037704/0257 →