Cisco CVP VoiceXML software has been designed to be easy to use but highly extendable. While the software provides enough to produce high quality voice applications out of the box, many users will want to extend the functionality of the software by building custom components that perform very specific tasks. This document describes the processes and application programming interfaces (APIs) provided for a developer to construct and deploy these components.

The components a developer uses the APIs to construct are: configurable action, decision, and voice elements, standard action and decision elements, dynamic element configurations, start and end of call actions, the on error notification, hotevents, and Say It Smart plugins.

Requirements
All components require programming effort to construct. In order to build these components, CVP VoiceXML provides a Java API as well as an API that allows the use of other programming languages. Therefore, the reader should at least possess a familiarity with programming concepts.

Some components can only be constructed using the Java API and so for these components, the reader should possess a familiarity with the Java programming language. The reader should understand Java interfaces and abstract classes, extending classes and overriding methods, static variables and methods, Java collections, and compiling and deploying Java classes and JAR files. CVP VoiceXML does not require very complex Java coding, knowing the basics of the Java language will be sufficient to start working with the CVP VoiceXML Java API. Most of the information about the Java API is encapsulated in the API’s Javadocs. This document will serve to provide a starting point and the Javadocs will provide the details.

Some components are used to produce VoiceXML, the language used to communicate with a voice browser. When building these components, a familiarity with VoiceXML is essential. The Java API used to produce VoiceXML follows the same design as the VoiceXML language, so a developer that understands how to write VoiceXML will be able to produce it using the API much easier and faster than a developer not familiar with VoiceXML.

Finally, the reader should familiarize themselves with the way CVP VoiceXML Server works by reading the User Guide, especially Chapter 2, which explains the purpose for each of the components described in this document. Familiarity with CVP VoiceXML Studio is also recommended for understanding how to construct configurable elements and Say It Smart plugins since they define how they are displayed within Studio.

Download pdf Cisco CVP VoiceXML 3.1 Programmer Guide