Cisco Cisco Unified Customer Voice Portal 11.0(1) Developer's Guide

Page of 103
C
HAPTER 
3:
 
S
ESSION 
API
 
 
P
ROGRAMMING 
G
UIDE FOR 
C
ISCO 
U
NIFIED 
CVP
 
VXML
 
S
ERVER 
 
 
 
AND 
C
ISCO 
U
NIFIED 
C
ALL 
S
TUDIO 
R
ELEASE 
4.1(1) 
 
 
 
14 
 
Creating session data. This class does not allow the creation of element data because only 
elements can do so (the start of call class cannot, for example). 
 
Adding custom content to the activity log and warnings to the error log. 
 
Triggering custom logging events and warning events that are picked up by loggers. 
 
Setting the maintainer, default audio path, application language and encoding, as well as the 
call’s session timeout. At any point in the application, these settings can be changed. 
 
Accessing the Global API to get and set application and global data (see the User Guide for 
Cisco Unified CVP VXML Server and Cisco Unified Call Studio
 Chapter 2 in the section 
entitled Variables for more on application and global data). 
The following lists the API classes that are used for various components (also found in the 
com.audium.server.session
  package). A detailed description of what each class provides is 
given in the individual section for that component. 
 
CallStartAPI
. This class is sent as an argument to the start of call class.  
 
CallEndAPI
. This class is sent as an argument to the end of call class. 
 
ElementAPI
. This class is used by all standard and configurable element classes as well as 
dynamic configuration classes. The following classes extend 
ElementAPI
 to provide 
additional functionality required for different kinds of elements. 
o
 
ActionAPI / ActionElementData
. The 
ActionAPI
 class is used by generic action element 
classes and is extended by 
ActionElementData
 which is used by configurable action 
element classes. 
o
 
DecisionElementData
. This class is used by configurable decision element classes. 
o
 
VoiceElementData
. This class is used by configurable voice element classes. 
 
LoggerAPI
. This class is sent as an argument to a logger’s execution method for handling a 
session-specific logging event. 
XML API 
When a component uses the Java API, the Session API is accessed via an object passed to the 
execution method. A similar setup exist when a component uses the XML API. The entire 
contents of the Session API is made available via a set of XML documents passed to the 
component in the HTTP request. Each component will receive this information whether they 
need it or not, since VXML Server does not know in advance what information the component 
could require. The component can choose to ignore these documents if the information contained 
within are not required, or use a fast, event-based parser to extract only the desired information 
from the documents. 
Each component receives two  POST arguments containing complete XML documents 
representing the Session API. The first, named “inputs”, lists the session information