On Error Notification
The error notification process can only be implemented using Java because when an error occurs, one desires the most reliable method for reporting that error. There is no guarantee an HTTP request to a URI could even be generated, a response received and the XML parsed without incurring another error.
The on error notification class is built in Java by implementing the class
GlobalErrorInterface found in the
com.audium.server.proxy package. It contains a single method named
doError that acts as the execution method for the class. The method receives nine arguments containing information on the status
of the application and VXML Server at the time the error occurred. No API classes are passed to this method because accessing
them may cause additional errors due to their complexity. Any of the arguments may be
null if the data cannot be determined or the error is such that it is not related to a specific application.
The arguments are: the VXML Server session ID (as a
String), the name of the application (as a
String), the ANI (as a
String), the DNIS (as a
String), the IIDIGITS (as a
String), the UUI (as a
String types listing the elements visited in the call up to the time the error occurred, an
ArrayList of the
String types listing the exit states for each of the elements, and a
HashMap containing the session data created up to the time the error occurred (the key of the
HashMap is the name of the session data, and the value is the session data value).
The on error notification class must be deployed in the
common directory of VXML Server since classes placed there are shared across applications.
To configure VXML Server to use this class if an error occurs, a file named
global_config.xml found in the
conf directory of VXML Server must be used. This XML file contains a tag named
<error_class> that should encapsulate the full Java name of this class (package name included). The changes will take effect only the next
time the Java application server on which VXML Server is installed is restarted.