...
Requests the agent leg be connected.
Request
{
Code Block | ||
---|---|---|
| ||
{ "command": "session.request.incontact.agentleg.connect", |
...
"target": "<session-id>", |
...
"data": |
...
{
}
{ } } |
Success Response
{
Code Block | ||
---|---|---|
| ||
{ "command": " session.request.incontact.agentleg.connect", |
...
"target": "<session-id>", |
...
"result": "success", |
...
"data": |
...
{
}
{ } } |
Failure Response
{
Code Block | ||
---|---|---|
| ||
{ "command": "session.request.incontact.agentleg.connect", |
...
"target": "<session-id>", |
...
"result": "failure", |
...
"failure": |
...
{
{ "code": "<error-code-for-failure>", |
...
"message": "<error-message>", |
...
"context": "<stack-trace-if-applicable>" |
...
}
}, "original": |
...
<Contains the original request JSON structure>
...
{
<Contains the original request JSON structure>
}
} |
Secondary Events
If successful, a session.agentleg.connected event will be generated. Otherwise, a session.agentleg.failed event will be generated.
...
Requests the agent leg be connected.
Request
Code Block | ||
---|---|---|
| ||
{ |
...
"command": "session.request.incontact.agentleg.disconnect", |
...
"target": "<session-id>", |
...
"data": |
...
{
}
{ } } |
Success Response
{
Code Block | ||
---|---|---|
| ||
{ "command": " session.request.incontact.agentleg.disconnect", |
...
"target": "<session-id>", |
...
"result": "success", |
...
"data": |
...
{
}
{ } } |
Failure Response
{
Code Block | ||
---|---|---|
| ||
{ "command": "session.request.incontact.agentleg.disconnect", |
...
"target": "<session-id>", |
...
"result": "failure", |
...
"failure": |
...
{
{ "code": "<error-code-for-failure>", |
...
"message": "<error-message>", |
...
"context": "<stack-trace-if-applicable>" |
...
}
}, "original": |
...
<Contains the original request JSON structure>
...
{
<Contains the original request JSON structure>
}
} |
Secondary Events
If successful, a session.agentleg.disconnected event will be generated.
...
Requests a structured list of dial destinations. The destination structure is specific to Incontact. The "realtime" property controls whether or not update events will be sent to the client.
Request
Code Block | ||
---|---|---|
| ||
{ |
...
"command": "session.request.incontact.addressbook", |
...
"target": "<session-id>", |
...
"data": |
...
{
...
{ "realtime": true | false |
...
} |
...
} |
Success Response
{
"command": " session.request.incontact.addressbook",
...
"result": "success",
"data":
Code Block | ||
---|---|---|
| ||
{ |
...
"addressbooks": |
...
[
{
...
[ { "name": "<address_book_name>", |
...
"groups": |
...
[
...
[ { "name": "<group_name>", |
...
"groups": [] |
...
, "entries": [] |
...
],
...
} ], "entries": |
...
[
...
[ "name": "<entry_name>", "type": "external" | "agent" | "skill", |
...
"destinations": |
...
[
...
[ { "label": "<destination_label>", |
...
"value": "<destination_value>" |
...
]
"name": "<entry_name>",
...
} ], "properties": |
...
{
...
{ #agent_properties# |
...
"state": "<agent_state_name>" |
...
#skill_properties# |
...
"mediaType": "<skill_media_type>", |
...
#optional skill properties
...
#optional skill properties "numAvailable": <num_avail_agents>, |
...
"numUnavailable": <num_unavail_agents>, |
...
"ewt": "<estimated_wait_time>" |
...
}
]
}
]
}
} ] } ] } |
Failure Response
{
Code Block | ||
---|---|---|
| ||
{ "command": "session.request.incontact.addressbook", |
...
"target": "<session-id>", |
...
"result": "failure", |
...
"failure": |
...
{
{ "code": "<error-code-for-failure>", |
...
"message": "<error-message>", |
...
"context": "<stack-trace-if-applicable>" |
...
}
}, "original": |
...
<Contains the original request JSON structure>
{ <Contains the original request JSON structure> } } |
Secondary Events
If the real time property is true, a session.incontact.addressbook.updated event is periodically generated that contains fully updated address book information that should replace any previous information.
...
Requests that any ongoing address book real time updates stop. This should be called after requesting the address book with the real time property as true and updates are no longer required.
Request
{
Code Block | ||
---|---|---|
| ||
{ "command": "session.request.incontact.addressbook.stop", |
...
"target": "<session-id>", |
...
"data": |
...
{
}
{ } } |
Success Response
Code Block | ||
---|---|---|
| ||
{ |
...
"command": " session.request.incontact.addressbook.stop", |
...
"target": "<session-id>", |
...
"result": "success", |
...
"data": |
...
{
}
{ } } |
Failure Response
Code Block | ||
---|---|---|
| ||
{ |
...
"command": "session.request.incontact.addressbook.stop", |
...
"target": "<session-id>", |
...
"result": "failure", |
...
"failure": |
...
{
{ "code": "<error-code-for-failure>", |
...
"message": "<error-message>", |
...
"context": "<stack-trace-if-applicable>" |
...
}
}, "original": |
...
<Contains the original request JSON structure>
{ <Contains the original request JSON structure> } } |
Secondary Events
None.
channelgroup.activateall
...
The "data" property should carry any CTI specific activation parameters within the "channeloptions" array. Each channel that requires parameters should be represented by a JSON structure identifying the channel by id and any other necessary JSON properties or structure to perform the activation.
RequestRequest
Code Block | ||
---|---|---|
| ||
{ |
...
"command": "channelgroup.activateall", |
...
"target": "<session-id>.<channel-group-id>", |
...
"data": |
...
{
{ "channeloptions": |
...
[
{
[ { "id": "<channel-identifier>", |
...
"queue": "<channel-queue>" |
...
}
…
]
}
} … ] } } |
Success Response
Code Block | ||
---|---|---|
| ||
{ |
...
"command": "channelgroup.activateall", |
...
"target": "<session-id>.<channel-group-id>", |
...
"result": "success", |
...
"data": |
...
{
<Same data contents as original request>
}
{ <Same data contents as original request> } } |
Failure Response
Code Block |
---|
{
| ||
{ "command": "channelgroup.activateall", |
...
"target": "<session-id>.<channel-group-id>", |
...
"result": "failure", |
...
"failure": |
...
{
{ "code": "<error-code-for-failure>", |
...
"message": "<error-message>", |
...
"context": "<stack-trace-if-applicable>" |
...
}
}, "original": |
...
<Contains the original request JSON structure>
{ <Contains the original request JSON structure> } } |
Secondary Events
Activating the channels associated with a channel group will generate the following secondary events:·
channel.infochanged (for each associated channel If not active)
...
state.updated (channel state event, if not active)
channelgroup.deactivateall
Attempts to place all channels associated with the channel group into inactive status. Channels that are already inactive will be unaffected by this request. A failure is generated if one of the channels cannot be deactivated for some reason. Any channels that were already deactivated during this request will remain inactive after a failure but remaining channels will not be deactivated.
Request
{
Code Block | ||
---|---|---|
| ||
{ "command": "channelgroup.deactivateall", |
...
"target": "<session-id>.<channel-group-id>", |
...
"data": { } |
...
} |
Success Response
Code Block |
---|
{
| ||
{ "command": "channelgroup.deactivateall", |
...
"target": "<session-id>.<channel-group-id>", |
...
"result": "success", |
...
"data": |
...
{
<Same data contents as original request>
}
{ <Same data contents as original request> } } |
Failure Response
Code Block | ||
---|---|---|
| ||
{ |
...
"command": "channelgroup.deactivateall", |
...
"target": "<session-id>.<channel-group-id>", |
...
"result": "failure", |
...
"failure": |
...
{
{ "code": "<error-code-for-failure>", |
...
"message": "<error-message>", |
...
"context": "<stack-trace-if-applicable>" |
...
}
}, "original": |
...
<Contains the original request JSON structure>
{ <Contains the original request JSON structure> } } |
Secondary Events
Deactivating the channels associated with a channel group will generate the following secondary events:·
channel.infochanged (for each associated channel If active)
...
state.updated (channel state event, if active)
channel.activate
Attempts to place the given channel into activated status. A failure is generated if the channel cannot be activated or is already in the active state. The "data" property should carry any CTI specific activation parameters within the "channeloptions" property.
Request
{
Code Block | ||
---|---|---|
| ||
{ "command": "channel.activate", |
...
"target": "<session-id>.<channel-id>" | |
...
"<session-id>.<channel-group-id>.<channel-id>", |
...
"data": |
...
{
{ "channeloptions": |
...
{
{ "queue": "<channel-queue>" |
...
}
}
} } } |
Success Response
{
"command": "channel.activate",
...