Cisco Cisco Computer Telephony Integration Option 9.0 Developer's Guide
3-14
CTI Server Message Reference Guide (Protocol Version 9) Release 7.0(0)
Chapter 3 Messaging Conventions
Call Event Data
Event Cause Codes
Most Call Event messages include an EventCause fixed field that may provide a reason for the
occurrence of the event. In most cases no event cause information is supplied (CEC_NONE).
occurrence of the event. In most cases no event cause information is supplied (CEC_NONE).
For a list of EventCause codes that may be reported, see
Call Identification
CTI Server uses the CSTA method of identifying calls. A numeric ConnectionCallID identifies a call;
each connection of a device to that call is identified by a ConnectionDeviceID string and an enumerated
ConnectionDeviceIDType value (see
each connection of a device to that call is identified by a ConnectionDeviceID string and an enumerated
ConnectionDeviceIDType value (see
). All call related messages identify the
ConnectionCallID as well as the ConnectionDeviceIDType and ConnectionDeviceID of the call
connection that is the subject of the event.
connection that is the subject of the event.
Figure 3-3
Sample CSTA Call/Device/ConnectionID Values
TRUNK
1001
DEVICE
5001
CallID
100
ConnectionID: “0”
Type: DYNAMIC
ConnectionID: “5001.0”
Type: STATIC
A ConnectionDeviceID uniquely identifies a call connection. However, it cannot directly identify the
connected device; use other event message fields for that purpose. In some cases, the
ConnectionDeviceID may simply be the ID of the connected device, the connected deviceID with
additional identifying data included, or a string that does not contain the deviceID at all. A valid CTI
Server application can make no assumption about the content or format of a ConnectionDeviceID.
connected device; use other event message fields for that purpose. In some cases, the
ConnectionDeviceID may simply be the ID of the connected device, the connected deviceID with
additional identifying data included, or a string that does not contain the deviceID at all. A valid CTI
Server application can make no assumption about the content or format of a ConnectionDeviceID.
Occasionally, both the ConnectionDeviceID and the numeric ConnectionCallID are required in order to
properly identify the subject call. This occurs when the ACD uses the ConnectionCallID value from an
ACD call as the ConnectionCallID value for any related consultative calls. This poses two particularly
significant requirements for applications: they must be able to keep track of two calls with the same
numeric ConnectionCallID value, and they must be able to decide which of the two calls is being
referenced by any given call event message. These requirements are relatively easy to implement by
keeping track of the ConnectionDeviceIDs associated with each call. The call that has a
ConnectionDeviceID that matches the ConnectionDeviceID provided in the call event message is the call
that is the subject of the event. The only difficult case is determining which call is the subject when a
new call connection is created. For this case, the following rule applies:
properly identify the subject call. This occurs when the ACD uses the ConnectionCallID value from an
ACD call as the ConnectionCallID value for any related consultative calls. This poses two particularly
significant requirements for applications: they must be able to keep track of two calls with the same
numeric ConnectionCallID value, and they must be able to decide which of the two calls is being
referenced by any given call event message. These requirements are relatively easy to implement by
keeping track of the ConnectionDeviceIDs associated with each call. The call that has a
ConnectionDeviceID that matches the ConnectionDeviceID provided in the call event message is the call
that is the subject of the event. The only difficult case is determining which call is the subject when a
new call connection is created. For this case, the following rule applies:
When more than one call with the same ConnectionCallID value exists, the connection being created
by a CALL_ESTABLISHED_ EVENT shall apply to the call that does not yet have a destination
connection established.
by a CALL_ESTABLISHED_ EVENT shall apply to the call that does not yet have a destination
connection established.