Cisco Cisco Computer Telephony Integration OS 8.5 Guida Dello Sviluppatore
C H A P T E R
10-1
CTI OS Developer’s Guide for Cisco Unified ICM/Contact Center Enterprise & Hosted
Release 7.5(1)
10
Call Object
The Call object provides developers using the CTIOS Client Interface Library with an interface to Call
behavior and control. The Call object exposes methods to perform all call behaviors, such as answering,
hanging up, or transferring a call. The Call object represents one call connection of a call. For a call
between two parties there are two call connections, and thus there would be two distinct CIL Call
objects.
behavior and control. The Call object exposes methods to perform all call behaviors, such as answering,
hanging up, or transferring a call. The Call object represents one call connection of a call. For a call
between two parties there are two call connections, and thus there would be two distinct CIL Call
objects.
The object stores specific call information as properties, including the ICMEnterpriseUniqueID, ANI,
DNIS, Call variables, and ExpandedCallContext variables. The Call object is created in response to call
events received at the CIL. The Call object’s properties and state will be updated throughout the lifetime
of the call connection.
DNIS, Call variables, and ExpandedCallContext variables. The Call object is created in response to call
events received at the CIL. The Call object’s properties and state will be updated throughout the lifetime
of the call connection.
See
for an explanation of accessing Call and ECC variables via
the GetValue mechanism.
Current Call Concept
The Client Interface Library uses the concept of a Current Call. The Current Call concept is used by the
CTI OS Toolkit as a way for the controls and the application to communicate with each other regarding
which call is currently selected and should be the one to act upon. For example, if an agent has a call and
receives a new Ringing call, he might select the Talking call on the grid. At this click,
CallAppearanceMgr control calls SetCurrentCall() to make this call the Current Call. When the agent
clicks the Hold control, this control would call GetCurrentCall() to obtain a call pointer through which
to call the Hold() method. The agent might then select the Ringing call, which would again cause the
CallAppearanceMgr control to call SetCurrentCall() to make this new call the current call. Then, when
the agent clicks the Answer control, this control would again call GetCurrentCall() to obtain a call
pointer through which to call the Answer() method.
CTI OS Toolkit as a way for the controls and the application to communicate with each other regarding
which call is currently selected and should be the one to act upon. For example, if an agent has a call and
receives a new Ringing call, he might select the Talking call on the grid. At this click,
CallAppearanceMgr control calls SetCurrentCall() to make this call the Current Call. When the agent
clicks the Hold control, this control would call GetCurrentCall() to obtain a call pointer through which
to call the Hold() method. The agent might then select the Ringing call, which would again cause the
CallAppearanceMgr control to call SetCurrentCall() to make this new call the current call. Then, when
the agent clicks the Answer control, this control would again call GetCurrentCall() to obtain a call
pointer through which to call the Answer() method.
If your application uses Cisco’s out-of-the-box button controls (see
), but not the CallAppearanceMgr grid control, you will need to use SetCurrentCall() and
GetCurrentCall() in order for the button controls to enable and disable correctly when switching between
multiple calls.
multiple calls.
Note
The CurrentCall concept does not place any limitations on call control of non-current calls. All of the
call behaviors implemented by method calls on the Call object will work on any call object that is
available at the CIL, even if it is not the CurrentCall.
call behaviors implemented by method calls on the Call object will work on any call object that is
available at the CIL, even if it is not the CurrentCall.