On Error Notification
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), an ArrayList of
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.