Share Configuration Data

Note

The following process applies to application, CSQ, agent, and device configuration. For agent team data, see Share Agent Team Configuration Data.

For a client to get configuration data:

Procedure


Step 1

The client must include the CTI_SERVICE_CONFIG_EVENTS bit (0x00040000) in the ServiceRequested field of an OPEN_REQ message if the client wants configuration data. The Unified CCX CTI server does not provide configuration data to the client unless that bit is set. In the OPEN_REQ message, the client must also include the configuration message mask indicating the type of configuration data that it wants.

The client cannot send a configuration request before the server is online. The status of the server is shown in the OPEN_CONF reply to the OPEN_REQ message or in a SYSTEM_EVENT message.

Step 2

The client sends a CONFIG_REQUEST_KEY_EVENT message to the server to request a set of current configuration keys (see CONFIG_REQUEST_KEY_EVENT).

Step 3

In response to the CONFIG_REQUEST_KEY_EVENT message, the server replies with a CONFIG_KEY_EVENT message containing the requested keys (see CONFIG_KEY_EVENT).

Step 4

Based on the keys returned in the CONFIG_KEY_EVENT message, the client decides if it needs an initial snapshot of the configuration.

Step 5

If the client needs an initial snapshot of the configuration, it sends the CONFIG_REQUEST_EVENT message with the requested configuration mask. Otherwise, the client sends this message with the configuration mask set to zero, indicating that the client configuration is in sync with the server configuration and that it only needs configuration updates.

Step 6

If in Step 5, the initial snapshot of the configuration is requested, the server sends the initial snapshot of the configuration data to the client in a CONFIG_BEGIN_EVENT and CONFIG_END_EVENT block of messages. In between these two messages, the server sends the appropriate message for the type of data requested (see CONFIG_BEGIN_EVENT and CONFIG_END_EVENT).

If all the data does not fit in one message, the server sends multiple messages of the same type. In this case, each data message is called a record. The whole transaction from the begin event to the end event is called a data block.

The server sends configuration data messages in the following order:

CSQ data

Application data

Agent data

Device data

However, the order in which the client receives the data is irrelevant. The client may receive the data messages in any order depending on the timing and number of messages sent. What is important is that all the messages between a begin and end message contain consistent data. That is, for example, if a CSQ message is sent with an Agent message in the same data block, the agent referenced belongs to that CSQ.

Step 7

Configuration updates performed in the Unified CCX Administration web page are sent to clients in a CONFIG_BEGIN_EVENT and CONFIG_END_EVENT block of messages as well.


Example

Figure 1 illustrates the preceding steps

Configuration Message Flow


What to do next

Note

During an initial configuration upload, if the server needs to break up the configuration into multiple CONFIG_BEGIN_EVENT/CONFIG_END_EVENT messages, a status 5 is listed in the CONFIG_END_EVENT message until all the data is sent. A status of 0 is included in the final CONFIG_END_EVENT message to indicate a successful data upload.