This page features API Reference. Here is the communication flow diagram for MRE:
|
1 |
Input Message Name |
JMS Type |
Message Body |
Queue |
Category |
Details |
Producer |
Consumer |
|---|---|---|---|---|---|---|---|---|
|
1 |
Agent Connect
|
Connect |
{"AgentId":"<agent-id>","Password":"<agent-pwd>","Extension":"<agent-extension>""Destination":"<client-destination>"} |
General |
agent-state |
Communication Server performs pre-login steps such as:
|
Chat Server |
Communication Server
|
|
2 |
Agent Login |
Login |
{"AgentId":"<agent-id>","Password":"<agent-pwd>","Mrd":"<mrd-id>"} |
General |
agent-state |
Communication Server performs agent-login on Chat MRD |
Chat Server |
Communication Server |
|
3 |
Change Agent State |
AgentState |
{"AgentId":"<agent-id>","State":"<agent-state>","Mrd":"<mrdId>""ReasonCode":"<reason-code-id>"} |
General |
agent-state |
Communication server changes the state of the agent in its data-structure, and forwards the status update to MRE and Chat server |
Chat Server |
Communication Server |
|
4 |
Conference Command Handler |
Conference |
{"TaskId":"<task-id>","ConferenceOwner":"<conference-owner-agent-id>","ConferenceParticipant":"<conference-participant-agent-id>""Mrd":"<mrd-id>"} |
General |
agent-state |
When conference is initiated by the conference-owner-agent to include conference-participant-agent. Chat server starts the conference and notify Comm-Server via this message. |
Chat Server |
Communication Server |
|
5 |
Conference Command Handler |
Conference |
{"TaskId":"<task-id>","ConferenceOwner":"<conference-owner-agent-id>","ConferenceParticipant":"<conference-participant-agent-id>""Mrd":"<mrd-id>"} |
RoutingEngine |
agent-state |
Comm Server sends this message to MRE to perform conference |
Communication Server |
MRE |
|
6 |
Conference Event Handler |
TaskConferenced |
{"TaskId":"<task-id>","OwnerAgentId":"<conference-owner-agent-id>","ParticipantAgentId":"<conference-participant-agent-id>"} |
CommunicationServer |
agent-state |
MRE notifies Comm Server after setting up conference. |
MRE |
Communication Server |
|
7 |
Transfer Chat |
Transfer |
{
|
General |
agent-state |
Chat Server sends transfer command to Communication server, where chat owner agent is the agent who initiates chat and recipient agent is the intended recipient agent |
Chat Server |
Communication Server |
|
8 |
Transfer Chat |
Transfer |
{"TaskId":"<task-id>","OwnerAgentId":"<chat-owner-agent-id>","RecipientAgentId":"<Transfer-recipient-agent-id>"} |
RoutingEngine |
agent-state |
Communication Server validates the owner and recipient agent, recipient agent state and task, and forwards the request to MRE |
Communication Server |
MRE |
|
9 |
Chat Transferred Event |
TaskAgentTransferred |
{"TaskId":"<task-id>","AgentId":"<recipient-agent-id>","PreviousAgentId":"<previous-owner-agent-id>"} |
CommunicationServer |
agent-state |
MRE notifies Comm Server after transferring the chat. |
MRE |
Communication Server |
|
10 |
Agent State Update |
AgentState |
{"AgentId":"<agent-id>","State":"<agent-state>","MRD":"<mrd-id>","ReasonCode":"<reason-code-id>","StateChangeTime":"<time>"} |
RoutingEngine |
agent-state |
Communication Server forwards updated state to MRE which updates it in its internal data structures
|
Communication Server |
MRE |
|
11 |
Change Task State |
TaskState |
{"AgentId":"<agent-id">,"TaskId":"<task-id>","State":"<task-state>","Code":"<state-change-code>"} |
General |
task-state |
Chat Server forwards this command to Communciation Server, Communication Server changes the task state and forwards the state change notification to Chat Server and MRE |
Chat Server |
Communication Server |
|
12 |
Task Sate Update |
TaskState |
{"AgentId":"<agent-id">,"TaskId":"<task-id>","MRD":"<mrd-id>","State":"<task-state>"} |
RoutingEngine |
task-state |
Communication Server forwards task state update to Routing Engine |
Communication Server |
MRE |
|
13 |
New Task |
Task |
{"Mrd":"<mrd-id>","ClientUniqueId":"<client-unique-id>","name":"Name of customer""params":["key","<value>"],} |
General |
new task |
Chat Server forwards new task request to Communication Server |
Chat Server |
Communication Server |
|
14 |
New Task |
NewTask |
{"MRD":"<mrd-id>","TaskId":"<task-id>","params":["key":"value"]} |
RoutingEngine |
new task |
Communication Server assigns a task id and forwards this request to Routing Engine for Agent Selection |
Communication Server |
MRE |
|
15 |
Agent Selected |
TaskAgentSelected |
{"TaskId":"<task-id>","AgentId":"<agent-id>","Status":"<task-status>"} |
CommunicationServer |
new task |
MRE assigns task to an agent and sends this information to Communication Server |
MRE |
Communication Server |
|
16 |
Get Agent State |
GetAgentState |
{"AgentId":"<agent-id>","Mrd":"<mrdId>"} |
General |
agent-state |
Chat Server fetches agent state from Communication Server using this command |
Chat Server |
Communication Server |
|
17 |
Get Task State |
GetTaskState |
{"TaskId":"<task-id>","AgentId":"<agent-id>"} |
General |
task-state |
Chat Server fetches task state from Communication Server using this command |
Chat Server |
Communication Server |