Cisco Cisco Computer Telephony Integration Option 8.5 Reference Guide
2-3
CTI Server Message Reference Guide (Protocol Version 14) for Cisco Unified ICM/Contact Center Enterprise & Hosted
Release 8.0(1)
Chapter 2 CTI Client Application Guidelines
Side A/B Selection and TCP/IP Connections
Side A/B Selection and TCP/IP Connections
The following algorithm is suggested for establishing TCP/IP connections with the CTI Server. This
algorithm attempts to strike a balance between rapid reconnection following loss of connection and
network saturation (due to hundreds of clients attempting to connect simultaneously). The algorithm is
terminated as soon as a successful TCP/IP connection is achieved:
algorithm attempts to strike a balance between rapid reconnection following loss of connection and
network saturation (due to hundreds of clients attempting to connect simultaneously). The algorithm is
terminated as soon as a successful TCP/IP connection is achieved:
Step 1
Attempt to connect to the same side as the last successful connection.
Step 2
Attempt to connect to the opposite side.
Step 3
Generate a random integer number N between 0 and the expected number of CTI clients divided by 10.
Step 4
Wait for N seconds. This step helps avoid “rush hour” traffic when all clients at a site are reconnecting
simultaneously.
simultaneously.
Step 5
Attempt to connect to the same side as the last successful connection.
Step 6
Attempt to connect to the opposite side.
Step 7
Wait for 15 seconds.
Step 8
Attempt to connect to the same side as the last successful connection.
Step 9
Attempt to connect to the opposite side.
Step 10
Wait for 30 seconds.
Step 11
Attempt to connect to the same side as the last successful connection.
Step 12
Attempt to connect to the opposite side.
Step 13
Wait for 60 seconds.
Step 14
Attempt to connect to the same side as the last successful connection.
Step 15
Attempt to connect to the opposite side.
Step 16
Wait for 120 seconds.
Step 17
Repeat steps 14 – 16 until a connection is achieved.
Alignment of Data Elements
The messages described in this document are sent as a stream of bytes. If the CTI client application uses
data structures to represent the messages, be sure that the data structures do not have padding inserted
to align elements on particular boundaries, such as aligning 32-bit integers so that they are located on a
4-byte boundary.
data structures to represent the messages, be sure that the data structures do not have padding inserted
to align elements on particular boundaries, such as aligning 32-bit integers so that they are located on a
4-byte boundary.
Incompatible Changes to Reported Call ConnectionIDs
In the early releases of CTI Server, there was a defect in the connectionID logic that caused a call's first
connectionID to be used as the connectionID in all subsequent call event messages, even when the event
referred to a different call connection. This sometimes presented CTI clients with ambiguous call event
messages, particularly when the call involved more than two parties.
connectionID to be used as the connectionID in all subsequent call event messages, even when the event
referred to a different call connection. This sometimes presented CTI clients with ambiguous call event
messages, particularly when the call involved more than two parties.