Cisco Cisco Unified Customer Voice Portal 11.0(1) User Guide

Page of 107
C
HAPTER 
2:
 
V
OICE
XML
 
S
ERVER 
C
OMPONENTS IN 
D
ETAIL
 
 
V
OICE
XML
 
S
ERVER 
U
SER 
G
UIDE 
 
 
 
FOR 
C
ISCO 
U
NIFIED 
C
USTOMER 
V
OICE 
P
ORTAL 
R
ELEASE 
4.0(1) 
 
 
 
 
 
22
Say It Smart Plugins 
In Unified CVP VoiceXML Server, developers can create their own Say It Smart plugins. 
Similar to custom elements, Say it Smart plugins are pre-built Java classes that when deployed in 
the Unified CVP VoiceXML Studio can be used as a new Say It Smart type. As with custom 
elements, the level of integration required with the Unified CVP software restricts the creation of 
Say It Smart plugins to the Java API. 
Custom Say It Smart plugins can be constructed to read back formatted data not handled by 
Unified CVP Say It Smart plugins, such as spelling playback or reading the name of an airport 
from its three-digit code. Plugins can also be created to extend the functionality of existing 
plugins, such as adding new output formats to play the information in another language. For 
example, a plugin can define a new output format for the Date Say It Smart plugin that reads 
back dates in Spanish. 
Refer to the Programming Guide for Cisco Unified Customer Voice Portal for a full description 
of the process of building custom Say It Smart plugins. 
Start and End of Application Actions 
Unified CVP provides mechanisms to execute some code when an application is launched or 
shut down. A start of application action is run when the Unified CVP VoiceXML Server web 
application archive (WAR) starts up (which occurs when the application server first starts up or 
the application server reloads the WAR), or the application is updated. An end of application 
action is run when the application is updated, released, or the web application is shut down 
(which occurs if the application server reloads or shuts down the web application or the 
application server itself is shut down). 
The purpose of the start of application action is typically to set up global data or application data 
that would be accessed by components within the callflow. Since global and application data’s 
lifetime is the lifetime of the application and they can contain Java objects, the start of 
application action could even set up persistent database connections or other communications to 
external systems that would remain connected as long as the application was running. Note that 
should an error occur within the start of application class, the application deployment will 
continue unchanged. The designer can specify that an error in a particular start of application 
class should stop the application deployment. This would be done if the class performs 
mandatory tasks that are necessary for the application to run correctly. 
The purpose of the end of application action would be to clean up any data, database 
connections, etc. that would no longer be needed once the application is shut down. Note that the 
end of application action is called even when the application is updated because the update may 
have changed the data that is needed by the application.