Wireless Application Protocol ppt


Published on

Wireless Application Protocol ppt

Published in: Technology
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • © GMD/Secorvo GmbH Seite „ Mobile Security“ WAP-Sicherheit Michael Herfert 26.-27.06.2001
  • © GMD/Secorvo GmbH Seite „ Mobile Security“ WAP-Sicherheit Michael Herfert 26.-27.06.2001
  • © GMD/Secorvo GmbH Seite „ Mobile Security“ WAP-Sicherheit Michael Herfert 26.-27.06.2001
  • Wireless Application Protocol ppt

    1. 1. WAP A-Jesuraj BM08530 MCA-III
    2. 2. Over view <ul><li>WAP - Introduction </li></ul><ul><li>WAP - The Model </li></ul><ul><li>WAP - Architecture </li></ul><ul><li>WAP - Environment </li></ul><ul><li>WAP - WML Syntax </li></ul><ul><li>WAP - WML Script </li></ul><ul><li>WAP - Core Services </li></ul><ul><li>WAP - Key Benefits </li></ul><ul><li>WAP - Modern </li></ul><ul><li>WAP - Future Prospects </li></ul>
    3. 3. Contents <ul><li>Introduction </li></ul><ul><ul><li>What is WAP? </li></ul></ul><ul><ul><li>History </li></ul></ul><ul><li>WAP - The Model </li></ul><ul><ul><li>The Internet Model </li></ul></ul><ul><ul><li>The WAP Model </li></ul></ul><ul><ul><li>How WAP Model Works? </li></ul></ul><ul><li>WAP - Architecture </li></ul><ul><ul><li>Application Layer </li></ul></ul><ul><ul><li>Session Layer </li></ul></ul><ul><ul><li>Security layer </li></ul></ul><ul><ul><li>Transport Layer </li></ul></ul>
    4. 4. 1. Introduction <ul><li>1.1 What is WAP? </li></ul><ul><li>WAP stands for Wireless Application Protocol </li></ul><ul><li>WAP is an application communication protocol </li></ul><ul><li>WAP is used to access services and information </li></ul><ul><li>WAP is inherited from Internet standards </li></ul><ul><li>WAP is for handheld devices such as mobile phones </li></ul>
    5. 5. <ul><li>WAP is a protocol designed for micro browsers </li></ul><ul><li>WAP enables the creating of web applications for mobile devices. </li></ul><ul><li>WAP uses the mark-up language WML (not HTML) </li></ul><ul><li>WML is defined as an XML 1.0 application </li></ul>
    6. 6. <ul><li>1.2. The Wireless Application Protocol </li></ul><ul><li>The WAP is the leading standard for information services on wireless terminals like digital mobile phones. </li></ul><ul><li>The WAP standard is based on Internet standards (HTML, XML and TCP/IP). </li></ul>
    7. 7. <ul><li>1.3. History of WAP </li></ul><ul><li>WAP is published by the WAP Forum, founded in 1997 by Ericsson, Motorola, Nokia, and Unwired Planet. </li></ul><ul><li>Forum members now represent over 90% of the global handset market, as well as leading infrastructure providers, software developers and other organizations. </li></ul>
    8. 8. 2. WAP Model 2.1 Web-Model Client Server req. resp.
    9. 9. <ul><li>2.1 Internet Model </li></ul><ul><li>The Internet model makes it possible for a client to reach services on a large number of origin servers. </li></ul><ul><li>Each services is addressed by a unique Uniform Resource Locator (URL). </li></ul>
    10. 10. <ul><li>The content stored on the servers is of various formats, but HTML is the predominant. HTML provides the content developer with a means to describe the appearance of a service in a flat document structure. If more advanced features like procedural logic are needed, then scripting languages such as JavaScript or VB Script may be utilised. </li></ul>
    11. 11. 2.1WEB Model
    12. 12. <ul><li>The figure above shows how a WWW client request a resource stored on a web server. On the Internet, standard communication protocols, like HTTP and Transmission Control Protocol/Internet Protocol (TCP/IP) are used. </li></ul><ul><li>The content available at the web server may be static or dynamic . Static content is produced once and not changed or updated very often , for example a company presentation . </li></ul>
    13. 13. <ul><li>Dynamic content is needed when the information provided by the service changes more often , for example timetables, news, stock quotes and account information. Technologies such as Active Server Pages (ASP), Common Gateway Interface (CGI), and Servlets allow content to be generated dynamically. </li></ul>
    14. 14. 2.2 WAP Model <ul><li>The figure below shows the WAP programming model. Note the similarities with the Internet model. Without the WAP Gateway/Proxy the two models would have been practically identical. </li></ul>
    15. 15. WAP I model: Translator WAP - WEB Gateway encoded req. encoded resp. req. resp. Encode & Decode WAP I WEB Client Server WAE User Agent cgi scripts etc.
    16. 17. <ul><li>WAP Gateway/Proxy is the entity that connects the wireless domain with the Internet. We should make a note that the request that is sent from the wireless client to the WAP Gateway/Proxy uses the Wireless Session Protocol (WSP). In its essence, WSP is a binary version of HTTP. </li></ul>
    17. 18. <ul><li>A markup language - the Wireless Markup Language (WML) has been adapted to develop optimized WAP applications. In order to save valuable bandwidth in the wireless network, WML can be encoded into a compact binary format. Encoding WML is one of the tasks performed by the WAP Gateway/Proxy . </li></ul>
    18. 19. <ul><li>2.3 How WAP Model Works? </li></ul><ul><li>When it comes to actual use, WAP works like this: </li></ul>
    19. 21. <ul><li>The user selects an option on their mobile device that has a URL with Wireless Markup language (WML) content assigned to it. </li></ul><ul><li>The phone sends the URL request via the phone network to a WAP gateway, using the binary encoded WAP protocol. </li></ul>
    20. 22. <ul><li>The gateway translates this WAP request into a conventional HTTP request for the specified URL, and sends it on to the Internet . </li></ul><ul><li>The appropriate Web server picks up the HTTP request . </li></ul><ul><li>The server processes the request , just as it would any other request. If the URL refers to a static WML file, the server delivers it . If a CGI script is requested, it is processed and the content returned as usual. </li></ul>
    21. 23. <ul><li>The Web server adds the HTTP header to the WML content and returns it to the gateway. </li></ul><ul><li>The WAP gateway compiles the WML into binary form . </li></ul><ul><li>The gateway then sends the WML response back to the phone . </li></ul><ul><li>The phone receives the WML via the WAP protocol . </li></ul><ul><li>The micro-browser processes the WML and displays the content on the screen. </li></ul>
    22. 24. 3. WAP- Architecture
    23. 25. WAP I – protocol stack Application (WAE) Session (WSP) Security (WTLS) Transport (WDP) Transaction (WTP) Medium: GSM, CDMA, UMTS ... WAP Application HTTP Security (TLS) IP/UDP TCP Medium: ... WEB
    24. 26. <ul><li>WAP is designed in a layered fashion so that it can be extensible, flexible, and scalable. As a result, the WAP protocol stack is divided into five layers. </li></ul><ul><li>Application Layer </li></ul><ul><li>Wireless Application Environment (WAE) . This layer is of most interest to content developers because it contains, among other things, device specifications and the content development programming languages, WML and WMLScript. </li></ul>
    25. 27. <ul><li>Session Layer </li></ul><ul><li>Wireless Session Protocol (WSP). Unlike HTTP, WSP has been designed by the WAP Forum to provide fast connection suspension and reconnection. </li></ul><ul><li>WSP- The WAP session protocol (WSP) layer provides a lightweight session layer to allow efficient exchange of data between applications. </li></ul>
    26. 28. <ul><li>Transaction Layer </li></ul><ul><li>Wireless Transaction Protocol (WTP). The WTP runs on top of a datagram service such as User Datagram Protocol (UDP) and is part of the standard suite of TCP/IP protocols used to provide a simplified protocol suitable for low bandwidth wireless stations . </li></ul><ul><li>WTP -- The WAP transaction protocol (WTP) layer provides transaction support, adding reliability to the datagram service provided by WDP. </li></ul>
    27. 29. <ul><li>WDP -- The WAP datagram protocol (WDP) is the transport layer that sends and receives messages via any available bearer network, including SMS, USSD, CSD, CDPD and GPRS. </li></ul>
    28. 30. <ul><li>Security Layer Wireless Transport Layer Security (WTLS ). WTLS incorporates security features that are based upon the established Transport Layer Security (TLS) protocol standard. It includes data integrity checks, privacy, service denial, and authentication services . </li></ul><ul><li>WTLS -- Wireless transport layer security (WTLS), an optional security layer, has encryption facilities that provide the secure transport service required by many applications , such as e-commerce. </li></ul>
    29. 31. <ul><li>Transport layer </li></ul><ul><li>Wireless Datagram Protocol (WDP). The WDP allows WAP to be bearer-independent by adapting the transport layer of the underlying bearer. The WDP presents a consistent data format to the higher layers of the WAP protocol stack, thereby offering the advantage of bearer independence to application developers. </li></ul>
    30. 32. <ul><li>Each of these layers provides a well-defined interface to the layer . This means that the internal workings of any layer are transparent or invisible to the layers. The layered architecture allows other applications and services to utilize the features provided by the WAP-stack as well. This makes it possible to use the WAP-stack for services and applications that currently are not specified by WAP. </li></ul>
    31. 33. The WAP protocol architecture is shown below alongside a typical Internet Protocol stack.
    32. 34. What is the purpose of WAP? <ul><li>To enable easy, fast delivery of relevant information and services to mobile users. </li></ul><ul><li>It consists of a WML language specification , a WMLScript specification , and a Wireless Telephony Application Interface (WTAI) specification. </li></ul>
    33. 35. What type of devices will use WAP? <ul><li>Handheld digital wireless devices such as mobile phones, pagers, two-way radios, smartphones, and communicators -- from low-end to high-end. </li></ul>
    34. 36. Which wireless networks does WAP work with? <ul><li>WAP is designed to work with most wireless networks such as CDPD, CDMA, GSM, PDC, PHS, TDMA, FLEX, ReFLEX, iDEN, TETRA, DECT, DataTAC, Mobitex. </li></ul>
    35. 37. What operating systems are compatible with WAP? <ul><li>WAP is a communications protocol and an application environment. It can be built on any operating system including PalmOS, EPOC, Windows CE, FLEXOS, OS/9, JavaOS, etc. It provides service interoperability even between different device families. </li></ul>
    36. 38. WAP Micro Browsers <ul><li>To fit into a small wireless terminal, WAP uses a Micro Browser. </li></ul><ul><li>A Micro Browser is a small piece of software that makes minimal demands on hardware, memory and CPU. It can display information written in a restricted mark-up language called WML. </li></ul><ul><li>The Micro Browser can also interpret a reduced version of JavaScript called WMLScript. </li></ul>
    37. 39. Why are network operators behind WAP? <ul><li>With minimal risk and investment, WAP enables operators to decrease churn, cut costs, and increase revenues by improving existing, value-added services and offering exciting new informational services. </li></ul>
    38. 40. Why are equipment manufacturers interested in WAP? <ul><li>Being a global open specification suite, WAP has generated the critical mass for manufacturers. This has opened up new product and marketing opportunities in the wireless industry and provides new revenue to participating companies. </li></ul>
    39. 41. How does Bluetooth relate to WAP? <ul><li>Bluetooth is a local area low power radio link between devices. Many of the usage scenarios for Bluetooth will also involve one of the devices communicating over the air using WAP. </li></ul><ul><li>While many Bluetooth members are also WAP members, and it is expected that many future handheld wireless devices will deploy both Bluetooth and WAP technology, the two technologies fundamentally address different problems. </li></ul>
    40. 42. Will WAP comply with Third Generation wireless standards? <ul><li>Yes, WAP has been designed to be as independent as possible from the underlying network technology. </li></ul>
    41. 43. Is WAP necessary with higher bandwidth 3G networks? <ul><li>Even as bandwidths increase, the cost of that bandwidth does not fall to zero. These costs result from higher power usage in the terminals, higher costs in the radio sections, greater use of RF spectrum, and increased network loading. In addition, the original constraints WAP was designed for -- intermittent coverage, small screens, low power consumption, wide scalability over bearers and devices, and one-handed operation -- are still valid in 3G networks. </li></ul><ul><li>Finally, we can expect the bandwidth required by application users to steadily increase. </li></ul>
    42. 44. <ul><li>Therefore, there is still a need to optimize the device and network resources for wireless environments. We can expect WAP to optimize support for multimedia applications that continue to be relevant. If WAP is very successful in mass-markets on 2.5G networks, 3G networks may be needed purely for capacity relief. </li></ul>
    43. 45. How does Bluetooth relate to WAP? <ul><li>Bluetooth is a local area low power radio link between devices. Many of the usage scenarios for Bluetooth will also involve one of the devices communicating over the air using WAP. </li></ul><ul><li>While many Bluetooth members are also WAP members, and it is expected that many future handheld wireless devices will deploy both Bluetooth and WAP technology, the two technologies fundamentally address different problems. </li></ul>
    44. 46. Can we use WAP in other country? <ul><li>Yes, if the service provider in that country supports roaming & WAP on their network. </li></ul><ul><li>Can we access all WAP sites? </li></ul><ul><li>We can only access WAP sites available on WAP server of our service provider. </li></ul><ul><li>  </li></ul>
    45. 47. How can we configure my mobile for WAP? <ul><li>Before configure please, make sure that our SIM card is enabled for this facility & our phone is having WAP browser. </li></ul><ul><li>  </li></ul>
    46. 48. Is WAP service expensive and how we can activate it? <ul><li>WAP service is very cheap (check with our service provider). We need to have a WAP enabled phones & our SIM card should support data/fax communications. Check with our service provider regarding WAP services. </li></ul>
    47. 49. Examples of WAP use <ul><li>Checking train table information </li></ul><ul><li>Ticket purchase </li></ul><ul><li>Flight check in </li></ul><ul><li>Viewing traffic information </li></ul><ul><li>Checking weather conditions </li></ul><ul><li>Looking up stock values </li></ul><ul><li>Looking up phone numbers </li></ul><ul><li>Looking up addresses </li></ul><ul><li>Looking up sport results </li></ul>
    48. 50. Sayeed Ahmed BM08536 MCA-III
    49. 51. Contents <ul><li>Environment </li></ul><ul><li>WML Syntax </li></ul><ul><li>WML Script </li></ul>
    50. 52. WAP-Environment <ul><li>The Wireless Application Environment (WAE) provides an environment that enables a wide range of applications to be used on wireless devices. </li></ul><ul><li>&quot;WAP - The wireless service enabler&quot; the WAP WAE programming model was introduced . </li></ul>
    51. 53. <ul><li>Addressing model </li></ul><ul><li>A syntax suitable for naming resources stored on servers. </li></ul><ul><li>WAP use the same addressing model as the one used on the Internet. </li></ul><ul><li>ie: Uniform Resource Locators (URL). </li></ul>
    52. 54. <ul><li>Wireless Markup Language </li></ul><ul><ul><li>A lightweight markup language designed to meet the constraints of a wireless environment with low bandwidth and small handheld devices. </li></ul></ul><ul><ul><li>The Wireless Markup Language is WAP’s analogy to HTML used on the WWW. WML is based on the Extensible Markup Language (XML ). </li></ul></ul>
    53. 55. <ul><li>WML Script </li></ul><ul><ul><li>WMLScript is based on ECMA Script, the same scripting language that JavaScript is based on. </li></ul></ul><ul><ul><li>It can be used for enhancing services written in WML in the way that it to some extent adds intelligence to the services, for example procedural logic, loops, conditional expressions, and computational functions. </li></ul></ul>
    54. 56. <ul><li>Wireless Telephony Application (WTA) </li></ul><ul><li>A framework and programming interface for telephony services. </li></ul><ul><li>The Wireless Telephony Application (WTA) environment provides a means to create telephony services using WAP . </li></ul>
    55. 57. <ul><li>Hardware and Software Requirement </li></ul><ul><li>At minimum, developing WAP applications requires a web server and a WAP simulator. Using simulator software while developing a WAP application is convenient as all the required software can be installed on the development PC. </li></ul><ul><li>Although software simulators are good in their own right, no WAP application should go into production without testing it with actual hardware. </li></ul>
    56. 58. <ul><li>The following list gives the necessary hardware and software to test and develop WAP applications: </li></ul><ul><ul><li>a Web server with connection to the Internet </li></ul></ul><ul><ul><li>a WML to develop WAP application </li></ul></ul><ul><ul><li>a WAP simulator to test WAP application </li></ul></ul><ul><ul><li>a WAP gateway </li></ul></ul><ul><ul><li>a WAP phone for final testing </li></ul></ul><ul><ul><li>Microsoft IIS or Apache on Windows or Linux can be used as the web server and Nokia WAP Toolkit version 2.0 as the WAP simulator. </li></ul></ul>
    57. 59. <ul><li>Configure Web Server for WAP </li></ul><ul><li>In the WAP architecture, the web server communicates with the WAP gateway, accepting HTTP requests and returning WML code to the gateway. </li></ul><ul><li>The HTTP protocol mandates that each reply must include something called a Multi-Purpose Internet Mail Extensions (MIME) type. </li></ul>
    58. 60. <ul><li>In normal web applications, this MIME type is set to text/html, designating normal HTML code. </li></ul><ul><li>Images, on the other hand, could be specified as image/gif or image/jpeg, for instance. With this content type specification, the web browser knows the data type that the web server returns. </li></ul>
    59. 61. <ul><li>In WAP applications a new set of MIME types must be used, as shown in the following table : </li></ul>File type MIME type WML (.wml) text/vnd.wap.wml WMLScript (.wmls) text/vmd.wap.wmlscript WBMP (.wbmp) image/vnd.wap.wbmp
    60. 62. WAP - WML Syntax <ul><li>The topmost layer in the WAP architecture is made up of WAE (Wireless Application Environment), which consists of WML and WML scripting language. </li></ul><ul><li>WML scripting language is used to design applications that are sent over wireless devices such as mobile phones. This language takes care of the small screen and the low bandwidth of transmission. </li></ul><ul><li>WML is an application of XML, which is defined in a document-type definition. </li></ul>
    61. 63. <ul><li>WML pages are called decks. They are constructed as a set of cards, related to each other with links. </li></ul><ul><li>When a WML page (decks) is accessed from a mobile phone, all the cards in the page are downloaded from the WAP server to mobile phone showing the content. </li></ul><ul><li>WML commands and syntaxes are used to show content and to navigate between the cards. Developers can use these commands to declare variables, format text, and show images on the mobile phone. </li></ul>
    62. 64. <ul><li>WAP Program Structure </li></ul><ul><li>A WML program is typically divided into two parts: the document prolog and the body. Consider the following code. </li></ul><?xml version=&quot;1.0&quot;?> <!DOCTYPE wml PUBLIC &quot;-//WAPFORUM//DTD WML 1.2//EN&quot; &quot;http://www.wapforum.org/DTD/wml12.dtd&quot;> <wml> <card> ... </card> . ..more cards... </wml>
    63. 65. WAE - WML Deck <WML> <CARD> <DO TYPE=“ACCEPT”> <GO URL=“#eCard”/> </DO Welcome! </CARD> <CARD NAME=“eCard”> <DO TYPE=“ACCEPT”> <GO URL=“/submit?N=$(N)&S=$(S)”/> </DO> Enter name: <INPUT KEY=“N”/> Choose speed: <SELECT KEY=“S”> <OPTION VALUE=“0”>Fast</OPTION> <OPTION VALUE=“1”>Slow</OPTION> <SELECT> </CARD> </WML> Input Elements Card Navigation Variables
    64. 66. <ul><li>The first line of this text says that this is an XML document and the version is 1.0. </li></ul><ul><li>The second line selects the document type and gives the URL of the document type definition (DTD). This DTD gives the full XML definition of WML. </li></ul><ul><li>The DTD referenced is defined in WAP 1.1, but this header changes with the versions of the WML. The header must be copied exactly so that the tool kits automatically generate this prolog. </li></ul>
    65. 67. <ul><li>The body is enclosed within a <wml>...</wml> tag pair as shown above. The body of a WML document can consist of one or more of the following: </li></ul><ul><li>Deck </li></ul><ul><li>Card </li></ul><ul><li>Content to be shown </li></ul><ul><li>Navigation instructions </li></ul>
    66. 68. <ul><li>Decks and Cards </li></ul><ul><li>WML pages are often called &quot;decks&quot;. A deck contains a set of cards. A card element can contain text, markup, links, input-fields, tasks, images and more. Cards can be related to each other with links. </li></ul><ul><li>Navigation between the cards is done by the phone computer - inside the phone - without any extra access trips to the server. </li></ul>
    67. 69. <ul><li>WML Commands: </li></ul><ul><li>The commands used in WML are summarized as follows: </li></ul><ul><li>Formatting: </li></ul>Command Description <p> Paragraph <b> Bold <big> Large <em> Emphasized <I> Italicized <small> Small <strong> Strongly Emphasized <u> Underlined <br> Line Break
    68. 70. <ul><li>Inserting images: </li></ul><ul><li>Using Tables: </li></ul><img src=&quot;image-path/image - name&quot; alt=&quot;Picture not available&quot; /> Command Description <table> Definition of a table <tr> Defining a row <td> Defining a column <Thead> Table header
    69. 71. <ul><li>Variables: </li></ul><ul><li>Declared as </li></ul><ul><li>Used as: </li></ul><ul><ul><li>$ defines as identifier </li></ul></ul><setvar name=&quot;x&quot; value=&quot;xyz&quot;/>
    70. 72. <ul><li>Forms: </li></ul>Command Description <select> Define single or multiple list <input> Input from user <option> Defines an option in a selectable list <fieldset> Defines a set of input fields <optgroup> Defines an option group in a selectable list
    71. 73. <ul><li>Task Elements </li></ul>Command Description <go> Represents the action of switching to a new card <noop> Says that nothing should be done <prev> Represents the action of going back to the previous card <refresh> Refreshes some specified card variables.
    72. 74. <ul><li>Events: </li></ul>Command Description <do> Defines a do event handler <onevent> Defines an onevent event handler <postfield> Defines a postfield event handler <ontimer> Defines an ontimer event handler <onenterforward> Defines an onenterforward handler <onenterbackward> Defines an onenterbackward handler <onpick> Defines an onpick event handler
    73. 75. <ul><li>Sample WML Program </li></ul><ul><li><?xml version=&quot;1.0&quot;?> <!DOCTYPE wml PUBLIC &quot;-//WAPFORUM//DTD WML 1.1//EN&quot; &quot;http://www.wapforum.org/DTD/wml_1.1.xml&quot;> <wml> <card id=&quot;no1&quot; title=&quot;Card 1&quot;>   <p>Hello World!</p> </card> <card id=&quot;no2&quot; title=&quot;Card 2&quot;>   <p>Welcome to our WAP Tutorial!</p> </card> </wml> </li></ul>
    74. 76. <ul><li>The result will look something like this in a mobile phone (note that only one card is displayed at a time): </li></ul>------ Card 1 ------  Hello World!
    75. 77. Parthiapan BM08535 MCA-III
    76. 78. Contents <ul><li>WAP - WML Script </li></ul><ul><li>WAP - Core Services </li></ul><ul><li>WAP - Key Benefits </li></ul>
    77. 79. WAP - WML Script <ul><li>WMLScript (Wireless Markup Language Script) is the client-side scripting language of WML (Wireless Markup Language). A scripting language is similar to a programming language, but is of lighter weight. With WMLScript, the wireless device can do some of the processing and computation. This reduces the number of requests and responses to/from the server. </li></ul>
    78. 80. <ul><li>WML Script Components: </li></ul><ul><li>WML Script is very similar to Java Script. Almost WML Script components have similar meaning as they have in Java Script. A WML Script program components are summarized as follows: </li></ul>
    79. 81. <ul><li>WML Script Operators: </li></ul><ul><li>WML Script supports following type of operators. </li></ul><ul><li>Arithmetic Operators </li></ul><ul><li>Comparison Operators </li></ul><ul><li>Logical (or Relational) Operators </li></ul><ul><li>Assignment Operators </li></ul><ul><li>Conditional (or ternary) Operators </li></ul>
    80. 82. <ul><li>WML Script Control Statements: </li></ul><ul><li>Control statements are used for controlling the sequence and iterations in a program. </li></ul>Statement Description if-else Conditional branching for Making self-incremented fixed iteration loop while Making variable iteration loop break Terminates a loop continue Quit the current iteration of a loop
    81. 83. <ul><li>URL: The URL library contains functions that help us manipulate URLs. Example Function: getPath(), getReferer(), getHost(), getBase(), escapeString(), isValid(), loadString(), resolve(), unescapeString(), getFragment() </li></ul><ul><li>WMLBrowser: The WMLBrowser library provides a group of functions to control the WML browser or to get information from it. Example Function: go(), prev(), next(), getCurrentCard(), refresh(), getVar(), setVar() </li></ul><ul><li>Dialogs: The Dialogs library Contains the user interface functions. Example Function: prompt(), confirm(), alert() </li></ul>
    82. 84. <ul><li>WML Scripts Comments: </li></ul><ul><li>There are two types of comments in WMLScript: </li></ul><ul><li>Single-line comment: To add a single-line comment, begin a line of text with the // characters. </li></ul><ul><li>Multi-line comment: To add a multi-line comment, enclose the text within /* and */. </li></ul>
    83. 85. <ul><li>These rules are the same in WMLScript, JavaScript, Java, and C++. The WMLScript engine will ignore all comments. The following WMLScript example demonstrates the use of comments: </li></ul>// This is a single-line comment. /* This is a multi-line comment. */ /* A multi-line comment can be placed on a single line.*/
    84. 86. <ul><li>WML Script Case Sensitivity: </li></ul><ul><li>The WMLScript language is case-sensitive. For example, a WMLScript function with the name WMLScript_Function is different from wmlscript_function. So, be careful of the capitalization when defining or referring to a function or a variable in WMLScript. </li></ul><ul><li>Whitespaces in WMLScript: </li></ul><ul><li>Except in string literals, WMLScript ignores extra whitespaces like spaces, tabs and newlines. Hence, the code in the earlier &quot;Hello World&quot; example can be typed in the following way and the result will remain the same: </li></ul>
    85. 87. <ul><li>WML Script Statement Termination by Semicolons: </li></ul><ul><li>A semicolon is required to end a statement in WMLScript. This is the same as C++ and Java. Note that JavaScript does not have such requirement but WML Script makes it mandatory. </li></ul>
    86. 88. <ul><li>WML Script Functions: </li></ul><ul><li>The user-defined functions are declared in a separate file having the extension .wmls. Functions are declared as follows: </li></ul>function name (parameters) { control statements ; return var; }
    87. 89. <ul><li>The functions used are stored in a separate file with the extension .wmls. The functions are called as the filename followed by a hash, followed by the function name: </li></ul>maths.wmls#squar()
    88. 90. <ul><li>WML Scripts Standard Libraries </li></ul><ul><li>There are six standard libraries totally. Here is an overview of them: </li></ul><ul><li>Lang: The Lang library provides functions related to the WMLScript language core. Example Function: abs(),abort(), characterSet(),float(), isFloat(), isInt(), max(), isMax(), min(), minInt(), maxInt(), parseFloat(), parseInt(), random(), seed() </li></ul>
    89. 91. <ul><li>Float: The Float library contains functions that help us perform floating-point arithmetic operations. Example Function: sqrt(), round(), pow(), ceil(), floor(), int(), maxFloat(), minFloat() </li></ul><ul><li>String: The String library provides a number of functions that help us manipulate strings. Example Function: length(), charAt(), find(), replace(), trim(), compare(), format(), isEmpty(), squeeze(), toString(), elementAt(), elements(), insertAt(), removeAt(), replaceAt() </li></ul>
    90. 92. WAP - Core Services <ul><li>Banking: </li></ul><ul><li>Accessing account statements </li></ul><ul><li>Paying bills </li></ul><ul><li>Transferring money between accounts </li></ul><ul><li>Finance: </li></ul><ul><li>Retrieving stock and share prices </li></ul><ul><li>Buying and selling stocks and shares </li></ul><ul><li>Looking up interest rates </li></ul><ul><li>Looking up currency exchange rates </li></ul>
    91. 93. <ul><li>Shopping: </li></ul><ul><li>Buying everyday commodities </li></ul><ul><li>Browsing and buying books </li></ul><ul><li>Buying CDs </li></ul><ul><li>Ticketing: </li></ul><ul><li>Booking or buying airline tickets </li></ul><ul><li>Buying concert tickets </li></ul><ul><li>Booking theatre tickets </li></ul>
    92. 94. <ul><li>Entertainment: </li></ul><ul><li>Retrieving restaurant details </li></ul><ul><li>Looking up clubs </li></ul><ul><li>Finding out what is playing in what cinemas </li></ul><ul><li>Playing solitaire games </li></ul><ul><li>Playing interactive games </li></ul><ul><li>Weather: </li></ul><ul><li>Retrieving local weather forecasts </li></ul><ul><li>Looking up weather at other locations </li></ul><ul><li>E- Messaging: </li></ul><ul><li>Voice mail </li></ul><ul><li>Unified Messaging </li></ul><ul><li>Enhanced support of legacy SMS services </li></ul>
    93. 95. WAP - Key Benefits <ul><li>Subscribers: </li></ul><ul><li>It is crucial that the subscribers will benefit from using WAP based services, otherwise there will be no incentive neither for WAP as a whole nor for any of the other groups mentioned below. The key-benefits can be summarised as: </li></ul><ul><li>Portability </li></ul><ul><li>Easy to use </li></ul><ul><li>Access to a wide variety of services on a competitive market </li></ul><ul><li>The possibility of having personalised services </li></ul><ul><li>Fast, convenient, and efficient access to services </li></ul><ul><li>To fulfil as many customers needs as possible, WAP devices will be available in various form factors, e.g. pagers, handheld PCs, and phones </li></ul>
    94. 96. <ul><li>Operators: </li></ul><ul><li>Many of the advantages mentioned under &quot;Service Providers&quot; are be applicable to operators as well. The operator's benefits may include: </li></ul><ul><li>Address new market segments of mobile users by enabling a wider range of mobile VAS. </li></ul><ul><li>Deploy telephony services that in contrast to traditional telephony services are easy to create, update, and personalise </li></ul><ul><li>Use the flexibility of WAP as a tool to differentiate from competitors </li></ul>
    95. 97. <ul><li>Attractive interface to services will increase usage </li></ul><ul><li>Increased revenues per user due to higher network utilization </li></ul><ul><li>Convenient service creation and maintenance, including short time-to-market </li></ul><ul><li>Replace expensive customer care centers with WAP based services (E-care) </li></ul><ul><li>WAP services are designed to be independent of the network, implying that an operator who runs different types of networks only have to develop its services ones </li></ul><ul><li>An open standard means that equipment will be provided by many manufacturers </li></ul>
    96. 98. <ul><li>Service Providers: </li></ul><ul><li>WAP opens new possibilities for service and content providers since they not necessarily have to come to an agreement with a specific operator about providing services to their customers. The gains are for example: </li></ul><ul><li>Create a service once, make it accessible on a broad range of wireless networks </li></ul><ul><li>Address new market segments by launching innovative mobile VAS. Keep old customers by adapting existing Internet services to WAP </li></ul>
    97. 99. <ul><li>Keep old customers by adapting existing Internet services to WAP </li></ul><ul><li>Convenient service creation and maintenance </li></ul><ul><li>Creating a WAP service is no harder than creating an Internet service today since WML and WMLScript are based on well-known Internet technology </li></ul><ul><li>Use standard tools like ASP or CGI to generate content dynamically </li></ul><ul><li>Utilise existing investments in databases etc that are the basis of existing Internet services </li></ul>
    98. 100. <ul><li>Manufacturers: </li></ul><ul><li>Mobile devices supporting WAP will be available in many different form factors, e.g. cellular phones, pagers, and handheld PCs. Hardware manufacturers will also need to supply operators etc with equipment, such as WAP Gateway/Proxys and WTA servers. Manufacturer benefits are for example: </li></ul><ul><li>WAP scales across a broad range of mobile networks, meaning that WAP implementations can be used in devices supporting different types of networks. </li></ul>
    99. 101. <ul><li>The expected wide adoption of WAP implies that economies of scales can be achieved, meaning that the huge mass-market can be addressed </li></ul><ul><li>The fact that WAP is designed to consume minimal amount of memory, and that the use of proxy technology relieves the CPU, means that inexpensive components can be used in the handsets </li></ul><ul><li>Reuse the deep knowledge about wireless network infrastructure to develop advanced servers that seamlessly integrates mobile VAS with telephony </li></ul><ul><li>Seize the opportunity to introduce new innovative products </li></ul>
    100. 102. <ul><li>Tools Providers: </li></ul><ul><li>Today there is a large amount of tools available for creating applications for the web. Content developers have become used to the convenience that tools like FrontPage and DreamWeaver provides. Tools providers will be able to: </li></ul><ul><li>Reuse and modify existing products to support WAP, or even integrate WAP support in existing tools. </li></ul><ul><li>Address a new customer base in the wireless community. </li></ul>
    101. 103. Sagaya Raj BM08538 MCA-III
    102. 104. Contents <ul><li>WAP - Modern Devices </li></ul><ul><li>WAP - Future Prospects </li></ul>
    103. 105. WAP - Modern Devices <ul><li>AWAP device is a combination of hardware and software capable of running a WAP-compliant microbrowser such as a WAP-enabled mobile phone or a PDA. </li></ul><ul><li>APC can also be used as a WAP device if you download a WAP phone emulator from one of the developer sites. The emulator allows you to use a virtual phone on your desktop. Some major suppliers, such as Ericsson, Nokia, and Openwave, have developer sites where you can download software development kits (SDKs) containing WAP emulators. </li></ul>
    104. 106. <ul><li>AWAP phone can run any WAP application in the same way that a Web browser can run any HTML application. Once you have a WAP phone, you can access the Internet simply by entering URLs and following the links that appear. </li></ul><ul><li>Using these devices, easy and secure access to Internet content and services such as banking, leisure, and unified messaging is made available. Furthermore, access is not restricted to the Internet; WAP devices will be able to deal with intranet information in the same way as Internet content because both are based upon HTML. </li></ul>
    105. 107. WAP - Future Prospects <ul><li>The future of WAP depends largely on whether consumers decide to use WAPdevices to access the Web, and also on whether a new technology comes along that would require a different infrastructure than WAP. </li></ul><ul><li>On the consumer side, the factors largely involve the limitations of WAP and of handheld devices: the low bandwidth, the limited input ability, and the small screens all require users to adapt from their regular Web-browsing expectations. </li></ul>
    106. 108. <ul><li>In the next few years, mobile phones will start to benefit from very high bandwidth capabilities. The 2.5G/3G systems will allow much higher capacity and data rates than can be offered by the restricted bandwidth currently available. </li></ul><ul><li>These wireless devices will be supported by a number of emerging technologies, including GPRS, EDGE, HSCSD and UMTS: </li></ul>
    107. 109. <ul><li>So what is the future for WAP? It has been designed to be independent of the underlying network technology. The original constraints WAP was designed for - intermittent coverage, small screens, low power consumption, wide scalability over bearers and devices, and one-handed operation - are still valid in 2.5G and 3G networks. </li></ul><ul><li>The bottom line is that WAP is not and can never be the Web on your mobile phone.WAP is great as long as developers understand that it's what's inside the applications that matters, and the perceived value of the content to the user. The browser interface itself, while important, will always be secondary to the content. </li></ul>
    108. 110. WAP in The Future <ul><li>Handset Manufacturers and WAP Services WAP characteristics will shape the development of handheld devices </li></ul><ul><li>Real-time applications and services demand small and key pieces of information that will fuel the success of WAP in the mobile marketplace. e.g. Stock prices, news, weather, and travel information can be provided via WAP </li></ul><ul><li>Telephony Integration The Wireless Telephone Application (WTA) framework adds this feature to WAP. </li></ul>
    109. 111. <ul><li>WAP in the Competitive Environment </li></ul><ul><li>Competition for WAP protocols could come from a number of sources: subscriber identity module (SIM) toolkit.The use of SIMs or smart cards in wireless devices is already widespread and used in some of the service sectors. </li></ul><ul><li>Windows CE.This is a multitasking, multithreaded operating system from Microsoft designed for including or embedding mobile and other space-constrained devices. </li></ul>
    110. 112. <ul><li>JavaPhone..Sun Microsystems is developing PersonalJava. and a JavaPhone. API, which is embedded in a Java. virtual machine on the handset. NEPs will be able to build cellular phones that can download extra features and functions over the Internet; thus, customers will no longer be required to buy a new phone to take advantage of improved features. </li></ul>
    111. 113. <ul><li>The advantages that WAP can offer over these other methods are the following: open standard, vendor independent network-standard independent transport mechanism optimised for wireless data bearers application downloaded from the server, enabling fast service creation and introduction, as opposed to embedded software </li></ul>