Abstract:
Method and apparatus for session management in wireless e-commerce. In various embodiments, the invention manages shopping sessions between wireless communication devices and a merchant application. A gateway module generates respective wireless session identifiers upon receipt of initial requests from the wireless communication devices and provides the wireless session identifiers to the merchant application. The merchant application generates respective merchant session identifiers for the wireless session identifiers and provides the merchant session identifiers to the gateway module. The wireless session identifiers and corresponding merchant session identifiers are associated at the gateway module. In response to subsequent communications from the mobile devices to the merchant application, the gateway module transmits to the merchant application the merchant session identifiers. A user authentication module works in conjunction with the gateway module and authenticates users of the wireless devices.

Description:
FIELD OF THE INVENTION  
         [0001]    The present invention generally relates to e-commerce systems, and more particularly to wireless e-commerce systems.  
         BACKGROUND  
         [0002]    The growth of the Internet has contributed to the growing reliance on e-commerce by retail and business consumers. E-commerce is reshaping both business-to-business and retail transactions. The convenience and efficiency of any particular e-commerce site will play a major role in success or failure of the site.  
           [0003]    Access to most present e-commerce sites is made by way of a personal computer (PC) or workstation running web browser software. In accumulating transaction-related information, cookies are often used to pass information between the browser and a vendor&#39;s Web server application. For example, a cookie may identify the customer and the items selected for purchase. While the PC-browser combination has certainly served as a useful starting point in the early stages of the adoption of e-commerce, the stationary nature of the PC limits the types of transactions that are suitable for e-commerce. Thus, many vendors are seeking to adapt their e-commerce sites to allow interaction with mobile devices such as wireless telephones and personal digital assistants (PDAs). If more channels are available for access to a vendor&#39;s site, it is hoped that more customers will follow.  
           [0004]    Unlike present PCs, today&#39;s mobile devices have neither the memory capacity nor the processor power to host a browser. While a vendor could wait for mobile devices to become powerful enough to host a browser, waiting could provide competitors with the opportunity to increase market share. Furthermore, even when the power of mobile devices equals the power of present PCs, there will remain many users who will not hurry to move to the new technology mobile devices. Thus, there will be many potential customers who will be beyond the reach of mobile e-commerce vendors. If mobile ecommerce applications are to proliferate, then present e-commerce applications involving web servers must be adapted to accommodate mobile devices having less power than today&#39;s PCs.  
           [0005]    A system and method that address the aforementioned problems, as well as other related problems, are therefore desirable.  
         SUMMARY OF THE INVENTION  
         [0006]    In various embodiments, the invention manages shopping sessions between wireless communication devices and an application program such as merchant application. A gateway module generates respective wireless session identifiers upon receipt of initial requests from the wireless communication devices and provides the wireless session identifiers to an application program. The application program generates respective application session identifiers for the wireless session identifiers and provides the application session identifiers to the gateway module. The wireless session identifiers and corresponding application session identifiers are associated at the gateway module. In response to subsequent communications from the mobile devices to the application program, the gateway module transmits the application session identifiers to the application program. A user authentication module works in conjunction with the gateway module and authenticates users of the wireless devices.  
           [0007]    It will be appreciated that various other embodiments are set forth in the Detailed Description and claims which follow. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0008]    Various aspects and advantages of the invention will become apparent upon review of the following detailed description and upon reference to the drawings in which:  
         [0009]    [0009]FIG. 1 is a functional block diagram of a mobile e-commerce arrangement in accordance with one embodiment of the invention;  
         [0010]    [0010]FIG. 2 is a flowchart of a process performed by a gateway module in managing session state in mobile e-commerce;  
         [0011]    [0011]FIG. 3 is a flowchart of a process performed by a merchant application in managing session state in mobile e-commerce; and  
         [0012]    [0012]FIG. 4 is a flowchart of a process performed by a server wallet module in managing session state in mobile e-commerce.  
     
    
     DETAILED DESCRIPTION  
       [0013]    The various embodiments of the invention are described below in terms of a “merchant application” and a shopping session. It will be appreciated, however, that the invention could be applied to other types of applications that do not involve the purchase of products. Therefore, the embodiments described herein are intended to provide examples to those skilled in the art.  
         [0014]    [0014]FIG. 1 is a functional block diagram of a mobile e-commerce arrangement in accordance with one embodiment of the invention. Arrangement  100  includes mobile communication devices  102 , wireless gateway arrangement  104 , and a merchant application  106 . Mobile communication devices  102  include, for example, wireless telephones having display screens or PDAs with telecommunication capabilities. It will be appreciated that mobile devices  102  may be possess different degrees of mobility. For example, in one embodiment a PDA has wireless telecommunication capabilities, and in another embodiment a PDA has a telecommunication jack for wired communications.  
         [0015]    Merchant application  106  is application software, which is hosted by a suitable data processing system, through which a merchant offers goods or services (hereinafter, “products”) for sale over an electronic communications channel, for example, the Internet. While not shown, it will be appreciated that web server software is used in conjunction with merchant application  106  to coordinate interactions with customers at web browsers.  
         [0016]    Wireless gateway arrangement  104  maintains session state between wireless communication devices  102  and merchant application  106  and includes a mobile interface  108 , a gateway module  110 , and a serverwallet module  112 . Interface  108  and applications  110  and  112  can be implemented on one or more data processing systems in accordance with implementation requirements. Mobile interface  108  is implemented with conventional hardware and software conforming to, for example, the Wireless Access Protocol (WAP) standard. Those skilled in the art will appreciate that other alternative protocols could be used substituted to satisfy implementation requirements.  
         [0017]    A session is used to identify a set of interactions between a mobile communication device  102  and the merchant application  106 . It is necessary to correlate interactions between customers and the merchant application  106  with particular mobile communication devices  102  so that the transactions are consistent with the customers&#39;requests. In one embodiment, a session begins when a mobile device establishes a connection with mobile interface  108  and ends when the connection is closed.  
         [0018]    A customer connects with merchant application  106  through the user-interface provided by a mobile communication device  102  and wireless gateway arrangement  104 . The mobile interface  108  establishes the initial connection with the mobile communication device  102  and assigns a wireless session identifier (WSID). The WSID is provided to the gateway module  110 , and while the connection is maintained, subsequent input requests from the mobile device  102  are associated with the WSID. The gateway module  110  passes WSID to the merchant application  106 , which assigns a corresponding merchant session identifier (MSID) and returns the MSID to the gateway module. The gateway module  110  maintains a table that maps the WSIDs to the corresponding MSIDs. After a connection is established between the mobile device  102  and the merchant application  106  and the WSID is mapped to an MSID, the gateway module  110  includes the MSID in subsequent requests from the mobile device to the merchant application.  
         [0019]    When a user is ready to complete a transaction, for example, checkout or complete a purchase, the gateway module  110  transfers the WSID and control to the server wallet module  112 . The server wallet module creates respective wallet session identifiers (WLSIDs) for sessions seeking to complete a transaction. The first time within a session that a user requests completion of a transaction in an example shopping application, the user is presented with a login screen. Upon successful login from the mobile device, the server wallet module creates a WLSID and associates the WLSID with the WSID of the user in a table. This mapping allows the user to login once to the server wallet module and enable shopping at multiple merchant applications within the same wireless session. After the user has successfully logged in and upon subsequent requests to complete other transactions within the session, the server wallet module presents the user with a choice of payment options and other personal preferences.  
         [0020]    A payment request signals the completion of a session between a mobile device  102  and the merchant application  106 . The gateway module  110  clears the mapping of the WSID to MSID when a payment request is detected. In order for the mobile device  102  to initiate another transaction with the merchant application  106 , the mobile device must reconnect and establish a new WSID with the mobile interface  108 , and the merchant application must establish a new MSID.  
         [0021]    In one embodiment, a timeout process (not shown) monitors inactivity of the mobile devices  102 . After a selected period of inactivity, the connection between a mobile device and the mobile interface  108  is closed, the corresponding WSID-MSID mapping is cleared, the WSID-WLSID mapping is cleared, and the merchant application(s)  106  are notified that the MSID is no longer valid.  
         [0022]    [0022]FIG. 2 is a flowchart of a process performed by gateway module  110  in managing session state in mobile e-commerce in accordance with one embodiment of the invention. The process begins at step  202  where the gateway module receives via the mobile interface  108  a request from a mobile communication device. The mobile interface includes with each request the WSID that is associated with the mobile device.  
         [0023]    Decision step  204  tests whether the request is a checkout request. In one embodiment, the checkout request indicates that a customer desires to proceed to purchase the product(s). If the request is not a checkout request, the process is directed to decision step  206 , to test whether the request is a payment request. The process is directed to step  208  if the request is not a payment request.  
         [0024]    At step  208 , if there is not already an entry for the WSID in the table that maps the WSIDs to MSIDs, the WSID is added to the table. At decision step  210 ,if there no MSID associated with the WSID, the process is directed to step  212  where the request and WSID are transmitted to the merchant application. At step  214 , the gateway module receives a response from the merchant application that includes a MSID. The MSID is associated with the WSID, and the process proceeds to step  218 , When the gateway module receives a request from a mobile device and there is already an associated MSID, decision step  210  directs the process to step  216 . At step  216 , the request and the MSID that is associated with the WSID are transmitted to the merchant application.  
         [0025]    At step  218 , the response from the merchant application is provided to the mobile interface  108  for transmission to the mobile device. The process then returns to step  202  to process the next request from the mobile device.  
         [0026]    Returning now to decision step  204 , when a checkout request is received the process proceeds to step  224 . When a checkout request is received, the gateway module activates the server wallet module and provides the WSID from which the checkout request was received. The process then continues at step  202 .  
         [0027]    When the gateway module receives a payment request from a mobile device, decision step  206  directs the process to step  228 . The payment request indicates completion of the transaction, and the WSID and MSID are cleared from the table at step  228 . At step  230 , data describing payment selections and personal preferences are transmitted to the merchant application for further processing. The process then continues at step  202 . If the same mobile device submits further requests to the merchant application, the gateway module will reestablish a WSID-MSID mapping in the table when the merchant application provides a new MSID.  
         [0028]    [0028]FIG. 3 is a flowchart of a process performed by the merchant application in managing session state in mobile e-commerce in accordance with one embodiment of the invention. At step  302 , the merchant application receives a request from the gateway module, and the process continues at decision step  304 . The request includes the WSID of the mobile device. Decision step  304  determines whether the merchant application as associated an MSID with the WSID. If not, the process is directed to step  306  where a new MSID is generated and associated with the WSID. The process then continues at step  308 .  
         [0029]    When an MSID is associated with the WSID in a request, the process is directed to step  308  where the merchant application processes the request in accordance with application-specific logic. At step  310 , a response is provided to the gateway module to return to the mobile device. The response includes the MSID that corresponds to the WSID so that the gateway module can provided the MSID in subsequent requests to the merchant application.  
         [0030]    [0030]FIG. 4 is a flowchart of a process performed by the server wallet module in managing session state in mobile e-commerce in accordance with one embodiment of the invention. At step  352 , the server wallet module receives a checkout request and proceeds to decision step  354 . If the mobile device has not yet established a wallet session with the server wallet module, the process is directed to step  356 . At step  356 , the wallet server application provides a login prompt to the gateway module to transmit to the mobile device. At step  358 , on receipt of the login data from the mobile device, a wallet session identifier is generated and associated with the WSID in a WLSID table (not shown). The process then continues at step  360 .  
         [0031]    Once a wallet session is established with the mobile device, decision step  354  directs the process to step  360  when a checkout request is received. At step  360 , the server wallet module provides the gateway module with a prompt to transmit to the mobile device, the prompt containing options for payment options and personal preferences. At step  362 , the wallet server application clears inactive entries from the WLSID table. In one embodiment, the wallet server application tracks for each WLSID the most recent time at which a request was received. When there has been a period of inactivity that exceeds a selected threshold for a WLSID, the WLSID is cleared from the table. The process then continues at step  352  as described above.  
         [0032]    The present invention is believed to be applicable to a variety of mobile computing applications and has been found to be particularly applicable and beneficial in mobile ecommerce. Other aspects and embodiments of the present invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. It is intended that the specification and illustrated embodiments be considered as examples only, with a true scope and spirit of the invention being indicated by the following claims.