Professional Documents
Culture Documents
UCCX Best Practices
UCCX Best Practices
Cisco Unified Contact Center Express product is a fairly open product which is programmed by the customer or partner to run various types of scripts and upload documents, prompts and grammars, and even deploy their own custom code. All this flexibility can lead to memory and CPU issues if not used carefully. Below are some optimizations and best practices that will enhance the UCCX experience.
Americas Headquarters: Cisco Systems, Inc., 170 West Tasman Drive, San Jose, CA 95134-1706 USA
Large Scripts
Care should be taken while deploying very large scripts into the UCCX system. Since large scripts take up the limited memory of the UCCX Engine which is actually shared with all the logic for call processing. This is not an issue most of the time, since there is enough space for most needs but since there is no mechanism to judge the optimal size of scripts, this will remain a potential pitfall for the existing releases. An equivalent of large scripts is very large VoiceXML scripts. Here again since the whole script is loaded into memory for each invocation (each call) in the parsed form, it can lead to excessive memory usage and subsequent crash. Note that since VoiceXML scripts may be loaded from external web sites, the partner/customer may not be fully aware of its memory needs during execution. Once again such situation can be averted by pre testing these scripts.
Cisco Unified Contact Center Express and Cisco Unified IP IVR - Best Practices
Multiple Applications
While large scripts remain a potential issue, creating a huge number of applications which use the same script or very similar scripts can also lead to excessive memory consumption leaving very little for other activities like call processing. Again script developers can be imaginative and build logic inside the script to handle calls in different ways for different originating triggers. Thus, a single application can be deployed with multiple triggers. The script can be coded to handle the calls to these triggers slightly differently e.g. playing a different prompt or presenting a different language. Another way of customizing parameters for different triggers is to store the information either in a custom database or in an XML document that can then be read within the script to determine parameter values based on the dialed number. The point to be noted here is that with each application one script is loaded into memory. If the script happens to be the same one, then it is loaded multiple times using up precious memory.
CPU Optimizations
CPU Optimizations
Call Volume
This is always highlighted even before the system is designed and bought. So issues due to excessive call volume are not common.
Cisco Unified Contact Center Express and Cisco Unified IP IVR - Best Practices
CPU Optimizations
However, one must keep in mind that call volume is not just the BHCC or BHCA figure which is calculated across an hour or several hours. If there is a sudden surge in calls over a few seconds, CPU can peak and lead to dropped or failed calls. Please refer to the config and ordering tool to make sure that the system is within the specified guidelines for expected call volume.
Voice XML
VoiceXML scripts are in general more CPU intensive due to a whole lot of parsing of XML documents. When this is done real time in parallel to call processing, the later can be affected. Voice XML scripts should be deployed with care.
HTTP Requests
Usage of HTTP requests to query various kinds of status and real time information, when done very often, say every 3-5 seconds or so, it can cause extra load on the system in-terms of memory and CPU usage. The general impression is that since there is no call processing, it is OK. However one must keep in mind that these HTTP requests also need to be processed and they share the same resources CPU and memory as call processing.
Cisco Unified Contact Center Express and Cisco Unified IP IVR - Best Practices
Others
Others
Non-customary Usage of UCCX Database
UCCX Database server is for the exclusive use by UCCX components. Hence, customers are not allowed to create Databases and/or tables in the UCCX DB server. However customers can read historical data records for analysis where the canned reports do not suffice. In such cases, all DB access should be tested thoroughly by partner/customer to ensure that there is no impact to UCCX in terms of performance. Care must be taken to not leave non-functional DSNs since UCCX polls those periodically. There is not good method of judging if the DSN is temporarily down or permanently. Also even if there is virtually no limit on the number of DSNs configured, it should be used judiciously.
Cisco Unified Contact Center Express and Cisco Unified IP IVR - Best Practices
Others
This can cause pauses in the system with catastrophic impact on call processing as all the processes are forced to freeze for seconds even. Hence, Disk De-fragmentation activity should be added to regular maintenance operations. However all disk de-fragmentation operation should strictly be run during off-peak hours.
Properly set DB purging Set the number of trace files to be generated at optimal levels/numbers. Turn off excess tracing when not needed. This usually happens after a debugging session when traces are turned ON, but administrators forget to turn them OFF once done.
Free Disk space should be maintained at 15% or higher for best all round results. Disk de-fragmentation operation also runs more efficiently (i.e. less disruption) with 15% or more of free disk space.
Cisco Unified Contact Center Express and Cisco Unified IP IVR - Best Practices
Others
Following the documentation step by step is also important during any restore/recovery operation.
Upgrades
Two crucial guidelines during major upgrades (not Service Releases or Engineering Specials) are as follows
Step 1 Step 2
Follow the steps described in Upgrade document to the point. This is even of the customer has had experience in upgrades before hand. Use a replica system to build an upgraded system before attempting the upgrade on the production system. This becomes important for customers who have a complex or large Contact Centers and downtime is not permitted.
IP Address Change
If ever any customer needs to change the IP Address of one or more machines in the solution, it is strongly recommended to follow the guidelines and detailed procedure mentioned in the corresponding document. Any deviation from the steps can lead to a irrecoverable damage to the system needing a full rebuild. Yet another reason to have backups before this major operation is attempted.
This document is to be used in conjunction with Cisco Unified Contact Center Express Support Documentation. Cisco and the Cisco Logo are trademarks of Cisco Systems, Inc. and/or its affiliates in the U.S. and other countries. A listing of Cisco's trademarks can be found at www.cisco.com/web/siteassets/legal/trademark.html. Third party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1005R) 2011 Cisco Systems, Inc. All rights reserved.
Cisco Unified Contact Center Express and Cisco Unified IP IVR - Best Practices