Dialogic PowerMedia XMS

Dialogic® PowerMedia™ XMS (XMS) handles media and call control, but it relies on an external MRCP speech engine for recognition and synthesis. Capacity Private Cloud is that engine. XMS acts as the MRCP client and the Media Server as the speech server, so the integration comes down to pointing XMS at the Media Server and tuning a handful of MRCP client settings.

Once XMS is installed and confirmed working, there are two configuration areas: the global MRCP client settings and the speech server definition.


Assumptions

These instructions assume the host running the Media Server and the ASR and/or TTS services is separate from the XMS host.

If you intend to run XMS and the platform on the same server, ensure there are sufficient resources (memory, CPU, etc.) to support it, and change the SIP port configuration so the two do not both try to use the same port (typically 5060). To do this, change the sip_port setting in media_server.conf to a non-conflicting port (for example 5066) and restart the Media Server. If you do this, use that sip_port value as the Speech Server Port in the steps below.

These steps also assume you have installed and tested your Capacity Private Cloud configuration independently of XMS.


Configure the MRCP Client

In your XMS console, open the Global Configuration settings:

XMS Global Configuration tab with the MRCP client parameters

Configure the Global Configuration parameters:

  1. In MRCP Client IP Address(es), enter the local IP address used for the MRCP client (the IP address of the XMS machine). The address can be IPv4.
    Note: This must be set correctly to the XMS server's IP address for communication with the platform to work.
  2. In Connection Retry Interval (seconds), enter the keep-alive interval for the connection with the speech server. Set this to 10000.
  3. In Connection Retry Count, enter the keep-alive count for the connection with the speech server. Set this to 3.
  4. In Server Recovery Delay (minutes), enter the delay before a failed speech server is retried. Set this to 5.
  5. In Maximum Sessions Count, enter the maximum number of MRCP sessions supported. Set this to the number of ASR/TTS sessions you have licensed and configured.
    Note: Each active session supports both ASR and TTS. The number of active sessions should not exceed the number of MRCP licenses.
  6. In UDP Retransmit Timer (msecs), enter the time between retransmissions when using UDP for the MRCP signaling transport. Set this to 100.
  7. In UDP Retransmit Count, enter the maximum number of retransmissions before a request is considered failed when using UDP. Set this to 2.
  8. Click Apply to save changes.

Configure the Speech Server

The Speech Server Configuration page defines the speech server.

XMS Speech Server Configuration tab listing speech servers with an Add button

Add a speech server and configure its parameters:

  1. Click Add. The following dialog appears.

    XMS new_server dialog with Speech Server Id, IP Address, Port 5060, Protocol MRCP/2.0, Transport TCP, ASR/TTS/Enabled true, Role primary

  2. In Speech Server Id, enter an identifier for the speech server — for example, LumenVox_server.
  3. In Speech Server IP Address(es), enter the IP address of the speech server XMS will connect to for ASR/TTS resources. The address can be IPv4 or IPv6.
  4. In Speech Server Port, enter the MRCP server port to connect to. This is typically 5060, unless you have changed it (for example, when running XMS and the platform on the same machine).
  5. In Protocol Version, select MRCP/1.0 (RTSP) or MRCP/2.0 (SIP). The platform supports both; for simplicity, select MRCP/2.0. If using MRCP/1.0 (RTSP), the default port is 554.
  6. In Transport, select UDP or TCP for the SIP transport protocol. The platform supports both; for simplicity, select TCP.
    Note: The Transport setting applies to SIP only. Once the session is established, MRCP uses TCP.
  7. In the ASR field, select true to enable Automatic Speech Recognition for this speech server.
  8. In the TTS field, select true to enable Text-to-Speech for this speech server.
  9. In the Enabled field, select true to enable this speech server.
  10. In the Role field, select primary or backup.
  11. Click Apply to save changes.

Note: Mixing V1 and V2 speech servers is not supported on XMS. V1 and V2 servers can appear in the configuration concurrently, but only servers of one version can be enabled at the same time. For example, to enable V2 servers, all V1 servers must first be disabled.

When executing MRCP operations, PowerMedia XMS load-balances requests across primary speech servers (round robin). If all primary speech servers are unavailable, configured backup servers are used. XMS attempts to recover primary servers according to the Server Recovery Delay (minutes) value from the Global Configuration. You may configure multiple primary servers and multiple backup servers as needed.

Load Balancing and Failover

PowerMedia XMS supports load balancing and failover as follows:

  • If more than one primary speech server is configured, the MRCP client load-balances across them in a round-robin fashion, ensuring an even distribution of requests.
  • If a primary server fails to respond to a request, the request is attempted on the next configured primary server.
  • If all primary servers fail to respond, the request is attempted on each configured backup server until a successful transaction is achieved.
  • While a backup server is in use, recovery of the primary servers is attempted according to the configured primary server recovery timer.

Testing the Integration

Once the system is configured, place a call into the PowerMedia XMS system to test ASR and TTS and confirm that connectivity between the two systems is working correctly.


Additional Information

Refer to the Dialogic® online documentation for other configuration information. Technical documents, including manuals and configuration information, are available on the Dialogic® PowerMedia™ XMS Release 3.0 Documentation page, where you will also find the Installation and Configuration Guide.


Related Articles


Was this article helpful?