Implementing an MRCP client

The following topics describe basic requirements for your MRCP client to support Nuance speech processing capabilities. The following discussion assumes that the client uses SIP (Session Initiation Protocol) to set up a session with Speech Server for each call. This document does not discuss SIP messages in detail. (For MRCPv1, the browser communicates using RTSP.)

To use all Nuance capabilities, the application developer must also have some control over the MRCP client and its default behavior. The voice platform is responsible for educating the application developers about Nuance-specific configurations and capabilities, as well as the names and values of available Nuance parameters. The education can be as simple as providing Nuance documentation to application developers, or as polished as providing a user interface that assists application developers to make decisions. With this information, the developer is aware of features and configurations expected by the Nuance speech products.

Additionally, the voice platform might need to communicate implementation decisions to application developers. For example, when installing Nuance speech products, application developers might need to alter configuration parameters. Or if the platform implements a Nuance feature (such as magic word with Nuance Recognizer) in a special way, then application developers need instructions for activating the feature via VoiceXML.

The MRCP client, which is part of a voice browser, is the channel for communication between VoiceXML applications and Nuance Speech Server.

The MRCP client is responsible for the following functionality:

  1. Configuring the speech processing environment. Setting up certain aspects of the speech-processing environment.
  2. Translating VoiceXML properties into MRCP headers. Converting properties and requests from the VoiceXML interpreter into standard MRCP headers. It adds or removes information as needed, and sends the headers to the Speech Server.
  3. Requesting speech processing resources. Instructing Speech Server on which resources are required for a particular session.
  4. Controlling speech processing. Passing on application instructions to speech-processing components.