Cisco Cisco Computer Telephony Integration OS 8.5 Guide Du Développeur
2-3
Cisco ICM Software CTI OS Developer’s Guide Release 6.0(0)
Chapter 2 CTI OS Client Interface Library Architecture
Client Interface Library 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 sockets messages to the CTI OS Server, where it connects to a
server-side connection layer.
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 sockets 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.
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.
Service Layer
The Service layer sits between the connection layer and the Object Interface layer.
Its main purpose is to translate between 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.
Its main purpose is to translate between 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.
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.