Skip Navigation
Expand
Routing chat requests to agents
Answer ID 1174   |   Last Review Date 02/06/2024

How do chat requests get routed to agents?

Environment:

Chat, Agent, Business Rules

Resolution:

When a chat is submitted by an end user it is inserted into the "Default Chat Queue" unless first acted upon by chat rules used to route the chat to another queue. If chat rules are in place, the chat is routed to the specific chat queue specified in the rule. Chat rules are different than incident rules. Once the chat has been routed to its proper queue, the chat will follow the process outlined here to be assigned to an agent. NOTE: Agents have "access" only to chats in chat queues added to their profile's permissions.

The assignment of chat will occur using a specific algorithm. When a chat request is made the system creates two lists:
   1.  A list of waiting chats, and
   2.  A list of available agents with at least 1 available chat session and access to the chat queue

The list of waiting chats is sorted by longest wait time; therefore the oldest chat is served first. The list of available agents is sorted based on the last assignment time of the agent session. If agents are logged in and haven't had any chats during their session, each agent has an equal chance of receiving the first chat that comes in, regardless of the order in which the agents logged in. Once each agent has accepted a chat, then the router will assign the chat based on which agent has the oldest request for a chat. The longest waiting chat is assigned to the agent with the oldest outstanding request for a chat.


The chat assignment algorithm takes the following into consideration:


The chat assignment algorithm does not take the following into consideration:


Helpful examples for understanding the chat assignment algorithm:

  1. All agents login at the same time, all are available, none have taken a chat, then one of the agents will receive a chat session.
  2. Agent A has handled 1 chat, Agent B has handled zero chats, then the next chat in the queue will be assigned to Agent B.
  3. Agent A has handled 10 chats, Agent B has handled 5 chats, Agent C has newly entered the queue and is available, then the next chat in the queue will be assigned to Agent C.
  4. All agents have the same profile with max chats set to 3. Agent A is currently handling max chats/has no sessions available, Agent B has one active chat that was assigned at 8:10, Agent C has one active chat that was assigned at 8:15, then the next chat in the queue will be assigned to Agent B.
  5. Agent A has two active chats where one was assigned at 8:05 and the other at 8:15, Agent B has one active chat that was assigned at 8:10, then the next chat in the queue will be assigned to Agent B.


The Chat Assignment Algorithm and the Ignore Preroute attribute:

Please Note: If the conditional chat link (syndicated or standard) is deployed and the ignore_preroute attribute is enabled (set to 'yes'), then customers may be routed to a different queue than the one originally determined by agent availability (even a queue for which no agent is immediately available). This can conflict with the indication of availability expressed by the widget itself, leading to customer confusion. For this reason, the ignore_preroute attribute should be enabled only when necessary for achieving a specific business goal. For more information, refer to Answer ID 6523: Chat rules not working with ConditionalChatLink.

The Chat Assignment Algorithm and External Chat Queues:

Please Note: This chat assignment algorithm is applicable to Oracle chat servers and not used by chat queues marked External which rely on Chat API external routing system. For additional information, refer to the 'External-Queue Security' section in the Online Help User Guide documentation. To access Oracle B2C Service manuals and documentation online, refer to the Documentation for Oracle B2C Service Products.

The Chat Assignment Algorithm and Advanced Routing Queues:

Please Note: Advanced Routing will verify the agents language and product skills, as well as their skill scores. For more information, refer to Answer ID 9531: Assigning chats to agents through Advanced Routing.

The Chat Assignment Algorithm and Chat Agent Affinity:

Please Note: If Chat Agent Affinity functionality is enabled, the assignment algorithm will not be applied unless the intended agent is not available in Chat. For more information, refer to Answer ID 12243: FAQ's for B2C Chat Agent Affinity.

For additional information, refer to the 'Configuring Chat for Supervisors and Agents' section in the Online Help User Guide documentation. To access Oracle B2C Service manuals and documentation online, refer to the Documentation for Oracle B2C Service Products.