Cisco UCCE
Cisco UCCE runs its automated voice experiences through the Virtualized Voice Browser (VVB), which executes VoiceXML but has no speech engine of its own — it reaches out to an external ASR/TTS resource over MRCP. Capacity Private Cloud is that resource. Connecting the two is largely a matter of telling VVB where the Media Server is and which protocol to speak.
Once UCCE is installed and confirmed working, you register the platform's ASR and TTS servers in the VVB Administration console, choose the MRCP protocol and codec, restart the VVB engine, and confirm the servers report as REACHABLE.
Assumptions
These instructions assume that the host running the Media Server and the ASR and/or TTS services is separate from the UCCE host. We strongly recommend installing the platform on a server separate from UCCE.
They also assume you have installed and verified your Capacity Private Cloud configuration independently of UCCE.
Note: This document is believed to be correct for Cisco UCCE 8.5 through UCCE 11.5, though minor differences between versions of the UCCE configuration screens may be seen.
Network Topology
The following diagram gives a simple overview of a UCCE system and where the platform's ASR/TTS server fits. UCCE can be configured in many ways, so this is not meant to be exhaustive or to imply the only valid design — refer to the Cisco documentation for details.
About the VXML Gateway
The "VXML Gateway" element in the diagram can be either a Cisco Virtualized Voice Browser (VVB) instance or a Cisco "IOS VXML Gateway" — both are functionally equivalent from the platform's perspective. This article describes the configuration using the Virtualized Voice Browser (software-only) implementation. Consult the Cisco documentation for more detail, for example:
- Design Guide for Cisco Unified Customer Voice Portal
- Cisco Virtualized Voice Browser
- Cisco IOS VoiceXML Gateway
Always consult the Cisco documentation for the most up-to-date information when designing your system. This article serves only as an example of how to connect the system to the platform's ASR and TTS resources and does not address the many other design factors involved.
Configure the ASR Server
In the Cisco Virtualized Voice Browser Administration console, choose Subsystems > Speech Servers > ASR Servers:
Enter the IP address and port number of the ASR server you want to connect to:
Enter the IP address of your own ASR server (it will differ from the one shown). You can optionally select MRCPv1 (RTSP) as the protocol instead of MRCPv2 (SIP).
Ports: The default port for MRCPv2 (SIP) is 5060, and for MRCPv1 (RTSP) the Media Server uses 554. Set the port to match the MRCP port your Media Server is configured for. (The Cisco VVB form lists 4900 as its own built-in MRCPv1 default; use the port your Media Server actually listens on.)
Configure the TTS Server
In the Cisco Virtualized Voice Browser Administration console, choose Subsystems > Speech Servers > TTS Servers, then enter the IP address of the TTS server you want to use.
As with the ASR server, enter the IP address of your own TTS server (it will differ from the one shown), and optionally select MRCPv1 (RTSP) instead of MRCPv2 (SIP). The same port guidance applies: 5060 for MRCPv2 (SIP), 554 for MRCPv1 (RTSP) — matched to your Media Server's configured port.
Select the MRCP Protocol and Codec
From the Administration menu, select System > System Parameters to open the System Parameters Configuration page:
From the highlighted drop-down, select the MRCP protocol you want to use for the connection between UCCE and the platform. This should match the settings you used when assigning the ASR and TTS servers above.
Note: Depending on the country where the system is installed, also select the appropriate codec — G711U (µ-law) or G711A (a-law). See the Wikipedia article on G.711 for details. In general, µ-law is most common in North America and Japan, and a-law in Europe.
Restart the Virtual Voice Browser Engine
From the Cisco VVB Unified Serviceability menu, select Tools > Control Center - Network Services:
Select the Engine service name (highlighted) and click Restart to restart the engine services.
Verify the ASR and TTS Servers Are Reachable
After the VVB engine services restart, confirm connectivity between VVB and the platform's ASR and TTS servers. In the Cisco VVB Administration console, select Subsystems > Speech Servers > ASR Servers and confirm the status shows REACHABLE:
Then check the TTS server under Subsystems > Speech Servers > TTS Servers and confirm its status is also REACHABLE:
Important: These examples use the same machine (IP address) for both the ASR and TTS servers, which is often the case. However, some deployments use several servers to provide ASR and TTS, so you may have more than one server to configure. Define additional or multiple servers by following the same general steps.
Using Domain Names Instead of IP Addresses
Domain names are normally resolved by a DNS server. Ideally, ensure any domain names you intend to use are registered in your local Domain Controller or DNS server so that UCCE can perform forward and reverse lookups.
Note: You only need the steps below if the names you are using are not already registered in the local DNS server or Domain Controller. Ask your network administrator for assistance if you are unsure.
In this example, we use the names asr-en-us and tts-en-us for the ASR and TTS servers. Entries for these names are added to the VVB hosts file via the CLI administration login.
Run the following from the CLI to add an entry for asr-en-us (using the sample IP address 172.18.2.130 — substitute your own ASR server's address):
| utils vvb add host-to-ip asr-en-us 172.18.2.130 |
Then do the same for tts-en-us (using your TTS server's address):
| utils vvb add host-to-ip tts-en-us 172.18.2.130 |
From the Cisco VVB Administration menu, choose Subsystems > Speech Servers > ASR Servers and use the name asr-en-us, along with the protocol type and port settings you want:
Similarly, for the TTS server choose Subsystems > Speech Servers > TTS Servers and use the name tts-en-us with the appropriate protocol type and port settings:
After changing the ASR or TTS servers, you may need to restart the VVB engine and reconfirm connectivity, as described above.
Testing the Integration
Once the system is configured, place a call into the UCCE system to test ASR and TTS and confirm that connectivity between the two systems is working correctly.
Additional Information
Refer to the Administration Guide for Cisco Unified Contact Center Enterprise for other configuration information relating to setting up your server.
