| VoiceXML is a language for creating voice-user | | | | While originally designed for building telephone |
| interfaces, particularly for the telephone. It uses | | | | services, other applications of VoiceXML, such as |
| speech recognition and touchtone (DTMF keypad) | | | | speech-controlled home appliances, are starting to |
| for input, and pre-recorded audio and | | | | be developed. |
| text-to-speech synthesis (TTS) for output. It is | | | | |
| based on the Worldwide Web Consortium's | | | | VoiceXML Features |
| (W3C's) Extensible Markup Language (XML), and | | | | The rapid growth of the Web was due largely to |
| leverages the web paradigm for application | | | | its open architecture and high-level common |
| development and deployment. By having a | | | | interfaces to differing computing resources. HTML |
| common language, application developers, platform | | | | and HTTP hide much of the complexity of building |
| vendors, and tool providers all can benefit from | | | | interactive applications. Just as an HTML developer |
| code portability and reuse. | | | | doesn't need to know how bits paint the screen |
| With VoiceXML, speech recognition application | | | | of a web user's PC, VoiceXML shields developers |
| development is greatly simplified by using familiar | | | | from many of the complexities of telephony |
| web infrastructure, including tools and Web | | | | platforms. |
| servers. Instead of using a PC with a Web | | | | VoiceXML has features to control audio output; |
| browser, any telephone can access VoiceXML | | | | audio input; presentation logic and control flow; |
| applications via a VoiceXML "interpreter" (also | | | | event handling; and basic telephony connections. |
| known as a "browser") running on a telephony | | | | These and other features are described as |
| server. Whereas HTML is commonly used for | | | | follows: |
| creating graphical Web applications, VoiceXML can | | | | Dialogs <menu>>, <form>> |
| be used for voice-enabled Web applications. | | | | Audio Output <prompt>> |
| There are two schools of thought regarding the | | | | Speech synthesis controls (text-to-speech, or |
| use of VoiceXML: | | | | TTS) <emp>>, <pros>>, etc. |
| 1. As a way to voice-enable a Web site, or | | | | Pre-recorded audio (files or streams) <audio>> |
| 2. As an open-architecture solution for building | | | | Audio Input |
| next-generation interactive voice response | | | | Speech recognition (ASR) |
| telephone services. | | | | Audio recording <record>> |
| One popular type of application is the voice portal, | | | | Touchtone (Dual-tone Multi-Frequency, or DTMF) |
| a telephone service where callers dial a phone | | | | |
| number to retrieve information such as stock | | | | Presentation logic |
| quotes, sports scores, and weather reports. Voice | | | | Control flow <if>>, <else>>, etc. |
| portals have received considerable attention lately, | | | | ECMAScript client-side scripting <script>> |
| and demonstrate the power of speech | | | | Server-side/dynamic content generation <submit>> |
| recognition-based telephone services. These, | | | | Event handling |
| however, are certainly not the only application for | | | | Bad input <noinput>>, <nomatch>> |
| VoiceXML. Other application areas, including | | | | Shorthand <help>> |
| voice-enabled intranets and contact centers, | | | | <catch>>, <throw>> |
| notification services, and innovative telephony | | | | Basic Connection Control |
| services, can all be built with VoiceXML. | | | | Call transfer and bridging <transfer>> |
| By separating application logic (running on a | | | | Disconnect <disconnect>> |
| standard Web server) from the voice dialogs | | | | Beyond the scope of the language are application |
| (running on a telephony server), VoiceXML and | | | | logic, state management, dialog generation and |
| the voice-enabled Web allow for a new business | | | | sequencing, database operations, and interfaces to |
| model for telephony applications known as the | | | | legacy systems (e.g., "screen scraping"). These |
| Voice Service Provider. This permits developers | | | | are handled by traditional Web application |
| to build phone services without having to buy or | | | | programming techniques. |
| run equipment. | | | | |