Agent DID Routing through Webex Contact Center

Most Contact Centers are inbound only and have a one-to-many relation with phone numbers. You dial one number and can connect to one of many agents.  When you have a less formal contact center where you want to have an agent use a DID (Direct-Inward-Dial or “phone number”) or an agent wants to be able to place a call, leave a voicemail and get a call back, the issue changes a bit.  What makes this trickier is when you are doing call recording or need to capture metrics on those agents. This means the call has to come through the contact center first before hitting the agent.

To accomplish this in Webex Contact Center we need to direct the agent’s DID to the contact center instead of their phone.  You may need some extra DIDs or think about using extensions for agents if you need to implement this.  Also because of the options we have within a flow, voicemail is difficult.

In order to set this up we will use Skills Based Routing (SBR) and send the call through a queue.  Delivering the call like this lets us report on these calls from Analyzer so that you get accurate data on the agents like called handled, handle time, answer times etc and the call recording will get mapped to the agent correctly too.

First we need to setup the Skills.  Webex CC does this in two steps.  First we create the Skill and set the type, and then we create a Skill Profile that sets values for the various skills.  Our Skill type will be “text” so we can enter whatever we need and the queue will match on that text.  In this case we are going to use this field to hold the agent’s DID.

Then we want to assign this Agent Profile to our Agent. Yes you are seeing it correctly.  This method means each agent will have their own Agent Profile.  Skills can be tedious using this profile method, but if you are dealing with larger groups of similarly skilled agents it can save you some time too.  What if your only skill was “speaks Spanish.” Then you could just assign a single Skill Profile out as needed.

We created a new Team to do this, but you can reuse other teams if needed. If all your users are in the same group etc just use the same Team.  Then we need to create a new Queue in order to select the Skill Based Routing as the routing logic.

Next we need to setup our Entry Point and then our Entry Point Mapping.  We can point any number of DIDs to our Entry Point so you’ll repeat this step for all of your agents that have DIDs.

The next step is to build our our Flow.  This is a pretty simple setup and you could expand it if needed.

  1. When the call comes in and we immediately queue the call. You could play an initial greeting and special hold music or I’ve used a “ringing” sound on repeat a lot too so the caller actually thinks they are calling the user directly.
  2. I like to up the priority for the caller.  They are obviously trying to do something more than just talk to anybody so we’ll give them the highest chance of talking with them.
  3. Next we set the skill requirement.  Since its a text based skill and we are looking for the agent DID to match the actual called number. We can use the variable NewPhoneContact.DNIS in order to figure out what the original called number was and then look for the Agent Profile that specifies the same.
  4. Next I set a relaxation on it so that after 60seconds it can ring anybody in the AgentDID_Queue.  This isn’t required at all, but we can’t easily send the caller to voicemail and this will help the call get answered. It would be a good idea to look at your average handle times and judge how long to queue that call for the specific agent. You could play a prompt that says they aren’t available and to call back later or something similar though. If you are using a CRM this would be a great use case to identify the caller and flag the contact for followup.  Then you could just play a generic message prior to disconnect.

Finally we need to build our Routing Strategy.  I’m keeping this simple since my lab is always open, but since voicemail is an issue you probably want to consider trying to match business hours. As with previous posts: the default end date is the date you created it so please get in the habit of bumping that date past today.

And there we have a call flow that handles a customer calling a DID destined for a particular agent.  The CRM connection makes a nice add in, but you could also easily integrate a BOT or app to send a message, SMS or email to the agent in order to alert them of a missed call.