Cisco Cisco Computer Telephony Integration Option 9.0 Entwickleranleitung
2-2
CTI OS Developer’s Guide for Cisco Unified Contact Center Enterprise
Release 8.5(1)
Chapter 2 CTI OS Client Interface Library Architecture
Client Interface Library Architecture
Figure 2-2
Client Interface Library Three-Tiered Architecture
Connection Layer
The Connection layer provides basic communication and connection recovery facilities to the CIL. It
creates the foundation, or bottom tier of the CIL’s layered architecture, and decouples the higher-level
event and message architecture from the low-level communication link (TCP/IP sockets). The
Connection layer sends and receives socket messages to the CTI OS Server, where it connects to a
server-side connection layer.
creates the foundation, or bottom tier of the CIL’s layered architecture, and decouples the higher-level
event and message architecture from the low-level communication link (TCP/IP sockets). The
Connection layer sends and receives socket messages to the CTI OS Server, where it connects to a
server-side connection layer.
In addition to basic communication facilities, the connection layer provides fault tolerance to the CIL by
automatically detecting and recovering from a variety of network failures. The Connection layer uses a
heartbeat-by-exception mechanism, sending heartbeats only when the connection has been silent for
some period of time to detect network-level failures.
automatically detecting and recovering from a variety of network failures. The Connection layer uses a
heartbeat-by-exception mechanism, sending heartbeats only when the connection has been silent for
some period of time to detect network-level failures.
Service Layer
The Service layer sits between the connection layer and the Object Interface layer. Its main purpose is
to translate the low-level network packets sent and received by the connection layer and the high-level
command and event messages used in the Object Interface layer. The Service layer implements a generic
message serialization protocol which translates key-value pairs into a byte stream for network
transmission and deserializes the messages back to key-value pairs on the receiving side. This generic
serialization mechanism ensures forward-compatibility, since future enhancements to the message set
will not require any changes at the Connection or Service layers.
to translate the low-level network packets sent and received by the connection layer and the high-level
command and event messages used in the Object Interface layer. The Service layer implements a generic
message serialization protocol which translates key-value pairs into a byte stream for network
transmission and deserializes the messages back to key-value pairs on the receiving side. This generic
serialization mechanism ensures forward-compatibility, since future enhancements to the message set
will not require any changes at the Connection or Service layers.
A secondary purpose of the Service layer is to isolate the client from the network, such that network
issues do not block the client and vice versa. This is done via a multi-threading model which allows
user-program execution to continue without having to ‘block’ on network message sending or receiving.
This prevents client applications from getting ‘stuck’ when a message is not immediately dispatched
across the network, and allows messages to be received from the network even if the client application
is temporarily blocked.
issues do not block the client and vice versa. This is done via a multi-threading model which allows
user-program execution to continue without having to ‘block’ on network message sending or receiving.
This prevents client applications from getting ‘stuck’ when a message is not immediately dispatched
across the network, and allows messages to be received from the network even if the client application
is temporarily blocked.