Cisco Cisco Computer Telephony Integration Option 8.5 Developer's Guide

Page of 490
   
4-4
CTI OS Developer’s Guide for Cisco Unified Contact Center Enterprise
Release 8.5(3)
Chapter 4      Building Your Application
Integrating your Application with CTI OS via the CIL
Warning
Never select the COM Components tab from the “Customize Toolbox” dialog box and never select the 
CTI OS ActiveX controls. Doing this causes Microsoft Visual Studio .NET 2005 and 2010 to 
automatically generate a set of private RCWs that are not optimized nor approved by Cisco, and can 
result in application failure.
3.
From the list, select the CTI OS RCW that corresponds to the CTI OS ActiveX Control you want to 
add to the toolbox. For example, for the Agent State Control select the “AxAgentStateCtl”.
4.
To add more CTI OS ActiveX controls, repeat steps 1 to 3.
Integrating your Application with CTI OS via the CIL 
Creating an integration between your application and CTI OS via the CIL is straightforward. The first 
step is to articulate the desired behavior, and to create a complete design specification for the integration. 
Planning and Designing Your Integration
Good design depends on understanding how CTI will fit into your application and workflow. Your 
requirements analysis and design process should address the following points, as they relate to your 
specific application:
Start with the call flow. What kind of call processing is done before calls are targeted for a specific 
skill? Determine how you collect CTI data from the caller before the call arrives at an agent.
Study the agent’s workflow. What are the points where CTI can make the workflow easier and 
faster? Build a business case for the CTI integration.
Evaluate what CTI will do for your application. A good approach is to make a list based on the 
priority (e.g. screen pop, then call control) and then design and implement features in that order. 
Design how CTI should work within your application. What are the interaction points? Get 
specifications as to which screens will interact, and which data values should be sent between your 
application and the CTI OS platform. 
Determine when the application should connect to the CTI OS Server. Some applications are 
server-type integrations that connect at startup, specify a monitor-mode event filter, and stay 
connected permanently. Agent-mode applications connect up when a specific agent begins the work 
shift.
Clean up when you’re done. When and how does the application stop? Some applications stay up 
and running permanently, while others have a defined runtime, such as the agent’s workday or shift. 
For server-type applications without a specified stopping point, create an object lifetime model and 
procedure for recovering no-longer-used resources. For applications with a specific stopping point, 
determine the kind of clean up that needs to be done when the application closes (e.g. disconnect 
from server, release resources).
What Language and Interface to Use 
The CTI OS Client Interface Library API comes in programming languages, each with benefits and 
costs. The choice of interface is important to direct you through this developer’s guide, since this guide 
addresses the CIL API for the C++ and COM programming environments.