Developer's Guide
CHAPTER 5: CALL END ACTION VOICEXML PROGRAMMING GUIDE
FOR CISCO UNIFIED CUSTOMER VOICE PORTAL RELEASE 4.0(1)
23
A unique feature of the call end action is to optionally send back a final VoiceXML page to the
voice browser. Some voice browsers will actually interpret a VoiceXML page sent back in
response to a request triggered by a disconnect or hang-up event. Since the caller is no longer
interacting with the IVR, this page would obviously only be useful for limited functionality that
had nothing to do with interacting with the caller, such as executing <log> tags. Note that this
final page applies only to when the caller hangs up on the application or the application hangs up
on the caller.
Using the Java API
The end of call action is built in Java by implementing the Unified CVP class
EndCallInterface
found in the com.audium.server.proxy package. It contains a single
method named
onEndCall that is the execution method for the call end class. This method
receives a single argument, an instance of CallEndAPI. This class belongs to the Session API
and is used to access session information such as session data (See Chapter 3: Session API for
more on this API). The method does not have a return value. It is expected that should an
unrecoverable error occur, the call end action will throw an AudiumException.
If the call end action is to return a final VoiceXML page to the voice browser, this is done by
using the Voice Foundation Classes (VFCs) (See 0 The Voice Foundation Classes for more on
the VFCs) and accessing methods in the CallEndAPI Session API class.
Using the XML API
As described in Chapter 3: Session API, the standard “inputs” and “settings” XML documents
are sent via POST to the call start URI. Figure 5-1 shows the DTD diagram of the XML
document that must be sent in response. The DTD for the end of call action response is defined
in the file CallEndResponse.dtd found in the VoiceXML Server dtds folder.
Figure 5-1