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

Page of 156
C
HAPTER 
3:
 
A
DMINISTRATION
 
 
U
SER 
G
UIDE FOR 
C
ISCO 
U
NIFIED 
CVP
 
VXML
 
S
ERVER 
 
 
 
AND 
C
ISCO 
U
NIFIED 
C
ALL 
S
TUDIO
 
 
 
 
66 
configure their applications to execute code at the end of a call to perform their own clean up 
operations. In sophisticated applications this could involve closing database connections or 
generating call detail records. These end of call operations can take a non-trivial amount of time 
and may require access to information about the call session, such as element or session data. As 
a result, VXML Server waits for a preset period of time after a call ends before it invalidates the 
session, allowing all activities requiring additional time to complete. This period of time is 
governed by the SessionInvalidationDelay attribute and is measured in seconds. 
It is important to understand the consequences of changing this value. If too low a time is given 
then there could be situations where the system under load cannot handle the end of call tasks in 
the given time and the global error log may see many errors containing the Java exception 
IllegalStateException
 which occurs when attempting to access data from an invalidated call 
session. One has to understand that system resources are limited and when it is under load what 
may have taken 100ms to complete could take longer and depending on what it is that needs to 
be done, could take much longer. 
The administrator should refrain from the temptation of making this number too large. This is 
because while a call session is still valid but not representing a live call, all that information 
remains in memory. This may not be much but could be significant depending on the amount of 
data stored in element and session data by the application. Even though the session has not been 
invalidated, since the call has ended, VXML Server is ready and will accept new calls, which 
will allocate additional memory. Under high load, the Java application server could encounter 
memory issues if call sessions remain in memory for too long a period. 
The JMX interface supports the ability to change the session invalidation delay at runtime. The 
administrator would increase this setting if 
IllegalStateException
 errors appear in the logs. 
They would lower the value if the JVM memory usage stays close to the maximum after each 
garbage collection. Keep in mind that there are many potential causes for JVM memory 
utilization to rise and is certainly not limited to this cause.  
The default value of the session invalidation delay is sufficient to handle a heavy load without 
issues so the administrator is urged to be cautious when changing this value. 
Application Configuration Options 
To view the configuration options of an application using the JMX interface, navigate to the 
VoiceApplication/APPNAME/Command
 MBean, where 
APPNAME
 is the name of the application. 
There are four attributes listed: 
 
DefautAudioPath
 - this shows the audio path defining where the audio files are located 
(assuming the application was designed to take advantage of it).  
 
GatewayAdapter
 -  this shows the gateway adapter that the application is using and is not 
editable. It is for informational purposes only.