Technology Enablers
For wireless to reach its full potential requires supporting technologies that enable the Internet to blend into the fabric of wireless devices and networks. These include high-speed digital networks, synchronization technology, and voice used as a medium of interaction.
High-Speed Networks
Today's wireless networks are designed to transmit voice and brief text messages but can't provide the bandwidth that gives users full access to the rich content of the web. 3G wireless will be capable of combining the powerful technologies of wireless communication and the Internet. Broadband applications such as streaming audio and video are increasingly popular on the Internet as evidenced by the demand and growth in the cable and digital subscriber line (DSL) modem markets.
As these applications mature, wireless devices will need 3G capabilities to access existing Internet materials as well as yet-to-be-imagined applications. In addition, 3G technology will provide users with an always-on connection.
Third-generation promises speeds of from 144Kbps to 384Kbps for mobile users and 2Mbps for stationary connections. Another benefit of 3G is that networks based on different underlying 3G interfaces will harmonize with each other so that users will be able to travel around the world and still have high-bandwidth access. Combined with the Internet, 3G is expected to stimulate new opportunities for multimedia delivery to mobile devices as well as to offices and homes.
Synchronization
Delivering connectivity is one thing. Maintaining consistency is another. Synchronization is a technology for making two sets of data identical (see Figure 1.8). While most mobile devices provide some capability for synchronizing their data with network applications and desktop computers, almost all devices work with specific platforms, data types, and communications media.
For example, the Palm PDA provides hot-synch capability between a PC and a Palm organizer, but not between the Palm and a cellular phone or back-end database. The net effect is many different, proprietary protocols that limit the potential of mobile devices. Synchronization is important in maintaining consistency in wireless B2E interaction. For mobile devices, synchronization can occur in two directions:
Figure 1.8 Synchronization technology can be used to keep mobile devices and databases up to date.
Synchronize networked data with any mobile device.
Synchronize a mobile device with any networked data.
SyncML: A Synchronization Standard SyncML is a protocol based on the Extensible Markup Language (XML), supported by IBM, Lotus, Motorola, Nokia, Palm, Psion, and Starfish for synchronizing data across portable devices. SyncML defines a high-level protocol for sending messages between devices. SyncML is independent of any transport protocol such as Hypertext Transport Protocol (HTTP), WAP, or infrared (IR) transport.
SyncML supports the exchange of different kinds of data including:
Personal data such as vCard for contact information, vCalendar, and iCalendar for calendars, to-do lists, and journal entries
Collaborative data such as e-mail and network news
Relational data
XML and Hypertext Markup Language (HTML) documents
Binary data (commonly referred to as binary large objects or BLOBs)
SyncML recently released the SyncML 1.0 specification providing synchronization technology for mobile solutions. This protocol permits synchronization of both remote and local data. SyncML Reference Toolkit source code enables companies to bring SyncML-compliant products more quickly to the market.
Voice
The challenge for wireless is how to deliver information on increasingly small mobile devices. Voice is one alternative that overcomes the small screen constraints of cell phones, pagers, and PDAs. Telephone support systems and help desks already make extensive use of voice to handle customer queries. Using voice with wireless is a natural next step. However, until recently, the proprietary nature of voice systems has discouraged third-party development because of the risk associated with single platform development.
VoiceXML Voice Extensible Markup Language (VoiceXML) is an effort to standardize voice-driven applications across different platforms so that no matter how devices and networks change, the interactive voice components can be reused (see Figure 1.9). Technically, VoiceXML is a text-based language for creating automated voice services for wireless phones and voice-enabled devices. VoiceXML is based on XML (see Chapter 7 for details about XML). Because XML is text-based, voice programs can be moved across the Internet just as easily as web pages encoded with HTML.
Figure 1.9 The VoiceXML specification assumes platform support for common voice-related functions.
Using the familiar client-server web paradigm, web servers deliver not just "web pages" but "voice pages" that describe a series of interactive dialogs between a user and a cell phone or voice-enabled PDA (see Figure 1.10).
There are several advantages to having a standardized voice application language such as VoiceXML. First, a standard encourages third-party development because VoiceXML products will be usable on a multiplicity of devices. Second, because VoiceXML is based on XML, VoiceXML is accessible to experienced web content programmers. Third, servers can deliver VoiceXML documents to wireless devices just as easily as they deliver web pages. To the server, it's just another web page.
Figure 1.10 VoiceXML pages can be delivered from web servers to mobile devices just as easily as HTML pages are delivered to web browsers.
Voice Portals
Specialized servers called voice portals are becoming available that support server-side voice processing (see Figure 1.11). Intel, for example, has announced an integrated hardware and software voice portal that can be used with a web server to deliver voice applications to mobile voice-enabled devices. Aimed at companies looking to deliver integrated voice and data services, the voice portal consists of an Intel server with specialized digital signal processing (DSP) circuitry for speech processing and recognition.
Figure 1.11 VoiceXML and corresponding support for hardware platforms
VoiceXML Documents A VoiceXML document is a text-based dialog between an end user and a VoiceXML-enabled device. VoiceXML defines two kinds of dialogsforms and menus. A VoiceXML form defines a dialog for filling out web forms. A VoiceXML menu presents users with a choice of options, with the ability to transfer control to other menu dialogs based on user response (see Figure 1.12). If a selection leads to a dialog stored on the device, conversation continues immediately; otherwise, a new voice document is downloaded from the server. If verbal communication breaks down, VoiceXML can fall back to keypad or stylus data entry.
Figure 1.12 A dialog based on the delivery of a VoiceXML document to a wireless device (see Listing 1.1 for the corresponding Voice XML document)
Origins of VoiceXML
The VoiceXML Forum is an industry organization founded by AT&T, IBM, Lucent, and Motorola. Its charter establishes and promotes VoiceXML as a standard for making Internet content and information accessible via voice and phone. VoiceXML has its roots in a research project called PhoneWeb at AT&T Bell Laboratories. After the AT&T/Lucent split, Lucent continued work on the project, now known as TelePortal, while AT&T developed its own phone markup language used to build call center and consumer telephone services that help customers configure and administer their telephone features.
Motorola embraced the markup approach to provide mobile users with timely information and hands-free access. By starting later, Motorola was able to base its VoxML language on XML. Joining forces, the companies announced VoxML technology in October 1998. Since the announcement, thousands of developers have downloaded the VoxML language specification and software development kit and can easily transition to VoiceXML. See Figure 1.13 for a depiction of industry convergence toward VoiceXML.
Figure 1.13 The evolution of VoiceXML
Applications Although VoiceXML is in its early stages, AT&T, Lucent, and Motorola have developed applications that illustrate the capabilities of VoiceXML. AT&T and its business customers have used VoiceXML to automate common business applications such as customer surveys, telephone e-commerce services, product promotion, and frequently asked question services. AT&T has also built a full consumer telephone service, which includes contributions from business partners for weather, news, and stock market data, as well as prototype consumer services that include prepaid calling cards and universal messaging. Lucent has demonstrated the use of voice markup to create banking, e-commerce, and a variety of interactive information retrieval and communications services. Motorola has used VoxML, the precursor to VoiceXML, to develop voice applications for BizTravel.com, CBS MarketWatch, and The Weather Channel.
Listing 1.1 provides an example of a VoiceXML document.
Listing 1.1 A VoiceXML document controlling the interaction between a user and a mobile commerce site (see Figure 1.12)
<form id=get_card_info> <block> We now need your credit card type, number, and expiration date.</block> <field name="type"> <prompt count="1">What kind of credit card do you have?</prompt> <prompt count="2">Sorry I didn't understand what you said. What kind of card?</prompt> <grammar> visa {visa} | master [card] {mastercard} | amex {amex} | american [express] {amex} </grammar> <help> Please say Mastercard, Visa, or American express. </help> </field> <! The grammar for type="digits" is built in. > <field name="num" type="digits"> <prompt count="1">What's your card number?</prompt> <prompt count="2">Card number?</prompt> <dtmf maxdigits=16/> <catch event=HELP> <if cond="type == 'amex'"> Please say or key in your 15 digit card number. <else/> Please say or key in your 16 digit card number. </if> </catch>