Contents

Managing Client Control of Calls

This chapter includes the following topics.

What is a Call-Control Message?

Call-control (also called "client-control") messages are from client applications requesting, establishing, answering, controlling, or terminating calls on behalf of a specified agent phone and manipulating the telephony features associated with the agent’s phone.

These messages invoke a message response from the server. Consequently the messages are paired request/response messages. A request message for the desired control action is sent, and the outcome of the request is indicated by the type of response message that is received.

Depending on the specifics of the request, as much as 10 or 15 seconds might elapse before the response message is returned. A successfully executed request is indicated by the corresponding control-action confirmation message, while an unsuccessful request is indicated by a CONTROL_FAILURE_CONF message.

You can use call-control messages to do the following:

  • Initiate a new call.

  • Answer a call.

  • Drop a call.

  • Put a call on hold.

  • Take back a call from the hold state.

  • Put one call on hold and answer another call.

  • Drop the connection to a consult agent and reconnect to the original call.

  • Initiate a call transfer operation.

  • Initiate a conference operation.

  • Transmit Dual Tone Multi-Frequency (DTMF) tones, as for example, to enter a phone number or an account number.

The Call-Control Message Flow

There is no specified order to the flow of call-control messages.

Unsolicited call or agent event messages that are caused by a client request may be received before or after the request confirmation message. Figure 1 illustrates the general call-control message flow. In this example, the messages control the agent state.

Figure 1. Call-Control Message Flow



Call-Control Message Summary Descriptions

Figure 1 lists the call-control messages in the Unified CCX CTI protocol. See Message Type Definitions for each message definition.

Table 1 Call-Control Message List

Message

Purpose

CONTROL_​FAILURE_​CONF

Indicates that the previously requested control-service function identified by the given invokeID was unsuccessful.

QUERY_​DEVICE_​INFO_​REQ

Allows a client to retrieve general information about a specified device.

QUERY_​DEVICE_​INFO_​CONF

Confirms the successful completion of the QUERY_DEVICE_INFO_REQ message.

ALTERNATE_​CALL_​REQ

Allows a client to request the combined action of placing an active call on hold and then either retrieving a previously held call or answering an alerting call at the same device.

ALTERNATE_​CALL_​CONF

Confirms successful completion of the ALTERNATE_CALL_REQ message.

ANSWER_​CALL_​REQ

Allows a client to connect to an alerting call at the device that is alerting.

ANSWER_​CALL_​CONF

Confirms the successful completion of the ANSWER_CALL_REQ message.

CLEAR_​CALL_​REQ

Allows a client to release all devices from the specified call without regard to the number of other call parties.

CLEAR_​CALL_​CONF

Confirms the successful completion of the CLEAR_CALL_REQ message.

CLEAR_​CONNECTION_​REQ

Allows a client to release a specific device connection from the designated call.

CLEAR_​CONNECTION_​CONF

Confirms the successful completion of the CLEAR_CONNECTION_REQ message.

CONFERENCE_​CALL_​REQ

Allows a client to conference an existing held call with another active call.

CONFERENCE_​CALL_​CONF

Confirms the successful completion of the CONFERENCE_CALL_REQ message.

CONSULT_​CALL_​REQ

Allows the client to request the combined action of placing an active call on hold and then making a new call.

CONSULT_​CALL_​CONF

Confirms the successful completion of the CONSULT_CALL_REQ message.

HOLD_​CALL_​REQ

Allows a client to put an existing call connection into the held state.

HOLD_​CALL_​CONF

Confirms the successful completion of the HOLD_CALL_REQ message.

MAKE_​CALL_​REQ

Allows a client to initiate a call between two devices.

MAKE_​CALL_​CONF

Confirms the successful completion of the MAKE_CALL_REQ message.

RETRIEVE_​CALL_​REQ

Allows a client to retrieve an existing held call.

RETRIEVE_​CALL_​CONF

Confirms the successful completion of the RETRIEVE_CALL_REQ message.

TRANSFER_​CALL_​REQ

Allows a client to transfer a held call with an active call at the same device.

TRANSFER_​CALL_​CONF

Confirms the successful completion of the TRANSFER_CALL_REQ message.

SNAPSHOT_​CALL_​REQ

Allows a client to retrieve information on a specified call.

SNAPSHOT_​CALL_​CONF

Confirms the successful completion of the SNAPSHOT_CALL_REQ message.

SNAPSHOT_​DEVICE_​REQ

Allows a client to retrieve information on a specified device.

SNAPSHOT_​DEVICE_​CONF

Confirms the successful completion of the SNAPSHOT_DEVICE_REQ message.

SEND_​DTMF_​SIGNAL_​REQ

Allows a client to have the server transmit a sequence of DTMF tones on behalf of a call party.

SEND_​DTMF_​SIGNAL_​CONF

Confirms the successful completion of the SEND_DTMF_SIGNAL_REQ message.

BAD_​CALL_​REQ

Allows a client to notify the server of the bad quality of a call.

BAD_​CALL_​CONF

Confirms the successful completion of the BAD_CALL_REQ message.


Managing Client Control of Calls

Managing Client Control of Calls

This chapter includes the following topics.

What is a Call-Control Message?

Call-control (also called "client-control") messages are from client applications requesting, establishing, answering, controlling, or terminating calls on behalf of a specified agent phone and manipulating the telephony features associated with the agent’s phone.

These messages invoke a message response from the server. Consequently the messages are paired request/response messages. A request message for the desired control action is sent, and the outcome of the request is indicated by the type of response message that is received.

Depending on the specifics of the request, as much as 10 or 15 seconds might elapse before the response message is returned. A successfully executed request is indicated by the corresponding control-action confirmation message, while an unsuccessful request is indicated by a CONTROL_FAILURE_CONF message.

You can use call-control messages to do the following:

  • Initiate a new call.

  • Answer a call.

  • Drop a call.

  • Put a call on hold.

  • Take back a call from the hold state.

  • Put one call on hold and answer another call.

  • Drop the connection to a consult agent and reconnect to the original call.

  • Initiate a call transfer operation.

  • Initiate a conference operation.

  • Transmit Dual Tone Multi-Frequency (DTMF) tones, as for example, to enter a phone number or an account number.

The Call-Control Message Flow

There is no specified order to the flow of call-control messages.

Unsolicited call or agent event messages that are caused by a client request may be received before or after the request confirmation message. Figure 1 illustrates the general call-control message flow. In this example, the messages control the agent state.

Figure 1. Call-Control Message Flow



Call-Control Message Summary Descriptions

Figure 1 lists the call-control messages in the Unified CCX CTI protocol. See Message Type Definitions for each message definition.

Table 1 Call-Control Message List

Message

Purpose

CONTROL_​FAILURE_​CONF

Indicates that the previously requested control-service function identified by the given invokeID was unsuccessful.

QUERY_​DEVICE_​INFO_​REQ

Allows a client to retrieve general information about a specified device.

QUERY_​DEVICE_​INFO_​CONF

Confirms the successful completion of the QUERY_DEVICE_INFO_REQ message.

ALTERNATE_​CALL_​REQ

Allows a client to request the combined action of placing an active call on hold and then either retrieving a previously held call or answering an alerting call at the same device.

ALTERNATE_​CALL_​CONF

Confirms successful completion of the ALTERNATE_CALL_REQ message.

ANSWER_​CALL_​REQ

Allows a client to connect to an alerting call at the device that is alerting.

ANSWER_​CALL_​CONF

Confirms the successful completion of the ANSWER_CALL_REQ message.

CLEAR_​CALL_​REQ

Allows a client to release all devices from the specified call without regard to the number of other call parties.

CLEAR_​CALL_​CONF

Confirms the successful completion of the CLEAR_CALL_REQ message.

CLEAR_​CONNECTION_​REQ

Allows a client to release a specific device connection from the designated call.

CLEAR_​CONNECTION_​CONF

Confirms the successful completion of the CLEAR_CONNECTION_REQ message.

CONFERENCE_​CALL_​REQ

Allows a client to conference an existing held call with another active call.

CONFERENCE_​CALL_​CONF

Confirms the successful completion of the CONFERENCE_CALL_REQ message.

CONSULT_​CALL_​REQ

Allows the client to request the combined action of placing an active call on hold and then making a new call.

CONSULT_​CALL_​CONF

Confirms the successful completion of the CONSULT_CALL_REQ message.

HOLD_​CALL_​REQ

Allows a client to put an existing call connection into the held state.

HOLD_​CALL_​CONF

Confirms the successful completion of the HOLD_CALL_REQ message.

MAKE_​CALL_​REQ

Allows a client to initiate a call between two devices.

MAKE_​CALL_​CONF

Confirms the successful completion of the MAKE_CALL_REQ message.

RETRIEVE_​CALL_​REQ

Allows a client to retrieve an existing held call.

RETRIEVE_​CALL_​CONF

Confirms the successful completion of the RETRIEVE_CALL_REQ message.

TRANSFER_​CALL_​REQ

Allows a client to transfer a held call with an active call at the same device.

TRANSFER_​CALL_​CONF

Confirms the successful completion of the TRANSFER_CALL_REQ message.

SNAPSHOT_​CALL_​REQ

Allows a client to retrieve information on a specified call.

SNAPSHOT_​CALL_​CONF

Confirms the successful completion of the SNAPSHOT_CALL_REQ message.

SNAPSHOT_​DEVICE_​REQ

Allows a client to retrieve information on a specified device.

SNAPSHOT_​DEVICE_​CONF

Confirms the successful completion of the SNAPSHOT_DEVICE_REQ message.

SEND_​DTMF_​SIGNAL_​REQ

Allows a client to have the server transmit a sequence of DTMF tones on behalf of a call party.

SEND_​DTMF_​SIGNAL_​CONF

Confirms the successful completion of the SEND_DTMF_SIGNAL_REQ message.

BAD_​CALL_​REQ

Allows a client to notify the server of the bad quality of a call.

BAD_​CALL_​CONF

Confirms the successful completion of the BAD_CALL_REQ message.