COMMUNICATION METHOD AND SYSTEM

Abstract: A communication system comprises a mobile telephone (10) connected to an Interactive voice response (IVR) server (12) and associated database (14) by a telephone communications network (20). The IVR server (12) is in turn connected to a plurality of computers 16 on a second network (18). The database (14) stores the relationship between a plurality of telephone numbers and a plurality of IP addresses of the computers (16). A telephone call is routed using the telecommunication networks to the IVR server. The IVR server (12) uses the related IP address to send a message to the remote computer (16) and a communication session is set up between a listening application running on the remote computer 16 and the IVR server (12), whereby the remote computer (16) receives parameters and sends commands to the IVR Server (12), and the IVR server in turn sends and receives messages to the user via the telephone communications network (20).

Description: COMMUNICATION METHOD AND SYSTEM BACKGROUND OF THE INVENTION THIS invention relates to a communication method and a system therefor. SUMMARY OF THE INVENTION According to the present invention there is provided a communications method comprising the steps of: defining a relationship between a plurality of telephone numbers and the network addresses of a plurality of computers on a first network; storing data representing said relationships; receiving, at a server, a request from a user via a telecommunications network for one of the plurality of telephone numbers; retrieving the network address corresponding to the requested number; and forwarding a message via the first network to the computer located at the retrieved network address corresponding to the requested number, said computer being responsive to the message to run a computer program. Preferably, a communication session is set up between the user and the computer via the server, with the computer controlling the communication session. The computer may control the communication session by instructing the server via the first network to carry out one or more of a plurality of functions, and the server may send and receive messages to and from the user respectively via the telecommunications network. The server may also send messages to the computer via the first network. The plurality of functions are preferably one or more of the functions from the group of functions comprising: request a DTMF input from the user; play a recorded audio message to the user over the telecommunications network; and end the communication session. The request received from the user is typically a telephone call made by the user. Further according to the present invention there is provided a communication system comprising a processor connected to a first network and to a telecommunications network, the processor being adapted to communicate with a user via the telecommunications network and being further adapted to communicate with a remote processor via the first network, the processor being further adapted to send messages to the remote processor and to receive commands from the remote processor via the first network to carry out one or more of a plurality of functions, and wherein the processor is further adapted to send and receive messages to and from the user respectively via the telecommunications network. The plurality of functions the processor is adapted to carry out are preferably one or more of the functions from the group of functions comprising: request a DTMF input from the user; play a recorded audio message to the user over the telecommunications network; and end the communication session. The processor may be adapted to send a message to the remote processor in response to a message received from the user. According to the present invention there is still further provided a communication system comprising a processor connected to a first network, the processor being adapted to communicate with a user via a remote processor, wherein the processor is adapted to send commands to the remote processor so that the remote processor carries out one or more of a plurality of functions in response to the commands, and wherein the processor is further adapted to receive messages from the remote processor via the first network. The processor may be adapted to send a command to the remote processor in response to a message received from the remote processor. BRIEF DESCRIPTION OF THE DRAWINGS Figure 1 is a simplified schematic diagram of an embodiment of the system of the present invention; Figures 2 are flow diagrams illustrating the method of the present and 3 invention carried out using the system of Figure 1 ; Figure 4 is a flow diagram illustrating the transaction flow between the IVR server and application server of Figure 2 in more detail; Figure 5 is a flow diagram showing a first example of an application of the method of the present invention; Figure 6 is a flow diagram showing a second example of an application of the method of the present invention; and Figure 7 is a flow diagram showing a third example of an application of the method of the present invention. DESCRIPTION OF EMBODIMENTS Referring to Figure 1 , the system comprises a plurality of telephones 10 each of which can connect to an Interactive voice response (IVR) server 12 and associated database 14 by a telephone communications network 20. The telephones 10 are preferably, but not necessarily, mobile phones and the telephone communications network 20 is typically either a Global System for Mobile Communications (GSM) or a Public Switching Telephone Network (PSTN) network. The IVR server 12 is in turn connected to a plurality of computers 16 on a second network 18. The computers 16 are typically application servers. It will be appreciated that although Figure 1 illustrates the use of one IVR server 12, the present invention could be implemented using a plurality of IVR servers 12, each being connected to a plurality of computers 16. Figures 2 and 3 illustrate a transaction flow of the system illustrated in Figure 1. A user of the system dials a predetermined number 22 on the telephone 10. The telephone call is routed 24 using the normal telecommunication network 20 to the IVR server 12 with its associated database 14. The IVR server 12 has an application running thereon, typically written in JAVA or C++, and waits for a call to be received. The number called by the user contains various parts. A first part routes the call to the IVR server 12, while a second part relates to the address of a computer 16 on the network 18. For example, the number may be 083 190 XXX where 083 190 routes the call to the IVR server 12. The three remaining digits relate to the addresses of computers on the network 18. This relationship is stored on the database 14, where each complete telephone number is associated with a computer address. This address is typically the Internet Protocol (IP) address of the computer. For example, the number 083 190 001 can be associated with a computer 16a, the IP address of which is 192.168.2.18, while telephone number 083 190 002 can be associated with computer 16b, the IP address of which is 194.176.2.13. The number may also be related to a specific port on the computer 16. Using the related IP address and port number, a message is sent 26 via the communications network 18 to the remote computer 16. The communications network 18 may be, for example, a Local Area Network (LAN), a Wide Area Network (WAN) or the Internet. Depending on the requirements of the remote computer 16, the actual number dialled may be passed to the remote computer 16 if this would be required by the remote computer 16, or alternatively, the call may merely be routed to the remote computer 16 without informing the remote computer 16 which number was dialled. Any number in any combination can be defined to be controlled by any computer or application server 16 located on any Local Area Network (LAN) or Wide Area Network (WAN). For example: 1) Traditional Dialled numbers Dialled Number, IP Address, Port Number 083 123 2000, 196.10.10.1 , 1998 083 123 2002, 96.25.20.5, 1900 083 123 2010, 192.15.5.27, 1985 2) Speed Dial numbers Dialled Number, IP Address. Port Number 083 920 1 , 196.10.10.1 , 1998 083 123 5, 196.25.20.5, 1900 083 121 , 192.15.5.27, 1985 3) Extended Dialled numbers Dialled Number, IP Address. Port Number 083 123 2000 123456, 196.10.10.1 , 1998 083 123 2002 4562334536, 196.25.20.5, 1900 083 123 2010 568657, 192.15.5.27, 1985 The traditional numbers are the digit length typically used by a national telephone company number scheme while the speed dial and extended numbers are the number schemes typically used by the GSM networks. The numbers can also be extended to alphanumeric dialling, for example, 083123Coke which represents 083 123 2653 or 083 123Pepsi which represents 083 123 73774. The IVR server 12 invokes the computer 16 on the requested network address and port to respond. A communication session 28 is now set up between a listening application running on the application server 16 and the IVR server 12 whereby the application server 16 receives parameters and sends commands to the IVR Server 12. However, before the communication session 28 is set up, the application server has the option of not answering the call, as will be explained below. What will be appreciated is that control of the communication link is effectively passed to the remote computer or application server 16. Figure 4 illustrates in more detail the communication between the application server 16 and the IVR server 12. The IVR server 12 informs the application server 16 of an incoming call 26. The first response from the application server 16 is whether or not to answer the call 30. In some applications of the system, the application server 16 does not answer the call but merely runs a program (which will be described in more detail below) in response to the receipt of the call from the IVR server 12. If the call is answered, a communication session 28 is set up between the application server 16 and the IVR server 12. The commands sent by the application server 16 will be either disconnect call, request DTMF input or play prompt, and will be determined by what application the system is being used for. The commands are sent using a text protocol. In this way, the call is controlled by the sequence of the commands sent by the application server 16 and relayed to the user via the IVR server 12. After each command has been received by the IVR server 12, the IVR server 12 responds to the application sever 16 with an acknowledgement such as "00 "1" or "2" where "0" represented successful transaction, "1" represents failed transaction and "2" represents transaction failed due to call dropped. Once the application server 16 decides to end the communication session 28, a message 32 is sent from the application server 16 to the IVR server 12. The IVR server 12 acknowledges 34 the disconnect message and disconnects the communication session. A simple application of the abovementioned system is the use of a mobile phone to buy a drink from a vending machine, for example. Referring to the flow diagram of Figure 5, a vending machine displays a plurality of different numbers, each one linked to a different drink. For example, 083 190 100 is associated with a tin of cola, while 083 190 101 is associated with a tin of an orange drink. A user desiring a tin of cola will dial 083 190 100. The call is routed via the telecommunications network to the IVR server 12. The server retrieves the IP address of the computer controlling the vending machine and sends a message to this computer including such details as who is calling, account details of the caller and which tin of drink the caller desires. The vending machine dispenses the tin of drink in response to the message, and the user's account is debited for the drink. The computer controlling the vending machine may return an instruction to the IVR server 12 to send an SMS message to the user to inform them that their purchase has been approved and their account has been debited. A second example of the use of the system described in Figure 1 will now be described with reference to the flow chart of Figure 6. As described previously, a telephone number is linked to the IP address of a personal computer on the Internet. When a user dials the number corresponding to the IP address of the computer, the IVR server 12 forwards a message to the computer. When this message is received at the computer, application software running on the computer recognises it as a request for mobile content of a Web page available on the computer. The application responds by forwarding the Web page to the IVR server 12. The IVR server 12 receives the Web page and parses it's contents, removing the HTML comments from the Web page. The contents of these comments are scanned for a recognisable, predetermined character string, for example SML (Short Markup Language). Any comments with this character string therein will be sent to the mobile phone using SMS. This is achieved by the computer 16 forwarding a message over the Internet to the IVR server 12. The message instructs the IVR server 12 to send an SMS over the telephone network to the user. Thus any individual will have the ability to set up their own Web page with SML comments therein, and apply to the server for a telephone number to be linked to their Web page. This application can be done over the Internet, with software on the server being able to retrieve relevant data from the individual and start an account for the individual. On dialing this number the mobile phone contents of the Web page are forwarded to the mobile phone via an SMS. The user is typically charged a predetermined amount to be allowed to access the mobile content of the Web page, which amount will automatically be debited from their account. Alternatively, the request from the user is a request for specific information contained in a database connected to the computer 16. This information could be updated in real time. In this example, different information will be allocated a different phone number, so that the information returned to the user will depend on the number dialed. In this case, 083 190 101 may be a request for the price of a specific share price, for example, while 083 190 102 may be a request for the price of a different share. In this case, the IVR server 12 will not try and determine which share price is requested, but will use part of the number to logically route the call to a remote computer 16 (as described above) and will pass one or more digits to the remote computer 16 to determine which share price is being requested. For example, the number 10 in 083 190 101 is used to logically route the call to the share price computer 16, and the last digit, 1 , is passed to the computer 16 which the computer will use to determine which share price is being requested. It will be appreciated that in both of the above examples, the user is able to hang up after dialing the request for information, and the information will be forwarded to him a few seconds later via SMS. Referring now to Figure 7, the system of Figure 1 can be used to establish a remote interactive voice response server. A communication link is set up, as described above, but the link between the user and the IVR server 12, and the IVR server 12 and a remote computer 16 are kept open and information is transferred back and forth between the user and the remote computer 16. Control of the communication link is effectively passed to the remote computer, as will be explained. Traditional interactive voice response systems are located at the site of each organisation who wishes to use interactive voice response, for example, a bank. However, using the system of Figure 1 , the hardware and voice application software can be housed at the IVR server 12 and can be controlled via a remote computer 16 located at the site of the bank. Thus the full structure of an interactive voice response server does not have to be implemented. Referring to the flow chart of Figure 7, the communication link is established as described above. Once the remote computer 16 has received a message from the IVR server 12, it begins running a script to control the communications and instruct the IVR server 12 what tasks to carry out. If the remote computer 16 is placed at the site of a large bookstore, for example, it will forward an instruction message over the Internet to the IVR server 12 to play a welcoming message to the user 10. The message is stored on hardware at the server and would typically be "Welcome to The Bookstore, enter "1" for our top 10 list of books or "2" or our top 10 list of compact discs". It will be appreciated that because no voice data is transmitted over the Internet 18, communication between the IVR server 12 and the remote computer 16 is substantially quicker. Once the message is played, the user has the option of selecting a number, and a dual-tone multi-frequency signal is sent from the phone 10 to the IVR server 12. The application running on the IVR server 12 waits for this signal and sends a message to the remote computer 16 indicating the number selected. Depending on the selection, the remote computer 16 instructs the IVR server 12 to play another sound byte. The sequence can be continued for a number of commands, or until the user hangs up. A prototype IVR server 12 was implemented using a single Compaq™ Proliant 1600 server having 30 input digital lines. However, it will be appreciated that any number of input digital lines could be used. The connection between the IVR server 12 and the telephone network is achieved using a Dialogic D300 voice and signaling board. This board is a hardware component that manages the voice and signaling channel of the IVR server 12. It has associated software drivers which allow an application running on the IVR server 12 to interact with voice and signals originating or terminating on the board. The signaling channel is used to connect to the telephone network and set up the call session, while the voice channel allows the server to play voice bytes and receive DTMF input over the telephone network. The server is connected to the computer network using a networking card which allows the server to communicate over the network using TCP/IP. Thus it will be appreciated that the present invention provides a communication method and system which allows communication to take place between a telephone, typically a mobile telephone, and a computer located on a network. Because the IVR server 12 can be connected to a plurality of different computers or application servers 16, a third party wishing to provide information or services to users of mobile phones is able to merely load an application on their computer or application server 16 and then use a centrally located IVR server 12 as the communication link to the GSM network. Thus many third parties can be given access to the GSM network without having to install an IVR server at each of their individual sites. This is essentially because the application and data which reside on the remote computer or application server 26 have been separated from the communication application and data which reside on the IVR server 12.

Claims: CLAIMS: 1. A communications method comprising the steps of: defining a relationship between a plurality of telephone numbers and the network addresses of a plurality of computers on a first network; storing data representing said relationships; receiving, at a server, a request from a user via a telecommunications network for one of the plurality of telephone numbers; retrieving the network address corresponding to the requested number; and forwarding a message via the first network to the computer located at the retrieved network address corresponding to the requested number, said computer being responsive to the message to run a computer program. 2. A communications method according to claim 1 wherein a communication session is set up between the user and the computer via the server, with the computer controlling the communication session. 3. A communications method according to claim 2 wherein the computer controls the communication session by instructing the server via the first network to carry out one or more of a plurality of functions, and wherein the server sends and receives messages to and from the user respectively via the telecommunications network, and the server sends messages to the computer via the first network. 4. A communications method according to claim 3 wherein the plurality of functions are one or more of the functions from the group of functions comprising: request a DTMF input from the user; play a recorded audio message to the user over the telecommunications network; and end the communication session. 5. A method according to any preceding claim, wherein the request received from the user is a telephone call made by the user. 6. A machine readable medium comprising instructions, which when executed by a machine, cause the machine to perform the method steps in any one of claims 1 to 5. 7. A communication system comprising a processor connected to a first network and to a telecommunications network, the processor being adapted to communicate with a user via the telecommunications network and being further adapted to communicate with a remote processor via the first network, the processor being further adapted to send messages to the remote processor and to receive commands from the remote processor via the first network to carry out one or more of a plurality of functions, and wherein the processor is further adapted to send and receive messages to and from the user respectively via the telecommunications network. 8. A communication system according to claim 7 wherein the plurality of functions the processor is adapted to carry out are one or more of the functions from the group of functions comprising: request a DTMF input from the user; play a recorded audio message to the user over the telecommunications network; and end the communication session. 9. A communication system according to claim 7 or claim 8 wherein the processor is adapted to send a message to the remote processor in response to a message received from the user. 10. A communication system comprising a processor connected to a first network, the processor being adapted to communicate with a user via a remote processor, wherein the processor is adapted to send commands to the remote processor so that the remote processor carries out one or more of a plurality of functions in response to the commands, and wherein the processor is further adapted to receive messages from the remote processor via the first network. 1 1. A communication system according to claim 10 wherein the processor is adapted to send a command to the remote processor in response to a message received from the remote processor. 12. A method substantially as herein described with reference to the accompanying drawings. 13. A system substantially as herein descπbed with reference to the accompanying drawings.

Inventors: GOVENDER NITHIAKUMARAN, KAHN ARI, VORMBAUM MANFRED, GOVENDER, NITHIAKUMARAN, KAHN, ARI, VORMBAUM, MANFRED
Applicants: GOVENDER NITHIAKUMARAN, KAHN ARI, MOBILE TELEPHONE NETWORKS PROP, VORMBAUM MANFRED, GOVENDER, NITHIAKUMARAN, KAHN, ARI, MOBILE TELEPHONE NETWORKS (PROPRIETARY) LIMITED, VORMBAUM, MANFRED
Application year: 2000
Main classification: H04L29
IPC codes: G06Q20, H04L29, H04M3