Interactions On Chat Channel
Contents
The following operations are available:
Operation Name | HTTP Operation | Description | Type | Permissions |
---|---|---|---|---|
Accept | POST | This operation can be performed after a new interaction notification arrives. Accepting an interaction allows agents to start working on it. | Chat Specific | Agent |
Reject | POST | This operation can be performed after a new interaction notification arrives. Rejecting an interaction allows an agent the opportunity to work on a different one. | General Interaction | Agent |
InviteUser | POST | This operation allows the agent to initiate a conference with another agent on a specific interaction, allowing the two agents to work on the same interaction simultaneously. To leave the conference, agents must
make a LeaveConference request. This functionality is limited to conferencing. Monitoring and coaching functionality is not available. |
Chat Specific | Agent |
EndChatSession | POST | This operation ends a chat session, but keeps the interaction alive for the agent to do 'after-call' work (for example, update attached data). The interaction can be completed by the Complete call.
Note: Calling Complete on an interaction with an active chat session will end the chat session AND complete the interaction. |
Chat Specific | Agent |
Send | POST | This operation can be performed whenever an agent wants to send a message to other chat participants. | Chat Specific | Agent |
SendStartTypingNotification | POST | This operation can be performed to send notifications to other chat participants that the agent has started typing (for example, 'agent typing'). | Chat Specific | Agent |
SendStopTypingNotification | POST | This operation can be performed to send notifications to other chat participants that the agent has stopped typing. | Chat Specific | Agent |
SingleStepTransfer | POST | This operation can be performed while working on an interaction. The interaction can be transferred to another agent or to a group of agents associated with a skill. | General Interaction | Agent |
Complete | POST | This operation can be performed after an agent has finished working on an interaction. | General Interaction | Agent |
RequestChatHistory | POST | This operation can be performed to get the chat history. Only agents who are participating in the chat can execute this operation. | Chat Specific | Agent |
LeaveConference | POST | This operation allows the agent to leave a currently active conference. When agents leave a conference, the last remaining agent retains ownership of the interaction. | Chat Specific | Agent |
Accept
After successfully executing this operation, a cometD notification will come with complete chat history up until this point.
HTTP Request
POST on /me/interactions/{id}
{ "operationName":"Accept", "nickname":agent-nickname-to-be-displayed-in-chat }
HTTP Response
Success
{ "statusCode": 0 }
Failure
{ "statusCode": an integer value above 0, "statusMessage":details }
For details on the statusCode value, please refer to the All Methods sub-section of the Return Values section.
InviteUser
This operation allows the agent to initiate a conference with another agent on a specific interaction, allowing the two agents to work on the same interaction simultaneously. To leave the conference, agents must make a LeaveConference request. This functionality is limited to conferencing. Monitoring and coaching functionality is not available. Further details can be found within the specific media topic.
HTTP Request
POST on /me/interactions/{id}
{ "operationName":"InviteUser", "agentId":a unique Agent identifier }
HTTP Response
Success
{ "status":"ok" }
Failure
{ "status": "error", "errorDescription":details }
EndChatSession
This operation ends a chat session, but keeps the interaction alive for the agent to do 'after-call' work (for example, update attached data). The interaction can be completed by the Complete call. Note: Calling Complete on an interaction with an active chat session will end the chat session AND complete the interaction.
HTTP Request
POST on /me/interactions/{id}
{ "operationName":"EndChatSession" }
HTTP Response
Success
{ "status":"ok" }
Failure
{ "status": "error", "errorDescription":details }
Send
This operation can be performed whenever an agent wants to send a message to other chat participants.
HTTP Request
POST on /me/interactions/{id}
{ "operationName":"SendMessage", "text":string-representation-of-text }
HTTP Response
Success
{ "statusCode": 0 }
Failure
{ "statusCode": an integer value above 0, "statusMessage":details }
For details on the statusCode value, please refer to the All Methods sub-section of the Return Values section.
SendStartTypingNotification
This operation can be performed to send notifications to other chat participants that the agent has started typing (for example, 'agent typing').
HTTP Request
POST on /me/interactions/{id}
{ "operationName":"SendStartTypingNotification" }
HTTP Response
Success
{ "statusCode": 0 }
Failure
{ "statusCode": an integer value above 0, "statusMessage":details }
For details on the statusCode value, please refer to the All Methods sub-section of the Return Values section.
SendStopTypingNotification
This operation can be performed to send notifications to other chat participants that the agent has stopped typing.
HTTP Request
POST on /me/interactions/{id}
{ "operationName":"SendStopTypingNotification" }
HTTP Response
Success
{ "statusCode": 0 }
Failure
{ "statusCode": an integer value above 0, "statusMessage":details }
For details on the statusCode value, please refer to the All Methods sub-section of the Return Values section.
RequestChatHistory
After this request is received, the chat history will be sent via CometD notification.
HTTP Request
POST on /me/interactions/{id}
{ "operationName":"RequestChatHistory", "eventId", event-id-from-which-to-start-chat-history (optional) }
HTTP Response
Success
{ "statusCode": 0 }
LeaveConference
This operation allows the agent to leave a currently active conference. When agents leave a conference, the last remaining agent retains ownership of the interaction.
HTTP Request
{ "operationName":"LeaveConference", "agentId":a unique Agent identifier }
HTTP Response
Success
{ "status":"ok" }
Failed
{ "status":"error", "errorDescription":details }
See also: