Skip to main content


         This documentation site is for previous versions. Visit our new documentation site for current releases.      
 

Routing

Updated on May 10, 2021

Intelligent routing for Legacy Webchat and Digital Messaging determines the queue to which the routing engine can route the customer.

Pega Customer Service Implementation Guide Pega Customer Service Implementation Guide Pega Customer Service Implementation Guide Pega Customer Service Implementation Guide Pega Customer Service Implementation Guide Pega Customer Service Implementation Guide

The routing engine assigns the conversation request to a CSR if the CSR:

  • Is available for work
  • Possesses required skill
  • Is not assigned another interaction
  • receives request during work hours for a specific 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 second.):
  1. 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.
  2. 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.

You can optimize the routing experience further by configuring expected CSR responses to new assignment requests. Using the configuration in Routing, you can enforce that CSRs cannot decline new chat offers when the queue capacity crosses a certain configurable threshold or if the offer was declined by another CSR previously. The configurations ensure that the estimated wait time is honored.

Transferred conversations

As a part of the resolution, a CSR might have to transfer a conversation to another queue or agent.

If the transfer is to another queue, the conversation 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.

Rerouting requests

Sometimes a CSR loses availability prior to the conversation being successfully routed or the CSR declines the new work.

The routing engine attempts rerouting the conversation requests that do not find a CSR in the following 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 reattempting. After the delay, the routing engine attempts to route the request again.

Note: The rerouted requests take precedence over new incoming requests because the engine considers the initial queuing time for prioritization rather than the latest queuing time. However, these requests have lower priority than transferred conversations.

Conditions for non-routing chat escalations

Customers cannot escalate a chat request in the following scenarios cases:

Note: These cases apply only to Pega Customer Service Legacy Webchat and Web Messaging requests and not to the other conversation channels as those requests can be routed later when the CSRs are available.

  • 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. For more information, see Configuring wait time calculation.
  • 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.
Note: In the case of messaging conversation requests through Facebook Messenger, the routing engine does not stop the customer from initiating a conversation during off-hours or when the maximum wait time is exceeded. Customers may send a message when no CSR is available. The routing engine can acknowledge receipt of the message, and then hold the messages in the queue until a CSR becomes available. At this point, the routing engine attempts to route these delayed messages to an available CSR.

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.

  1. In the navigation pane of App Studio, click SettingsChat and messaging.
  2. In the list of chat and messaging settings, click Routing.
  3. To disable Pega routing and delegate the routing of chat and messaging requests to an external routing service, see Enabling third-party routing.
  4. 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 section.
    • 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.
  5. To determine how CSRs interact with conversation request assignments, configure the settings in the Global Concurrency Limit & Conditional Screenpop Behaviors section.
    1. 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.
      Note: From the App Studio People page (UsersPeople), you can override this value for individual CSR operators.
    2. 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.
    3. 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.
    4. 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.
  6. To define the frequency for assigning a conversation to each CSR, enter the time in the Staggering interval in seconds field.
    For example: If you enter 5 seconds, the routing engine uses a five-second interval between assigning chat requests to a particular CSR.
  7. To add a routing conditions for the queue, click Add routing condition in the Intelligent routing section, and then configure the condition.
  8. To ensure routing of incoming requests to the work queues, the Action list is auto populated with the Route to work queue value.
  9. To route the service requests to a particular queue, enter a queue name in the Value field.
    For example: Billing
  10. In the When section, define the criteria for the routing action.
    1. In the first field, select the criterion type: Selected queue, Language, or Source channel.
    2. In the second field, select a comparator.
      For example: is equal.
    3. In the last field, select a value for the selected criterion type.
      For example: If the criterion type is Selected queue, select a queue.
    4. If the criteria requires additional conditions, click the Add a condition icon.
  11. Click Save.

Have a question? Get answers now.

Visit the Support Center to ask questions, engage in discussions, share ideas, and help others.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best.

Pega.com is not optimized for Internet Explorer. For the optimal experience, please use:

Close Deprecation Notice
Contact us