How the CTI Connector Works
Like other GVP components, the CTI Connector (CTIC) relies on the Resource Manager for session management, service selection, policy enforcement, and resource management.
The Resource Manager processes CTI calls for each physical resource that represents a CTI Connector. A call is identified as a CTI call:
- If it arrives from a gateway resource.
- The use-cti parameter is set to a value other than zero in the Gateway resource group from which the call arrives.
This section describes how the CTI Connector performs its functions, in the following topics:
- Inbound Call Mapping
- Outbound Calls
- Genesys CTI Deployment Modes
- Integration with Cisco ICM
- Cisco CTI Deployment Modes
Inbound Call Mapping
When the CTI Connector is deployed, the Resource Manager manages call sessions in the following way:
- A CTI call arrives from gateway resource, and the Resource Manager routes the call to a CTI Connector resource. The Resource Manager marks the session as a CTI session.
- The Resource Manager checks the use-cti parameter in the Gateway group and, based on the parameter value, determines how the call is mapped for example:
- use-cti = 0—The call is not treated as a CTI call. The DNIS is provided and mapped to an IVR Profile.
- use-cti = 1—Initially, the DNIS is not provided and the call is not mapped to an IVR Profile. This is done later, as described in SIP Back-to-Back User Agent.
- use-cti = 2—The DNIS is provided and the call is mapped to an IVR Profile; however, the call may be treated as a CTI call, depending on how the gvp.policy section of the IVR Profile is configured:
- If cti-allow = false, the call is treated as non-CTI call.
- If cti-allow = true, the call is treated as a CTI call.
- If cti-allow is not configured, the call is treated as a CTI call.
- If use-cti = 2, then for CTI calls, the Resource Manager extracts the CTI service parameters configured in the IVR Profile and sends them to the CTI resource as Request-URI parameters. It also sends these parameters in mid call requests, such as SIP REFER.
TipWhen you create a Gateway resource group by using the Resource Group wizard, the value that you enter in the CTI Usage field, configures the use-cti parameter. See CTI Connector Functions.
CTI Connector Resource Selection
- The Resource Manager selects a CTI Connector resource group to service the call based on its preference and capability. (See Resource Groups.)
- A request is sent to a resource in the CTI Connector Resource Group based on the load balancing scheme. (See Load Balancing.) The Resource Manager modifies the X-Genesys-GVP-Session-ID header in the request, as follows:
- It adds the parameter gvp.rm.cti-call = 1.
- It adds the parameter gvp.rm.tenant-id (but only if use-cti = 2).
CTI Call Mapping Genesys CTI
- If the Resource Manager receives an INVITE from CTIC, and the call is not mapped to an IVR Profile (use-cti=1), the Resource Manager maps the call and selects a service for the request. The Resource Manager adds the gvp.rm.tenant-id parameter to the X-Genesys-GVP-Session-ID header as described in Connector Resource Selection.
- The CTI Connector, acting as a B2BUA, fetches the Automatic Number Identification (ANI), DNIS, Connection Identifier (CONNID), and Universal Unique Identifier (UUID) from the IVR Server when a request is received from the Resource Manager. The CTI Connector then sends a new SIP INVITE to the Resource Manager with the following information:
- The user part of Request-URI set to DNIS
- The user part of FROM header set to ANI
- The user part of TO header set to DNIS
When the Resource Manager receives a request from the CTI Connector, it searches for DNIS based on the rm.sip-header-for-cti-dnis parameter.
CTI Call-Detail Records
- The Resource Manager processes the X-Genesys-GVP-CDR header for the following information in the BYE request from the CTI Connector, or in the final response for a BYE message to the CTI Connector:
- The call-disposition information
- The call wait time in the queue
The Resource Manager passes this information to Reporting Server in the final CDR for the call.
The Resource Manager supports outbound calls from the Media Control Platform to the CTI Connector and outbound calls from the CTI Connector to the gateway from which the call originated.
- The Resource Manager routes the outbound calls that are initiated by the Media Control Platform to the gateway with which the CTI Connector instance is associated.
TipThe Resource Manager passes on the DefaultAgentNumber service parameter for both outbound SIP INVITE and REFER messages. The CTI Connector uses the TransferOnCTI parameter only in SIP REFER messages.
- The Resource Manager attaches the CTI-related service parameters as Request-URI parameters. They are configured as cti service-types The format is the same as that described in Selecting the Service on page 81.
- The following CTI-related service parameters are attached for transfer requests:
For behind mode (use-cti=1) and during blind transfer cases, TransferOnCTI is applicable only when CTI Connector is deployed with Genesys CTI. The valid values for TransferOnCTI are Yes and No, and the value type is fixed.
- For an existing CTI Connector session, the Resource Manager forwards outbound calls from the CTI Connector to the gateway resource from which the inbound call arrived. To ensure this occurs, retain the default value, Always, for the gvp.policy.use-same-gateway parameter in the application profile.
- When the Resource Manager receives SIP INVITE messages from the CTI Connector, it uses the following logic to determine whether the message is for an outbound or inbound call:
- If the Request-URI from the CTI Connector contains the gvp.ctic.outbound parameter that is set to a non-zero value, it is an outbound call and must go through the gateway.
- If gvp.ctic.outbound = 0, it is an inbound call.
- If gvp.ctic.outbound is not set in the Request-URI, it is an inbound call.
If the CTI Connector sends a specific 4xx or 5xx SIP response code in the initial INVITE message, the Resource Manager assumes that connectivity to the CTI server is broken.
- The Resource Manager checks the rm.cti-unavailable-action parameter. If it is set, the Resource Manager performs the action specified in the parameter. If it is not set, the Resource Manager check the next resource in the CTI group. Possible action values are:
- answer--This call is considered a non-CTI call. The DNIS is provided and the call is mapped to an IVR Profile based on the initial SIP INVITE message from the gateway (if the IVR Profile is not already mapped).
- reject--The Resource Manager does not retry any further CTI resources in the CTI group, and it rejects the call with the response code from the CTI Connector.
- script;<service-type>;<url>--The Resource Manager sends a NETANN request based on the service-type and Universal Resource Locator (URL). The request is sent in the context of the mapped IVR Profile or the default IVR Profile (if mapping fails).
- When the CTI Connector sends the first SIP INVITE message to the Resource Manager, and if the call is not mapped to an IVR Profile, the Resource Manager checks that the IVR Profile is not already mapped. If it is not, the Resource Manager maps the call and passes the CTI service parameters to the CTI Connector in a 200 OK response in the X-Genesys-GVP-CTI-Params header.
Genesys CTI Deployment Modes
The CTI Connector interacts with other components in the Genesys suite by using the IVR Server XML interface. IVR Server can be deployed in front of the switch, behind the switch, or in Network mode:
- If IVR Server is in front of the T-server (or TDM) switch Inbound calls that are routed through the Resource Manager to the Media Control Platform contain call-related information, such as, the ANI, DNIS, DN, and IVR port number in the SIP INVITE message.
- If IVR Server is in Network mode Inbound calls that are routed through the Resource Manager to the Media Control Platform contain call details such as, the ANI, DNIS, Toll Free Number (TFN), and IVR port number in the SIP INVITE message.
- If IVR Server is behind the switch Inbound calls that are routed through the Resource Manager to the Media Control Platform do not have the ANI or DNIS in the SIP INVITE message. Only the channel identifier is presented to GVP. In this case, GVP retrieves the ANI and DNIS from the IVR Server through the CTI Connector, based on the channel identifier.
In all three IVR deployment modes, the Resource Manager and Media Control Platform communicate with IVR Server through the CTI Connector.
For more information about setting up and configuring IVR Server in the various deployment scenarios, see the VP Solution 8.1 Integration Guide.
Integration with Cisco ICM
GVP obtains call-related information, such as, the ANI and DNIS, from the initial call-setup message and uses it to fetch IVR Profiles and identify a tenant with which to associate the call. The Cisco Intelligent Contact Management (ICM) framework provides the call handling instruction, exchanges call-related data, and fetches the number of an available agent to which the call can be transferred.
The CTI Connector interacts with ICM through the Voice Resource Unit-Peripheral Gateway (VRU-PG). The PG serves as an intermediary between the proprietary interfaces that are provided by the switch and GVP (or IVR vendor), and the routing logic of the Intelligent Call Router (ICR). For ACD or PBX devices, the PG monitors real-time agent status, calculates call handling performance statistics, and forwards the appropriate event and statistical information to the Database Server.
The PG monitors and responds to routing requests from the switch and/or IVR and enables the intelligent post-routing of calls. Post-routing functions include call transfers between agents and call inter-flows between ACDs or PBXs. Figure: CTI Connector Interaction with Cisco ICM shows a simple VRU-PG configuration.
CTI Connector (ICM) in Type 8 Network VRU Deployment
The Type 8 Network Voice Resource Unit (VRU) call flow that is documented here enables Cisco ICM to divert incoming calls to a VR**GVP in this case for the purpose of voice treatment such as prompting and collecting data, and for providing complete self-help voice response under ICM control before connecting the call to an agent. For GVP, this is referred to as a pre-routed call.
The CTI Connector (ICM) not only supports Type 8 deployment, but also allows the ScriptID or a particular Call Variable from the first script request execution to be treated as a DNIS, for invoking a VXML application. The unique ScriptID must be configured in the DID profiles to fetch the appropriate IVR profile, as a DNIS is configured. The following section describes configuration and the flow of messages for such a deployment.
CTI Connector (ICM) Configuration
Configure these parameters as follows:
- use-cti--Set to 1, for the Gateway resource of the Resource Manager (RM). This setting enables the RM to forward the call to CTIC without fetching the IVR Profile.
- [ICMC] enablePreRouting--Set to true (default is false). True specifies that the DNIS is not passed to the GVP when the call is presented. Instead, the DNIS information is retrieved through Call Variables or the ScriptID in the initial RUN_SCRIPT_REQ message.
- [ICMC] DNISIndicator--Set to the appropriate value either Call Variable or ScriptID, based on how DNIS information is sent.
Cisco CTI Deployment Modes
The CTI Connector and ICM can be deployed in one of two deployment modes, which are described below:
- CTI Connector supports multiple VRU-PG connection, however, separate listener ports must be specified (separated by a comma) for each VRU-PG. For example, [Tenant1] Ports=9001,9002. CTI Connector also supports multiple Peripheral Interface Managers (PIM), which are associated with a Peripheral Gateway (PG) to provide services for one tenant or multiple tenants.
- CTI Connector supports ICM in Duplex mode in which one of the VRU-PGs establishes connection to CTI Connector, while the other connection is quiescent. Once established, a connection remains active until a failure (on either side of the connection) occurs. When ICM is in * Duplex mode, it might try to open a PG when the same PG already has a session established. If this occurs, the CTI Connector terminates the existing session and processes the new request.
For information about the various deployment options that are supported by CTI Connector and ICM, see the VP Solution 8.1 Integration Guide.
For a description of how basic call flows work when CTI Connector is integrated with Cisco ICM, see GVP Call Flows.