Cisco Cisco Computer Telephony Integration Option 9.0 Developer's Guide

Page of 546
 
Chapter 4      Building Your Application
Integrating your Application with CTI OS via the CIL
4-2
Cisco ICM Software CTI OS Developer’s Guide Release 6.0(0)
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