The architecture of the UP.Link platform leverages the design and infrastructure of the Web. The sections below summarize Web operation and show how UP.Link platform operation compares to it.
Suppose a user chooses the following URL using a conventional Web browser:
http://developer.phone.com
Figure 1-4 summarizes the resulting interaction.
The user opens a Web browser and specifies a URL.
The browser parses the URL and sends an HTTP or HTTP Secure (HTTPS) request to the Web server.
The Web server parses the request and determines what to retrieve. If the URL specifies a static file (as in this example), the Web server retrieves it. If the URL specifies a CGI program, the Web server launches the program.
The Web server prepends an HTTP or HTTPS header to the static file or CGI program output and sends it back to the browser.
The browser parses the response and displays the content to the user.
UP.Link transactions use the same basic model--the primary difference being that the UP.Phone and UP.Link Server together replace the Web browser. Suppose a user presses an UP.Phone key that requests the following URL:
http://developer.phone.com/dev/sdk.41/examples/wml/index.wml
Figure 1-5 summarizes the resulting interaction.
The user uses an UP.Phone to request a URL.
The UP.Browser creates a request containing the URL and information that identifies the subscriber and sends it to the UP.Link Server.
The UP.Link Server parses the request, generates a conventional HTTP or HTTP Secure (HTTPS) request, and sends it to the Web server.
The Web server parses the request and determines what to retrieve. If the URL specifies a static file (as in this example), the Web server retrieves it. If the URL specifies a CGI program, the Web server launches the program.
The Web server prepends an HTTP or HTTPS header to the static file or CGI program output and sends it back to the UP.Link Server.
The UP.Link Server parses the response, validates the WML, generates a response (removing the HTTP or HTTPS header), and sends it to the UP.Phone.
The UP.Browser parses the response and displays the content to the user.
The Web and the UP.Link platform also support "push" transactions, in which a service asynchronously sends information to the user. "Push" transactions are described in Chapter 5 of the UP.SDK Developer's Guide.