GVP Architecture
This section describes the primary components and basic architecture of Genesys Voice Platform (GVP) 9.0.
- GVP and the Voice Platform Solution
- GVP Components
- Genesys Voice Platform Solution Components
- Third-Party Software
- Communication Within GVP
- SNMP Monitoring
- High Availability and Scalability
- Resource Manager High Availability Solutions
GVP and the Voice Platform Solution
GVP, Session Initiation Protocol (SIP) Server, Management Framework, and Genesys Administrator together constitute the Voice Platform Solution (VPS), which integrates voice self-service, agent-assisted service, and application-management functions into a single, IP-based contact-center solution.
GVP provides a unified communication layer within the Genesys suite, and offers a robust solution that incorporates all required call control including computer-telephony integration (CTI) and media-related functions.
The figure below depicts the GVP architecture and the communication channels among GVP components in the VPS.
For more information about the VPS, see the Voice Platform Solution 8.1 Integration Guide.
GVP Components
GVP includes the following components:
- Resource Manager
- Policy Server
- CTI Connector
- PSTN Connector
- Media Control Platform
- Call Control Platform
- MRCP Proxy
- Fetching Module and Squid
- Supplementary Services Gateway
- Reporting Server
There is an installation package (IP) for each of these GVP components. Each component is configured as an Application object in Genesys Management Framework. The Fetching Module was integrated with the Media Control Platform IP in release 8.1.2, and in all subsequent releases is no longer in a separate IP.
Voice Platform Solution Components
The GVP components integrate with other Genesys Suite components to extend the features and functionality of the voice platform, thereby increasing the flexibility of your deployment.
The Voice Platform Solution is Genesys Voice Platform and three other components:
SIP Server is a T-Server for IP environments in which Genesys T-Lib applications such as Universal Routing Server, Outbound, and Agent Desktop deliver services in SIP environments. SIP Server is a critical integration point for GVP components that interact with network and T-Lib applications.
Interfaces
Unlike other T-Servers, SIP Server operates in environments where there are no switches present. It supports direct interfaces and connectivity to IP agents, voice platforms, gateways, soft switches, and other elements that are used to establish inbound and outbound communication sessions with customers.
SIP Server acts as a SIP B2BUA, and controls the flow of SIP requests and responses between SIP endpoints, performing the switching functions that are normally performed by the PBX or ACD.
Routing
SIP Server can be used in conjunction with an IP PBX or ACD. When used in this way, SIP Server controls the routing and transformation of requests, but does not act as a registrar with which agents communicate. This type of control is normally provided by a CTI link.
For more information about SIP Server and integration with GVP, see the VP Solution 8.1 Integration Guide.
GVP is fully integrated into Genesys Management Framework. The GVP component processes are configured as Application objects in the Genesys Configuration Layer, the GVP Application and IVR Profile objects are stored in the Configuration Database, and Configuration Manager is required for bulk provisioning of DNs and Places.
The GVP components interface with Management Framework to obtain the configuration information they need to communicate with other GVP components:
- The Resource Manager obtains configuration information about the SIP resources that it manages for example, the Media Control Platform and the Call Control Platform. The Resource Manager must be aware of these SIP resources and the services they offer.
- The Media Control Platform and Call Control Platform obtain configuration information about SIP proxies in the deployment (the Resource Manager). The call-processing components must be aware of the SIP proxy resources and the services they offer.
- The Supplementary Services Gateway and PSTN Connector obtain configuration information about SIP T-Servers in the deployment (SIP Server). These components rely on SIP Server to obtain access to media processing services offered by the Media Control Platform through the Resource Manager.
- GVP Reporting obtains logging information from the component log sinks, and it is integrated with Management Framework to accumulate summary statistics that are used by Reporting Server.
User Interaction Layer
The User Interaction Layer of Management Framework is the unified Web-based interface that controls applications and solutions. It acts as a manager and administrator for all Genesys components, including GVP components. It provides an interface to the Configuration and Management layers and to otherGenesys solutions.
For more information about the User Interaction Layer, see the Management Framework Architecture Help.
Genesys Administrator
Genesys Administrator is the Web-based GUI that is used to manage all Genesys products, including GVP, with a single user interface. It is part of the Management Framework User Interaction Layer.
Functions
Use Genesys Administrator to access the following functions within the User Interaction Layer:
- Configuration
- Provisioning
- Hierarchical Multi-Tenant configurations and management.
- Management operations (starting or stopping applications)
- Monitoring of current status
- Service Quality (SQ) metrics and latency alarming.
- Installation
- Deployment
- Data collection and logging
- Data management
Genesys Administrator retrieves information about GVP IVR Profiles (voice or call-control applications) and components from the Configuration Database. Therefore, you can use Genesys Administrator as an interface to create, modify, delete, and save GVP information.
It also provides multi-site reporting statistics aggregating reports from multiple independent Reporting Servers, and allowing an administrator to view data that is aggregated across multiple sites.
To access Genesys Administrator for your deployment, go to the following URL:
http://<Genesys Administrator host>/wcm
For more information about Genesys Administrator, see Genesys Administrator 8.1 Help.
Genesys Composer is a voice application development tool that is used to develop VoiceXML and CCXML applications. Composer is the preferred tool for customers who write their own applications, but you can use any tool you choose Composer is optional in the VPS.
The Composer GUI enables you to build voice and call-control applications by using drag-and-drop operations.
The integrated Composer development environment simplifies the creation of voice applications. Developers use the Composer authoring tool to build voice applications from a visual call flow editor or a rich XML editor. Applications are compiled and deployed directly to a web application server, and are thenfetched and executed by GVP.
Composer includes a run-time tool that debugs VoiceXML applications in real time, while the developer performs testing by using a SIP phone.
Composer Functions
Composer performs the following functions:
- Creates voice applications by using a visual call-flow editor
- Generates VoiceXML code from the visual call flow
- Provides context-rich Editors for writing and editing VoiceXML, CCXML, and Grammar Extensible Markup Language (GRXML) (speech-recognition grammars) code
- Tests and debugs VoiceXML applications
- Provides project management
- Obtains version history and team support
- Creates CTI applications by using SIP Server (non-CTIC) for NGI
- Creates CTI applications by using CTIC for NGI
SIP Server and Genesys Management Framework, including the User Interaction Layer, are required to create an overall VPS solution.
Third-Party Software
In addition to the Squid Caching Proxy described on page 47, GVP either requires or optionally supports the use of additional third-party software in the VPS.
This section describes the following third-party software that is used in conjunction with GVP:
For information about other third-party software requirements for GVP, and for details about the supported versions of the third-party software, see Prerequisites.
Automatic Speech Recognition
GVP uses MRCP speech-recognition technology to incorporate automatic speech recognition for use in voice applications. Using ASR in a GVP deployment is optional.
Text-to-Speech
GVP uses MRCP speech synthesis technology to incorporate text-to-speech for use in voice applications.
Using TTS in a GVP deployment is optional.
Reporting Database
VP Reporting Server works with a relational database-management system (RDBMS) and currently works with Microsoft SQL Server and Oracle Server. The RDBMS provides storage and queries the data that is in the relational database. The Reporting Server is responsible for controlling the RDBMS and providing reporting web services on top of the relational database.
To store GVP usage information for later analysis, Reporting Server database in your GVP deployment is mandatory.
Web Server
The GVP voice and call-control applications reside on a web server that the GVP interpreters access on every call; by using either standard HTTP or HTTPS.GVP supports interactions with multiple web servers. If voice or call-control applications reside on separate web servers, these web servers can be located on a web farm architecture in a local or remote network configuration.
Communication between the web server and GVP is analogous to the desktop web browser model. In a standard Web-based application, desktop browsers make requests to an application server to provide HTML so that they can render the Web-based application. The browser renders a web page, and establishes linksto other pages on the Web. When you click a link, the browser issues a request to the designated URL, which results in the retrieval and rendering of another web page. When the page or its contents change, the next request from any browser retrieves the changed page.
Requests and information exchanged on GVP are handled in a similar fashion, but the markup languages are CCXML and VoiceXML instead of HTML. The HTTP Client requests pages from web servers.
Call-control and voice applications can be developed by using Active Server Pages (ASP) or Java Server Pages (JSP), manually by using CCXML and VoiceXML(rather than being generated by the ASP or JSP pages), or by using Genesys Composer.
The Call Control Platform and Media Control Platform interpreters parse the CCXML or VoiceXML to affect:
- Call handling (answering, bridging, and disconnecting calls).
- Media management (playing greetings, prompts, and messages by using cached voice files and TTS).
- Caller input (collecting touch-tone digits and performing speech recognition).
The Media Control Platform and Call Control Platform enable VoiceXML and CCXML applications to drive an interaction with a caller in the same way that the desktop web browser would interact with an application server to render a screen, and to react to keyboard or mouse input. As with the desktop browser, depending on the page s cache control headers, any changes to the call-control or voice application on the application server generally becomes effective the next time a page is requested.
Communication Within GVP
The VPS is a complex solution that requires GVP to handle various types of communications.
Communication Protocols
As Figure: Genesys Voice Platform Solution Architecture shows, GVP uses the following communication protocols:
- SIP For call-control messaging between the Resource Manager and SIP Server, and for resource-management messaging between the Resource Manager and GVP resource components.
- HTTP For fetch communications among the NGI/CCXMLI, Fetching Module, and Squid Caching Proxy, and between the Fetching Module and web application server. HTTP is also used for communication between the Reporting Clients and Reporting Server, between the Reporting Web Services and Genesys Administrator, and between the Supplementary Services Gateway and third-party Trigger Application.
- MSML For media services communications between SIP Server and the Media Server through the Resource Manager.
- MRCP For managing speech services between the Media Control Platform and the ASR or TTS speech engines. GVP supports MRCPv1 over Real-time Streaming Protocol (RTSP) and MRCPv2 over SIP.
- RTP For delivering media (audio and video data) between the Media Control Platform and the external media gateway, and between the Media Control Platform and the speech engines.
- IVR XML For accessibility to CTI functionality through the IVR Server to the CTI Connector, and the CTI connector to the GVP components.
- GED-125 For interacting with Cisco ICM.
For the exact specifications that GVP supports, see Specifications and Standards.
Secure Communications
GVP supports the following protocols for secure communications:
- Secure SIP (SIPS) SIP over the Transport Layer Security (TLS) protocol, for call-control and resource-management messaging between the Resource Manager and Media Control Platform and Call Control Platform resources.
- GVP supports these versions of TLS: TLS version 1.2 (TLSv1.2), TLS version 1.1 (TLSv1.1), and TLS version 1 (TLSv1); and these versions of Secure Sockets Layer (SSL): SSL version 2 (SSLv2), SSL version 3 (SSLv3), and SSL version 23 (SSLv23).
- Secure HTTP (HTTPS) HTTP over Secure Socket Layer (SSL) and TLS version 1 (TLSv1), TLS version 1.1 (TLSv11) or TLS version 1.2 (TLSv12) for fetch communications between the Fetching Module and web application server. The Reporting Server supports HTTPS for receiving and responding to authenticated reporting requests from Genesys Administrator or an HTTP Client. The Supplementary Services Gateway supports HTTPS for requests from the third-party Trigger Application.
- Secure RTP (SRTP) A profile of RTP that provides encryption and authentication of audio and video data in RTP streams between the Media Control Platform and the Media Gateway.
SRTP encryption keys and options are exchanged in SIP INVITE and response messages, preferably using SIPS.
The GVP components ship with a generic private key and SSL certificate, and default SIP transports for TLS are configured in the Application object for each component. Therefore, basic security is implemented without having to configure it. However, for more stringent security, Genesys recommends that you obtain your own SSL keys and certificates.
For more information about obtaining SSL keys and certificates, and configuring the GVP components to use SIPS, HTTPS, and SRTP in the GVP deployment, see the section about enabling secure communications in the GVP 8.5 User's Guide.
Considerations and Usage Notes
Before you implement widespread use of HTTPS in your GVP deployment, consider the following:
- Lags in fetch times and high CPU usage are normal when SSL is used, because the web server must encrypt every byte of data and the platform must then decrypt the received data. In addition, an SSL handshake takes place between the web server and the platform before data transmission starts.
- Before you use HTTPS to reference grammars, ensure that your ASR engine supports it.
- Be aware that, if a VoiceXML page was fetched with HTTPS, and resources within the page (such as audio files, grammars, and scripts) are referenced with a relative Uniform Resource Identifier (URI). The full URI for the resource will also use HTTPS. If you want to use HTTP to fetch a resource from a page that was fetched with HTTPS, you must ensure that the VoiceXML page explicitly references the resource has an http URI.
IPv6 Communications
GVP components support IPv6 communications with compatible devices and networks. The dual-stack functionality supports scenarios where one call leg is onIPv4 and the other, IPv6.
Notes: While GVP 8.1.5 is IPv6 ready, other Genesys and third party interfaces are not. Investing in GVP assures that as vendors and other Genesys products adopt IPv6, GVP is ready. In addition, GVP 8.1.5 is dual-mode enabled, so it preserves compatibility with existing supported interfaces that use IPv4 only.
GVP components support non-linked-local IPv6 addresses only. When using IPv6, do not use linked-local addresses.
Local Port Ranges
Users can configure a TCP or TLS local port range by using the sip.tcp.portrange and sip.tls.portrange configuration parameters, respectively. This parameter can be configured in all four Resource Manager service configuration sections: monitor, proxy, registrar, subscription.
These port range configuration option values are empty, by default. If they are not configured, the operating system selects the local port.
IPv6 in Initial SDP Offer
A default IP version can be defined for SDP offers. The [mpc] preferredipinterface configuration option defines this behavior. If the default IP version is not specified, IPv4 is used as the default version. This configuration defines the IP version that will be used when the Media Control Platform generates an SDP offer.
SSG Connectivity to SIP Server
The Supplementary Services Gateway supports connectivity to SIP Servers that are running on IPv6 networks. The enable-ipv6 configuration option in the Common section of the Supplementary Services Gateway Application enables IPv6 support.
The Supplementary Services Gateway sends the ip-version parameter as a transport parameter to T-Lib and is required to define the preferred protocol version in the DNS of the SIP Server.
Web Services Access
The Reporting Server supports web services access through a network interface that is configured to use an IPv6 address. Genesys Administrator can use this interface to the Reporting Server and detect the database mode to determine which dashboards and reports to display and hide.
If you are planning to use IPv6 in your environment, you must configure the GVP components accordingly. For information about how to enable IPv6 support in the component Applications, see Chapter 3 in the GVP 8.5 User's Guide.
SNMP Monitoring
GVP supports Simple Network Management Protocol (SNMP) monitoring for the Resource Manager, Media Control Platform, Call Control Platform, Supplementary Services Gateway, and Fetching Module components. Using SNMP in a GVP deployment is optional.
The Master Agent handles all queries from the Management Data GUI and any Network Management Systems (NMS), and sends Agent X queries to the appropriate subagent (in other words, to the appropriate GVP process).
Traps, which are generated from logs, flow from the subagent to the Master Agent, and then to trap destinations as configured on the Master Agent.
The traps are defined in the GVP Management Information Bases (MIBs), which are available in their own installation package. For more information about the GVP MIBs, see the GVP 8.5 SNMP MIB Reference.
High Availability and Scalability
GVP supports GVP High Availability in three ways:
- by configuring the Resource Manager for HA.
- by configuring the Reporting Server for HA.
- by combining the call-processing components into resource groups.
Different Resource Manager configurations may require different approaches. See Resource Manager High Availability Solutions.