Cisco Cisco Computer Telephony Integration Option 8.5 Developer's Guide
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.
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”.
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.
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:
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.
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.
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.
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.
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.
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).
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.
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.