You can use intelligent routing for chat and messaging to determine which queue to route the customer to. The routing engine assigns the conversation request to a CSR based on whether the CSR is available for work, has the required skills for that queue and has not just been assigned another interaction, and whether the request is received during work hours for that queue. For detailed information about how routing works in Pega Customer Service, see Route requests based on CSR occupancy and skills.
Routing requests based on CSR occupancy and skills
When a new conversation request enters a queue, the queue processor calls the routing API, which routes the request to a qualified Customer Service Representative (CSR). You can configure routing to use one of two routing algorithms. When you select an algorithm, the system uses that algorithm for all subsequent routing decisions for chat and messaging interactions.
- Routing by CSR workload
- Selecting this option routes new requests to CSRs who have fewer active chats,
for example, a CSR who has one active chat receives the interaction screen pop
before a CSR who has two chats. However, in the event of multiple CSRs having
low occupancy percentages, the routine engine uses the following criteria to
choose a CSR (if the first criterion finds a suitable CSR, the engine skips the
- Time since last acceptance - The engine routes the request based on the time elapsed time since the CSRs last accepted a request. For example, if CSR1 accepted their last request at 9:00 AM and CSR 2 accepted their last request at 9:01 AM, the engine routes the request to CSR1.
- Earliest log in - If multiple CSRs have the same occupancy level and the same time since last acceptance (for example, the start of the first shift of the day), the engine routes the request to the CSR who logged in to the application first. For example, if CSR1 logged in to the application at 9:00 AM and CSR 2 logged in at 9:15 AM, the engine routes the request to CSR1.
- Routing by CSR skill level
- Selecting this option routes new requests to the CSR with the highest skill level of all the available CSRs who are available to take on more requests. The operator record of a CSR lists their associated skills, and each skill has a rating. When a CSR logs in to Pega Customer Service they select which queues to log in to. CSRs can see all of the queues that they can join, based on their skills. The algorithm considers all skills and skill levels associated with a queue and counts the skill level of the CSR for each relevant skill.
As a part of the resolution, a CSR might have to transfer a conversation to another queue or agent.
If the CSR transfers the conversation to another queue, the request goes through the routing process again. However, to reduce further customer wait time due to a transfer, the routing algorithm prioritizes transfers ahead of other work for that queue (effectively telling the routing engine to route the transferred Interaction first).
In the case of agent-to-agent transfers, the transferring CSR can only select another available agent; the CSR cannot transfer a conversation to a CSR who is unavailable or who has reached their maximum number of concurrent interactions. These transfers bypass the routing algorithm and send a request alert directly to the recipient CSR. The conversation is transferred only when the recipient CSR accepts the request.
Pending request routing
Sometimes a CSR loses availability prior to the conversation being successfully routed or the CSR declines the new work.
The routing engine reroutes a conversation request in the following two cases:
- Busy CSRs: When all of the available CSRs in the queue are handling conversations to their full capacity as configured in the Max concurrent conversations (from this queue) field.
- CSR decline: When the agent to whom the request is routed declines it.
For rerouting a pending conversation request, the routing engine adds the request to the queue and then waits for a specified time period before for reattempting. After the delay, the routing engine attempts to route the request again.
Conditions for non-routing chat escalations
Customers cannot escalate a chat request in the following scenarios cases:
- No CSRs available (applies only to live chat conversations): When no agent has logged into the selected queue, the routing engine sends the configured Agent not found message to the customer after selecting a queue.
- Maximum wait time exceeded (applies only to live chat conversations): The routing engine periodically calculates the estimated wait time required to route the incoming or queued conversation requests based on the configured Wait time evaluation window. If the calculated wait time for the conversation request exceeds the configured maximum wait time, the routing engine sends the configured Agent not found message that is configured for the queue after the customer selects the queue.
- Off Hours (applies only to live chat conversations): The routing engine sends the configured Off-hours behavior message to the customers when they attempt to live chat during the queue off hours.
Configuring chat and messaging routing
When a new chat request enters the queue, the queue processor calls the routing API, which routes the request that is present in the queue to a qualified customer service representative (CSR). You can prioritize routing by workload or skill level. The routing engine prioritizes the work based on your specification.
- In the navigation pane of App Studio, click .
- In the list of chat and messaging settings, click Routing.
- To delegate the routing of chat and messaging requests to an external routing
service, select the Delegate Routing to non-pega routing
services check box.
- In the Callback URL for incoming Chat requests field, enter the URL of the external routing system to send the metadata of the new chat and messaging requests that the routing system needs.
- In the Callback URL for CSR-presence updates
field, enter the URL of the external routing system to send the updates
on CSR availability and CSR or customer actions to route pending and
transfer requests. Pega Customer Service uses the third-party routing API to exchange data with the external routing system. For more information, see Third-party routing API.
- To prioritize the routing condition for incoming conversations based on the
customer service representative (CSR) skill level or occupancy status, select
one of the following options in the Routing to CSRs
- To route the incoming conversation to the CSR who is least occupied, select Prioritize routing by CSR workload (route conversations to least active CSR). Selecting the option routes new requests to CSRs who have fewer active chats, for example, a CSR who has one active chat receives the request before a CSR who has two chats.
- To route the incoming conversation to the CSR who is highly skilled to work on the request, select Prioritize routing by CSR skill level (route conversations to most skilled CSR)Selecting this option routes the new requests to CSRs who have a higher skill level over a CSR who has a lower skill level. The routing engine combines the skill values of the CSRs for each required skill and prioritizes the CSR with the highest score.
- To determine how CSRs interact with conversation request assignments, configure
the settings in the Global Concurrency Limit & Conditional
Screenpop Behaviors section.
- In the Max number of concurrent conversations allowed per
CSR field, enter the maximum number of conversations
that a CSR is allowed to accept at one time.
- To prevent the next CSR from declining an conversation assignment
request after the first CSR declines it, select the A new
interaction can only be declined once check box. The Decline button on the new assignment screenpop becomes inactive after the first CSR declines the request. If there are no other CSRs in the queue except CSR1, the request is routed to CSR1 again, but with an inactive Decline button.
- To prevent the CSRs from declining the invite when a queue’s occupancy
level is red or reaches 80%, select the Remove the ability to
decline when the queue is busy check box. The Decline button on the assignment request screenpop becomes inactive after the queue occupancy reaches 80% and the tooltip on the button indicates why the button is inactive.
- To make the CSR unavailable in all the queues they are logged into
after an assignment screenpop expires for them, select the If
a CSR misses a screenpop, make them unavailable check
box.After becoming unavailable, the CSR then receives the following notification: You have been made unavailable due to the expiry of an assignment screen pop.
- In the Max number of concurrent conversations allowed per CSR field, enter the maximum number of conversations that a CSR is allowed to accept at one time.
- To define the frequency for assigning a conversation to each CSR, enter the time in the Staggering interval in seconds field.
- To add a routing conditions for the queue, click Add routing condition in the Intelligent routing section, and then configure the condition.
- To ensure routing of incoming requests to the work queues, the Action list is auto populated with the Route to work queue value.
- To route the service requests to a particular queue, enter a queue name in the Value field.
- In the When section, define the criteria for the routing
- In the first field, select the criterion type: Selected queue, Language, or Source channel.
- In the second field, select a comparator.
- In the last field, select a value for the selected criterion type.
- If the criteria requires additional conditions, click the Add a condition icon.
- Click Save.