Cisco Cisco Computer Telephony Integration Option 9.0 Developer's Guide

Page of 500
   
4-3
CTI OS Developer’s Guide for Cisco ICM/IPCC Enterprise & Hosted Editions
Cisco CTI OS Release 7.2(1)
Chapter 4      Building Your Application
Integrating your Application with CTI OS via the CIL
In order to use the Cisco CTIOS ActiveX 7.1(1) Controls in Visual Studio .NET 2003, it is necessary to 
configure the Cisco CTI OS RCWs as described in the previous section add to the Form Editor Toolbox:
1.
From Visual Studio’s  View menu make sure to select the “Add/Remove Toolbox Items…” 
command
2.
From the “Customize Toolbox” dialog box select the “.NET Framework Components” tab.
Warning
Never select the COM Components tab from the “Customize Toolbox” dialog box and never select the 
CTI OS ActiveX controls. Doing this will cause Microsoft Visual Studio .NET 2003 to automatically 
generate a set of  private RCWs that are not optimized nor approved by Cisco and your application will 
probably have an unexpected behavior that could lead to application failure.
3.
From the list select the CTI OS RCW that corresponds to the CTIOS ActiveX Control you want to 
add to the toolbox. For example, for the Agent State Control select the “AxAgentStateCtl”
4.
To add more CTIOS 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 fairly 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 upon understanding how CTI will fit into your application and work flow. 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 CTI data can be collected from the caller before the call arrives at an agent.
  •
Study the agent’s workflow. What are the points where CTI will be able to make the workflow 
easier and faster? Build a business case for the CTI integration.
  •
Evaluate what will CTI do for your application. A good approach is to make a list in order of 
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 
specific as to which screen will do the interacting, 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 will 
be server-type integrations that will connect at startup, specify a monitor-mode event filter, and stay 
connected permanently. Agent-mode applications will connect up when a specific agent begins his 
or her work shift.
  •
Clean up when you’re done. When and how does the application stop? Some applications will stay 
up and running permanently, while others will 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 what kind of clean up needs to be done when the application closes (e.g. 
disconnect from server, release resources).