Showing results for 
Search instead for 
Did you mean: 

AMA - Architecture & troubleshooting in Unified Contact Center Express

Tyler Langston
Community Manager
Community Manager

Ask Me Anything Event

From October 25 until November 8, 2022 - Architecture, design deployment and troubleshooting of Cisco finesse in Unified Contact Center Express

Welcome to the Cisco Support Community Ask Me Anything conversation. This is an opportunity to learn and ask questions about the latest advancements in Cisco CCX (such as Smart license integration with UCCX, VPN-less Finesse agent desktop), as well as the existing features for UCCX deployment, High availability, Real time reporting, CUIC Reporting Interface, Configurations and integrations (CUCM, Social Miner, Wallboard, etc). 


This event has ended - thank you for your participation!

Our experts


Aishwarya Viswanathan is Technical Leader for UCCX team in the EMEA time zone. She has around 5+ years of Cisco Unified Collaboration experience. She is currently associated with UCCX TAC team. Her skills include vast understanding of UCCX, CUCM and other Cisco Collaboration applications. She is working closely on UCCX and its other components. She holds the Cisco Certified Network Associate (CCNA).



Shivangi Jadon is Technical Consulting Engineer in UCCX Team .She has around 2  years of experience with Unified Collaboration products .She also has experience  with Full Stack Development ,Cloud Development, Scripting and Automation. She holds CCNA ,VCP and DEVNET certifications


For more information please visit; Collaboration / Contact Center sub-category.

* This event is free and open to all audiences, including business partners, network and telecommunications engineers, students, and Cisco customers.

17 Replies 17

Cisco Employee
Cisco Employee

How to perform a General Health Check on UCCX server:

1. Check “show status” to make sure there weren’t any ungraceful/unknown restarts recently and that CPU isn’t high and memory isn’t full. If disk space reaches 100% on any partition, file system corruption can occur and will require the server be rebuilt.

2. file view install /system-history.log to check if there were any ungraceful restarts.

3. Check "utils service list” and see all services are “started”.

4. Check "show network cluster” to verify both nodes are clustered.

5. Check "utils diagnose test” to verify DNS and NTP status as well as many other useful health checks.

6. Check “utils ntp status” to look further into the NTP issues. You want all NTP servers to be stratum 4 or lower (3 or 2 are best).

7. Check “utils dbreplication runtimestate” to verify platform replication after running 'utils dbreplication status'.
This is OS level database information and (for UCCX 10.X+) CUIC and Finesse configuration data. A status of "2" means replication is successful.

8. Check “utils uccx dbreplication status” to verify UCCX replication. Replication must be up for UCCX config changes to propagate to the secondary server.
You want to see "Local" for the primary and "Connected" for the secondary, and you expect all tables to be in the "Active" status.

9. Check the CCX Serviceability page to see if any services are in partial service or out of service and to see the status of all of the datastores.
This is located at CCX Serviceability page-> tools -> Control Center-Network services. You expect all services to be "In service".
If you see any in partial service, you may want to look into it, but it isn't always a big issue.

10. Check 'show process load' to see if any particular processes are consuming a lot of CPU or memory.

11. Check 'utils core active list' to see if there are any core dumps on the server.

12. To check any port connectivity issues between UCCX and another server, UCCX 11.5 introduced a command you can run: 'utils network connectivity <host/IP> <port>'.
In older versions, you cannot specify the port you want to connect to.

In addition to the above details, if you want to set trace levels and collect logs for any issues on UCCX- you can refer to the tech note linked below:

This document provides the list of relevant logs and also the tracing levels for some of the common issues seen on UCCX.

Please feel free to reach out on this forum so that we may assist with any queries or issues you may have on UCCX.





Hi - thanks for doing an event like this, I am excited to learn. 

My question is really basic: can you tell me what team specific auto-answer is? 

Hello whitelisa ,

A normal ACD call routing is as follows , Agent is in Ready State -> Selected for call and has an option to accept the call ->Accepts the call and is connected with caller .

Whereas with auto answer at team level ,if Agent is in Ready State ,It moves Directly to Talking state and is connected with the caller . This can be applied via CCX Administration ->Subsystem ->RMCM ->Team ->Auto Answer settings .Here the agent does not get an option to accept the call .This feature will be applied to all agents belonging to the team.

There are two options with auto answer :
1.With zip tone : Agent will be alerted with a zip tone that they have been connected with caller .

2.Without zip tone : Agent will not be alerted that the call has been answered .

Few things to note:

  • Agent must be in Ready state for the auto answer feature to work
  • The calls to non-IPCC extensions are not Auto Answered by UCCX.


Reference guides :

Please let us know if you have any queries.




Will you be doing a session like this for UCCE/PCCE soon?

Hello bill.king1 ,

We are planning a similar session for UCCE -CUIC in mid November .The details for the same will be shared on the community page . Thank you for your interest in AMA  .


This isn't architecture per-say, but is there going to be UCCX version 14?

Hi Elliot,

Currently Cisco is planning to release UCCX 12.5 SU3. There are no updates for UCCX 14.0 release as of now.




Frequent Contributor
Frequent Contributor

Hi team

I have an issue with a UCCX cluster, we changed IP/hostname from both machines. On the sub we set the new publisher, and this seems OK, but on the Publisher we used "utils uccx modify remote_IPAddress" and "utils uccx modify remote_hostname" but both commands return a "Command failed"

I sthis the right procedure? Or are there other commands that can be used on the publisher to tell where the new subscriber is?

Thank you


Hello JH ,

Can you let us know if you have changed the UCCX PUB to new IP address ,before going ahead with SUB settings ?

For the IP address ,the sequence should be roughly :

  1. Change IP address of PUB on SUB node via utils uccx modify remote_IPAddress <Old_IP_of_Publisher> <New_IP_of_Publisher> command on SUB CLI
  2. Change IP address of PUB via PUB CLI set network ip eth0 <ip_address> <netmask> <default gateway>
  3. Reboot all the servers
  4. Make sure system is functioning properly via
  5. If all looks good after PUB IP change move ahead with SUB IP change
  6. Change IP address of SUB on PUB node via utils uccx modify remote_IPAddress <Old_IP_of_Subscriber> <New_IP_of_Subscriber> command on PUB CLI
  7. Change IP address of SUB via SUB CLI set network ip eth0 <ip_address> <netmask> <default gateway>
  8. Reboot both the servers.

Rebooting is necessary after every IP change .Please refer the following for more detailed steps :


If the issue still persists you could check the logs generated on the node where the command failed via following steps:

  • Retry the remote IP change command and let it fail
  • Run the command to list the log files generated "file list activelog /syslog date detail"
  • The log files from the bottom will have the information regarding the IP change failure .
  • You can collect the logs to SFTP via "file get activelog /syslog/* compress" for review  or contact tac for further troubleshooting.

Cisco Employee
Cisco Employee

Troubleshooting steps if external NTP is unsynchronized on UCCX PUB :

  • Check if the UCCX node has connectivity with NTP server.
  • Ensure NTP is Linux-based NTP server with Stratum less than 3
  • Ensure LRO is disabled at VM level .To disable LRO on VM follow :
    • Click VM Options.
    • Expand Advanced.
    • Under Configuration Parameters, click the Edit Configuration button.
    • Click Add Parameter and enter a name and value for the LRO parameters:
      • Net.VmxnetSwLROSL | 0
      • Net.Vmxnet3SwLRO | 0
      • Net.Vmxnet3HwLRO | 0
      • Net.Vmxnet2SwLRO | 0
      • Net.Vmxnet2HwLRO | 0
    • Reboot the VM
  • Verify if the time sync is disabled on the VM host (Under options --> VMware Tools--> Synchronize Time with Host ), if not uncheck the box.
  • Virtual Hardware should be compatible with ESXI version .Ref: .To update the compatibility follow :
    • Shutdown the UCCX server gracefully via utils system shutdown

    • On the VM go to Actions-->Compatability-->Upgrade VM Compatability

    • Power on VM

    • Check the ntp status.


Frequent Contributor
Frequent Contributor

Thanks for the information. I forgot to tell you that we also change the hostname. In the procedure above when would you change the hostname. I changed the hostname and then you have the option to also change the IP address at the same time. This seemed to be working.

So inshort we have to chnage hostname (same domain) and the IP address from PUB and SUB

Thank you very much for your help

Uriah Erter

I am wanting to set the priority of a call as it comes in.

Two questions:

1) Should this step be introduced before the Select Resource step or after the call is queued?

2) Is there a way to capture the value of the call's current priority and that I can see it increment lower in the script?

Thanks, in advance for any help I can get on this.

Hello Uriah ,

The Set Priority is assigned to the contact so that it can have respective priority in the queue .Thus answering your queries :

1. It depends on what function you would like to achieve. The default priority of a call is 1. If you want to change the priority of call as soon as it enters the queue then the step will be before the Select Resource .If you want to change the priority of the call after the call has waited a while then the step will be in the Queued branch .

2.There is no UCCX Script step which can give the priority of the call .But you can initialize the variable ,lets say call_priority=1 , and then change it accordingly, and use it with Set Priority step .So this variable will have the current priority of the contact .You can check if the number is high or low and reset it to different number .


Sample example could be as below






Uriah Erter

sjadon, thank you very much for your reply! If priority is set on the contact and not the call, then is that contact prioritized against all queues or only the queue that the call is in? Also, if I create an "int" variable and store the priority in that, then want if increase the priority later in the script am I able to define by how much to increment?



Thank you again.


Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: