Cisco CallManager System Guide, Release 4.0(1)
Computer Telephony Integration

Table Of Contents

Computer Telephony Integration

Computer Telephony Integration Applications

CTIManager

Media Termination Points

CTI Controlled Devices

Dependency Records

CTI Redundancy

Cisco CallManager

CTIManager

Application Failure

CTI Configuration Checklist

Where to Find More Information


Computer Telephony Integration


Computer telephony integration (CTI) enables you to leverage computer-processing functions while making, receiving, and managing telephone calls. CTI applications allow you to perform such tasks as retrieving customer information from a database on the basis of information that caller ID provides. CTI applications can also enable you to use information that an interactive voice response (IVR) system captures, so the call can be routed to the appropriate customer service representative or so the information is provided to the individual who is receiving the call.

This section covers the following topics:

Computer Telephony Integration Applications

CTIManager

CTI Controlled Devices

Dependency Records

CTI Redundancy

CTI Configuration Checklist

Where to Find More Information

Computer Telephony Integration Applications

The following list contains descriptions of some Cisco CTI applications that are available:

Cisco IP SoftPhone—Cisco IP SoftPhone, a desktop application, turns your computer into a full-feature telephone with the added advantages of call tracking, desktop collaboration, and one-click dialing from online directories. You can also use Cisco IP SoftPhone in tandem with a Cisco IP Phone to place, receive, and control calls from your desktop PC. All features function in both modes of operation.

Cisco IP AutoAttendant—The Cisco IP AutoAttendant application works with Cisco CallManager to receive calls on specific telephone extensions and to allow the caller to choose an appropriate extension.

Cisco CallManager Attendant Console—This application provides a graphical user interface for controlling a Cisco IP Phone to perform attendant console functions.

Personal Assistant—Personal Assistant, a virtual secretary or personal assistant, can selectively handle your incoming calls and help you make outgoing calls.

Cisco WebDialer—Cisco WebDialer is installed on a Cisco CallManager server and is used in conjunction with Cisco CallManager to allow Cisco IP phone users to make calls from web and desktop applications.


Note When you create a user in Cisco CallManager Administration, and the user is going to use a CTI application, be sure to check the Enable CTI Application Use check box in the Add a User window. If you do not check this check box, the CTI application does not work properly.


CTIManager

A program called CTIManager includes the CTI components that interface with the applications that are separated out of Cisco CallManager. The CTIManager service communicates with Cisco CallManager by using the Cisco CallManager communication framework, System Distribution Layer (SDL). Installation of the CTIManager program occurs in the ..\Program Files\Cisco\bin\ folder on the Cisco CallManager server during the Cisco CallManager installation. You can have one or more CTIManagers active in a cluster, but only one CTIManager can exist on an individual server. An application (JTAPI/TAPI) can have simultaneous connections to multiple CTIManagers; however, an application can use only one connection at a time to open a device with media termination.

With CTIManager, applications can access resources and functionality of all Cisco CallManagers in the cluster and have access to failover capability. When a CTIManager fails, the application can access the secondary CTIManager only if the application supports it (for JTAPI applications) or if the Cisco TAPI Service Provider (Cisco TSP) is properly configured (for TAPI applications). For more information about failover and fallback, see the "CTI Redundancy" section.

Media Termination Points

CTI applications can use media termination points for CTI ports and CTI route points in the following ways:

Static IP address or port number—Specify the media IP address or port number when the device gets opened. In this case, the media is always terminated at the same IP address or port for all calls that are on that device. Only one application is allowed to terminate the media in this way.

Dynamic IP address or port number—Specify the media IP address or port number on a per call basis. For each call that requires a media termination, notification is sent to the application requesting the media termination information. The application is then required to send the IP address or port number back so that the media to go through (go through what?). Only the IP address or port number can be specified on a per call basis. The capabilities of the device are still specified statically when the device is opened. With dynamic media termination, multiple applications can open a device (CTI port or route point) for media termination as long as the capabilities specified by each application stay the same.

CTI Controlled Devices

The following CTI control device types exist:

Cisco IP Phones

CTI ports

CTI route points

CTI-controlled Cisco IP Phones comprise regular phones that a CTI application can control.

CTI ports as virtual devices can have one or more virtual lines, and software-based Cisco CallManager applications such as Cisco SoftPhone, Cisco AutoAttendant, and Cisco IP Interactive Voice Response (IVR) use them. You configure CTI ports by using the same Cisco CallManager Administration windows as you use to configure phones. For first-party call control, you must add a CTI port for each active voice line.

A CTI route point virtual device can receive multiple, simultaneous calls for application-controlled redirection. You can configure one or more lines on a CTI route point that users can call to access the application. Applications can answer calls at a route point and can also be redirected to a CTI port or IP phone. Route points can receive multiple, simultaneous calls, therefore, the application must specify the media and port for the call on a per call basis.

CTI route points support the following features:

Answer a call

Make and receive multiple active calls

Redirect a call

Hold a call

Unhold a call

Drop a call

When a call arrives at a route point, the system must accept or answer it within a specified time. Use the Directory Number Configuration window in Cisco CallManager Administration to configure the number of simultaneous active calls on the route point that can terminate at media. To configure the time allowed to answer a call, use the New Call Accept Timeout service parameter


Note If you are planning to use a TAPI application to control CTI port devices by using the Cisco TAPI Service Provider (TSP), you may only configure one line per CTI port device.


Applications that are identified as users can control CTI devices. When users have control of a device, they can control certain settings for that device, such as answer the call and call forwarding.

CTI devices (CTI ports, CTI route points) must associate with device pools that contain the list of eligible Cisco CallManagers for those devices. For general instructions on how to configure settings for CTI ports, refer to the "Adding a Phone" section in the Cisco CallManager Administration Guide. For general instructions on how to configure settings for CTI route points, refer to the "Adding a CTI Route Point" section in the Cisco CallManager Administration Guide. For information on how to configure CTI ports and route points for use with a specific application, such as Cisco SoftPhone, refer to the documentation and online help that is provided with that application.

When a CTI device fails (during a Cisco CallManager failure, for example), Cisco CallManager maintains media streams that are already connected between devices (for devices that support this feature). Cisco CallManager drops calls that are in the process of being set up or modified (transfer, conference, redirect, and so on).

Dependency Records

To find out what directory numbers a specific CTI route point is using, click the Dependency Records link that is provided on the Cisco CallManager Administration CTI Route Point Configuration window. The Dependency Records Summary window displays information about directory numbers that are using the route point. To find out more information about the directory number, click the directory number, and the Dependency Records Details window displays. If the dependency records are not enabled for the system, the dependency records summary window displays a message.

For more information about Dependency Records, refer to Accessing Dependency Records and Deleting a CTI Route Point in the Cisco CallManager Administration Guide.

CTI Redundancy

CTI provides recovery of failure conditions that result from a failed Cisco CallManager node within a cluster and failure of a CTIManager. This section describes the failover and fallback capabilities of the following components:

Cisco CallManager

CTIManager

Applications (TAPI/JTAPI)

Cisco CallManager

When a Cisco CallManager node in a cluster fails, the CTIManager recovers the affected CTI ports and route points by reopening these devices on another Cisco CallManager node. If an application has a phone device open, the CTIManager also reopens the phone when the phone fails over to a different Cisco CallManager. If the Cisco IP Phone does not fail over to a different Cisco CallManager, the CTIManager cannot open the phone or a line on the phone. The CTIManager uses the Cisco CallManager group that is assigned to the device pool to determine which Cisco CallManager to use to recover the CTI devices and phones that the applications opened.

When the CTIManager initially detects the Cisco CallManager failure, it notifies the application (JTAPI/TAPI) that the devices on that Cisco CallManager went out of service. If no other Cisco CallManager in the group is available, the devices remain out of service. When those devices successfully rehome to another Cisco CallManager, the CTIManager notifies the application that the devices are back in service.

When a failed Cisco CallManager node comes back in service, the CTIManager rehomes the affected CTI ports/route points to their original Cisco CallManager. The rehoming process starts when calls are no longer being processed or active on the affected device. Because devices cannot be rehomed while calls are being processed or active, the rehoming process may not occur for a long time, especially for route points that can handle many simultaneous calls.

If none of the Cisco CallManagers in the Cisco CallManager group is available, the CTIManager waits until a Cisco CallManager comes into service and tries to open the CTI device again. If for some reason the Cisco CallManager cannot open the device or associated lines when it comes back into service, the CTIManager closes the device and lines.

CTIManager

When a CTIManager fails, the applications that are connected to the CTIManager can recover the affected resources by reopening these devices on another CTIManager. An application determines which CTIManager to use on the basis of CTIManagers that you defined as primary and backup when you set up the application (if supported by the application). When the application connects to the new CTIManager, it can reopen the devices and lines that previously opened. An application can reopen a Cisco IP Phone before the phone rehomes to the new Cisco CallManager; however, it cannot control the phone until the rehoming completes.


Note The applications do not rehome to the primary CTIManager when it comes back in service. Applications fail back to the primary CTIManager if you restart the application or if the backup CTIManager fails.


Application Failure

In the Application Heartbeat Maximum and Application Heartbeat Minimum parameters, you define the interval at which applications send messages to the CTIManager. The CTIManager determines that an application has failed if it does not receive a message from the application in two consecutive intervals. When an application (TAPI/JTAPI or an application that is directly connected to the CTIManager) fails, the CTIManager closes the application and redirects unterminated calls at CTI ports and route points to the application that configured the call forward on failure (CFOF) number. The CTIManager also routes new calls into CTI ports and route points that an application does not open to the application CFNA number.

CTI Configuration Checklist

Table 41-1 provides steps to configure Cisco CallManager for CTI applications.

Table 41-1 CTI Configuration Checklist 

Configuration Steps
Procedures and Related Topics

Step 1 

Add and configure CTI route points or ports for each CTI application.

Adding a CTI Route Point, Cisco CallManager Administration Guide

Adding a Phone, Cisco CallManager Administration Guide

Step 2 

Configure the directory number for the CTI device.

Adding a Directory Number, Cisco CallManager Administration Guide

Step 3 

Install and configure your applications.

Refer to the documentation that is provided with your application.

Step 4 

Activate the CTIManager service on the appropriate servers.

Cisco CallManager Serviceability Administration Guide

Step 5 

Configure the appropriate CTIManager and Cisco CallManager service parameters.

Service Parameters Configuration, Cisco CallManager Administration Guide

Step 6 

Restart the CTIManager service.

Cisco CallManager Serviceability Administration Guide

Step 7 

Check the CTI In Use check box in the User Configuration window for the user who is associated with the application.

Adding a User, Cisco CallManager Administration Guide

Step 8 

Ensure that you assign devices to the application (identified as a user) that is to control the devices.

Associating Devices to a User, Cisco CallManager Administration Guide

Step 9 

Ensure that you associate all devices to be used by the application with the appropriate Cisco CallManager group (via the device pool).

Adding a Device Pool, Cisco CallManager Administration Guide

Step 10 

Restart application engine (if required).

Refer to the documentation that is provided with your application.

Where to Find More Information

Related Topics

Services

Redundancy

Additional Cisco Documentation

Cisco JTAPI Developer Guide

Cisco TAPI Developer Guide

Cisco CallManager Serviceability Administration Guide

Cisco CallManager Serviceability System Guide