Cisco Cisco Customer Voice Portal Downloads リリースノート
C
HAPTER
9:
C
ONFIGURABLE
E
LEMENTS
P
ROGRAMMING
G
UIDE FOR
C
ISCO
U
NIFIED
CVP
VXML
S
ERVER
AND
C
ISCO
U
NIFIED
C
ALL
S
TUDIO
R
ELEASE
7.0(1)
47
Chapter 9: Configurable Elements
The large array of Unified CVP Elements bundled with Unified CVP software encapsulate a lot
of functionality a typical voice application requires. There are, however, situations where more
customized, proprietary, or robust elements are desired. This is certainly the case with action and
decision elements, which tend to be highly specialized for interfacing with proprietary backend
systems or implementing custom business logic. To a lesser extent this applies for voice
elements as well. Unified CVP has tried to provide pre-built voice elements that cover most of
what a typical voice application requires. There is always the option of using VoiceXML insert
elements to handle a situation that there are no voice elements to manage. The disadvantages of
VoiceXML insert elements, however, are in their inconsistencies across various voice browsers,
the size they can be before management becomes burdensome, the difficulty of interacting with
backend systems, and their overall performance. Custom voice elements are the best way to
achieve these goals as they are fast, use the Unified CVP Voice Foundation Classes (VFCs) that
work consistently across multiple voice browsers, and are built with Java, so complex
calculations and integrations are simple.
of functionality a typical voice application requires. There are, however, situations where more
customized, proprietary, or robust elements are desired. This is certainly the case with action and
decision elements, which tend to be highly specialized for interfacing with proprietary backend
systems or implementing custom business logic. To a lesser extent this applies for voice
elements as well. Unified CVP has tried to provide pre-built voice elements that cover most of
what a typical voice application requires. There is always the option of using VoiceXML insert
elements to handle a situation that there are no voice elements to manage. The disadvantages of
VoiceXML insert elements, however, are in their inconsistencies across various voice browsers,
the size they can be before management becomes burdensome, the difficulty of interacting with
backend systems, and their overall performance. Custom voice elements are the best way to
achieve these goals as they are fast, use the Unified CVP Voice Foundation Classes (VFCs) that
work consistently across multiple voice browsers, and are built with Java, so complex
calculations and integrations are simple.
Unified CVP software was designed to be modular without compromising integration. Custom
elements are integrated into both VXML Server and Call Studio as easily as Unified CVP
Elements are. They can be deployed for a specific application or shared across all applications
and are configured in the Call Studio alongside Unified CVP Elements, including supporting
dynamic configurations. With such seamless integration and effortless deployment, a developer
can, over time, create entire libraries of custom elements to use for their voice applications or
potentially for resale.
elements are integrated into both VXML Server and Call Studio as easily as Unified CVP
Elements are. They can be deployed for a specific application or shared across all applications
and are configured in the Call Studio alongside Unified CVP Elements, including supporting
dynamic configurations. With such seamless integration and effortless deployment, a developer
can, over time, create entire libraries of custom elements to use for their voice applications or
potentially for resale.
Due to the requirements to integrate with both Call Studio and VXML Server, configurable
elements can only be constructed using the Java API. This is not to be confused with standard
action and decision elements, both of which can be constructed using both Java and XML APIs.
It is the configuration of a configurable element that places demands that can only be met by the
Java API. Building standard action and decision elements are fully explained in Chapter 7:
Standard Action Elements and Chapter 8: Standard Decision Elements.
elements can only be constructed using the Java API. This is not to be confused with standard
action and decision elements, both of which can be constructed using both Java and XML APIs.
It is the configuration of a configurable element that places demands that can only be met by the
Java API. Building standard action and decision elements are fully explained in Chapter 7:
Standard Action Elements and Chapter 8: Standard Decision Elements.
This chapter describes in detail how to create custom voice, action, and decision elements and
integrate them into both Call Studio and VXML Server.
integrate them into both Call Studio and VXML Server.
Design
Configurable elements are built by extending an abstract Java class. This base class lays out the
methods used to identify the element’s configuration, how it is executed, and any utility methods
available to it. The developer simply implements the appropriate methods and uses the Java API
provided to build the element. Within the execution method, the developer is then free to use
Java in any way possible, such as creating a complex class hierarchy, accessing files or backend
systems, utilizing third party libraries, even communicating with external systems via HTTP or
methods used to identify the element’s configuration, how it is executed, and any utility methods
available to it. The developer simply implements the appropriate methods and uses the Java API
provided to build the element. Within the execution method, the developer is then free to use
Java in any way possible, such as creating a complex class hierarchy, accessing files or backend
systems, utilizing third party libraries, even communicating with external systems via HTTP or