GB2384330A - System for synchronising a local database using SMS messages - Google Patents

System for synchronising a local database using SMS messages Download PDF

Info

Publication number
GB2384330A
GB2384330A GB0201027A GB0201027A GB2384330A GB 2384330 A GB2384330 A GB 2384330A GB 0201027 A GB0201027 A GB 0201027A GB 0201027 A GB0201027 A GB 0201027A GB 2384330 A GB2384330 A GB 2384330A
Authority
GB
United Kingdom
Prior art keywords
message
database
user
messages
sms
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.)
Withdrawn
Application number
GB0201027A
Other versions
GB0201027D0 (en
Inventor
Nick Rayne
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to GB0201027A priority Critical patent/GB2384330A/en
Publication of GB0201027D0 publication Critical patent/GB0201027D0/en
Publication of GB2384330A publication Critical patent/GB2384330A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

System allowing a user to interact with user specific data in a database, have means allowing a user to modify specific data in the database and means allowing the user to send a Short Message Service (SMS) message including a predetermined command to a controller associated with the database. The controller includes means for receiving the SMS message, means for determining the command, and means for interacting with the user data according to the command.

Description

<Desc/Clms Page number 1>
Personal Database Access via SMS In general terms, the invention proposes a method and a system for synchronizing a local database with a database server over the Internet; querying, deleting, editing, and populating the data via a web browser; and querying, deleting, editing, and populating the data via a system of SMS messages and responses using a short message server, queuing system, and processing application.
The invention relates to the fields of telecommunication systems, short messaging protocols, short messaging receiving and transmission technology, web applications, enterprise messaging and queuing systems, database design, database synchronization systems, and local personal computer user interfaces.
Although SMS is an extremely popular medium, and there are many applications employing it, there is a void in the area of access to user-owned and-managed databases presented in a complete solution with an effective querying and editing system, with no further development work or integration required.
The invention enables simple and complex queries embodied in SMS messages to allow access from a mobile telephone to a private or public database from any SMS-enabled device. The synchronization component allows the available data to be kept as current as is required by the users. The database can be a private database (such as a Contacts, Schdule or general Personal Information Management program), or it can be a corporate database server. The web application allows full management of the database from any Internet enabled computer, when a user is away from his own computer or his office.
An example of a sequence of user actions is as follows : 1. The user downloads a small application, which runs naively on his personal computer from a web site.
2. The user runs the small application using a simple interface, which
<Desc/Clms Page number 2>
synchronizes his database (for example, a contacts and schedule database from a popular Personal Information Management program) with the database held on the server.
3. The user sends an SMS from a mobile terminal to request database information. In the contacts example, the following steps might occur: * User sends a text message containing"SMITH"to the application telephone number.
The SMS server receives this and reads the sender's mobile number.
* The application queries the database based on the search text and the user mobile number.
* The application retrieves either a choice of names beginning with"SMITH"or all details stored under that single contact. Further fields can be retrieved using specific commands.
The application sends the results back to the user's number via another SMS message.
4. Further commands can be sent along with the search text, which perform a range of functions.
5. Additional management, editing, deleting, and inserting of records can be performed via a standard HTML browser accessing a Servlet which queries the same database.
<Desc/Clms Page number 3>
The dotted line in the diagram below represents the application constituting the invention.
Figure 1-Overview of Architecture Description of the invention using Contacts example The main application can either reside on a commercial SMSC (Short Messaging Service Centre) or can link to a server via a TCP/IP connection, as illustrated in Error! Reference source not found.
Error! Reference source not found..
The application is associated with a service provider having the SMSC or server and a website for interacting with a user's PC.
The three principal user interactions are detailed below, namely Synchronizing, SMS access, and Browser Access.
Synchronization of Database via Internet User Action User downloads and installs a small application from the service provider web site.
User clicks on a'Synchronize'button, either on the Windows task bar, start menu, or desktop, or directly on the Outlook toolbar.
<Desc/Clms Page number 4>
Application Activity The Synchronize application opens an Internet connection to the service provider server for streaming data.
The Synchronize application exports all records from Outlook, converting to XML format as it does so, and passes the data in a stream to the service provider server.
At the receiving end, the service provider server reads the XML and imports records into the database. Only those which are more recently changed than the service provider database will overwrite the existing record. If both records have been changed, duplicates will be kept and the user will be informed. These actions are in accordance with standard PIM synchronizing practice.
Database Access via SMS User Action The following example indicates how the user interfaces with the TextMine engine: if, for example, one was using the system to store contacts details : User sends A user sends a simple message to text message a telephone number associated with the service provider containing search text such as - JON- He receives either:
<Desc/Clms Page number 5>
Result : Phil Jones 07881111555 mobile 02074182000 work 02083611234 home Newtown Bank pic 336 Blossom Street Newtown NE2 5QT phi@newtown. com SEND M FOR MORE or, where there are multiple possible entries :
Alternative 1 Jonathan Smith result : 2 Phil Jones 3 Suzie Jonstone SEND NUMBER in which case the user can send a message containing the digit'1', '2', or'3'to specify the required record.
With most phones, a user can use the results to dial numbers directly without reentering them using the keypad. For example, Nokia phones have an option to 'Use number'that is, to choose any of the numbers embedded in the text message. This can be saved to the phone memory or dialled.
(Continued...)
<Desc/Clms Page number 6>
Further Commands User Individual fields from the contacts database can be retrieved by retrieves a sending, for example,'N' (for notes) after the above details are single field received. The same command can also be sent at the outset as 'JONE N'. (Sending'JONE'ensures that only one record is returned). The result would look like this: Result Met Phil at the furniture trade fair in Stockholm in Mar 99.
Reports to John Smith MD.
Responsible for UK, Ireland, France, Italy, and Holland.
SEND M FOR MORE User A contact can be'bounced'to an forwards a acquaintance's phone by sending contact to'B 07882111555'or, at the another outset,'JONE 8 07882111555'.
The acquaintance would receive:
<Desc/Clms Page number 7>
Result Phil Jones 07881111555 mobile 02074182000 work 02083611234 home REPLY WITH BLANK MSG TO START FREE TRIAL FROM TEXTMINE. CO. U and would subsequently receive details and further instructions by SMS.
Other commands allow the user to populate databases and amend records via SMS. The Nokia Business Card feature, if available, may also be used to add a record. Most data manipulation, however, will be managed via the browser interface mentioned above.
Application Activity Having seen the process from the user's perspective, the following represents the actions performed by the application : The SMSC receives SMS messages from mobile phones and directs them to the recipient mobile number (that of the application).
'The SMS Server Application listens for incoming messages using a commercially available JDK.
* It converts them into Java Message Service (JMS) messages using bespoke developed algorithms, and passes them to an incoming JMS queue (using the standard JMS API), controlled by the Java Enterprise Edition platform.
The bespoke developed Processing Application picks them off this queue and parses the messages into Search text, commands, and qualifiers, applying specialized application logic to create the necessary database queries. For
<Desc/Clms Page number 8>
example,'JONE B 07882111555'as shown above is interpreted as: 'Perform a search for JONE and send ('bounce') the results to the number shown, instead of the user's number'.
The Processing Application then performs the queries, communicating with the central database.
* The results returned from the database are parsed and interpreted by the Processing Application, and any commands embedded in the original message are performed. For example, a long result is split into messages of 140 characters each, leaving room for a message such as'Send M for more'. An 'N'command following the search text retrieves only the fields beginning with that letter, such as the Notes field.
* The Processing Application then packages the results into a JMS message and posts them to an outgoing queue, to be collected by the SMS Server Application and sent to the commercial SMSC.
'The Java Message Service implementation provides resilience since messages will not be lost, even in a complete application failure. Since the same queues are shared by the web application, and indeed by the synchronizing application, the messaging system controls access to the database and avoids the need for additional locking. In addition, most of the different components shown above can reside on independent machines. The JMS implementation therefore enables distributed computing as the demands on the application grow, as well as providing future scalability by substitution for commercial middleware components.
Database Access via Web Browser User Action 'A user logs on to the service provider web site using a username and password.
. A user-friendly interface allows him to view, edit, add, and delete records should he be away from his principal PC running the PIM application.
<Desc/Clms Page number 9>
Application Activity * The Servlet Engine receives requests from a normal web browser via an HTTP Server.
'It submits these requests to the same incoming queue as used by the SMS messages above.
* The responses returning from the database arrive by way of separate outgoing queue, and subsequently a Response Pool contained within an application Java Bean (not illustrated).
Elements of the Invention SMS Server Application This performs two principal functions (using a commercially available Java Development Kit) in addition to the conversion function described below : The application listens for incoming SMS messages, and passes them on for conversion into Java Message Service messages.
It sends messages as they are popped off the queue and converted.
SMS/JMS Conversion This is performed by means of bespoke code, and occurs within the SMSserver component. The routines also push and pop messages to and from the queue.
Queuing Function This is performed by means of bespoke code, but taking advantage of the Java Message Service API, which provides an environment for queues and message entities. The SMS Server, the Servlet Engine, and the Processing Application all perform this function.
<Desc/Clms Page number 10>
Processing Application This is specially developed by ourselves and performs several functions: It picks messages off the incoming queue.
. It analyzes the mobile originated messages and breaks them down into search, text, commands, and qualifiers.
* It stores session information for users returning with subsequent SMS messages.
It also analyzes messages originating from a web browser in a similar way.
It applies the application logic to both types of messages and performs queries on the database.
It controls access to the database by both sources, mobile originated and web browser originated.
It processes the returned queries and packages them into messages.
It delivers the two types of messages to their respective outgoing queues.
Servlet Engine This takes advantage of the Java Servlet API and a commercially available web server. It receives requests from a web page, packages them into Java Messages Service messages for queuing and also extracts outgoing messages from a queue for outward transmission.
For example : 1. User sends a web page HTTP request by clicking on a SUBMIT button.
2. This request is converted into a JMS message containing database instructions. E. g. 'Add new record with data contained herein'.
<Desc/Clms Page number 11>
3. The processing application receives these instructions and accesses the database accordingly.
4. The results returned from the database are converted into JMS messages and passed through the application.
5. The JMS messages are converted into HTTP responses to create the resulting web page visible to the user.
It makes use of its own outgoing queue and a specially developed Response Pool, in the form of an Enterprise Java Bean, to handle the outgoing responses.
Format of the database The database is designed around the core tables being Users, Contacts, and Events. Users is a list of all users, their mobile numbers and log-in details, and various registration details. Contacts contains records for all users, and Events contains schdule events for the Agenda application.

Claims (10)

  1. CLAIMS 1. A system for a user to interact with user specific data in a database, the system comprising: means for a user to modify user specific data in said database; means for said user to send a Short Message Service (SMS) message to a controller associated with said database, said message including a predetermined command; said controller comprising means for receiving said SMS message, means for determining said command, and means for interacting with said user data according to said command.
  2. 2. A system according to claim i wherein said controller further comprises means for sending an SMS message to said user sending means, said message including user specific data.
  3. 3. A system according to claim 1 or 2 wherein the message further comprises one or a combination of the following : search text; user specific data; qualifiers; further predetermined commands.
  4. 4. A system according to any preceding claim, wherein said modification means is a terminal such as a personal computer coupled to said controller via the Internet.
  5. 5. A system according to claim 4, wherein said controller comprises a Web page to interface with said terminal.
    <Desc/Clms Page number 13>
  6. 6. A system according to any preceding claim, wherein said sending means is a wireless terminal such as a mobile phone or mobile computing device.
  7. 7. A system according to claim 3 when dependent on claim 2, wherein said controller further comprises: means for converting incoming SMS messages to Java Message Service (JMS) messages; means for parsing each said message to determine said command, and any search text or qualifiers in said message; means for querying the database in response to said command and search text; means for converting the results of said query into a JMS message; means for converting said message into an SMS message.
  8. 8. A system as disclosed in any preceding claim wherein said controller further comprises means for sending an SMS message to a second user sending means, said message including user specific data.
  9. 9. A system according to claim 5 wherein said controller further comprises: means for converting web page requests into Java Message Service (JMS) messages containing instructions for querying the database; means for parsing these messages; means for querying the database in response to said instructions; means for converting the results into JMS messages; and the means for converting said JMS messages into web page responses.
  10. 10. A system according to claim 4 comprising means to synchronize data stored on said personal computer with that stored on said database.
GB0201027A 2002-01-17 2002-01-17 System for synchronising a local database using SMS messages Withdrawn GB2384330A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB0201027A GB2384330A (en) 2002-01-17 2002-01-17 System for synchronising a local database using SMS messages

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB0201027A GB2384330A (en) 2002-01-17 2002-01-17 System for synchronising a local database using SMS messages

Publications (2)

Publication Number Publication Date
GB0201027D0 GB0201027D0 (en) 2002-03-06
GB2384330A true GB2384330A (en) 2003-07-23

Family

ID=9929242

Family Applications (1)

Application Number Title Priority Date Filing Date
GB0201027A Withdrawn GB2384330A (en) 2002-01-17 2002-01-17 System for synchronising a local database using SMS messages

Country Status (1)

Country Link
GB (1) GB2384330A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8526979B2 (en) * 2006-12-19 2013-09-03 Alcatel Lucent Method and apparatus for parent-controlled short message service
EP2652640A4 (en) * 2010-12-14 2018-01-03 Microsoft Technology Licensing, LLC Using text messages to interact with spreadsheets
US10191898B2 (en) 2011-01-24 2019-01-29 Microsoft Technology Licensing, Llc Representation of people in a spreadsheet

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000072612A1 (en) * 1999-05-24 2000-11-30 Software.Com, Inc. System and method for providing requested information to a mobile subscriber using sms or a microbrowser
US6230004B1 (en) * 1997-12-01 2001-05-08 Telefonaktiebolaget Lm Ericsson Remote procedure calls using short message service
WO2001056234A1 (en) * 2000-01-28 2001-08-02 Softwired Inc. Messaging system
GB2361840A (en) * 2000-04-25 2001-10-31 Intellprop Ltd Telephone text processing systems including user interfaces
US6321257B1 (en) * 1996-09-16 2001-11-20 Nokia Telecommunications Oy Method and apparatus for accessing internet service in a mobile communication network

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6321257B1 (en) * 1996-09-16 2001-11-20 Nokia Telecommunications Oy Method and apparatus for accessing internet service in a mobile communication network
US6230004B1 (en) * 1997-12-01 2001-05-08 Telefonaktiebolaget Lm Ericsson Remote procedure calls using short message service
WO2000072612A1 (en) * 1999-05-24 2000-11-30 Software.Com, Inc. System and method for providing requested information to a mobile subscriber using sms or a microbrowser
WO2001056234A1 (en) * 2000-01-28 2001-08-02 Softwired Inc. Messaging system
GB2361840A (en) * 2000-04-25 2001-10-31 Intellprop Ltd Telephone text processing systems including user interfaces

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8526979B2 (en) * 2006-12-19 2013-09-03 Alcatel Lucent Method and apparatus for parent-controlled short message service
EP2652640A4 (en) * 2010-12-14 2018-01-03 Microsoft Technology Licensing, LLC Using text messages to interact with spreadsheets
US9898454B2 (en) 2010-12-14 2018-02-20 Microsoft Technology Licensing, Llc Using text messages to interact with spreadsheets
US11416676B2 (en) 2010-12-14 2022-08-16 Microsoft Technology Licensing, Llc Using text messages to interact with spreadsheets
US10191898B2 (en) 2011-01-24 2019-01-29 Microsoft Technology Licensing, Llc Representation of people in a spreadsheet

Also Published As

Publication number Publication date
GB0201027D0 (en) 2002-03-06

Similar Documents

Publication Publication Date Title
US9723460B1 (en) Device message management system
US6807254B1 (en) Method and system for interactive messaging
US8891742B2 (en) IP handset-based voice mail notification
KR100972306B1 (en) Application generator
EP1562347B1 (en) Methods and apparatus for utilizing user software to communicate with network-resident services
US20020049858A1 (en) Software architecture for wireless data and method of operation thereof
US20110131287A1 (en) Catching user information in an integrated communication system
US20030093480A1 (en) Accessing information using an instant messaging system
US9172765B2 (en) Polling-based secure network message notification system and method with performance enhancing features
US20070206734A1 (en) Coalescence of voice mail systems
JP2007149099A (en) Service broker integration layer for supporting telecommunication client service request
WO2003003700A2 (en) Event notification in a unified message system using an event notification server
JP2004534427A (en) Method and apparatus for accessing a file stored in a mobile terminal device corresponding to an internet protocol
CN109189502A (en) A kind of message treatment method and relevant device based on instant messaging public platform
WO2002096056A2 (en) Mobile community communication
WO1998023058A2 (en) System for integrated management of messaging and communications
US6493434B1 (en) Update of web audio messages via audio user interface
US20080010297A1 (en) Web-based dialing
US20030234815A1 (en) Controlling a user interface
EP1815646A1 (en) System for enabling communication between computers and mobile telephones
GB2384330A (en) System for synchronising a local database using SMS messages
CN103312592B (en) A kind of method that batch sends information to instant communication client on webpage
Hu et al. Research and implementation of campus information push system based on WebSocket
CN101110843B (en) System, method and apparatus for implementing interaction between different kinds of business
Singh et al. An efficient asynchronous mobile web service framework

Legal Events

Date Code Title Description
WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)