Open, Closed and Holiday Schedules in Webex Contact Center (Routing Strategies)
If you’re open 24/7/365 at a single location and what time it is in the world doesn’t matter in your business then you can safely skip this post, but for most people the time of the day and what day it is have a big impact on how you run your business. Time of day routing is no new topic to any contact center, or any phone system in general, but if you are coming from a traditional Cisco Communications Manager or Contact Center then Webex Contact Center puts a spin on these schedules via Routing Rules. This will be the first of a few coming blog posts around different time handling methods you can deploy to both see the Webex CC way of doing things, but also pushing the concept of how we look at schedules given the tools that Webex CC makes available to us.
This post builds on the previous post Make It Ring. There we go over how to get a a call from the PSTN through the system and down to an agent. We glossed over Routing Strategies because they’re worth a look on it’s own. In this post we are going to look at how Cisco designed time of day routing, some of the advantages and pit falls of that method and how to configure a basic schedule. We’re going to make it easy and work with a basic business schedule of 8-5 Monday-Friday. After we have that we will look at what it takes to take off early on Fridays and add holidays so we can see what impact these changes have on our config. We aren’t going to bother at all with the Flows in this post. Assume we have 2: Open and Closed. Yes you do need two, that’s part of what makes this platform different than UCCX.
We are going to expand the same call flow from Make It Ring to add some additional closed options. If you open that Routing Strategy you’ll see the OPEN strategy we built. You’ll also see the “Current” strategy that is mapped to the OPEN one, this is an easy way to tell what time period your in and track which flow is being used.
Part 1: Taking Time Off
We created that OPEN schedule covering 24×7 so lets go and adjust it to 8-5 Monday-Friday. Managing these schedules is pretty straight forward. Just always remember the default end date is today when creating new.
So now 8-5 we are sending to open, but if we call after hours the call will just die. We need to create another strategy for “closed”, but we will make this out as 24×7 and mark it as the “Default” strategy. Remember: end date is today, change it.
So it’s that simple. Our default strategy will get hit any time that the OPEN one doesn’t. Open will only be active 8-5 M-F. We do need to create two flows to support this though. In one aspect you can manage the Flows more granularity, but if you have a lot of applications that you need to create and each needs a different closed prompt/process then it does effectively double your Flow count.
Bonus: Friday Afternoons Off
Next lets take Friday afternoon off, because who doesn’t like that? First thought is “I’ll just create a new strategy that is active on Friday from 1pm->5pm and just send it to my closed flow.” Wrong. Strategies cannot overlap except for the “Default” strategy. That’s how we were able to create the 24×7 closed one. We need to adjust the Open strategy, remove Friday and then create a new strategy that just covers Friday 8-12 and sends to our OPEN Flow. Again please remember the default end date is today.
So now we have three strategies to cover our week and we can see the active strategy at any time.
Now as we think this through, what if I’m not a big contact center and am using the platform for advanced call handling at say a doctors office and I take an hour for lunch every day. Correct. Now you need a strategy that covers AM and another for PM. And what if you want to play a different prompt at lunch time because maybe you have an answering service that picks up? Well the strategy points to a Flow, so you’ll need to create a separate Flow that will play that lunch message and a different strategy at lunch to route to that Flow. But what if I have 100 clinics that are part of a health system and when they are closed I have one greeting they all hear. Great then you can reuse that same Flow in 100 strategies. Routing Strategies add some flexibility, but also adds some overhead so it’s best to understand that overhead when you are designing the system. Some flows that may seem simple can end up with a lot of complexity due to timing.
Part 2: Taking a Whole Holiday Off
But wait. We are still fortunately enough to get New Years Day off. And you’re probably thinking “Let’s build a strategy that just covers New Years and send it to closed.
But then you would have forgotten that you can’t have overlap in your schedules except for the one default. So how do we get around this? Do we really have to build different open time frames for each year? Jan 2 through Dec 31? But I have like 10 company holidays! There is another way with Global Routing Overrides under “Routing” in the top navigation menu.
These override any schedule that is in place and CAN overlap. They are structured slightly different though. We’ll still define our hours and days etc like we tried before, but under Global strategies we assign an Entry Point to the strategy, not the other way around.
All the rest of the rules apply, so if you want to play a different holiday greeting, then you’ll need a different Flow for that prompt. If you want to play different holiday greetings depending on what number they dial, you’ll need to create a different override strategy for each of those entry points and different Flows for each of those strategies. Here you will create a new strategy for every holiday you will be taking outside of your normal work hours. If a global strategy is active you will see it reflected under the entry point routing strategy though so you don’t have to dig too far for troubleshooting.
So now we’ve covered the good, bad and indifferent pieces of Routing Strategies and time of day in Webex Contact Center. This will always be the tested and supported method of doing things, but in following posts we’ll go over bringing this same logic into the Flow itself by utilizing some API calls and conditions.