Jump to: navigation, search

Supervisor Monitoring

This operation is part of the Chat API section of the Web Services API.

Overview

Web Services API provides supervisor functions for chat. Supervisors can subscribe to one or all target agent's chats and join the next chat session with a specified visibility mode.

One supervisor can monitor multiple agents simultaneously and handle several chat sessions at the same time.

Monitoring can be cancelled by the supervisor or is ended on logout. If an agent being monitored is in a conference or consultation and leaves the session, the supervisor should leave chat manually.

Supervisor function configuration

The htcc option should be present in options to enable supervisor role.

[htcc]
roles=supervisor

Supervisor capabilities

A supervisor's capabilities to control chat sessions depends on the supervisor's current monitoring mode.

Monitor Mode Coach Mode BargeIn Mode

Notifications

Chat is started

When an agent being monitored accepts a chat, the supervisor will immediately be added to the chat and receive ParticipantsUpdated, StatusChange and MessageLogUpdated notifications (see Accept).

{
    "chat": {
        "receivedDate": "2014-05-0511:08:45.000-0700",
        "chatType": "Inbound",
        "capabilities": [
            "Leave",
            "SetInFocus",
            "SetDisposition",
            "AttachUserData",
            "DeleteUserData",
            "UpdateUserData",
            "Transfer",
            "Invite",
            "Consult",
            "SendToAgents",
            "SendStartTypingToAgentsNotification",
            "SendStopTypingToAgentsNotification",
            "SwitchToMonitor",
            "SwitchBargeIn"
        ],
        "uri": "http://10.10.15.212:9090/api/v2/chats/0001Da9PFC93000S",
        "state": "Chatting",
        "participants": [
            {
                "nickname": "test_agent",
                "type": "Agent",
                "uri": "http://10.10.15.212:9090/api/v2/users/90cc5439ff6848748e5e67811273f266",
                "visibility": "All",
                "participantId": "00AF5367D3D0000A"
            },
            {
                "nickname": "test_supervisor",
                "type": "Agent",
                "uri": "http://10.10.15.212:9090/api/v2/users/991a4bece8dd4184a93e98ad429694f6",
                "visibility": "Agents",
                "participantId": "00AF5367D3D0000B"
            },
            {
                "nickname": "test_clientL",
                "type": "Customer",
                "participantId": "00AF5367D3AD0008",
                "visibility": "All"
            }
        ],
        "id": "0001Da9PFC93000S"
    },
    "notificationType": "ParticipantsUpdated",
    "messageType": "ChatStateChangeMessage"
}
{
    "chat": {
        "receivedDate": "2014-05-0511:08:45.000-0700",
        "chatType": "Inbound",
        "capabilities": [
            "Leave",
            "SetInFocus",
            "SetDisposition",
            "AttachUserData",
            "DeleteUserData",
            "UpdateUserData",
            "Transfer",
            "Invite",
            "Consult",
            "SendToAgents",
            "SendStartTypingToAgentsNotification",
            "SendStopTypingToAgentsNotification",
            "SwitchToMonitor",
            "SwitchBargeIn"
        ],
        "uri": "http://10.10.15.212:9090/api/v2/chats/0001Da9PFC93000S",
        "state": "Chatting",
        "participants": [
            {
                "nickname": "test_agent",
                "type": "Agent",
                "uri": "http://10.10.15.212:9090/api/v2/users/90cc5439ff6848748e5e67811273f266",
                "visibility": "All",
                "participantId": "00AF5367D3D0000A"
            },
            {
                "nickname": "test_supervisor",
                "type": "Agent",
                "uri": "http://10.10.15.212:9090/api/v2/users/991a4bece8dd4184a93e98ad429694f6",
                "visibility": "Agents",
                "participantId": "00AF5367D3D0000B"
            },
            {
                "nickname": "test_clientL",
                "type": "Customer",
                "participantId": "00AF5367D3AD0008",
                "visibility": "All"
            }
        ],
        "id": "0001Da9PFC93000S"
    },
    "notificationType": "StatusChange",
    "messageType": "ChatStateChangeMessage"
}
{
    "messages": [
        {
            "index": 1,
            "from": {
                "nickname": "test_clientL",
                "type": "Customer",
                "participantId": "00AF5367D3AD0008",
                "visibility": "All"
            },
            "timestamp": "2014-05-0511: 08: 46.000-0700",
            "visibility": "All",
            "type": "ParticipantJoined",
            "timestampSeconds": 1399313326000L
        },
        {
            "index": 2,
            "from": {
                "nickname": "test_agent",
                "type": "Agent",
                "uri": "http://10.10.15.212:9090/api/v2/users/90cc5439ff6848748e5e67811273f266",
                "visibility": "All",
                "participantId": "00AF5367D3D0000A"
            },
            "timestamp": "2014-05-0511: 09: 20.000-0700",
            "visibility": "All",
            "type": "ParticipantJoined",
            "timestampSeconds": 1399313360000L
        },
        {
            "index": 3,
            "from": {
                "nickname": "test_supervisor",
                "type": "Agent",
                "uri": "http://10.10.15.212:9090/api/v2/users/991a4bece8dd4184a93e98ad429694f6",
                "visibility": "Agents",
                "participantId": "00AF5367D3D0000B"
            },
            "timestamp": "2014-05-0511: 09: 20.000-0700",
            "visibility": "Agents",
            "type": "ParticipantJoined",
            "timestampSeconds": 1399313360000L
        }
    ],
    "notificationType": "NewMessages",
    "messageType": "MessageLogUpdated",
    "chatUri": "http://10.10.15.212:9090/api/v2/chats/0001Da9PFC93000S"
}

Chat is completed

When no agents remain in a chat and the chat is completed or placed in a queue, the supervisor will receive StateChanged notification with chat state Revoked.

{
    "chat": {
        "receivedDate": "2014-05-0511:09:45.000-0700",
        "participants": [
 
        ],
        "capabilities": [
 
        ],
        "uri": "http://10.10.15.212:9090/api/v2/chats/0001Da9PFC93000S",
        "state": "Revoked",
        "id": "0001Da9PFC93000S"
    },
    "notificationType": "StatusChange",
    "messageType": "ChatStateChangeMessage"
}

Feedback

Comment on this article:

blog comments powered by Disqus
This page was last modified on March 25, 2016, at 10:23.