# Patent

## Title
System for providing multi-phased, multi-modal access to content through voice and data devices

## Abstract

A method for accessing content through multiple devices, e.g. Telephone (1) and/or a data device (4) such as a Personal Digital Assistant (PDA) or Web Enabled Mobile Phone, is discussed where a user can initiate interaction with data through any device (mode), and then switch to another mode of interaction without starting over. The discussed method also allows a user to return to the same point in an application where a call session was lost or intentionally disengaged before completion. The user can regain access to the original call session via any telecommunications (voice or non-voice) device. Access can be accomplished whether the device is the same or different from that used for the original session.

## Background
This application claims the benefit of U.S. provisional application Ser. No. 60/267,207, filed Feb. 8, 2001.


FIELD OF THE INVENTION
This invention relates to voice and non-voice access to Internet Protocol data. Specifically, the invention relates to a method that reconnects users with their partially completed sessions using phones through voice, display, or other communication device.
BACKGROUND OF THE INVENTION
Various services now provide voice and non-voice access to Internet data. A caller may access a “Voice Portal” or “Voice Site” by simply dialing a number advertised by the company providing the Voice Access service. The caller will hear a greeting that requests the caller to “speak” or “enter” specific commands. As an example, a caller may ask the system to provide him/her with the latest weather information by simply speaking a command, or pressing a DTMF button on the phone. The information provided to the user may be pre-recorded and accessed from a database, or it may be accessed from a page similar to those available on the Internet. The mark-up language used to code the page may be VoiceXML or any other type of XML-based coding language. Some legacy systems may use proprietary or less commonly used methods for connecting the system to back-end data servers.
A dropped call occurs when a call session is disconnected before completion. The reason for session loss can be due to an undesired interruption or by intentional abandonment. The problem is that there are no existing ways to return to the call session that was terminated before completion. Users have to begin new sessions and repeat the steps that they had performed earlier in order to follow a prematurely terminated session through to completion. As an example, a caller is making a purchase on his phone, he selects the merchandise, speaks the shipping and billing address, and then loses the call prior to completing their purchase. In all existing systems, the caller would need to repeating the afore-mentioned steps.
SUMMARY OF THE INVENTION
The present invention allows the caller to call back, identify himself and continue from where the call was dropped. An alternative use is for the caller to start the purchase by making a call, go through multiple steps, and hang up when payment information is requested. He will then switch to a data device (e.g. WAP browser on his phone or a Personal Digital Assistant), and enter the credit card information through the data device.
The present invention also allows the user to go through this process in the reverse order. In other words, the caller could start the process using a WAP browser or a PDA, and then switch to Voice mode.
The present invention allows a caller accessing a data source through a voice call or data device to retain the transaction information in between subsequent access sessions whether access originates from a voice device (e.g. Telephone) or data device (e.g. PDA).
The method is to keep the data session independent of the medium used to access the data. The data for the transaction session resides in the temporary memory of a computer or is saved in a database on the hard drive or other long-term storage media.
The session data is tied to a specific transaction based on identification information for a user. This identification could be accomplished through the use of login/password id, or Caller-ID and Dialed-Number-Identification (DNIS) for phone calls, or cookies for Data devices.
When a caller makes the first call to the system, he will identify himself either automatically or manually before starting any transaction. The present invention will register the identification of the caller along with the session data. Session data is saved in a Session Management Gateway (e.g., such as Session Management Gateway) (7) in FIG. 1) in between each step of the transaction. If the caller hangs up prior to completion of transaction, the session data will not be lost. When the caller calls back, he is identified once again, and his session will be mapped to the existing one. At that point the caller will be able to continue the same transaction from the point where it was cut-off. A caller could re-establish the same transaction from any point regardless of what device is used throughout each phase of the transaction. For example, the user could call back with the same mobile phone (1) used to originate the session or use a different device such as an office phone or PDA.
The reason that this can be accomplished is because the data access session information is separated from the business logic, and is not tied to a specific telephony session or other client interface session. The data interaction session database stores the information for the data layer.



BRIEF DESCRIPTION OF DRAWINGS
The various aspects, advantages and novel features of the present invention will be more readily comprehended from the following detailed description when read in conjunction with the appended drawings, in which:
FIG. 1 illustrates a User establishing a session using a mobile phone, hanging up, accessing the same session stored on the database through a Session Management Gateway, and continuing to interact with the application using a data device in accordance with an embodiment of the present invention;
FIG. 2 illustrates a User establishing a session using a mobile phone, losing the call, but calling again, accessing the same session stored on the database through a Session Management Gateway, and continuing to interact with the application using the mobile phone in accordance with an embodiment of the present invention; and
FIG. 3 illustrates a caller accessing a proprietary back end data server instead of an application server through the Session Management Gateway in accordance with an embodiment of the present invention.



DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
With reference to FIGS. 1, 2 and 3, a software-based method is provided in accordance with the present invention to allow a caller to interact with data and applications in multiple phases using multiple devices or a single device. The solution comprises four main components, that is,

    
    
        a Session Management Gateway (7) capable of interacting with an application (9) from the one side (i.e., using standard Internet protocols for connection to Internet based applications) and multiple client interfaces such as a Telephone Interface (3) or a Data Device interface (5) from the other side, and also capable of maintaining the transaction session with the Application (9) separate from interaction sessions with client devices, and capable of maintaining the interaction session with the application (9) in a database (8) even if no client device is connected at that moment to the session pertaining to the said transaction.
        a Data Device Interface capable of interacting with data devices equipped with display, keyboard, sound interface, location sensor, etc. Data device may have any combination of one or more human or machine data sources which can relay user input (e.g. a keyboard) or produce data automatically (e.g. a location sensor) as well as modules which can present data (e.g. a display that shows the data to a human, or a relay that uses the data to control an engine).
        a Telephony Interface that allows callers to access their sessions using any type of voice interface devices (e.g. a mobile phone (1)), and is capable of presenting the data to the user in audible fashion, and also capable of collecting input from the user in spoken fashion (spoken commands) as well as other forms such as DTMF input.
        A Database (8) which maintains transaction sessions controlled by Session Management Gateway (7).
    
    


An important aspect of the Session Management Gateway (7) is that it associates each transaction session with a user. A user may be identified by any number of mechanisms such as a pin and password combination that is entered upon accessing the system, or a cookie that is offered to the system once the user data device (4) access the system, or Caller-Id information. When a user accesses the system for the first time, the Session Management Gateway (7) creates a transaction session for the user, and associates user's identification data with the transaction session that was created for that user. Transaction session is stored in a database (8) which may reside in the memory of the computer running Session Management Gateway (7), or on the hard-drive of the same machine, or on a different machine connected to the said computer via a local area network.
If the user is disconnected from the system without completing the application, the transaction session is kept in the database for a pre-determined period of time. If the user does not connect to the system within the pre-defined period, the session data will be removed. However if the caller connects to the system within the pre-defined period of time, caller will be connected to the same transaction session, and he can continue interacting with the application (9).
In accordance with another aspect of the present invention, the caller may reconnect to the system using a different device than the one used to establish the original connection, as shown in FIG. 2.
In accordance with yet another aspect of the present invention, the Session Management Gateway (7) may handle a multiplicity of transaction sessions at any time.
In accordance with another aspect of the present invention, the software solution may be implemented using only one client interface (e.g. only Telephony Interface (3)), one Session Management Gateway (7), and a database (8).
In accordance with yet another aspect of the present invention, a caller may access a proprietary back end data server (10), as shown in FIG. 3, instead of an application server (9) through Session Management Gateway (7).
Although the present invention has been described with reference to a preferred embodiment thereof, it will be understood that the invention is not limited to the details thereof. Various modifications and substitutions have been suggested in the foregoing description, and others will occur to those of ordinary skill in the art. All such substitutions are intended to be embraced within the scope of the invention as defined in the appended claims.

## Claims

1. A software-based method that allows users to access an information site or an application site on the internet by one or more client devices comprising a telephone, a mobile phone and a data device, the method comprising the steps of:
performing a transaction session by accessing a data source in multiple phases, the data source comprising at least one of the information site and the application site, the transaction session comprising at least one client interaction session and a data source interaction session, the client interaction session comprising a data access session with the client device, the data source interaction session comprising a session corresponding to the data source, the multiple phases comprising different client interaction sessions via the one or more client devices to participate in at least part of the transaction session;
storing session data relating to the transaction session in a memory device, the session data comprising user identification data for associating the transaction session to a user participating in the transaction session, the session data being saved at different steps of the transaction session; and
using the stored session data to allow the user to drop a call constituting one of the multiple phases, and call back at a later time to continue the transaction session with one of the information site and the application site during another one of the multiple phases;
wherein the storing step comprises the step of storing session data in a memory device corresponding to a session management gateway connected downstream of the information site or the application site via the internet and upstream of the client devices;
wherein the session data is retained in the memory device even during the absence of the user device being connected to the session management gateway;
wherein the session management gateway maintains the transaction session with the data source for a selected period of time after a client interaction session between the information site or the application site and a user device is terminated before completion, and the session management gateway maps a subsequent client interaction session to the transaction session.

2. A method as claimed in claim 1, wherein the session data allows the user to continue the transaction session at substantially the same point during the transaction session where the call was earlier dropped or data contact was terminated.

3. A method as claimed in claim 1, wherein the storing step comprises the step of storing the session data in the memory device independently of the information site, the application site, business logic employed upstream of the session management gateway, a back end data server, the client device, and the access medium employed by the client device to establish an interaction session to access the session management gateway.

4. A method as claimed in claim 1, wherein a user initiates the subsequent client interaction session to continue the transaction session and provides the same user identification data.

5. A system for managing access of a client device to a data source comprising at least one of an information site and an application site on the internet comprising:
a session management gateway connected downstream of the data source via the internet and upstream of a client device; and
a memory device read from and written to by the session management gateway and not by a user interface module, nor the client device, nor a back end data server, nor the data source;
wherein the session management gateway is programmable to store transaction session data in the memory device that relates the user to a transaction session with the data source;
the transaction session comprising at least one client interaction session and a data source interaction session;
the client interaction session comprising a data access session with the client device;
the data source interaction session comprising a session corresponding to the data source;
the transaction session data being stored independently of the information site, the application site, the business logic, a back end data server, the client device, and the access medium employed by the client device to establish an interaction session to access the session management gateway for participation in the transaction session;
the session management gateway being configured to associate user identification data corresponding to the user with the transaction session data for that user, and to map any subsequent interaction sessions initiated by the user using the client device or another device with the transaction session by using the user identification data after the user has identified himself;
wherein the transaction session data is retained in the memory device even during the absence of the client device being connected to the session management gateway;
wherein the session management gateway maintains the transaction session with the data source for a selected period of time after an client interaction session between the data source and a client device is terminated before completion, and the session management gateway maps a subsequent client interaction session to the transaction session.

6. A system as claimed in claim 5, wherein users access the system multi-modally using a plurality of different devices during respective ones of the multiple phases of interaction.

7. A system, as claimed in claim 5, wherein each user accessing the system is identified using at least one of a combination of username and password, a pin and pass-code, cookie information, and other identification technique available through the use of the client device.

8. A system as claimed in claim 5, wherein the data source comprises a single application and the session management gateway interacts with the single application for the transaction session, and the system is operable to support multiple phases with respect to the transaction session, the multiple phases comprising different client interaction sessions via the one or more client devices to participate in at least part of the transaction session, the client device being a telephone in one phase, and a data device in another phase.

9. A system as claimed in claim 5, wherein the session management gateway is operable to store transaction session data corresponding to plural transaction sessions in the memory device independently of the information site, the application site, a back end data server, the business logic, the client device, and the access medium employed by the client device to establish an interaction session to access the session management gateway to avoid being application-specific.

10. A system as claimed in claim 5, wherein the transaction session data is retained in the memory device a predetermined period of time and then deleted therefrom if no other phases or client interaction sessions are commenced during the predetermined period of time.

11. A system as claimed in claim 5, wherein the transaction session data is saved to the memory device at different events in the transaction.

12. A system as claimed in claim 5, further comprising at least one other session management gateway being configured to access the memory device and to store transaction session data therein.

13. A system as claimed in claim 12, wherein the session management gateways connected to the memory device are operable to maintain respective phases comprising client interaction sessions in the same transaction session.

14. A system as claimed in claim 5, wherein the data source comprises a single application and the session management gateway interacts with the single application for the transaction session, and the system is operable to support multiple phases with respect to the transaction session, the multiple phases comprising different client interaction sessions via the one or more client devices to participate in at least part of the transaction session, the client device being a data device in one phase, and a data device in another phase.