Cisco Cisco Customer Voice Portal 8.0(1) User Guide
C
HAPTER
1:
I
NTRODUCTION
U
SER
G
UIDE FOR
C
ISCO
U
NIFIED
CVP
VXML
S
ERVER
AND
C
ISCO
U
NIFIED
C
ALL
S
TUDIO
15
Subdialogs
There are instances where an application is less independent and really encapsulates some
function that multiple applications wish to share. This can be achieved by using a subdialog.
function that multiple applications wish to share. This can be achieved by using a subdialog.
Subdialog
A visit to another VXML Server application or other voice application
defined in a VoiceXML subdialog context that acts as a voice
“service”.
defined in a VoiceXML subdialog context that acts as a voice
“service”.
Unlike application transfers that are separate but independent applications, subdialogs are “sub-
applications” that an application can visit to handle some reusable functionality and then return
back to the source application. It can also take as input application data (though not Java objects)
and can also return data for use in the source application. Subdialogs also do not have the
restriction that they be deployed on the same instance of VXML Server, they can be hosted
anywhere accessible via a URL and does not even need to be a VXML Server application at all.
applications” that an application can visit to handle some reusable functionality and then return
back to the source application. It can also take as input application data (though not Java objects)
and can also return data for use in the source application. Subdialogs also do not have the
restriction that they be deployed on the same instance of VXML Server, they can be hosted
anywhere accessible via a URL and does not even need to be a VXML Server application at all.
The VXML Server subdialog is similar to the VoiceXML Insert element but without the
requirement to understand VoiceXML. VoiceXML Insert elements are also much more
integrated with the rest of the application to be considered an element alternative where a
subdialog truly sends control to the subdialog application. For example, hotlinks and hotevents in
the source application do not work in the subdialog application where they do in a VoiceXML
Insert element.
requirement to understand VoiceXML. VoiceXML Insert elements are also much more
integrated with the rest of the application to be considered an element alternative where a
subdialog truly sends control to the subdialog application. For example, hotlinks and hotevents in
the source application do not work in the subdialog application where they do in a VoiceXML
Insert element.
A situation that could utilize a subdialog would be a third party that develops a sophisticated
voice-based authentication system that other applications can use to validate callers. That
company exposes their service as a VoiceXML subdialog that takes specific inputs and returns
information on the identity of the caller. Any application that wishes to use the service will then
use the subdialog element to visit this application.
voice-based authentication system that other applications can use to validate callers. That
company exposes their service as a VoiceXML subdialog that takes specific inputs and returns
information on the identity of the caller. Any application that wishes to use the service will then
use the subdialog element to visit this application.
In order to utilize a subdialog, several special elements are needed in the source and subdialog
applications. Visiting a subdialog from a source application requires that it use a Subdialog
Invoke element.
applications. Visiting a subdialog from a source application requires that it use a Subdialog
Invoke element.
Subdialog Invoke
An element used by an application to initiate a visit to a subdialog.
The Subdialog Invoke element will be treated by the application as an element but will be the
gateway to the subdialog. This element handles the inputs and outputs of the subdialog
application. While the subdialog application is handling the call, the source application is
dormant waiting for the subdialog to return. The Subdialog Invoke element has a single exit state
that is followed when the subdialog application returns.
gateway to the subdialog. This element handles the inputs and outputs of the subdialog
application. While the subdialog application is handling the call, the source application is
dormant waiting for the subdialog to return. The Subdialog Invoke element has a single exit state
that is followed when the subdialog application returns.
If a VXML Server application is to act as the subdialog, it uses two different elements: the
Subdialog Start and the Subdialog Return elements.
Subdialog Start and the Subdialog Return elements.