Prophecy 14

This guide explains how to connect a Voxeo Prophecy 14 voice application platform to Capacity Private Cloud ASR and TTS. Prophecy runs VoiceXML applications and reaches the platform's speech services over MRCP, so the work falls into three parts: point the Media Server at Prophecy, register the ASR and TTS services in the Prophecy console, and reference them from your VoiceXML by resource name.

Prerequisites

  • An installed and licensed Prophecy 14 server.
  • A working Capacity Private Cloud installation, with ASR and TTS installed and verified independently before integrating with Prophecy.

For installing the speech services, see Installing the Media Server. For the Prophecy platform itself, refer to Voxeo's Prophecy 14 installation documentation.

Configure the Media Server

Prophecy communicates with the platform over MRCP rather than SIP, so the Media Server's SIP interface is disabled and it is pointed at its own address. Edit the Media Server configuration file:

mrcp-api/docker/lumenvox/media_server.conf

Set the following properties:

  • mrcp_server_ip — the IP address of the host running the Media Server.
  • sip_port — change the default 5060 to 0. Setting the port to 0 disables the SIP interface, since MRCP handles all communication with Prophecy.
  • num_channels — the maximum number of simultaneous channels (default 200). Set this to match your licensed capacity; do not exceed your license limit.

Configure ASR in Prophecy

Adding ASR is a three-stage process: create a server entity for the speech host, add the ASR service to it, then expose that service as a resource on a Virtual Platform.

1. Create the ASR Server

In the Prophecy console, open the Servers view.

Prophecy console Servers view listing the registered servers

Select New Server, give it a descriptive name (for example, ASR Server), and enter the Host IP of the machine running the speech service. Save the server.

Edit Server Identity tab showing the server name and Host IP fields

2. Add the ASR Service

On the new server, open the Configuration tab and, under Services, select Add.

Server Configuration tab with the Add button under Services highlighted

In the Add Service dialog, expand ASR > LumenVox ASR (v10) and select the language you intend to use — for example, US English. Confirm with OK.

Add Service dialog with the LumenVox ASR service and US English language selected

The service appears under Configuration. The default ASR port is 554; change it here only if your deployment uses a different port. Save the server.

ASR service settings showing the default port 554

3. Add the ASR Resource to a Virtual Platform

Open Virtual Platforms List, select your platform (for example, Default), and choose New to add a resource.

Virtual Platforms List with the Default platform and New resource button highlighted

Set the Service Role to ASR and give the resource a Name — this name is what your VoiceXML will reference. This example uses EN-US-LV. Select New to assign a service to the resource.

Edit Resource dialog with Service Role set to ASR and the resource name EN-US-LV

Choose the group, select the ASR service you added, and set a Group Service Priority (for example, 1).

New Group Service Priority dialog assigning the LumenVox ASR US English service at priority 1

The EN-US-LV resource now appears with the ASR service role. Save the Virtual Platform.

Virtual Platform showing the EN-US-LV resource with the ASR service role, ready to save

Configure TTS in Prophecy

TTS follows the same three stages as ASR. ASR and TTS can run on a single server entity or as separate entities; if you separate them, each needs its own host IP.

1. Create the TTS Server

Return to the Servers view.

Prophecy console Servers view

Select New Server, name it (for example, TTS Server), and enter its Host IP.

Edit Server Identity tab for the TTS server showing name and Host IP

2. Add the TTS Service

On the TTS server's Configuration tab, select Add under Services.

TTS server Configuration tab with the Add button under Services highlighted

Expand TTS > LumenVox TTS MRCPv1 (v11.0) and select a voice — for example, American Spanish, Lorena (female). Confirm with OK.

Add Service dialog with the LumenVox TTS service and the American Spanish Lorena voice selected

The default TTS port is also 554. Adjust it only if needed, then save the server.

TTS service settings showing the default port 554

3. Add the TTS Resource to the Virtual Platform

Open Virtual Platforms List, select your platform, and choose New.

Virtual Platforms List with the Default platform and New resource button highlighted

Set the Service Role to TTS and give the resource the same name you used for ASREN-US-LV in this example. Select New to assign the service.

Create New Resource dialog with Service Role set to TTS and the resource name EN-US-LV

Choose the group, select the TTS voice service, and set a Group Service Priority.

New Group Service Priority dialog assigning the LumenVox TTS American Spanish Lorena voice at priority 1

The EN-US-LV resource now carries both the ASR and TTS service roles. Save the Virtual Platform.

Virtual Platform showing the EN-US-LV resource with the TTS service role, ready to save

Reference the Resource from VoiceXML

Specify the resource name in the xml:lang attribute of your VoiceXML document:

<vxml version="2.1" xml:lang="EN-US-LV">

The xml:lang value selects both the ASR and the TTS resource, so the resource name must be identical for both services — which is why ASR and TTS were both registered under EN-US-LV above.

Testing

To verify the integration, edit the default VoiceXML home document:

/opt/voxeo/prophecy/webapps/www/vxml-home.xml

Add the xml:lang="EN-US-LV" attribute to its <vxml> element, then place a test call with the Voxeo Prophecy SIP Phone using the form sip:vxml@[IP address].

Voxeo Prophecy SIP Phone dialing sip:vxml@172.16.2.110

To exercise the bundled reservation demo, add the same xml:lang="EN-US-LV" attribute to each of these VoiceXML files:

  • /opt/voxeo/prophecy/webapps/www/demo/vxml/res/Times.xml
  • /opt/voxeo/prophecy/webapps/www/demo/vxml/res/reserve.vxml
  • /opt/voxeo/prophecy/webapps/www/demo/vxml/res/options_voice.xml
  • /opt/voxeo/prophecy/webapps/www/demo/vxml/res/intro.vxml
  • /opt/voxeo/prophecy/webapps/www/demo/vxml/res/hours.vxml
  • /opt/voxeo/prophecy/webapps/www/demo/vxml/res/check.vxml

Related Articles


Was this article helpful?