Cisco Cisco Computer Telephony Integration Option 9.0 Developer's Guide

Page of 668
 
2-9
CTI OS Developer’s Guide for Cisco ICM/IPCC Enterprise & Hosted Editions Release 7.1(1)
 
Chapter 2      CTI OS Client Interface Library Architecture
CIL Object Model
In Monitor Mode objects are created at the CIL the first time the CIL receives an 
event for that agent (e.g in an OnAgentStateChange event). When the Session 
receives an event for an unrecognized Agent, that new Agent is added to the 
Session’s collection of agents. 
During application clean-up, the Session object will release its references to all 
agents in the Agent collection. To ensure proper memory clean-up, the 
programmer must release all reference to Agent objects. 
SkillGroup Object Lifetime
A SkillGroup object is created at the CIL the first time an 
OnNewSkillGroupStatisticsEvent event occurs for that SkillGroup. It is added to 
the SkillGroup collection, and it is subsequently updated by follow-on 
OnNewSkillGroupStatisticsEvent events. 
During application clean-up, the Session object releases its references to all skill 
groups in the SkillGroup collection. To ensure proper memory clean-up, the 
programmer must release all reference to SkillGroup objects.
Methods that Call AddRef()
The following tables detail the various methods that call 
AddRef(). To prevent 
memory leaks, C++ and COM application developers that call these methods in 
their applications must be aware of  the impact of these methods on the reference 
count and must appropriately release the reference when no longer using the 
object.:
Table 2-1
SessionLib (C++)
Object Name
Method Name
Explanation
CAgent
GetSkillGroups(),
GetMonitoredCall()
The client application must call 
Release() on the returned object 
when the object is no longer 
needed.
CILRefArg
CreateInstance(),
GetValue()
The client application must call 
Release() on the returned object 
when the object is no longer 
needed.