The figure on the left illustrates the basic components that comprise a CTI -> HIS integration using the Processor Bridge and how these components fit together.

Processor Bridge

Implements the HIS Java API and translates API calls into corresponding Bridge Protocol messages.

Message Server

Handles all message publication to and from the Processor Bridge and Processor Bridge Clients.

Processor Bridge Client

Implements the client side of the Bridge Protocol.  The client initiates actions on the CTI and delivers CTI related events to the Processor Bridge using the message protocol.

CTI Integration API

Non Java API for integrating with the CTI solution.

Model

The figure shown above depicts a simplified view of how the processor bridge implements the standard HIS Java API.  There is typically a one-to-one relationship between processor bridge objects and their Java API counterparts.  The diagram also shows which processor bridge objects interact with the bridge client over the different types of communication links using the processor bridge protocol.

Object States

The objects of the Java API and subsequently their processor bridge implementations follow a specific lifecycle.  The following sections illustrate the general lifecycle of each object.

Processor Session

The session object has a single state, Logged In.  While in this state, any number of channels and channel groups may be added or removed.

Channel Group

A channel group simply tracks whether it contains channels or not.  The presence of channels will enable or disable certain features available to the agent.

Generic Channel

A channel maintains two types of state information: the log in state of the channel and the interactions associated with the channel once logged in.

Log In State

The channel can be in one of three log in states.  Inactive indicates that no agent is currently logged into the channel.  Unavailable indicates that an agent other than this session’s agent is logged into the channel making the channel unavailable to the session’s agent.  Active indicates that the session’s agent is logged into the channel.

Channel Interaction States

The interaction state of the channel is used to enable and disable the agent’s ability to log out of the channel.  An agent cannot log out of a channel with active interactions.

Generic Interaction

The basic interaction follows a simple lifecycle.  The interaction is alerting or dialing, becomes started, eventually ends, and is finally marked complete.  This lifecycle is consistent regardless of the specific type of interaction.

Telephony Interaction

A telephony interaction also tracks individual call legs within its state model.  This additional state information is tracked while the interaction is in the Has Call state.

Conversation

A conversation object manages the detailed state of each call leg.  The conversation lifecycle is the same for primary calls (both inbound and outbound) and subsequent consult calls.  At the high level, the basic state of a conversation mirrors that of the telephony interaction.

Once the call is established, the detailed state is tracked.