Cisco Unified Intelligent Contact Management Enterprise

Why Routing Scripts Cannot Access Call Control Variables Set in Administrative Script

Document ID: 46001

Updated: Feb 15, 2006



This document explains why call control variables set in administrative scripts cannot be referenced by route scripts. The document also provides a method to share data between administrative scripts and route scripts in a Cisco Intelligent Contact Management (ICM) environment.



Cisco recommends that you have knowledge of ICM Script Editor.

Components Used

The information in this document is based on all ICM versions.

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.


Refer to Cisco Technical Tips Conventions for more information on document conventions.


The Set Variable node sets the value of some call variables. The syntax to reference a call control variable in a script is:


In this case, if you run the administrative script and set Call.PeripheralVariable8 to the value of Holiday, all the route scripts fail to access the value. Figure 1 provides an example.

Figure 1 – Administrative Script to Set Call Control Variable



The administrative script successfully sets the Call.PeripheralVariable8 to the value of Holiday. However, control variables cannot be shared between administrative scripts and the route scripts.

In order to pass variables between an administrative script and a route script, use a global user variable. With a global user variable, each user variable must:

  • Have a name that begins with user

  • Be associated with an object type, for example, Service

    This enables ICM software to maintain an instance of the variable for each object of that type in the system.

  • Be identified as a variable that is either persistent or nonpersistent

    A persistent variable retains the value across CallRouter restarts. A nonpersistent variable does not retain the value across CallRouter restarts.

Note: A user variable can store a value of up to 40 characters.

Related Information

Updated: Feb 15, 2006
Document ID: 46001