Cisco Cisco Unified Customer Voice Portal 11.0(1) Release Note

Page of 113
C
HAPTER 
1:
 
I
NTRODUCTION
 
 
P
ROGRAMMING 
G
UIDE FOR 
C
ISCO 
U
NIFIED 
CVP
 
VXML
 
S
ERVER 
 
 
 
AND 
C
ISCO 
U
NIFIED 
C
ALL 
S
TUDIO 
R
ELEASE 
7.0(1) 
 
 
 
 
Chapter 1:  Introduction 
Cisco Unified Customer Voice Portal (Unified CVP) 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, start and end of application actions, the on error notification, hotevents, Say It 
Smart plugins, and global and application loggers. 
Requirements 
All components require programming effort to construct. In order to build these components, 
Unified CVP 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. 
Unified CVP does not require very complex Java coding, knowing the basics of the Java 
language will be sufficient to start working with the Unified CVP 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 Cisco Unified CVP VXML Server 
(VXML Server) works by reading the User Guide for Cisco Unified CVP VXML Server and 
Cisco Unified Call Studio
, especially Chapter 2, which explains the purpose for each of the 
components described in this document. Familiarity with Cisco Unified Call Studio (Call Studio) 
and Builder for Call Studio is also recommended for understanding how to construct 
configurable elements and Say It Smart plugins since they define how they are displayed within 
the Builder.