Skip to content
CBT Nuggets
DemoBook a Demo

UCCX: Introduction to Unified Contact Center Express

This Skill provides an in-depth review of Cisco Unified Contact Center Express (UCCX), a solution for setting up and managing call centers. It covers installation, configuration, and administration of UCCX, including scripting for call routing and handling, the use of Cisco Finesse for agent and supervisor interfaces, and high availability setups. The course also discusses various features and terminologies associated with UCCX, ensuring learners can effectively deploy and manage call center environments.

Full skill from Cisco UCCX. Preview the training IT teams trust.

Updated

52m

Skill 1 of 27 in Cisco UCCX

What you'll learn

  • Explain what UCCX provides for a contact center and when Contact Center Enterprise fits deployments beyond the 400-agent limit
  • Compare the IVR, enhanced, and premium UCCX license versions covered in the lesson
  • Describe how call control groups, CTI ports, CTI route points, triggers, and the JTAPI user work together in UCCX
  • Trace a UCCX call flow from the CTI route point trigger through application script execution to an available agent
  • Identify the new features introduced in UCCX Version 12 that the course later demonstrates and configures
  • Explain UCCX high availability, including LAN versus WAN deployments and heartbeat-based failover between active and standby nodes

Free 52-minute video lesson with a full transcript and knowledge checks. No account needed to watch.

Overview

Join Lalo Nunez as he reviews the Cisco Unified Contact Center Express solution and why it is used in many collaboration call center environments.

Recommended Experience

  • Basic knowledge of Cisco Unified Communications Manager (CUCM) and understanding of basic call center operations is recommended.

Recommended Equipment

  • VMware Workstation or VMware ESXi

Related Certification

  • None

Related Job Functions

  • Network Administrators
  • Network Engineers

Lalo Nunez has been a CBT Nuggets trainer since 2020 and holds a variety of CompTIA and Cisco certifications. His areas of expertise include Cisco collaboration and networking.

Introduction to Unified Contact Center Express

In this Nugget, we discuss what will be reviewed in this Skill.

What is UCCX?

In this Nugget, we discuss the Unified Contact Center Express solution and the features that are available with the product.

Knowledge Check

Which of the following is the maximum number of concurrent agents Unified Contact Center Express can handle?

UCCX Terminology

In this Nugget, we discuss the different terminology that is used with Unified Contact Center Express.

Knowledge Check

Within CUCM, a Trigger within UCCX is known as which of the following?

UCCX Call Flow

In this Nugget, we review a call flow involving Unified Contact Center Express.

Knowledge Check

Which of the following is contained within a Call Control Group?

Features in UCCX 12.x

In this Nugget, we discuss the new features available in Unified Contact Center Express version 12.

Knowledge Check

Before Unified Contact Center Express version 12, any changes to the business hours could only be performed within the UCCX script itself. True or false?

UCCX High Availability

In this Nugget, we look at High Availability within Unified Contact Center Express.

Knowledge Check

During a failover, all calls in the queue are dropped. True or false?

Conclusion

I hope this has been informative for you and I would like to thank you for consuming.

View Transcript

Introduction to Unified Contact Center Express

0:10I'm super excited for you to join me as we go over UCCX or Unified Contact Center Express. And this is Cisco's solution to-- or one of the Cisco solutions-- to set up call centers within your environment. We're talking about a caller or a customer callling into your environment. They hear prompts. Maybe they're waiting in queue. You're configuring agents to answer those phone calls. And what's neat about Contact Center Express is there are so many options. There are so many knobs that you can turn depending on wherever need that your call center may have. So my goal here is not only to discuss Contact Center Express and also install it and configure it, but also to go over the different terminology that you may hear-- like resources, contact service queue skills-- but also go over the scripting portion.

0:50And I find, on many teams, there's either one or two individuals that really deal with the administration from Contact Center Express because the other folks don't want to touch it because it's too complex. I don't understand it. I don't know how to script. And the reality is that Contact Center Express is a really cool technology when it comes to setting up your call centers. And the scripting portion-- once you see it and once you practice it on your own and you create a couple of scripts-- it's not really that difficult. So throughout this course, we'll go through several different scripts that you'll see me create from scratch that you can also use in your environment.

1:21But I hope to inspire you to create your own scripts that would be perfect or suitable for your call center. So, at the end of the day, everybody's scripts are a little bit differently. I've had colleagues that will have one way of doing it compared to someone else that has a totally different way of writing that same script but accomplishing the same angle. We'll also go over the Cisco Finesse desktop, the reporting aspect of Contact Center Express, and the overall administration of the UCCX server. So, as I stated, I'm really pumped about recording this content. And I thank you for taking the journey with me.

1:51And I'll see you in the next video.

What is UCCX?

0:00[MUSIC PLAYING] So in this Nugget, we will start the discussion of UCCX by talking what is exactly Contact Center Express. You may also hear UCCE or PCCE, that's the Contact Center Enterprise Solution, and we'll briefly talk about that. And finally, we'll go over the several different versions of CCX. When it comes to UCCX or Unified Contact Center Express, this is a Contact Center In A Box solution.

0:35So now when it comes to call centers, we actually use it every single day. For example, one hour ago, my internet went down in my home and I had to call my provider. So once I called in, I reached an IVR-- which stands for Interactive Voice Response-- then I choose an option, which I believe was one, for support. I listened to some music on hold, so I knew I was in queue. And eventually, I was routed to an agent where we then started to troubleshoot and discuss why my internet was down. So in essence, I head down to a call center where I was able to find-- or the system that they manage was able to find an agent that was available to take my call.

1:12And when it comes to a call center, UCCX allows us to handle those customer contacts, either if they come by phone, maybe they come via chat, or maybe they come via email. So when it comes to UCCX, which you would often hear me or many others refer to as CCX, Contact Center Express, or if you read all your documentation, you'll see IPCC, which stands for IP-based Contact Center. But the UCCX application gives us features that are made available for us to build this call center environment.

1:46We have the option for ACD, and this is how we route calls to our agents. And this is done a couple of different ways, which we'll see when we start configuring CCX. But we can assign skills, for example. So maybe if I hit option one for Spanish, I want to route that call to agents who only speak Spanish. Or maybe option two for sale, so I want to write that call to only agents that are in that sales department or have the tools to answer those sales questions from our customers. So when it comes to ACD, think, this is how we distribute our calls in our environment.

2:20We also have IVR, so Interactive Voice Response, and this is where we can provide voice menus. So we can provide option one for sales, option 2 for support. This is done by either DTMF-- and that's that Dual-tone Multi-frequency, or we could provide the caller the ability to say, "One", or "Support". And then that call will be routed based on whatever the caller spoke. We also have Computer Telephony Integration. And if we look at the definition of CTI, it allows us to leverage computer processing functions.

2:58Well, our agents either receive or make phone calls, but what are some example of these computer processing functions? For example, this agent here may want to control her physical phone from her PC via the Finesse Agent Desktop, maybe to make a call or terminate the call. That's done by using CTI. Or maybe when a customer calls in, before the call is presented to the agent within their screen, they're populated with the customer name, the account number, and other information pertaining to that caller.

3:29And that's done by doing a database dip or referencing 4 database. When that information is presented to the agent, they have all the information they need in order to better serve their customer. That's also perform via CTI. So when we say Contact Center In A Box solution, we are referencing that ACD, IVR, and that CTI integration to allow us to handle our calls in our environment in the most optimal way possible we can serve our customers. So throughout this course, we'll focus on CCX, all the different pieces that we can configure via the application.

4:05We'll also look at scripting, that gives us total power on what the caller experiences when they call in to our call center, the prompts that they hear, if they hear a menu, how they're routed to an agent, for example. And this part seems to scare a lot of people off, and I'm far from a programmer, so I would never consider myself being a programmer, but we'll go through several different scripts, and we'll build them from scratch, so you can see how they're created. But once you get the hang of it, then at that point, the possibilities are endless into how you want your call center to behave when a caller calls in.

4:39But this is where I think this is cool is because you can truly customize your call center to give the customer the best experience possible. So when it comes to CCX, you might have heard Packaged Contact Center Enterprise or PCCE, or maybe Unified Contact Center Enterprise or UCCE. So with UCCX, this is made for up to 400 agents. So in the documentation, you will see this referred to as small or medium business. And definitely, don't let these small or medium-sized business scare you off, I've had the application deployed in every environment that I have worked at.

5:17And when we say 400 agents, that is concurrent. So 400 agents logged in at the same time with a match of 2000 configured agents. Now, there's a scenario where we needed to get past this 400 number, that's when you would look at these other solutions, or you can set up a second UCCX cluster. So you easily could have your CUCM environment, and have cluster one of CCX integrated with CUCM, but you could also have a second cluster integrated to that same CUCM cluster.

5:51So I've seen this when you want to get past this 400 number. I've also seen this where this cluster has a very high profile call center. So this is what makes the company money, so we want to give them a dedicated cluster while every other IVR or every other team is on this second cluster here. Because if this one goes down, it's not as impactful to the bottom line as if this call center went down there. So once you start getting into a larger enterprise, that's when you will look at PCCE or UCCE.

6:23So in Packaged Contact Center Enterprise, we have the ability to have up to 12,000 agents take phone calls at the same time. With Unified Contact Center Enterprise, that number jumps to 24,000, that's a lot of agents. Now when it comes to architecture, CCX is very different from Contact Center Enterprise. With CCX, you have one or two servers, if you have high availability, performing all of the functions for a call center. With Contact Center Enterprise, you have many components involved.

6:56And those components all are responsible for different features within the call center, so it's definitely a different beast. When it comes to scripting, the scripting is different in both solutions. So just because you have a script that you've created within CCX, you cannot port that over to CCE because it's just a different scripting altogether. So in the event that you're looking at way more than 400 agents, then you will have to contact a Cisco partner to start having those conversations to deploy the enterprise solution in your environment.

7:29And then if you want a cloud solution, we have our Webex Contact Center. So again, this is a different animal, but the scripting here is also different. It's all cloud based, so you don't have any on-prem equipment. The agent desktops are also different. So what the agents use to handle their phone calls, and chats, and emails. And then your environment, especially your CUBE, may need some additional configuration, and also the proper licensing, so you can have call flows from your environment over to the hosted cloud Webex Contact Center.

8:02So in this course, we're focused on CCX, but we want to make you aware that there are other solutions depending on the number of agents that you need, or if you want to stick strictly to on-prem-- or I'm sorry, hosting and not have anything on-prem. So here we have additional features of the Contact Center Express also provides [INAUDIBLE] the inbound voice. That's when someone calls into your IVR-- and somehow his neck doesn't look right to me. There you go. So someone comes in and they hear a menu with prompts, and they're routed to an agent if you choose to do so.

8:35Maybe you're collecting digits. Have you stated your router to an agent? Maybe you want to advertise your position in queue or maybe wait times. But orders can be provided when someone calls into your call center. We also have outbound campaigns. So instead of having customers call all this inbound, we are calling them outbound. To better understand this, let's discuss a couple of scenarios. So I used to work for a furniture company that when you bought furniture, they would call you days before to tell you that your furniture will be delivered.

9:06So therefore they want to confirm the appointment. That was a outbound call made from our environment to the person there based on the phone number that they provided. So that was used to confirm their delivery. Maybe a doctor's office is calling you to confirm your appointment for next Monday, maybe someone is calling you for a customer survey. For example, we know it's you calling into our call center. How did we do today? We also have the option to do agent email. So we can route these emails to agents just like you would a phone call, and those agents can handle those emails.

9:38Currently at the time of recording, agent email is only available through exchange, or supported through a change, or through Office 365 along with Gmail. It also requires you to have Cisco social minor which is another application. And social minor handles the chat and email channels. So it handles that chat or email flow to the client who either launched that chat maybe from a website or probably from a website, or an email that was received on the agent desktop.

10:10You also have the option to connect to an agent via a webchat. So this is nice when someone can browse to a website, then they can have a pop up there and you can be routed to an agent directly. You can chat with an agent instead of being there on the phone. So I could be working at the same time while I have an agent conversation popped up in a different window. We also have historical and real time reporting that provides us reports about our call center environment. Maybe how many abandoned calls we have, or maybe we want reports about our agents logging in and logging out, or maybe we want reports of our agents in regards to the state that they're in.

10:50So when we talk about agent state, and agent can take a call by being ready or there won't be offered the calls if they go, not ready. But there are different states that we can have, and therefore you can run a report to see Bob, for example, how long he was in one of these states. Bob will over reports later, but you have so many different reports that someone, a supervisor, or a customer manager can run against their environment. And then we have our fiscal finance desktop. So in previous versions of UCCX, I think 10 and before, we had the CAD client.

11:25And that was Cisco agent desktops. There was a piece of software that you would have to install on a client PC so they can have that software to help answer calls or handle those calls. As of version 11, this has gone away and now we only have the web based Cisco Finesse. So Cisco Finesse is the web interface for agents and supervisors to log in, change your states, and also receive those phone calls. And what's nice is that there is no software to install. And there was a little bit of a pain because if you upgraded UCCX or applied an update, you also had to update the software that these clients were using.

12:03And if you have 300 agents out there for example, not only do you have to be concerned about upgrading UCCX property, but we also have to be concerned with updating this client software for all those agents so they can take phone calls. But now with the web based Cisco finance, we don't have to worry about that. And then finally, there are different versions of UCCX that's that you can run. And you can run a unified IP IVR. So with this IVR, you can play prompts. And when I say prompts, it's a wavefile. So that's the sound that you hear, thank you for calling the company ABC.

12:35Press one for that or press two for this. But with this IVR only solution, we don't have that ACD functionality. So we could not route calls to agents in our environment. So this was usually used to connect a system or provide IVR functionality to UCCE or Contact Center Enterprise. But it can also be used to build IVR only solutions. So maybe you have an IVR that just provides information, but there's no need to actually route to an agent.

13:06We also have enhanced and premium. So if you're looking for that inbound voice and I'll use abbreviated here, enhanced and premium would definitely give you that. If you want HA, High Availability, enhance and premium will also give you that. What if you want to have an outbound IVR? As a case, you have to go a premium because that's not an option for enhanced. What if you wanted to do agent email or agent chat? That's also an option for premium and not enhanced. What if you wanted to do some integration with databases?

13:37Again, that's an option in premium now available in enhanced. So choosing what version that you need in your environment really depends just on that. What are the requirements for your environment? And now as a version 12, UCCX is now part of that Flex licensing that is a subscription model that its goal is to simplify licensing. So we definitely won't get into licensing here, but wanted to make you aware of the different UCCX versions that are out there. So in this Nugget, we went over and start our discussion on what exactly is Contact Center Express.

14:11And pretty much, it's just a call center in a box. So it allows you to set up a call center environment that is highly flexible and customizable so you can serve your customers. We also went over some of the features of UCCX and also we talked briefly talked about Contact Center Enterprise and how that solution is meant for larger deployments if you need to go beyond that 400 agent number or limitation of UCCX. And we also went over different versions of UCCX when it came to licensing the IVR solution, enhanced, and premium.

14:43And then that's not it, but we're going to go with different terminology that you may hear when we're talking about UCCX, otherwise skills, and resourcing, CSQs. So we'll discuss what those are. I hope this has been informative for you. I do thank you for viewing.

UCCX Terminology

0:00[MUSIC PLAYING] So in this Nugget, we'll discuss some terminology when it comes to UCCX. Sometimes you'll read documentation or have conversations with other folks. And they'll use these terms. And if you're not familiar with them, you might get lost. So in this Nugget, we'll review those terms and see what they mean. First, we'll start with CTI-- and we already briefly spoke about this-- Computer Telephony Integration.

0:30This allows our computer systems, our different applications, to interact with telephony. So maybe we are trying to interact with email or text messaging or maybe live chat. So when it comes to CUCM and Contact Center Express, we use CTI here by creating, quote, "fake phones" on the CUCM side. They're really CTI ports. And that's how we are able to send phone calls from CUCM over to CCX by using these CTI ports, which, at that point, UCCX will have an application-- which we'll get into later.

1:08But then we'll execute a script, so it can handle that call. So first, we have CTI route points. Now I've included screenshots here because I believe a picture is worth a thousand words. And if we just talk about this, you may get it. You may not. But if I show you pictures, then we may have a better understanding of what the CTI route point actually is. So a CTI route point is just a number. It's actually an extension. But it's a number that we can dial to reach certain CTI-based applications, like CCX. Here we have a screenshot within CUCM.

1:39Anytime the CTI route point is dialed, CUCM then knows where this call should be routed to. Now, in CUCM, they're called CTI route points. In Contact Center Express, they're called triggers. And, again, we'll see this when we configure this. But we can see the extension associated with this CTI route point is 7778. And the trigger associated with this application is also 7778. So a CTI route point does not terminate the media. They just use it at the first point as far as call routing to Contact Center Express.

2:10Now, when CCX receives a call from CUCM, it attempts to find a see CTI port. And this is what I referred to as a fake phone, as a virtual phone, on CUCM. It allows us to take calls or make calls and is also responsible for playing those prompts that you may hear on an IVR. It's also responsible to collect data. The CTI port is what actually terminates the media on the UCCX server. So, again, CTI ports are just virtual ports that allow the call to be established and is used to route the media for that call.

2:45And we see later, when we'll install and configure CCX, the CTI ports are seen on CUCM just like ordinary phones. And in fact in registration, you'll see the IP address. An IP address that is being used is the IP address of that UCCX server. Next, we have call control group. And a call control group is a group of CTI ports. Now, we can have multiple call control groups in our environment. And we create these groups to control the CTI ports or this group of CTI ports. And you may ask, well, why would you want to create separate groups?

3:18And we'll see later, not shown here, but we have options such as partitions and also calling search spaces or maybe the music on hold setting. But there's additional settings that we can apply on a per call control basis that we might need to do so based on whatever application is using this call control group. And, again, we'll see this when we go through the install. But the screenshot here, here we have a single call control group. We have a number of ports, being 10, and starting with the directory number of 7,000.

3:50If I go to the previous screen, here's where we see those 10 ports starting from 7,000 all the way to 7,009. So this is our CTI ports. And they're created once we configure our call control group. And, again, just for now, we're focusing on the terminology. And, later, when we go through the install, we'll put all these pieces together. Next we have a CSQ, or a Contract Service Queue. A CSQ defines on how we route calls to an agent. So, for example, you may have Bob here, who is part of the sales CSQ.

4:25Then you might have Sarah here, who is part of the support CSQ. So when someone calls an IVR, a script is run. And within a script, I say, find an agent who's part of the sales CSQ. So at that point, that call will be routed to Bob because he is part of the sales CSQ. Whereas Sarah, who's part of the support contact service queue, would not get routed that call unless the option for support was chosen on the IVR. Next, we have a JTAPI application, standing for Java Telephony API.

5:03And this user is used to control the CTI route point and the CTI ports on CUCM. In fact, we'll see later, when we create these CTI ports and applications, this user, or whatever user we name this, will be associated with those ports automatically. And a JTAPI user is how UCCX knows that it has a call coming in that it must handle because, as we stated, these calls are coming in via the CTI route points, going through those CTI ports that are defined.

5:36In fact, here's a screenshot of my lab environment here. But these CTI ports and these applications were automatically associated with this end user without me having to do it manually. Next, we have the RMCM application user-- RM being Resource Manager, CM being Contact Manager. So the RMCM application user is responsible for monitoring the states of our agents in our environment and also selecting those agents based on the agent skills.

6:08The Resource Manager controls the agent states and also monitors the agent's phones. The contact manager queues the call and also offers that call to the available agent as requested by this resource manager. Next, we have a resource. And a resource is just another name for the agents in your environment. Here's a screenshot within CUCM. We have agents 1, 2, and 3 and also supervisor. Within CCX under Resources, we have those same folks-- supervisor and agent 1, 2, and 3.

6:41And then we have resource groups. When we create our CSQ, our contact service queues, we can configure them to use resource groups, which is a collection of agents that can handle the call. The drawback here is that one agent can only be associated with one resource group. Now, this is different than skill-based routing because one agent may be part of the sales CSQ, support CSQ, and maybe accounting CSQ.

7:11So this agent here would have the ability to answer any phone call from any of those three CSQs. So, because of this, you'll see a lot of skill-based routing configured for a CSQ opposed to user and resource groups. So, as we just talked about, with skills, these skills can be associated with multiple CSQs, which is not the case with resource groups. Each agent could have multiple skills. So this allows you to be very flexible and granular because you can have several agents in your environment that have already assigned more than one skill.

7:45So it's very common for folks to be assigned more than one skill because they have the ability to answer calls from different queues in your environment. Then, finally, we have Teams. Teams-- along with a bunch of other stuff-- threw me off when I first got into voice because I thought it affected call routing. And the reality is that it does not. This is a grouping of agents that can be monitored by the supervisor. So it does not affect call routing whatsoever. So then you may ask, well, what is it used for? The supervisor can look at the status of all of its agents to see if they're logged in, not logged in, if they're, ready not ready, how many calls have they taken.

8:23So it's really a way for a supervisor to manage his or her team. So, as I stated, these are some of the terms that you'll see in documentation or you may hear folks use in conversation. So as we go through the install and configuration of CCX, we'll see these terms pop up over and over again. I just wanted to give you a quick review of what these terms meant to give you a good foundation for when we go over the installation and configuration of CCX. I hope this has been informative for you. I'd like to thank you for viewing.

UCCX Call Flow

0:00[MUSIC PLAYING] So in this Nugget, I want to take the time to go over the call flow for Contact Center Express. So what happens when a call comes in from the PSTN or maybe ITSP, goes through our voice gateways, goes over to CUCM, and eventually goes to Contact Center Express? How is that call routed? So in this Nugget, we'll do just that, go over that call flow. So here we have a scenario where the customer calls an 800 phone number.

0:30Now, it doesn't have to be 800 phone number. Many corporations have a toll-free number that could be advertised on their website or maybe on business cards or maybe ad on TV. But a customer calls in via the PSTN or ITSP into our environment. So in our environment, the call goes into our CUBE or comes through our CUBE. And this could be voice gateway with PRIs or maybe a voice gateway with FXO ports. But that call comes with information about that call. And their information being the DNIS, or the Dialed Number Identification Service, which is the called number.

1:07So let's say the called number was 1-813-555-4000. So CUBE then sends that DNIS information-- that 813-555-4000-- and CUCM then asks, how do I route this call? CUCM has a CTI route point associated with that call number. So let's say, for example, that 1-813-555-4000, there's some transformation of the number, either at CUBE or at CUCM. But at the end of the day, that number is 4000.

1:38And that 4000 is associated with a CTI route point on CUCM. So therefore, CUCM has a route point with the extension 4000. And CCX has a trigger also assigned 4,000. So if you remember that JTAPI user, CUCM now has a CTI route point 4000 that's associated with this CCX JTAPI user. So, next, Contact Center Express looks at a application that it has configured on the server.

2:10And that application has that trigger associated of 4000 in our example. And it then looks for a call control group that's associated with that application. And, remember, that call control group contains a list of CTI ports. So then CCX finds an available CTI port, then replies to CUCM with the directory number of this CTI port. And, at this point, CUCM can begin to set up this call between itself and Contact Center Express.

2:41So, as we stated, CUCM now knows the extension of where it should send the call to-- it being the CTI port. So now the application starts to execute that script that's associated with that application. And then here is where the magic happens. Does it play a menu? Does it route a caller to an agent? Does it need to collect digits so it can perform a database lookup? And this is what we'll spend the majority of our time is writing these scripts for different scenarios to do different things. So in the event that this script is attempting to find an agent, once he sees an available agent as in the current ready their status, that call is routed to an agent.

3:21And then, at that point, the customer and the agent are now talking to each other. And this call then continues until either the agent or the caller ends that call or terminates that call. So I wanted to back up here and just further explain when this call comes into our environment through CUBE, the RTP stream is initially between CUBE and CCX via that CTI port that was initially chosen. And the CTI port is what plays the prompts, the menus. And that, of course, is played to this call right here that calls in.

3:53Once that call is routed it to an agent, then, at that point, the RTP stream is not between the voice gateway or CUBE to CCX but, rather, from that CUBE directly to the agent who answered that call. So all this to say that the media does not pass through CUCM. It's being passed initially from the gateway CUBE over to CCX. And once it finds an agent, then that stream therefore is sent directly to the agent from that CUBE or voice gateway. So in this Nugget, we went over a call flow, what occurs when a customer calls into our environment through our call center.

4:28And now we know why we spoke about the different terms or terminology when it came to Connect Center Express as we used some of those terms in this call flow example here. I hope this has been informative for you. I'd like to thank you for viewing.

Features in UCCX 12.x

0:01[MUSIC PLAYING] So in this Nugget, we'll go over some of the new features in UCCX12. In our demo throughout this course, I'll be using UCCX12.5, but I just wanting to go over some of the new features in the event you're on an earlier release. So I wanted to take a second, in the event you are not on 12 some of the features that you would look forward to when you eventually upgrade. Now, my career, I've been fortunate enough to work on UCCX version 8.x.

0:34And in fact, this is the first version where Cisco switched from running from a Windows server. So that was version 7 and previous versions. And now, it runs on a Linux operating system. So in fact, this is the norm, especially when it comes to their other platforms like CUCM and Unity Connection and Cisco Emergency Responder. So at the time of this recording, version 10.x, I think the last day of support is January 2022. And there are many folks still running version 11 in their environment.

1:06And there is no end of support so far. And then you have version 12. So I want to take this opportunity just to go over a few features that you would expect to see-- or would see on version 12. One big change is the Finesse Agent Desktop. And we'll see that when we go through the installation and eventually set up our call center. But the Agent Desktop got a refresh from version 11 to 12. So it's a lot more streamlined and optimized for the agent and supervisors. In fact, if I do a quick search for it, Cisco Finesse Desktop, and then let's go to images.

1:42So here's the look and feel of the Finesse Desktop versions previous to 12. And then if I do a search for 12, what we see here-- and if I can eventually find a picture of 12-- here we can see how they redesigned the Finesse Agent Desktop with the new look and feel. We also have calendar management for your supervisors or your managers inside your call center. Previous to this, if we wanted to modify the holidays or maybe the business hours, what would need to happen is someone from the UCCX team would have to modify this for the call center.

2:19And when this was modified, this was done within the script itself so someone knew how to manipulate the script to modify the holidays and business hours. But now, administrators or call center managers or whomever you give right to, have the ability to modify this within the UCCX admin web page, so giving the supervisor flexibility or the administrator to make those changes. Now, later in the course, we'll see this in action. But I'll also go through the manual way of modifying the holidays and business hours via script in the event that you're not on version 12 already.

2:55We also have team messaging. So a supervisor here can message their team. And then they'll get it on each desktop immediately. They can also control the amount of time the message appears on your screen, again giving the supervisor another way to communicate with your team. Now, of course, this is optional, right? Because if you already have maybe slack in your environment, or maybe you have teams or whatever method you use to instance message, you may use that platform instead. But it's built in within Contact Center Express version 12.

3:26It's also easier for our supervisors to Queue Management so they can manage resources-- and remember, resources are agents-- within their CX queues or their contact service queue. They can remove and add agents. So if the supervisor sees that maybe one queue is busy-- so let's say these two deal with sales. And these two deal with maybe support. So if the sales queue had maybe 20 callers in queue, and these two individuals here were skilled enough to take calls from the sales queue, he can change them to be part of the sales queue temporarily to help bring this number down.

4:04Because that queue has a lot of callers waiting. And we also have application management where the same supervisor you are giving him or her the control to manage or change the IVR prompts Then we have Outbound Campaign Management. So again, we're giving our supervisors the power to manage these outbound campaigns. So they can schedule Outbound Campaigns. They can enable them, also disable them. And they can also import contacts that should be contacted via the Outbound campaign.

4:36Also, believe in 12.5, an agent can take the desktop and move the widgets around to whatever they deem appropriate for them. And a supervisor can do the same thing. Before this, if you wanted to change the layout, again, someone will have to get involved from the CCX team or voice team and make that change to that agent desktop, and then deploy it to that team or those agents on that team. So when it comes to version control, we're really giving the supervisor the flexibility to do more, to manage the calendar and the business hours, to manage their team, to manage their queue, to deal with IVR prompts.

5:12So this helps alleviate the voice admin from having to do all this and getting a page on a Friday at 4:00 PM because a call center needs a change to be done. So we're giving that flexibility to the supervisor or manager here to do that themselves. OK, in this Nugget, I simply wanted to go over some of the new features in Version 12. And we definitely will demo and configure many of these features that you see here. I hope this has been informative for you. I'd like to thank you for viewing.

UCCX High Availability

0:10So in this Nugget we'll discuss HA, or high availability, when it comes to Contact Center Express. As with anything, you never want to have a single point of failure because, at that point, you could go down at any moment in time. Having redundancy helps to keep the services that you offer to your customers up and running. So when it comes to Contact Center Express and high availability, we're talking about having a cluster of two servers. You have one server being a primary. Then you have a second server being a secondary. And then when we look at Contact Center Express later, the primary is called the master node, and then the secondary is called the slave node.

0:46So when it comes to this cluster, this is not an active-active relationship. One is active, and then the other server is standby. So when we have a cluster of two nodes, only one server can be the active server. So all of your clients will always be connected to the active node within your cluster. And in the event something occurs with the active node, then at that point they will fail over to that secondary node within your cluster. This allows us to have redundancy when it comes to our environment.

1:19And it becomes very important because you may have a scenario where your WAN link goes down, or maybe you have a hardware failure. Maybe the UCS server that is home to this CCX server it's hard drives to go bad. Or maybe you have a service within CCX that fails. We all have encountered that. I know I have. I have one scenario where I had a bug where there was a service on the active node that will bounce every 10 minutes, therefore failing over the call center to the standby node. So what happens during a failover?

1:50And I'm talking in regards to if there are calls in queue or if an agent is talking to someone already on the phone. So I said, we have our two agents here, and they're currently talking to a customer. And then there is maybe, let's say, five calls that are in queue. So in the event we experience a failover from the active node to the standby node, all those calling queues are lost. But these agents who are currently on an active call, those calls were not dropped and should remain active.

2:20And in this Nugget, we're just talking about high availability, but I hope to show you the failover process later in this course. So when it comes to CCX, we can either have a LAN deployment or a WAN deployment. Now when it comes to LAN, both of their servers are located on the same side or same campus. When it comes to a WAN deployment, each CCX server is located at a different site. So because of this, failover occurs at two different times if you're doing either WAN or LAN. So this is the active node, and this is the standby node.

2:52A heartbeat is sent every one second. So a heartbeat is simply checking, hey, are you there? I sure am. And this occurs every second. In the event that three heartbeats are missed, the standby node goes, ope, the active must be down. I will become the active CCX, and starts the failover process. Now over WAN deployment, the same thing occurs-- so a heartbeat is sent every one second-- but the failover occurs if 10 heartbeats are missed. So with a LAN deployment, this failover is happening a lot sooner because this is local or the two sites are both-- or the two servers are located within the same site.

3:30But a WAN deployment we have 10 heartbeats because of the fact that these two servers are not located within that same site. And you can't configure this, and this is pretty much written in stone in the configuration. And you can definitely see this happen, especially if you have any delay in your network links, or something occurs where just for a moment you lose network connectivity, you will see that your Contact Center Express will failover to s standby node. Then you come into work, and say, well, why is my Chicago node that should be standby now active?

4:00And come to find out, at 2:00 o'clock in the morning there was a hiccup in the network that caused that failure to occur. So when it comes to high availability, there's an expectation of the maximum roundtrip between two Contact Center Express servers. So between Contact Center Express servers, we're talking 80 milliseconds. The maximum roundtrip between a CCX server and a CUCM server should be 60 milliseconds. So if you go to the web and do a search for solution design guide for Contact Center Express released 12.5(1), and I go to page 81 here.

4:34Here we're talking about the network requirements, and that's where you see where it's 80 milliseconds between Contact Center Express servers and 60 seconds between Contact Center Express and CUCM. We have a note here. It says do not use the ping utility on the Contact Express server because it will not provide an accurate result. Why? Because the ping is sent as best effort. Therefore, we have to verify by using the closest network device, probably your switch, and the Cisco switches are available to do this extended ping, allows us to specify the type of service.

5:07And type of service of three is used for call signaling. So for example, if I jump on my CUCM servers because we haven't built our Contact Center Express environment yet, I can do a utils network ping. I'm on the publisher currently, and I can ping the subscriber. Then I get a response time here. The documentation is saying don't use this measurement because it's only best effort. So instead, I can go to my switch that's local to the Contact Center Express, or CUCM server in this case, and do ping.

5:39Now I have additional options that I can do. So I do IP, the target address. That saves my publisher node. I'll keep the default for most of this, but I'm waiting for the extended command I want to hit yes there. Because if not, this ping will also be sent best effort. So here I can specify a source address or source interface, which I definitely would in a production environment. I probably would have many there. But for now, I'll hit enter. The type of service, 0 is a default, which is best effort. I'll choose 3, which is used for call signaling.

6:10Then the rest I'll just keep the defaults there, and hit Enter, and then eventually I get this value here. So this number here is my round trip travel time. And that does not look like it says trip so I'll fix that real quick. Then we have three different values here. The 1 is the minimum travel time. The 2 is the average travel time. And then the 8 there is the maximum roundtrip travel time that we experience.

6:41So now if my subscriber know we're at a different site, then I could do that same command. We'll do IP, our target address would be my subscriber nodes with .2. That's fine. We'll get back to the option. Do you want to run the commands? Absolutely. And then we'll do type of service of 3. And the rest, I'll keep the defaults. And then here is our values for reaching my subscriber node. Let me suggest if you want to dig deeper within quality of service, Jeff Kish helped me create CLCOR, and he went in great detail about quality of service, and did an outstanding job.

7:13So I definitely recommend that you check out CLCOR, and watch Jeff Kish go over quality of service. So I wanted to focus a minute on this WAN deployment here. So this is where you have two servers. Maybe the active node is in Tampa and the standby node is in Chicago. So here we are providing site redundancy. Now each site should have a CUCM server that is running the CTI manager that UCCX uses to communicate to. And this is what you see here in this bottom screenshot here.

7:45CUCM has this Cisco CTI manager service running. But that should be local to each node, or that's the recommendation. If you're using automatic speech recognition or text-to-speech servers, they also should be local to each site. The primary and secondary CUCM servers that CCX is using should also be local. This is important when we're talking about the AXL user. So this is how Contact Center Express retrieves, modifies, removes any data or adds to the CUCM configuration database, especially when we're creating CTI reports, for example, or triggers.

8:21We also have our JTAPI. And as we discussed it before, and this is how CCX takes control of those CTI route points and CTI ports. That's how it places a call, or maybe answers a call to one of those ports. And then we have RMCM, and that's responsible for monitoring the states of our agents in our environment, and also selecting the appropriate agent to answer a call from queue. Now if these three are not local to the Contact Center Express server, and in the event of a failover, it has to go over a WAN, you may experience long delays for your agents to fail over to that secondary node.

8:59That is why they recommended that these all should be local to wherever the Contact Center Express server resides. And then we should have different CTI ports specified for the active node, and also a different set specified for a standby node. And these can be in different device pools, or regions, or locations. So one of the most important services when it comes to Contact Center Express is this CCX engine. This is one of the services that communicates with CUCM, which is responsible for processing and accepting all the calls that comes into CCX, for example, it executes the scripts, your system management and administration, that's how it monitors the agents.

9:38Pretty much it's one of the core services that runs on CCX. And this is the service that will restart in order to fail over to the other node. So as we talked about, in the event you have agents currently helping customers. So they're talking to customers. And then you have those callers-- that's one tall guy. But then you have caller in queue. Let's say you've got 10 calls in queue. During failover, you lose all your calls in queues. So they all drop. So these agents talking to customers, they will remain active during this failover process until they are re-logged in to Finesse.

10:13So let's say we have a scenario where Tampa is the primary node, and then Chicago is the secondary node. And something happens at 9:00 AM in the morning, and your call centers fail over to your secondary node in Chicago. So something occur with the server here. You restore services, and you bring your server back up. Once this server is back up, currently when Chicago is active and Tampa is now standby, will this failover automatically happen back to Tampa? And the answer is no because you wouldn't want this to happen again at 2:00 o'clock in the afternoon to fail over back to Tampa and have all your calls drop in your queue.

10:50So all this to say that we have to manually fail over back to Tampa. This is done typically after hours. Then after hours, we can restart the secondary node or restart the service here, and then call failover to happen once again where now we fail back to our Tampa node, and then this becomes standby again, and then this becomes active. So just because the Tampa server's back up and running, the failover back to Tampa has to be a manual process. Now if something were to happen here, but this node goes down, then the failover would initiate once again back to Tampa automatically.

11:27So also keep that in mind when you have servers, maybe you have a wallboard server, a server that displays stats on a screen of how many calls are in queue, or how many agents are logged in. Maybe you have a third party server that performs a certain function to your call center that ties into your Contact Center Express. So what occurs if you only have these third party servers only associated or configured to talk to your primary node, and then you have an issue where your primary node goes down?

11:57So your call center will fail over to your secondary node, but then all these services that your agents in your call center are accustomed to would no longer be available. Again, this only occurs if however you configure these third party servers if you don't configure them to work when the primary node is active and also if the secondary node is active. So keep that in mind when you're deploying these third party or additional solutions in your Contact Center Express environment. And you can have many different solutions tie into your Contact Center. I just spoke about wallboard and third party.

12:30But, for example, the ASR, the servers, automatic speech recognition servers, your text-to-speech, that's something just to think about because I've been in environments where the third party servers were only configured to talk to one node, and then when we failed over because we had an outage of some sort, there was a rush to fail back. Even in the middle of the day, the business would happily induce another outage because they needed to restore services to those third party servers. So again, I'm barely touching the surface here when it comes to the design and high availability.

13:02I just wanted to give you something to think about when you deploy this solution in your environment. I definitely recommend going over the guide here and the several guides you'll find on Cisco's site. And many times, you'll be dealing with a certified Cisco partner that helps you deploy the solution, and they'll be on top of this already because they've deployed this many, many times. So in this Nugget, we went over high availability. We discussed a cluster having two nodes, one being active and one being standby. And we also went over some of the network requirements when it came to design.

13:34And I didn't talk about bandwidth here because in a later Nugget, I'll go over a calculator here that helps you calculate the amount of bandwidth that you need in your environment to support Contact Center Express. I hope it's been informative for you, and I'd like to thank you for viewing.

Frequently asked questions

What does the UCCX Introduction to Unified Contact Center Express lesson cover?

This 52-minute lesson explains what Cisco Unified Contact Center Express provides for a contact center and compares the IVR, enhanced, and premium license versions. It also covers core terminology, a full call flow, new features in UCCX Version 12, and high availability. That gives the team member who takes it a shared vocabulary before the course moves into installation, scripting, and configuration.

When does a contact center need Cisco Contact Center Enterprise instead of UCCX?

The lesson positions Contact Center Enterprise for larger deployments that need to go beyond the 400-agent limit of UCCX. IT Directors planning growth can use this distinction to decide early whether UCCX fits the size of their contact center.

How do CTI route points, CTI ports, call control groups, and the JTAPI user work together in a UCCX call flow?

A call reaches a CTI route point on CUCM that is associated with the UCCX JTAPI user, and UCCX matches that trigger to a configured application. UCCX then finds an available CTI port in the call control group tied to that application, and the application script runs to play menus, collect digits, or route the caller. When an agent is in the ready state, the call is routed to that agent and continues until either party ends it.

How does UCCX high availability and failover work between active and standby nodes?

A UCCX cluster has an active node and a standby node, deployed either on the same campus in a LAN deployment or at different sites in a WAN deployment, which affects failover timing. The nodes exchange a heartbeat every second, and if three heartbeats are missed the standby node treats the active node as down. The trainer also advises Team Leads to make sure third-party servers such as ASR and text-to-speech can reach both nodes so a failover does not force a disruptive fail back.

What experience should a team member have before taking this UCCX course?

The catalog positions the course for new IT professionals with at least a year of Cisco collaboration experience and for experienced network administrators validating UCCX skills. Programming experience is not assumed for scripting, since the trainer builds several scripts from scratch so learners can see how they are created.

How does this lesson fit into the full Deploying UCCX course, and how can a Training Manager track progress?

This introduction is one of 27 skills in a course that takes about 25 hours, 39 minutes per learner and later covers installation, scripting, agent routing, Cisco Finesse, CUIC reporting, and high availability topics. Training Managers can use Team Reporting to see per-learner progress and completion across the assigned team and export completion records for audit evidence.

Team training path

Turn this skill into assignable team training

This free skill is a preview of the courses your team can assign, track, and report on with CBT Nuggets.

What's next?

Ready to keep going?

For your team

Bring this training to your team

See how CBT Nuggets helps IT teams close skills gaps, hit compliance targets, and prove training ROI.

Book a Demo
Just need Cisco UCCX?

Learning on your own? Browse individual plans ($49/month, billed annually) →

Not ready to buy?
with no purchase required. Already have an account?
Book a Demo