Making it Ring with Webex Contact Center

Webex Contact Center isn’t the newest kid on the block, but it is newer and the newest platform that Cisco has to offer.  Life for Webex CC started a while back as part of the Broadsoft acquisition with their cloud platform CC-One.  Cisco brought it into the mix as part of the Cisco Journey Platform or “CJP” and commenced to sink a ton of development work into it to the point of rewriting and re-architecting vast code bases to create a true cloud platform based on micro-services that are able to scale and heal dynamically.  In early 2021 Cisco rebranded CJP to Webex Contact Center and introduced it as a 2.0 platform with a lot of these changes, including a new Flow builder which was a big upgrade from the Broadsoft days.  Webex CC is Cisco’s platform of choice for a lot of instances and will be the main development platform for the foreseeable future.  Cisco also purchased IMIMobile in 2021 which brings in SMS and social channels to the contact center as well as outbound capabilities and additional insights.

As we at Cloverhound start to create new blog posts and build integrations into Webex Contact Center, the first step remains as always.  Make It Ring.  So this post will go through the basics of setting up a simple contact center and getting a call to an agent.  We are going to assume that you have your Contact Center tenant provisioned and tested, connected to your Webex Control Hub with PSTN access etc etc all figured out.  Since Ringing is our main focus I’m not going to touch on much about the supervisor, agent desktop, reports etc.

First we need to map out the different parts of Webex CC and how they connect into the work flows.

  • Users – Users are the easy one.  Its a user.  Agent, Supervisor, Administrator, whatever.  This user needs to exist in Control Hub and once they are licensed for Contact Center they will show up here and in Webex CC interface you can set them up for their daily functions.
  • User Profiles – User Profiles are assigned to users and provide restrictions to what that user can see.  If we need to turn on or off a certain screen to a supervisor, or only allow them access to a certain team, that happens here
  • Agent Profiles – Agent profiles build out the agent experience.  Enable screen pops, set auxiliary codes, transfer capabilities etc
  • Multimedia Profiles – Multimedia Profiles allow you to configure how much of what channel the agent receives.  1 call, 1 chat and 1 email or any variations.
  • Teams – Teams and Queues are a little different in the Webex world than traditional Cisco CC.  Teams are groups of agents that can take calls from a queue.  In fact when a call is queued, it’s queued to the team, not the queue.  The agent can also select which team they log into when they sign in so it’s easy to provide the agent with the ability to join a different queue just by logging out and selecting a different team
  • Queues – Queues will specify how calls are distributed to teams.  We can easily add more teams to a queue at set time intervals for escalation or define required agent skills to take the call.
  • Entry Points – An Entry point is the way into the contact center. This could be a phone call, email, chat etc.
  • Entry Point Mappings – Entry Point Mapping are used to bind a phone number to an entry point.  Similar to UCCX if an Entry Point is an Application, Entry Point Mappings are the Triggers.  We can associate 1 or more numbers to the same Entry Point.
  • Routing Strategies – Routing Strategies handle schedules and what Flow (script) is used based on time of day / day of year.
  • Flows – The Webex CC Flow is the same as a script or application.  This is where the call logic lives in a drag and drop editor.

Part 1: Provisioning

Now that all the definitions are out of the way lets jump in and start building a number that rings an agent.  From the Contact Center tenant most of the setup work will happen under the Provisioning tab.

Agent, User  and Multimedia Profiles are pretty good out of the box so we are going to skip them and go with some defaults.  In order to update out user we will just create a Team so they can log in and we can route calls to them.  Notice we can assign users and multimedia profiles at a team level as well, but we’ll handle that on the user instead.

The Users will pull over from Webex Control Hub so they must exist there first. Passwords or SSO etc are based on control hub too so if you are using SSO there so are your contact center users.  Here we are looking at a few fields mostly towards the bottom – User Profile, Contact Center Enabled (obviously Yes), Teams, Agent profile and Multimedia Profile.  If you want to pre-define the agents extension you can do that here too.

Since the Team is already there we can create our Queue.  We will go with Longest Idle and select the Team we created earlier.  You can add multiple teams to the group and add groups as time goes on.  So easily add a backup group after the call has held for 5min.  Service level will be for reporting if the call was answered in the allotted time.  Max Time in Queue is tricky though because when it ends, so does the call.  I typically set this for like 8h to make sure we don’t disconnect a patient caller.  Music on Hold also has to be set here.

The Entry Point is mostly just a name, but we also need to define that this is telephony Entry Point and not Chat, Email or Social.

And the last step under our Provisioning section is the Entry Point Mapping.  Here we are taking a CC provisioned number and associating it to our new Entry Point.  Same type process for Chat or Email mappings.


Part 2: Routing

Now that all of our configuration is set with users, teams, queues etc we can jump to the fun part of routing the call. Under the Provisioning menu on the Left you’ll see Routing Strategies. This will pop out a new tab for this portion of the configuration.

Before we start on the Routing Strategies portion we need to go ahead and build out Flow so we have something to send it it.  Across the top menu click Flow and we’ll bump to another tab.

And then we’ll create a new flow and just call it OPEN_Flow or something.

Now we get to get into the Flow Builder itself.  This is where most of the magic happens, but in this case we are just going to fizzle a bit to get us through to stuff actually ringing.  We’re going to put the basic pieces in connecting the outputs to inputs along the way.  Each block will need some info field in and when you turn Validation on what you miss will turn red so you can correct them prior to publishing.  First we will play a greeting, then queue the call.  In this step we want to select the queue required.  If we are doing skills we can also specify them here. Last we will play music while the caller is holding.  Notice that the music output loops back into the music input.  We don’t want to re-queue the call again by putting it into the queue block. There is no end to this flow since the Flow is considered ended when the queue logic breaks to an agent.

Now that we have a Flow lets go back and connect the Entry Point to the Flow on the Routing Strategy tab and create a new one.

Routing Strategies manage the schedules and time of day routing within your Contact Center and which flow the call goes to based on the time of day it is.  Since we are a super attentive 24x7x365 shop and we really just want the dang thing to ring, we’ll just do that. In future posts we’ll go down the rabbit hole of scheduled routing.

For this we need a name and a schedule obviously.  One thing to point out is the default “end date” is today, same as the start date.  I always just bump this up like 30 years out of habit so it doesn’t work today and break tomorrow.  Finally at the end select the Flow we want to point to and we are ready for testing.

Part 3: See it Ring

Now that our config is set we are ready to “Make it Ring”.  This part is fairly straight forward once you’ve tracked down the agent URL ( if you are in the US area).  When the agent authenticates they need to put in the number they are using as an agent extension and select the Team that they will  be answering calls under and then once you’re logged in be sure to go Ready.

And there we have the call.  Now all the other fun stuff can happen.  In later blogs we’ll talk through some of the fun stuff (and not so fun stuff) and tweaking out Webex Contact Center.