The Motorola VoxGateway: Lessons Learned
A Bit of History
The concept of browsing web content by voice over ordinary phones was developed in the mid-1990s, mainly at AT&T Bell Labs. Soon afterwards, Lucent, the spun-off equipment manufacturing arm of AT&T, began to commercialize voice browsing in their Lucent Speech Server. At the same time, Motorola made a huge push into the voice web with their Mobile Internet Exchange (MIX) voice platform. By 1998 Motorola announced it publicly, and had made available a free companion software development kit, the Mobile Application Development Kit (MADK), that used Microsoft speech technologies and was downloaded by 50,000 developers. MIX was hugely influential, and generated a lot of press, including one front page article in the Wall Street Journal that inspired me to join Motorola in early 1999.
One of the key features of MIX was Motorola's new VoxML voice markup language (a precursor to VoiceXML), designed by Dave Ladd and Pat McClaughry. The MIX architecture supported two kinds of voice applications. For applications that were used intensively, such as voice activated dialing, MIX provided a highly compact and efficient Java voice applet ("Vlet") interface. For all other applications, where the ease and flexibility of web-based development and deployment were critical, there was VoxML.
The first VoxGateway was a VoxML voice browser developed in 1997-1998, and used in both MIX and the MADK. It was written in Java, a fairly gutsy choice for the time. To the MIX voice platform, the VoxGateway looked just like any other Java Vlet.
But at least by late 1998 is was clear that the VoxGateway would need a complete rewrite. Time to market had been critical, and the developers of the first VoxGateway had had to make certain simplifying assumptions. It was thus:
- deeply connected into MIX-specific Vlet APIs;
- hard-wired to the Nuance speech recognition system;
- required Windows NT 4.0 as the underlying operating system (e.g., it used the Internet Explorer "wininet" library to do web page fetching); and
- designed to support only VoxML.
Motorola wanted to license the VoxGateway source to other companies in order to help boost the new voice web ecosystem. For this reason the use of the MIX Vlets APIs was problematic, as were the assumptions that the VoxGateway would always run on Windows and use Nuance. But the chief reason for a rewrite was that the voice web also needed a new standard markup language to begin growing, so the VoxGateway had to be reengineered to support the old VoxML and the new VoiceXML voice markup language.
In the rest of this article, I'd like to describe the new VoxGateway and how it met these challenges, and share tips for other voice browser developers.
Continued...
back to the top
Copyright © 2001-2003 VoiceXML Forum. All rights reserved.
The VoiceXML Forum is a program of the
IEEE Industry Standards and Technology Organization (IEEE-ISTO).
|