METHOD FOR SIMULATED WAP PUSH
TECHNICAL FIELD
The present inventionrelates to wireless application protocol (WAP) technologies, and more particularly, to a method for providing a response to a request by a wireless client from a server after timeout of the request.
BACKGROUND OF THE INVENTION
In client/server applications, the ability to transmit data to a client from a server without the client actually requesting the data is referred to as "push" technology. The Internet is based upon "pull" technology wherein a client browser must request a web page before it is transmitted to the client. Broadcast media utilizes push technology to transmit information to everyone regardless of whether or not anyone is connected.
Presently there exists no support for push technologies within WAP devices. If a WAP push standard is developed, certain issues may prevent the usage of push technology servers with some content providers. The absence of push technology can create a problem with certain WAP applications. In certain instances, auser of a WAP terminal who is accessing a WAP site may desire to perform an action that may require an extended amount of processing time on the server side. During the extended processing period, the request provided by the WAP client may timeout before a response is available from the server, and the client disconnects from the server. Thus, the WAP client is unable to receive a response to their request since push technology does not exist to transmit the response to the WAP client after the request response period has expired.
One solution to this problem involves notifying the user that the reply will be transmitted to the client at a later point via an SMS message. However, this method is an expensive and complicated process to implement. Thus, some method for transmitting information from a WAP server to a WAP client after the timeout period of a WAP client request is desired.
SUMMARY OF THE INVENTION
The present invention overcomes the foregoing and other problems with a method for processing a request from a mobile terminal wherein the request requires a period of time exceeding the request timeout period. Upon receipt of the request for a selected action from the mobile terminal at a WAP server, the request is processed for the selected action. During processing of the selected action, an indication is provided to the mobile terminal to notify the mobile ter mal that the request is being processed. The indication is provided during the entire processing period of the requested selected action. Upon completion of processing of the selected action, the mobile terminal is notified of completion of the processing and provided the request results.
BRIEF DESCRIPTION OF THE DRAWINGS
A more complete understanding of the method and apparatus of the present invention may be obtained by reference to the following Detailed Description when taken in conjunction with the accompanying Drawings wherein: FIGURE 1 is a block diagram of a WAP client interconnected with a WAP server via a WAP network; and
FIGURE 2 is a signaling diagram illustrating the method of the present invention.
DETAILED DESCRIPTION
Referring now to the drawings, and more particular to FIGURE 1 , there is illustrated a WAP client 12 interconnected with a WAP server 15 via a WAP network. The WAP client
12 within a mobile terminal 10 enables a user to access a WAP server 15 on the Internet via a WAP gateway server 25. The WAP gateway server 25 comprises a protocol gateway which translates requests from a WAP protocol (WSP, WTP, WTLS and WDP) to a WWW protocol (HTTP and TCP/IP). This is accomplished via content encoders and decoders 35 within the WAP gateway server 25.
Referring nowto FIGURE 2, there is illustrated the manner in which amobile terminal 10 may provide a request to a web server 15 wherein processing of the request requires more than the timeout period associated with a request in a WAP server 15. Initially, the mobile
terminal 10 transmits a request 45 to a web server 15 via the WAP gateway 25. This request may comprise a request for tickets, stock quotes, account balance, etc. The web server 15 responds by accessing a WAP application 30 associated with the web server 15 which is capable of providing the necessary response to the request 45. The WAP application 30 within the web server 15 writes at 60 a temporary record to a database 35 for containing the request result. Next, the application 30 requests a process 40 to perform the requested action at 65. The application 30 also generates at 65 a WML page indicating that the user should wait while the request is being processed. The WML page generated at 65 is transmitted back to the mobile terminal 10 at 70. Responsive to the loading of the WML page, after a predetermined time interval (for example, 5 seconds), a request for the same WML page is generated at 65 and transmitted at 85 back to the WAP application 30 from the mobile terminal 10. The WAP application 30 responds to the request by checking with the database 35 at 100 to determine if the request processing is complete. If the processing is not complete, the WML page is transmitted back to the mobile terminal 10 at 105. After a further expiration of the selected time interval, the process may repeat at 110 to continue reloading of the WML page from the WAP application 30 to the mobile terminal 10 until the processing of the request is completed. When the processing of the original request is completed, the results 115 of the request are written from the process 40 to the database 35. The next time a request 125 for the WML page is made after completion of the processing request, the WAP application 30 accesses the database 35 at 130 and discovers that the request processing has been completed. The WAP application 30 extracts the results 135 from the database 35 and transmits the results to the mobile terminal 10 at 140. The WML code for the WML page downloaded to the mobile terminal lOisgenerated dynamically using servlet, JSP, ASP, CGI or associated technology. For example, in response to a request for booking a ticket wherein the process 40 has not yet completed processing the original request, the following code is generated:
<card 'Εooked'' ontimer=''http://vΛv .bookhere.com/BookTicket#Booked">
<timer=5>
<p>No ticket available, please wait</ρ>
</card>
Once the processing of the request has been completed, the following coding would be generated:
<card "Booked"> <p>Here is your ticket!</p>
</card>
It should, of course, be realized that any type of coding may be generated to suit the particular application being utilized.
This method will overcome current deficiencies in the WAP standard which may hinder a developer who wishes to perform functions that take longer than the standard request timeout period. Using this method, applications may be developed which require greater than the standard request timeout period necessary to process a request thus providing greater functionality to the user.
The previous description is of a preferred embodiment for implementing the invention, and the scope of the invention should not necessarily be limited by this description. The scope of the present invention is instead defined by the following claims.