Architecture overview
A Nuance Speech Suite deployment includes software available through the Nuance Speech Suite installer, as well as customer application servers and the voice platform.
- Application servers: Application servers provide files (VoiceXML documents, prompts, wordsets, and grammar files including models) to Nuance speech products. The Speech Suite system fetches files from those servers on behalf of voice applications, and caches them to ensure fast retrieval when applications need them. For more information, see Application servers.
- Voice platform: Speech applications rely on voice platforms for communicating with Nuance products, and for services not provided by Nuance. Voice applications use VoiceXML elements, properties, and attributes to identify data to be fetched. The voice platform converts those parameters into MRCP messages, and forwards them to Nuance Speech Server, which passes the requests to the respective speech products. For a description of the components that make up a typical voice platform, see Voice platform.
- Nuance speech products: Speech Suite provides speech resources for applications, which make recognition, semantic interpretation, and/or text-to-speech requests via the voice browser. In the diagram below, the standard Nuance speech products are identified by grey boxes, while Dragon Voice engines and supporting components such as the Natural Language Processing service and Nuance Resource Manager are in blue. See Nuance speech products.
Application servers
A typical Nuance deployment includes application (or web) servers, which provide the application logic and may also include interfaces to an external database or a backend system.
Decisions on which web servers to use and where to install them depend on the anticipated usage and load:
- Application web services can be co-located with Nuance speech services or run on separate servers.
- There can be one server for all requests, or multiple servers for different request types.
Speech applications provide the URIs for the application servers in their requests for resources. Nuance speech products generally do not need to configure the location of the application servers.
Nuance speech products perform the fetch operations, and store fetched items in their caches. This improves response times when items are needed repeatedly.
Voice platform
A voice platform consists of several subcomponents, and the architecture can vary from one platform to another.
Distinguishing features of a typical voice platform:
- Application development environment: Builds, tests, and deploys VoiceXML applications. The VoiceXML application controls speech processing as described in the VoiceXML specification.
Note: This documentation set contains advice for configuring and controlling features in Nuance Speech Suite, but otherwise does not specify requirements or workflows for the application development environment. Separately, Nuance offers products for application development such as Nuance Application Studio and Nuance Insights for IVR, together with supporting documentation.
- Telephony system: Receives and transfers calls. The telephony system controls signaling and RTP audio channels. Calls can arrive through the Public Switched Telephone Network (PSTN) or through the Internet as Voice over Internet Protocol (VoIP).
- VoiceXML browser: Interprets the application’s VoiceXML documents. The voice browser connects incoming telephone calls to their corresponding applications. Just as a web browser presents an HTML document to a web server, a voice browser presents a VoiceXML document to a caller. The voice browser interprets VoiceXML documents, acquires resources from web servers, delivers requests to the MRCP client, and returns responses to the application (typically as ECMAScript objects).
- MRCP client: Communicates with Nuance Speech Server and other speech products. It manages speech sessions through the Speech Server, receives application requests from the browser, translates requests into standard MRCP messages, and returns results to the application through the browser. (Nuance provides a sample MRCP client, and the voice platform must provide a working instance.)
Nuance speech products support industry standards and run on all major platforms. Nuance speech products also support other platforms that don't use traditional VoiceXML or telephony. Any platform that provides a compatible MRCP client can interface with Nuance Speech Suite services.
Nuance speech products
For a full description of Nuance Speech Suite speech components, see Nuance Speech Suite.
The optional Management Station enables the centralized management of a Nuance network running Nuance speech services.
The Nuance Resource Manager is required if you're using Dragon Voice. It works with Apache ZooKeeper to distribute requests for recognition and semantic interpretation.
Each Dragon Voice engine communicates with the Resource Manager. General responsibilities of the resource manager:
- Register all Krypton engine, Natural Language Engine (NLE), and Nuance Text Processing Engine (NTpE) instances in the system and the capabilities of each (language, version, and so on).
- Track all available Krypton, NLE, and NTpE resources, including their capabilities and availability (including current use).
- Identify a resource to serve the recognition/interpretation request based on availability and on the required request parameters.
- Reserve and assign the best available resource that matches the requested capabilities.
For information on how your application specifies Dragon Voice recognition/interpretation, see Getting started for application developers.