Omni-Channel Overview

This article is prepared by our Salesforce Developer Aliaksandr Kliazovich.
Omni-Channel is a Customer Service and console-based Salesforce feature that helps automatically route of different types of work items (such as Leads and Cases) to agents. Omni Channel routes all the work items to the agents automatically based on the agent’s capacity, priority, skillset, and etc.

How many ways can customers contact your organization for support? Phone, email, SMS, WhatsApp – and what about web chat, social media, etc.? You want to offer all these to open up the two-way conversation, but what impact will this have on your service operations?

Omni-Channel is a ‘win-win’. For the customer, they are satisfied that their request has been acknowledged, and can get their query resolved faster, with the appropriate approach. For your agents, they’ll no longer be required to juggle customer requests coming in from all different directions, leading to a more fulfilling role.

Salesforce Omni-Channel: The Three Cs

Salesforce thinks of Omni-Channel in terms of what they call The Three Cs: Complete, Consistent, and Connected. With one view of all customer support requests, Service Managers and Salesforce Admins can plan out and activate a series of responses, regardless of the customer’s communication channel of choice. Do it once, do it right – then optimize these core service automation.

Beyond Omni-Channel, there are four critical aspects of customer service to ‘hit’ in order to be successful. Here’s how Omni-Channel plays a role in addressing each, head on:

  • Responsiveness: Receive customer support requests (regardless of the communication channel) and respond rapidly with an appropriate next step. Could the customer self-serve leveraging support articles, or does this case need additional investigation from your support team? Not only does this keep customer satisfaction buoyant, but it also reduces customer churn (i.e. them cancelling your product or service). Keeping responses consistent, in relation to the cases’ severity, goes a long way in making the first response both fast and impactful.

  • Utilization: Case routing involves more than simply assigning cases to agents. To assign support cases to the right people, at the right time, organizations use an assignment strategy (e.g. skills-based routing) or a combination of strategies to apply assignments with accuracy. Remember that agents could be tasked with juggling requests from multiple channels? Complexity shouldn’t be passed on to the agent; instead, receiving cases should be a seamless experience.

  • Feedback: How customers perceive their service experience is a valuable data point to work into your interactions going forward. Often considered a ‘soft’ metric, feedback can be quantified and fed back into case routing. For example, if a customer gives poor feedback, the case could be automatically reopened and reassigned to a more senior agent for further attention. This helps get to the root cause of the customer’s troubles.

  • Personalization: Being centralized to one customer record, agents and the automation that supports them, can gain insight from a wealth of data about the customer and/or their company – including past requests.

Part 2 | Routings

Omni-Channel is flexible and gives several ways to route work items to agents. Let’s take a look at the different routing frameworks.

Queue-Based Routing

In queue-based routing, you organize your agents into different queues, which generally represent a single skill. A queue can support a particular product or a particular part of the business. For example, you can have a Billing Queue and a Financial Support Queue.

In queue-based routing, Omni-Channel assigns work to a queue. Agents are members of a queue, and Omni-Channel assigns work to agents based on the priority of the queue.

Smaller companies that operate in limited geographies and have fewer product offerings and agents often prefer queue-based routing because it’s simpler to set up.
The implementation of this type of routing is not custom, all functionality is configured using Salesforce declarative functions.

Skill-Based Routing

For a work item that requires specific skills, Omni-Channel routes the item to an agent who has all of the requisite skills and who has available capacity to take on the work.
When routing a work item, Omni-Channel determines the required skills based on the routing configuration, skills-based routing rules, and Omni-Channel flow. Skills defined in the routing configuration are added to all work items routed using that configuration. Skills defined in a skills-based routing rule or Omni-Channel flow are added if the work item meets the specified criteria. To match the right agent, Omni-Channel compares the required skills for the work item against the skills assigned to agents.

When a work item is routed to a skill that multiple agents have, the work item is routed to the first available agent based on the routing type (most available or least active).

Skills are evaluated when a record, such as a case, is added to an Omni-Channel queue. If you edit a record that’s in an Omni-Channel queue, any changes to skills aren’t reflected until you reassign the record to the queue or another queue.

If a work item requires certain skills, but no agents have those skills, the work item isn’t routed. This situation is similar to how items in a queue are treated when no agents are online. If you use Omni Supervisor, a supervisor can look at the Skills Backlog tab to see which work items that require a skill haven’t been assigned to an agent.
Skills-based routing allows work items to be routed using more sophisticated and dynamic criteria than queue-based routing.

Queues generally are designed to represent one skill. For example, you can have a queue for Spanish-speaking agents and a queue for Level 3 technical support calls. With queue-based routing, Omni-Channel routes each work item to an agent who is a member of the queue.

In contrast, with skills-based routing, Omni-Channel routes the work item to an agent who has all the requisite skills and who has the available capacity to take on the work.

Also, Omni-Channel determines agent capacity in one of two ways: Tab-Based or Status-Based.

Tab-Based Capacity Model

Determines agent capacity using the number of console tabs that are open in the agent’s Omni-Channel session. When the agent logs out, all the work that’s assigned to the agent is considered closed by Omni-Channel, and the agent's capacity is reset. Omni-Channel also considers the work to be closed when an agent closes the tab that Omni-Channel opened for the work item.

Tab-based capacity models aren’t supported in apps with standard navigation.

Status-Based Capacity Model

Determines agent capacity using the status of work items assigned to the agent. Agents sometimes work on the same work item over multiple days, across multiple Omni-Channel sessions. The status-based capacity model checks the status of a work item to determine if the work consumes an agent’s capacity. If the agent closes a tab or logs out of Omni-Channel, their capacity isn’t reset until the work has a completed status.

The status-based capacity model isn’t supported for Messaging and Voice.
An important point that cannot be ignored when we talk about Omni-Channel is Secondary Routing Priority.
Secondary Routing Priority

In a queue, priority is determined by how long the work item has been waiting—first in, first out. However, while a work item is pending in the queue, new work could come in that is more urgent. In this Case, Secondary Routing Priority in Salesforce Omni-Channel plays a vital role. When we enable the option "Enable secondary routing priority" in the omni-channel settings, we have the opportunity to configure additional conditions for assigning work to agents – for example based on priority. (You can select the field by which it will be configured)

This means that WorkItems that entered the queue later but have a higher priority will be assigned agents before the rest (with a lower priority).

External Routing

Integrate third-party routing with a partner application with Omni-Channel using Salesforce standard APIs and streaming APIs. External routing is supported with Omni-Channel in both Salesforce Classic and Lightning Experience.
Information is shared using Salesforce APIs and the APIs for your partner application using the following process.

  • Salesforce sends events using Salesforce Streaming APIs for the PendingServiceRouting object.
  • Partner application creates a session to authenticate.
  • Partner application queries Salesforce for work details, agent availability, and more.
  • Partner application determines the routing decision.
  • AgentWork is created and pushed to the specified agent in Salesforce.
  • Salesforce API Resources for External Routing.
  • Use the following resources as you integrate your partner application with Omni-Channel.