Jump to: navigation, search
(ChatStateChangeMessage)
Line 18: Line 18:
 
| data.notificationType
 
| data.notificationType
 
| This property further identifies the type of notification and can have one of the following values:  
 
| This property further identifies the type of notification and can have one of the following values:  
*StatusChange — The status of the call has changed.
+
*StatusChange — The status of the chat has changed.
*ParticipantsUpdated — The call participants have changed.
+
*ParticipantsUpdated — The chat participants have changed.
*AttachedDataChanged — The call data has changed.
+
*PropertiesUpdated — The chat data has changed.
*DtmfSent — This is sent as confirmation that the SendDtmf operation was successful.
+
*Error — This is sent when an operation on the chat resource fails.
*CallRecordingStateChange — The state of call recording has changed.
 
*MonitoredUserMutedStateChange — The monitored user muted state has changed.
 
 
|-
 
|-
 
| data.chat
 
| data.chat
Line 30: Line 28:
 
| channel
 
| channel
 
| The topic to which the message was published.
 
| The topic to which the message was published.
|}
 
 
'''notificationType'''
 
The notificationType property can have one of the following values:
 
{|
 
! Type
 
! Description
 
|-
 
| StatusChange
 
| The status of the chat has changed.
 
|-
 
| ParticipantsUpdated
 
| The chat participants have changed.
 
|-
 
| PropertiesUpdated
 
| The chat data has changed.
 
|-
 
| Error
 
| This is sent when an operation on chat resource did not succeed.
 
 
|}
 
|}
  

Revision as of 16:14, February 10, 2016

CometD notifications

You can subscribe to the /v2/me/chats topic to receive CometD notifications for the Chat API. This topic provides messages related to chats, including changes to chat state, updates to chat participant information, updates to chat data, and updates to chat transcript. It supports the following message types:

ChatStateChangeMessage

Property Description
data The data element is present in all CometD notifications and is the root JSON element. You can use data.messageType to identify the message and determine what other properties should be present.
data.messageType This property identifies the message type.
data.notificationType This property further identifies the type of notification and can have one of the following values:
  • StatusChange — The status of the chat has changed.
  • ParticipantsUpdated — The chat participants have changed.
  • PropertiesUpdated — The chat data has changed.
  • Error — This is sent when an operation on the chat resource fails.
data.chat A chat resource with the updated state and capabilities.
channel The topic to which the message was published.

Example

{  
   "data":{  
      "notificationType":"PropertiesUpdated",
      "messageType":"ChatStateChangeMessage",
      "chat":{  
         "userData":{  
            "key1":"value1",
            "key2":"value2"
         },
         "state":"Chatting",
         "capabilities":[  
            "Transfer",
            "Leave",
            "Invite",
            "Consult",
            "SetInFocus",
            "SetDisposition",
            "AttachUserData",
            "DeleteUserData",
            "UpdateUserData",
            "Complete",
            "SendMessage",
            "SendStartTypingNotification",
            "SendStopTypingNotification"
         ],
         "uri":"http://localhost:8080/api/v2/chats/0000Wa9CAM6W00J",
         "participants":[  
            {  
               "nickname":"test_consult_clientL",
               "type":"Customer",
               "participantId":"007352CE982D031B"
            },
            {  
               "nickname":"TestName",
               "type":"Agent",
               "participantId":"007352CE984F0321"
            }
         ],
         "id":"0000Wa9CAM6W00J"
      },
      "referenceId":83
   }
}

MessageLogUpdated

Property Description
data The data element is present in all CometD notifications and is the root JSON element. The data.messageType property can always be used to identify the message and determine what other properties should be present.
data.messageType This property identifies the message type and will have a value of MessageLogUpdated.
data.notificationType This property further identifies the type of notification and will have a value of NewMessages.
data.messages A list of messages/notifications that were exchanged in chat.
channel The topic to which the message was published.

Example

{  
   "data":{  
      "notificationType":"NewMessages",
      "messageType":"MessageLogUpdated",
      "messages":[  
         {  
            "index":3,
            "from":{  
               "nickname":"TestName",
               "type":"Agent",
               "participantId":"007352CE72D50290"
            },
            "text":"How may I help you?",
            "visibility":"All",
            "timestamp":"2014-01-09 11:58:12.035+0200",
            "type":"Text",
            "timestampSeconds":1389261492035            
         },
         {  
            "index":3,
            "from":{  
               "nickname":"TestName",
               "type":"Agent",
               "participantId":"007352CE72D50290"
            },
            "text":"Are you still there?",
            "visibility":"All",
            "timestamp":"2014-01-09 11:58:12.047+0200",
            "type":"Text",
            "timestampSeconds":1389261492047            
         }
      ],
      "chatUri":"http://localhost:8080/api/v2/chats/0000Wa9CAM6W00FN"
   }
}
Comments or questions about this documentation? Contact us for support!