Cahners Business Information Wireless Internet
|    Home    |    Archives    |    ASP Directory    |    Event Calendar    |    Subscribe    
Wireless Week
Topics

Features
Above the Fray
Follow the Money
Market Research
Big Ideas
Technoptions
Developer Insights
Q & A
Opinions

Tools and Services

Archives
Calendar of Events
ASP Directory
Other Cahners Pubs

About Us

Submit a Release
Meet our Staff
Contact Us
Advertise
Magazine Subscription

Powered by...

Cahners

QuoteMedia

MyPoll.net



Printer-friendly format

Bridging The Wireless Data Gap With VoiceXML



In the rush to offer a complete suite of wireless data services to your users (whether they be enterprise users within your company or the general public at large), the "starter" list of supported platforms usually includes mobile WAP phones and PDA devices running Palm OS or Windows CE. In most circumstances, however, another common user interface is often overlooked. That interface would be the human voice! That's right...wireless data technologies have advanced to the point where a voice interface is often the last one we consider when designing an application, which seems a bit counterintuitive when you consider that voice is the natural user interface of the omnipresent mobile phone. If you've had some experience with proprietary interactive voice response (IVR) applications in the past, fear not...voice applications have come a long way. The technology known as VoiceXML was introduced by AT&T, Lucent, Motorola, and IBM to provide a standardized, XML-based technology for the development of voice applications. VoiceXML excels in environments where small amounts of information need to be accessed quickly and easily. For instance, "voice portals" (which we'll discuss later on in this article) typically provide straightforward information services such as weather, stock quotes, and sports scores. If you are charged with delivering an application that is required to deliver quick lookup information to a mobile user (such as a client's phone number, a shipping date, or an equipment price), VoiceXML may very well fit your needs.

A VoiceXML application requires no special client software installation. Instead, a VoiceXML application server relies on specialized hardware (voice conversion resource cards from companies such as Dialogic) and software (to handle speech recognition) to interface with the actual VoiceXML processing engine. Powerful server-based speech recognition software can be evaluated from companies such as Speechworks and Nuance. A VoiceXML interpreter interfaces with the speech recognition software to match user requests with nodes in an XML document defined by the application developer. (If you are familiar with XML, the VoiceXML Document Type Definition can be viewed here). VoiceXML allows the developer to tie user requests to server-side scripts (such as Java servlets) or to other VoiceXML files.

The following code listing presents the user with a VoiceXML menu that allows them to request "Stocks" or "Weather". When either of these items are chosen, the appropriate <choice> element is selected by the VoiceXML interpreter running on the server.

<?xml version='1.0'?> <vxml version="1.0"> <menu id="Intro_Menu"> <prompt> <audio> To retrieve stock quotes, say Stocks. To retrieve the weather, say Weather. </audio> </prompt> <choice next="stocks.vxml"> Stocks </choice> <choice next="weather.vxml"> Weather </choice> <default><reprompt/></default> </menu> </vxml>

Because VoiceXML is entirely XML-based, it is possible to build your architecture around XML/XSLT and simply treat VoiceXML as another device type and, therefore, just another XSL template. While this may sound seductive, in theory, keep in mind that as you move from device to device, the application may need to be rearchitected based on user interface and data input limitations. For instance, whereas an HTML form might ask the user for Name, Address, City, and State on one page, a WAP or VoiceXML application might distribute that logic across several screens. Because VoiceXML applications are entirely server-based, they are excellent candidates for deployment through an Application Service Provider (ASP) due to the cost and skills required to set up the proper mix of server hardware and software. Existing hosted VoiceXML solution offerings from Tellme Networks and OracleMobile allow all of the server-side processing to be hosted at a remote site, leaving your organization with the option of hosting all server-side business logic and enterprise data. OracleMobile offers an extremely interesting platform in that it supports many different wireless technologies (WAP, VoiceXML, SMS, one-way pagers, etc.) as well as remote application monitoring and reporting tools.

To get started with VoiceXML, two excellent information resources are the VoiceXML Forum and the VoiceXML Review. Once you've downloaded the specification and read some additional articles, you can actually begin developing a VoiceXML application via one of several online destinations. Tellme Studio will allow you to create an account, edit some VoiceXML code within your Web browser, and immediately dial a toll free number to test your application! BeVocal Cafe takes this concept a step further by allowing international developers to actually test their applications over the Internet using the Vocal Scripter tool (and therefore avoiding international calling fees). These two portals use the market-leading Nuance and Speechworks server tools, respectively, so prototyping your application on either of these sites will allow you to approximate what the final application will look like. In addition, both of these developer portals offer extensive documentation and examples for the new VoiceXML developer.

No matter the route you choose, it is becoming clear that - in a wireless world - support for one technology will not suffice. Instead, developers will be required to master a number of seemingly unrelated technologies in order to deliver a complete solution to their customers. VoiceXML manages to standardize server-side voice processing and application delivery, making it a must-have in every wireless developer's toolbox.


Bryan Morgan is an independent writer and software developer. He is a columnist with Wireless Internet magazine and was the founder of WirelessDevNet.com in 1999.

 

Sponsors









|    Home    |    Archives    |    ASP Directory    |    Event Calendar    |    Subscribe    |

Copyright © 2001 Cahners Business Information
Use of this Web site is subject to its Terms of Use
Privacy Policy