Cisco ICM Software Release 4.6.2 Script Editor Guide
Script Editor Language Reference (Release 4.6.2)

Table of Contents

Script Editor Language Reference

Script Editor Language Reference

This appendix provides:

  • An overview of routing target basics

  • A reference for the properties of each of the nodes supported by the ICM Script Editor

Routing Target Basics

A routing target is an entity that can receive a call. Targets are classified into two target groups: skill targets and network targets. These groups, in turn, consist of several target types. Table A-1 describes each of these groups and types:


Table A-1: Routing Target Groups
Target Group Target Type Description

Skill targets

Agent

A specific individual at a call center who is able to handle the call.

Service

The type of work or information that a caller needs and a call center that can provide it. (The switch at the call center is responsible for picking a specific agent to handle the call.)

Skill Group

A group of agents at a specific call center who are able to handle the call. (The local switch at the call center is responsible for eventually picking a specific agent.)

Network targets

Announcement

A verbal message played to the caller. Specific messages must be defined for the routing client.

Busy

A busy signal played to the caller. (A Busy label must first be defined for the routing client.)

Divert Label

A set of valid labels that can be returned to a routing client.

Label

A specific routing label that might be associated with a specific peripheral target or with a specific network target.

Ring

An unanswered telephone ring played to the caller. (A Ring label must first be defined for the routing client.)

Scheduled Select

A resource that can handle a specific number of simultaneous calls as determined by a periodic schedule. (This target is available only if the telephone network supports it.)



Within a script, you can:

  • Use a Select, Distribute, or Route Select node to choose from among a set of skill targets. (You can also transfer control to a specific target based on numerical allocations or other criteria.)

  • Route a call directly to any network target.

Table A-2 describes the routing nodes.


Table A-2: Routing Nodes
Node Name Description

Select

Sets up a rule ICM software uses to choose among a set of routing targets for the call. (For more information, see page A-55.)

Distribute

Distributes calls among a series of targets based on current information about each target. (For more information, see page A-24.)

Route Select

Specifies a series of possible targets and separate selection criteria for each. (For more information, see page A-48.)



Adding a Skill Target

A skill routing target object specifies a target at a peripheral to receive a call. You use Select or Distribute nodes to reference such targets.

There are two categories of skill targets:

  • Peripheral-level. (The Agent, Skill Group, and Services nodes.) These nodes specify a list of agents, groups, or services that can receive calls through the target.

  • Enterprise-level. (The Enterprise Service and Enterprise Skill Group nodes.) These nodes specify a single enterprise service or enterprise skill group that can receive calls through the target.

The procedure for creating peripheral-level or enterprise-level targets is identical.

How to add a skill target

Step 1   Place a peripheral-level object (Agent, Skill Group, or Services) or an enterprise-level object (Enterprise Services or Enterprise Skill Group) in the workspace.

Step 2   Right-click to open the Properties dialog box. (A sample Agent Properties dialog box is shown below.)


Step 3   Click the Add Targets button to open the Add Targets dialog box. (A sample Add Agent Targets dialog box is shown below.)


The field on the left lists all the members of the target type defined in the system; the field on the right lists all the members currently assigned to this target.

Step 4   To add a target, choose it from the left list and click the Add button. When finished adding targets, click OK.


Note   You also add targets in the Properties dialog box using the target drop-list.

Step 5   (Optional) Rearrange the order of the groups in the list using the Move up and Move down arrow keys.


Note   If you use the LAA or MED rule to select from the set, list order has no effect on the routing decision. If you use NAA or Always, order does affect the routing decision.

Step 6   Click a target member and use the drop-down list in the Route field to associate a route with the target.

Step 7   (Optional) Click a target group member and use the drop-down list in the Translation Route field to associate a translation route with the target.


Note   Use a translation route if you want to coordinate external processing with the arrival of the call. For example, you might want to retrieve customer account information from a database and display it on the agent's display when the call is answered.

Step 8   (Optional) Check Allow connection for each target.

  • If this box is checked, an output terminal appears to the right of each individual target within the object. Control passes through this terminal when the associated skill group is chosen. (For example, you can use a Set Variable node to set the values of specific variables after choosing the skill group. When the script terminates, the route for the selected skill group is still used.)

  • If this box is not checked, no output terminals appear on the object.

Step 9   Optionally, modify the Labels tab.

Step 10   Click OK to apply changes and to close the dialog box.


How to remove a skill target

In the routing target Properties dialog box, highlight the row the target is in and click Delete Row.

Adding a Network Target

The procedure for creating network targets differs depending on the target. For specific information on each target, see the following:

Agent Node


Object palette icon:


Valid script type(s):

Purpose:

The Agent node is a skill routing target object. Use it to specify one or more agents who are potential targets for a call.


Note   You use the Select or Distribute nodes to reference a skill routing target.

Properties:

Agent.

The name of the target agent that a call should be routed to.

Route.

A value returned by a routing script that maps to a service and a specific target at a peripheral; that is, a service, skill group, agent or translation route.

Translation Route.

A target at a Peripheral Gateway (PG) that does not map to a specific service, skill group, or agent.

When a call arrives at a translation route, the PG is responsible for determining the ultimate target.

See also:

"Adding a Skill Target".



Agent to Agent Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to enable an agent to transfer a call to another agent or supervisor. The Agent to Agent node routes the call to the specified agent. The agent is defined either by directly choosing from the database or by providing an expression. The expression must translate to agent's Peripheral number or SkillTargerID. The CallRouter then finds a valid label for the agent. If there are no labels configured for the specified agent, the failure node of the Agent to Agent node is executed.

A pull-down menu provides you with three methods to pick an agent:

  • Peripheral number: Choose a peripheral and a provide formula that translates to the agent's peripheral number.

  • Enterprise Name: Pick the agent from the list of configured agents. This is similar to the way an agent is chosen in the Agent node.

  • SkillTargetID: Specify the agent by providing an expression that translates into the agent's SkillTargetID or Enterprise name. In IPCC supervisory case, the expression should be the call's PreferredAgentID.

Purpose (cont.):

You can choose to check the availability of the agent, or not, in all three cases.

When Fail node if agent is unavailable is checked, the failure mode of the Agent to Agent node is executed and the CallRouter sends the call if:

1. The CallRouter finds a valid label for the agent and

2. The agent is available and

3. The agent's state is stateReady.

The failure node of the Agent to Agent node is executed if:

1. The CallRouter doesn't find a valid label for the agent or

2. The agent is not available or

3. The agent is in TempUnavailable mode (the CallRouter has just send a call to the agent).

If Fail node if agent is unavailable is not checked:

1. The CallRouter sends the call if the CallRouter finds a valid label for the agent.

2. The failure node of the Agent to Agent node is executed if the CallRouter doesn't find a valid label for the agent.

Purpose (cont.):

The SkillTargetID method is used to route the call to a specific agent or supervisor. The IPCC PG initializes the PreferredAgentSkillTargetID field when a new call is placed to a specific agent or supervisor. The call's PreferredAgentID variable is used as the expression. This value can be used in formulas but cannot be modified using the script editor. This means that the call variable PreferredAgentID cannot be modified using the Set node. For Supervisory support, the IPCC PG provides the preferred agent's PreferredAgentID when a call is placed.

If the agent is logged in but not ready to take the call (i.e. his state is not stateReady), or if there are no labels configured for the agent, or if a call has just been sent to agent (i.e., the agent is in TempUnavailable mode) the failure path of the node is executed. For Supervisory support, The IPCC PG provides the preferred agent's PreferredAgentID when a call is placed. The call's PreferredAgentID variable is used as the expression.

The CallRouter can then use this information to return a label to the routing client and route the call to the peripheral where the agent is logged in.


Note   Currently, the Agent to Agent script node can be used only for Enterprise Agent peripherals.

Properties:

Select agent by

Select the method by which an agent is to be chosen: Peripheral number, Enterprise name, or SkillTargetID.


Note   This field is not editable in the Quick Edit mode

Peripheral.

Name of the peripheral the agent logs into.

Agent

Select the preferred agent from this list of configured agents.

Agent SkillTargetID expression.

Enter a formula representing the target agent's SkillTargetID.

Agent peripheral number expression.

Enter a formula representing the target agent's peripheral number.

Node fails if agent is unavailable.

You can choose to check the availability of the agent, or not, for any of the three agent extension expressions.


Note   For help in building the expression, click the Edit Formula button to access the Formula Editor.



Announcement Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to play an audio announcement for the caller and terminate the script. You might use an announcement node to:

  • Explain why the call cannot be currently handled.

  • Direct the caller to another telephone number.


    Note   Before you can refer to an Announcement node in a script, you must first use the Configuration Manager to set up the announcement.

Properties:

Announcement.

File name of the announcement to be played.



Busy Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to:

  • Find the first Busy label configured for the current routing client and return that label.

  • Have routing client then play a busy signal for the caller.


    Note   Not all routing clients support the Busy node. In addition, you must ensure that you have defined a label of the Busy type for the routing client.

Properties:

None.


Note   There are no properties that need to be set for the Busy node. However, you can use this dialog box to create text that will display on the node in the Script Editor.



Call Type Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to change the call type classification of the current call, "reclassifying" the call type for accounting purposes. Script execution then continues through the node's output connection.

For example, if your script determines that a call that came into the call center as a Sales call is actually a Support call, you might use the Call Type node to change the call type so that the call information is recorded in the Support category.


Note   You cannot insert a Call Type node between a Select or Distribute node and its routing targets.

Properties:

Call type.

Value from the Call Type scrolled list (If any descriptive information exists for the call type, it will appear in the Description field.)

See also:

For additional information, see Defining Call Types.



Caller-Entered Digits (CED) Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to instruct ICM software how to process caller-entered digits (CED). For example, you can set up the CED node to send calls to:

  • SkillGroupA if the caller-entered digits match a specific string

  • SkillGroupB if a caller does not enter digits


    Note   You must insert targets and connection from the CED node before you can define the node's properties.

Properties:

Case/CED.

Click the Add Digits button to activate these fields, then do the following:

  • Enter a CED string value. You can associate one or more values with each connection. Valid characters are the digits 0 through 9, the asterisk (*), and the number sign (#).

  • Click the Add None button. You can add the value of None to a connection, specifying that it matches only those cases where no digits are entered or where no digits are required.

    Before clicking the No Digits button, choose an option to specify whether the branch applies to either or both of these cases:

- None applies to both cases.

- None Entered applies only if the caller was prompted for digits, but did not enter any.

- None Required applies only if the caller was not prompted for digits.


Note   If you ever delete a connection associated with a case, the case information you specified in the Properties dialog box is deleted, also.

See also:

For additional information, see Refining Call Type Definition.



Calling Line ID (CLID) Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to examine the billing telephone number of the caller to see if it matches:

  • A specific calling line ID (CLID) that you provide (for example, a specific region, area code, or an area code plus a local exchange)

  • A variable expression

By default, ICM software compares the list of values against the calling line ID of the call. However, you have the option of specifying another value or expression to be used instead of the calling line ID.


Note   You must insert targets and connection branches from the Calling Line ID node before you can define the node's properties.

Properties:
Calling line ID tab

Case / Calling Line ID / Type.

Use these columns and the Region, Prefix, Exact Match buttons in the Add Calling line ID section to specify the connection type each case applies to.

Properties:
Variable tab

Use Calling Line ID.
(Option button)

The default; compares against the calling line ID of the call.

Use Expression. (Option button and entry field)

Compares against an expression other than the calling line ID. You can then type an expression directly, or click the Formula Editor button.


Note   If you ever delete a connection associated with a case, the case information you specified in the Properties dialog box is deleted, also.

See also:

For additional information about the Formula Editor, see "Formulas".



Cancel Queuing Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to remove the current call from any queues to which is has been assigned.

Properties:

None.


Note   There are no properties that need to be set for the Cancel Queuing node. However, you can use this dialog box to create text that will display on the node in the Script Editor.

See also:

For additional information, see "Network IVRs/VRUs".



Comment Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to include a block comment in a script. A block comment provides general documentation for a script or section of a script. For example, you might add a comment describing the purpose of the script.

You can move and resize the comment box within the script. (However, if you choose the Auto-Size Height option, you cannot adjust the height of the comment.)

Properties:

Comment.

Text to appear in the comment.

Text Justification. (Buttons)

Left-, centered, or right-justified.

Auto-size height.
(Checkbox)

Check this box if you want the height of the comment box to be automatically adjusted to the size of the text.

See also:

For information about adding comments to specific nodes within scripts, see Adding Comments to a Script.



Day of Week Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to transfer control to one of several branches depending on the current day of week (Sunday, Monday, etc.). You can define multiple output connections from the Day of Week node and associate each with one or more days of the week.


Note   You must insert targets and connection branches from the Day of Week node before you can define the node's properties. When you open the Properties dialog box, the top part of the dialog box displays a column for each output branch and a column on the left listing the days of the week.

Properties:

Day grid / Connections.

To create a day grid assigning days of the week to output branches, left-click in a spot in the grid to associate a day of the week with a connection. A checkmark appears in the grid.


Note   You can associate each day of week with exactly one connection. However, you can associate each connection with one or more days of the week.

Modify Name.
(Button)

To rename an output branch column, select the column name in the Connections field and click this button. The label name becomes highlighted and you can make changes.

See also:

For additional information, see Refining Call Type Definition.



DB Lookup Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to query a specific row of data from an external database. You can then reference columns from that row.


Note   Before you can successfully use DB Lookup in a script, information about the table to be queried must be defined in the Configuration Manager.

Properties:

Table.

The database table you want to query. (The drop-down list contains the enterprise names of all lookup tables defined in ICM software system.)

Lookup Value.

A constant or expression to match the key value in the row you want to retrieve. The value must be of the appropriate data type to match the key field in the table. (To help you build an expression, you can click the Edit Formula button to invoke the Formula Editor.)

For example, if phone_number is a key field in the database table, you might use Call.CallingLineID as the Lookup Value.

See also:

.Querying an External Database.



Dialed Number (DN) Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to examine the dialed number (DN) for the current call to see whether it matches a value in a list of dialed numbers that you provide.

Properties:

Dialed Numbers.
(List)

Dialed Numbers available in the system.

Dialed Number description.

(Appears when a Dialed Number value is highlighted.) Optional descriptive text specified during Dialed Number configuration.

Target Dialed Numbers.
(List)

Dialed Numbers associated with the node.


Note   To choose a Target Dialed Number, highlight a value in the Dialed Numbers list and click the Add button.

See also:

Refining Call Type Definition.



Distribute Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to distribute calls among a series of targets based on current information about each target.

For example, you could set up the node to distribute calls among a set of services based on the number of agents in the Ready state for each service. Services with more Ready agents would get more calls than services with fewer Ready agents. This keeps the call load balanced.

Properties:

Consider If.

A threshold that targets must meet to be considered.

Distribute By.

A formula to be used to distribute calls to the targets.


Note   You can access the Formula Editor from each of these fields.

See also:

For additional information about the Formula Editor, see "Formulas".



Divert Label Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to define a set of valid labels that can be returned to the routing client. When ICM software executes a Divert Label node, it returns all the values in the Selected Labels list to the routing client. ICM software then tries each label until it finds one that does not produce a Busy or Ring Tone No Response.


Note   This differs from the Label node, which returns the first valid label to the routing client.

The Divert Label node is not available for all routing clients. When it is available, in most cases, you can specify up to ten labels in the node. The exception is in NAM/CICM configurations, where you can specify up to nine labels; one label must be reserved for use by the NAM.

You can sort the labels selected for each routing client by label value or by description. To sort by description, click the Description column header. To sort by label value, click the left column header.

The Divert Label node also provides the option of processing an expression instead of pre-configured labels. When ICM software executes a node containing a label expression, it:

  • Processes the expression

  • Returns the resulting character string to the routing client as a label

Label Type.

  • Configured. (Default) Labels defined through the Configuration Manager.

  • Dynamic. Labels defined through an expression.


    Note   If you select Dynamic, the Script Editor accesses the Label Expressions field, where you can specify expression formulas.

Available Labels / Selected Labels.

The routing client labels currently available are listed on the left; labels already selected are on the right. (The Label Information section displays detailed information about the currently selected value in this list.)


Note   The Divert Label node only lists the labels for routing clients with client types that support DivertOnBusy. The IPCC client type does not support DivertOnBusy. The following client types do support DivertOnBusy: BT INAP NIC, CRSP, DEUTSCHE TELEKOM, CWC NIC, ENERGIS INAP NIC, AUCS INAP NIC, CAIN, TELFORT INAP, BTV2 INAP NIC, GKTMP NIC, SS7IN NIC, and NTL NIC.

Label Expressions.

Field where you can specify that expressions, rather than pre-configured labels, be processed by ICM software. The resulting character strings are then sent to the routing client as labels.


Note   This field is available only if you select Dynamic as the Label Type.

See also:

"Label Node".



End Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to mark a termination point within a script. If the script reaches this point, it has failed to find a target for the call. ICM software then uses the default route for the dialed number.

Several End nodes might appear in the same script. The End node is never required; a script can terminate with any node.

Properties:

None.


Note   There are no properties that need to be set for the End node. However, you can use the Comment tab to create text that will display on the node in the Script Editor.

See also:

"Termination Node" section.



Enterprise Service Node


Object palette icon:


Valid script type(s):

Purpose:

The Enterprise Service node is a skill routing target object. Use it to specify a single enterprise service, which is a collection of services that are potential targets for a call.


Note   You use the Select or Distribute nodes to reference a skill routing target.

Properties:

Service.

The name of the Enterprise Service that a call should be routed to.

Route.

A value returned by a routing script that maps to a service and a specific target at a peripheral; that is, a service, skill group, agent, or translation route.

Translation Route.

A target at a Peripheral Gateway (PG) that does not map to a specific service, skill group, or agent.

When a call arrives at a translation route, the PG is responsible for determining the ultimate target.

See also:

  • "Adding a Skill Target".

  • The discussion about configuring routes and routing targets in the Cisco ICM Software Configuration Guide.



Enterprise Skill Group Node


Object palette icon:


Valid script type(s):

Purpose:

The Enterprise Skill Group node is a skill routing target object. Use it to specify a single enterprise skill group, which is a collection of skill groups that are potential targets for a call.


Note   You use the Select or Distribute nodes to reference a skill routing target.

Properties:

Skill Group.

The name of the skill group that a call should be routed to.

Route.

A value returned by a routing script that maps to a service and a specific target at a peripheral; that is, a service, skill group, agent or translation route.

Translation Route.

A target at a Peripheral Gateway (PG) that does not map to a specific service, skill group, or agent.

When a call arrives at a translation route, the PG is responsible for determining the ultimate target.

See also:

  • "Adding a Skill Target".

  • The discussion about configuring routes and routing targets in the Cisco ICM Software Configuration Guide.



Gateway Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to pass data to an external application and receive data in return, which the Script Editor can then use in routing decisions.


Note   Before you can include a Gateway node in a script, you must have used the Configuration Manager to define the external application as an application gateway.

Properties:
Send tab

Application gateway. (Drop-down list)

The external application to be invoked. (You must have previously configured the application gateway in the Configuration Manager.)

Subtype.

(Optional)

A string to be passed to the external application.

Call variables.
(Checkboxes)

Call variables to be sent to the external application.

Expanded Call Context Variables.
(Checkbox)

Check if you want to send ECC variables to the external application.

Properties:
Receive tab

No reply.
(Checkbox)

Check this box if the external application will not return any data to the script.

If you select this option, the system will not be able to retrieve any information from the external application.

Call Variables.
(Checkboxes)

Use the checkboxes to indicate which variables the external application can modify.

Expanded Call Context Variables.

(Checkbox)

Check this option if you expect to receive values for ECC variables set by the external application.

See also:

For more information on the effects of the No Reply checkbox, see Using the Gateway Node.



Go To Script Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to direct call processing to another script without changing the call type. When ICM software encounters a Go To Script node, it stops executing the current script and starts the script indicated in the node.

For example, you might have several scripts that check for exception conditions and, if none are found, execute a standard subroutine. Instead of including that subroutine as a branch from the failure output terminal of each of the exception conditions, you could use a Go To Script node pointing to a separate script containing the subroutine.


Note   To open the script referenced by a Go To Script node, right-click the node and choose Open Script from the shortcut menu. The reference script appears in a separate window in Browse Mode.

Properties:

Business Entity.
(Drop-down list)

The business entity that "owns" the script.


Note   By default, ICM software enterprise consists of one business entity. Multiple business entities are allowed only if you enable partitioning. For more information on partitioning, see the Cisco ICM Software Security Guide.

Scripts.
(List)

The name of the script ICM software should execute.


Note   Within an administrative script, you can go to only another administrative script. Within a routing script, you can go to only another routing script.

See also:

"Requalify Node" section.



ICM Gateway Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to pass a routing request to another ICM system.


Note   Before you can successfully use an ICM Gateway node in a script, you must use the Configuration Manager to configure a gateway to the ICM system to which you send the request.

Properties:
Send tab

ICM Gateways.
(Drop-down list)

The gateway to the ICM system (and hence the specific ICM instance) to which you want to send the request.

Validate returned labels.
(Checkbox)

Indicates whether ICM software should validate returned labels.

Calling line ID masking.
(Radio buttons)

Specifies whether Calling Line ID masking instructions should be applied before the call is passed to the other ICM system.

  • Do not apply masking rule. If selected, masking instructions are ignored.

  • Apply masking rule if call is presentation restricted. If selected, applies masking instructions if the call variable CLIDRestricted is set to 1.

Always apply masking rule. If selected, masking instructions are always applied


Note   The Calling line ID masking rule is set through the Configuration Manager's System Information dialog box.

Properties:
Default Label tab

Available Labels / Selected Labels.
(List)

Use to specify a default label to be used if the targeted ICM system:

  • Returns a list of labels for divert-on-busy processing

  • Fails to return valid labels


Note   You can specify one default label per routing client. To choose a default label, highlight a value in the Available Labels list and click the Add button.



If Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to direct script execution to one of two branches based on the result of an evaluation.

When ICM software executes an If node, it first evaluates the condition specified in the node Properties dialog box's Define condition field. If ICM software determines that the condition is true, control flows through the success output terminal; if it determines the condition is false, control flows through the failure output terminal.

Properties:

Define Condition.

A Boolean expression.


Note   For help in building the expression, click the Formula Editor button.

See also:

For additional information about the Formula Editor, see "Formulas".



Label Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to define a set of valid labels that can be returned to the routing client. When ICM software executes a Label node, it chooses the first valid label for the current routing client. If ICM software finds no valid label, it returns the default label for the dialed number. In either case, the Label node terminates execution of the script. This node also has target requery capabilities. See Router Requery for additional information.


Note   This differs from the Divert Label node, which returns all the values in the Selected Label list to the routing client.

The Label node also provides the option of processing an expression instead of a pre-configured label. When ICM software executes a node containing a label expression, it:

  • Processes the expression

  • Returns the resulting character string to the routing client as a label

Properties:

Label Type.

  • Configured. (Default) Labels defined through the Configuration Manager.

  • Dynamic. Labels defined through an expression.


    Note   If you select Dynamic, the Script Editor accesses the Label Expression field, where you can specify an expression formula.

Available Labels / Selected Labels.

The routing client labels currently available are listed on the left; labels already selected are on the right. (The Label Information section displays detailed information about the currently selected value in this list.)

Label Expression.

Field where you can specify that an expression, rather than a pre-configured label, be processed by ICM software. The resulting character string is then sent to the routing client as a label.




Note   This field is available only if you select Dynamic as the Label Type.

Enable target requery

Checking this enables the router requery capability.

See also:



Percent Allocation Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to send a specific percentage of route requests to two or more paths within the script. (All path percentages must add up to 100%.) A path might lead directly to a target, or perform additional processing before sending to a target.


Note   If you use a Percent Allocation node to distribute calls among several targets, you lose much of the benefit of call-by-call routing. Usually, it is better to use a Select node or Distribute node to choose among peripheral targets based on real-time conditions at the call centers. Using a Percent Allocation node to distribute calls among targets can result in imbalances.

A Percent Allocation node never fails; each routing request is sent to one of the branches.


Note   You must insert targets and connection branches from the Percent Allocation node before you can define the node's properties.

Properties:

Connection.

By default, Connections are labelled "A," "B," etc. To relabel a Connection, highlight the Connection name and make changes.

Percent.

To specify a percentage for a Connection, highlight the connection's Percent value and make changes.


Note   If you ever delete a connection associated with a case, the case information you specified in the Properties dialog box is deleted, also.


Note   The percentage for all labels must total 100.



Queue Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to place the call in a queue for one or more skill groups, an enterprise skill group, or one or more scheduled targets. If an agent becomes available in one of the skill groups or at one of the scheduled targets, the call is routed to that resource. This node also has target requery capabilities. See Router Requery for additional information.


Note   A queued call must be at a VRU. If the current call is not at a VRU when the Queue node is executed, ICM software sends the call to the associated Network VRU.

Properties:
Queue Type
dialog box

Target Type.
(Drop-down list)

(To open the Queue Type dialog box, click the Change button in the Queue Type section.)

Enterprise Skill Group, Scheduled Target, or Skill Group.

Priority.

Sets the initial queuing priority for calls processed through this node versus other calls queued for the same target: 1 for top priority to 10 for least priority. (The default is 5.)


Note   You cannot reference more than one type of target within a single Queue node. To queue a call to more than one target type, execute multiple Queue nodes sequentially.

Properties:
Add Targets dialog box

Available targets.
(List)

(To open the Add Targets dialog box, click the Add Targets button.)

Available options for the targets specified in the Queue Type dialog box.

Properties:
Queue Properties dialog box

Route.
(Drop-down list)

The route to send the call to when an agent in the target type becomes available. (The drop-down list includes all routes associated with the target.)

Translation Route.
(Drop-down list)

The route to send the call to for initial VRU processing. (The list contains all translation routes associated with the same peripheral as the target.)

Scheduled Target.

If the Target Type field is set to Scheduled Target, this list contains information about the individual targets to which the call is queued.


Note   This list appears only if the Target Type chosen is Scheduled Target.

Enable target requery

Checking this enables the router requery capability.

See also:



Queue Priority Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to override the initial queue priority for a call in a queue. (The initial priority is set in the Queue node.) If more than one called is queued to a group when an agent becomes available, the queued call with the lowest numbered priority is routed to the target.

Properties:

Priority.

Specify the queuing priority for a call processed through this node: 1 for top priority to 10 for least priority. This determines the priority the call has relative to other calls queued for the same target.

See also:

For more information on queueing calls at VRUs, see "Network IVRs/VRUs".



Release Call Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to terminate execution of the current routing script and disconnect the caller.

You can use this node in situations where the caller needs no further service after executing several VRU scripts.

Properties:

None.


Note   There are no properties that need to be set for the Release Call node. However, you can use the Comment tab to create text that will display on the node in the Script Editor.



Requalify Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to terminate the current script and execute another script based on a new call type.


Note   The Requalify Node has no output connection.

Properties:

Call Type.
(Scrolled list)

The call type the new script should be executed against. (If any descriptive information exists for the call type, it will appear in the Description field.)

See also:

Defining Call Types.



Ring Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to:

  • Find the first Ring label configured for the current routing client and return that label.

  • Have routing client then play an unanswered ring for the caller.


    Note   Not all routing clients support the Ring node. In addition, you must ensure that you have defined a label of the Ring type for the routing client.

Properties:

None.


Note   There are no properties that need to be set for the Ring node. However, you can use the Comment tab to create text that will display on the node in the Script Editor.



Route Select Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to specify a series of possible targets and separate selection criteria for each. The Route Select node can behave much like a Select node (picking the target that best fits some specific criteria) or like a Distribute node (allocating calls among targets based on relative values). However, in a Route Select node you can specify different criteria for each individual target. This node also has target requery capabilities. See Router Requery for additional information.

Properties:
Route Select
Type dialog box

Target Type.
(Drop-down list)

(To open the Route Select dialog box, click the Change button in the Route Select Type section.)

Agent, Enterprise Service, Enterprise Skill Group, Service, or Skill Group.

Distribute Among Targets.
(Radio button)

The Route Select node is to behave like a Distribution node, distributing calls among the targets based on the relative values.

Select Most Eligible Target. (Radio button)

The Route Select node is to behave like a Select node, using the following rules:

  • Pick the target with the minimum value / Pick the target with the maximum value.

  • Accept target if (that is, evaluate an acceptance rule).

  • Start with first target / Start with next target.

Explicit target references.
(Radio button)

The Route Select node will use direct references for services or skill groups.

Lookup target references by expression.
(Radio button)

The Route Select node will use expressions that evaluate to names of services or skill groups.

Properties:
Add Targets
dialog box

Available targets.
(List)

(To open the Add Targets dialog box, click the Add Targets button.)

Available options for the targets specified in the Route Select Type dialog box.


Note   If you chose Enterprise Service or Enterprise Skill Group as a target type, you can select just one item from the list. If you chose Agent, Service, or Skill Group, you can then select one or more items from the list.

Properties:
Route Select Properties
dialog box

Consider If.
(Optional)

A formula that evaluates to "true" for the target when ICM software executes the Translation Route to VRU node, or that target will not be selected.

Select Max/Select Min Value of.

A formula that determines which of the targets is selected.

Translation Route. (Drop-down list; optional)

The route to send the call for initial external processing if this target is selected. (The list contains all translation routes associated with the same peripheral as the target.)


Note   Use a translation route if you want to coordinate external processing with the arrival of the call. (For example, to retrieve customer account information from a database and display it on an agent's screen before a call is answered.) When a call is sent to a translation route, the PG retrieves the final route from ICM software and coordinates the other processing with the external host.

Allow connect for each target value. (Checkbox)

Affects output terminals:

  • If not checked, the output terminals for individual targets do not appear.

  • If checked, an output terminal appears to the right of each individual target within the Route Select node. Control passes through this terminal when the associated target is chosen. (This option could be useful in scripts where you want to manipulate specific variables after choosing a target.)

Enable target requery

Checking this enables the router requery capability.

See also:



Run VRU Script Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to instruct the Network VRU to execute a specific VRU script. You can use multiple VRU Script nodes to execute a series of scripts on the VRU.


Note   This node is valid for use with all VRU types.

Execution of ICM software routing script waits for the Run VRU Script to finish.

  • If the VRU Script runs successfully, control then passes through the node's success terminal.

  • If the VRU Script does not run successfully for any reason, then control passes through the node's failure terminal.


    Note   Once a RunScript node exits through the Failure branch, it should test the variable Call.VRUStatus. If the value is equal to STATUS_TIMED_OUT (2), then it should avoid executing any subsequent RunScript nodes.

    The reason is that this status code implies that the VRU is very likely hung. Sending another RunScript to the VRU at this point messes things up even more, and there isn't any way for the VRU PIM to identify this situation and take care of it.


Note   If the current call is not at a VRU when the VRU Script node is executed, ICM software sends the call to the associated Network VRU.

Properties:

ICM Script Name / VRU Script.
(List)

The Network VRU scripts that are available. Select the VRU script you want the VRU to execute.

See also:

For more information on accessing VRUs in ICM scripts, see "Network IVRs/VRUs".



Scheduled Select Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to choose a destination for the call from among a set of scheduled targets. ICM software scans the list of scheduled targets until it finds one with at least one agent available. It then directs the routing client to send the call to that target.

Before you can use a Schedule Select node in a script, it must first be configured and assigned a label through the Configuration Manager.


Note   Not all routing clients support the Scheduled Select node.

Properties:

Evaluation Order.
(Radio buttons)

Use the Evaluation Order buttons to specify whether ICM software:

  • Always starts the search from the first target in the list

  • Starts from the first target after the one it chose last time

Available Scheduled Targets. (List)

Scheduled targets currently configured on the system.

Selected Targets. (List)

Selected Targets associated with the node.


Note   To choose a Selected Target, highlight a value in the Available Scheduled Targets list and click the Add button. (You can add more than one Selected Target.)



Select Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to set up a rule to aid ICM software in choosing among a set of routing targets for the call. You can select a standard rule or define your own custom rule. This node also has target requery capabilities. See Router Requery for additional information.


Note   You must assign at least one target to the target set before you can define a selection rule.

Properties:

Selection Type.

Do one of the following:

  • Select a Standard selection rule from the drop-down list.

  • Define a Custom selection rule.

Acceptance Rule.

A condition that must be true or the selection does not apply. (If necessary, you can access the Formula Editor to create the condition.)

Evaluation Order.

The order in which targets are checked:

  • Start with First Target sets up a homing hunt; ICM software chooses the first target in the list that meets the selection criteria.

  • Start with Next Target sets up a rotary hunt; ICM software chooses the next target in the list that meets the selection criteria.

Enable target requery

Checking this enables the router requery capability.

See also:



Send To VRU Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to divert a call to a VRU associated with the routing client for further processing.


Note   This node is valid with Type 3, Type 5, and Type 7 VRUs.

After a Send to VRU node executes, you can check the value of the Call.VRUStatus variable to see whether the call was successfully sent or to determine the reason for a failure (such as error or timed out).

If the call is successfully delivered to the VRU, you can use the VRU Script node to direct the VRU to execute a specific script.

Properties:

None.


Note   There are no properties that need to be set for the Send to VRU node. However, you can use the Comment tab to create text that will display on the node in the Script Editor.

See also:

For more information on accessing VRUs in ICM scripts, see "Network IVRs/VRUs".



Service Node


Object palette icon:


Valid script type(s):

Purpose:

The Service node is a skill routing target object. Use it to specify a service, which is a collection of skill groups that can provide a specific service to callers.


Note   You use the Select or Distribute nodes to reference a skill routing target.

Properties:

Service.

The name of the Service that a call should be routed to.

Route.

A value returned by a routing script that maps to a service and a specific target at a peripheral; that is, a service, skill group, agent, or translation route.

Translation Route.

A target at a Peripheral Gateway (PG) that does not map to a specific service, skill group, or agent.

When a call arrives at a translation route, the PG is responsible for determining the ultimate target.

See also:

  • "Adding a Skill Target".

  • The discussion about configuring routes and routing targets in the Cisco ICM Software Configuration Guide.



Set Variable Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to initialize or modify the value of a variable. Variables are associated with each call, route, trunk group, service, and skill group.


Note   For help in building an expression to assign to a variable, click the Edit Formula button in the Set dialog box to access the Formula Editor.

Properties:

Object Type.

The type of object the variable is to be associated with.

Object.

(If you choose Call as the Object Type, this field does not apply.)

The specific object the variable is to be associated with.

Variable.

(The variables that are available are determined by the value chosen in the Object Type field.)

The specific variable you want to set.

Array Index.

(This field is only available if you select an array variable in the Variable field.)

An integer or an expression that evaluates to an integer. For example, if the Array Index expression evaluates to 2, then the Set Variable node sets the second element of the array.

Value.

The value to assign to the variable. The value can be:

  • A constant

  • A reference to another variable

  • An expression

See also:

"Formulas"



Skill Group Node


Object palette icon:


Valid script type(s):

Purpose:

The Skill Group node is a skill routing target object. Use it to specify a skill group, which is a collection of agents who have similar skills.


Note   You use the Select or Distribute nodes to reference a skill routing target.

Properties:

Skill Group.

The name of the skill group that a call should be routed to.

Route.

A value returned by a routing script that maps to a service and a specific target at a peripheral; that is, a service, skill group, agent, or translation route.

Translation Route.

A target at a Peripheral Gateway (PG) that does not map to a specific service, skill group, or agent.

When a call arrives at a translation route, the PG is responsible for determining the ultimate target.

See also:

  • "Adding a Skill Target".

  • The discussion about configuring routes and routing targets in the Cisco ICM Software Configuration Guide



Start Node


Object palette icon:


Valid script type(s):

Purpose:

This node marks the beginning of a script. The Script Editor automatically inserts the Start node when you create a new script; a script must have one and only one Start node.

Properties:

None.


Note   There are no properties that need to be set for the Start node. However, you can use the Comment tab to create text that will display on the node in the Script Editor.



Switch Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to direct script execution to its active output connection. You can define multiple output connections from the Switch node; one of them must be specified as the active connection.


Note   You must insert targets and connection branches from the Switch node before you can define the node's properties.

Properties:

Connection.

By default, Connections are labelled "A," "B," etc. To relabel a Connection, click the Modify Name button and make changes to the name.

State.

To make a connection active, choose a Connection field and click the Make Active button.


Note   Only one connection can be active at any time. To change the active branch, you must re-edit the script and create a new script version.

See also:

For additional information, see Changing Script Processing Paths.



Termination Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to terminate execution of the script and return a special label to the routing client.

Properties:

Termination Type.

  • Ring or Busy. ICM software returns a label of that type to the routing client. (Use these types only if you have configured labels of the appropriate type for the routing client.)

  • Network Default. The routing client uses its own default destination for the call.

  • Default Label. ICM software returns the default label configured for the dialed number.

See also:

"End Node" section.



Time Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to choose from among several paths within the script based on the current time at the ICM Central Controller. You can define any number of branches from the Time node. For each branch you can specify one of the following:

  • One or more time ranges. Execution follows this branch during the time ranges you specify.

  • Otherwise. Execution follows this branch if none of the specified time ranges apply. You can specify only one Otherwise branch for the node.


    Note   You must insert targets and connection branches from the Time node before you can define the node's properties. When you open the Properties dialog box, the top part of the dialog box displays a column for each output branch and a column on the left listing the hours of the day.

Properties:

Time graph / Connections.

To add a time range, choose a value in the Connections field and click the Add Time button. The Add Time dialog box appears.

Add Time.
(Dialog box)

Use the Start Time and End Time scrolling lists to select a time range or ranges (you can create multiple time ranges for each branch).

Modify Name.
(Button)

To rename an output branch column, select the column name in the Connections field and click this button. The label name becomes highlighted and you can make changes.

Make Otherwise.
(Button)

(Optional) Designate one branch as the Otherwise branch; select a column name in the Connections field and click the Make Otherwise button. The column is renamed Other and assigned no time range.


Note   If you ever delete a connection associated with a case, the case information you specified in the Properties dialog box is deleted, also.

See also:

For additional information, see Refining Call Type Definition.



Translation Route to VRU Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to send a call to the VRU but keep the call active for processing on ICM software.


Note   This node is valid with Type 2 and Type 8 VRUs.

The Translation Route to VRU node is useful for executing scripts that reside on the VRU.

Properties:
Select Type dialog box

Target Type.

(To open the Select Type dialog box, click the Change button.)

A target type for the node: Enterprise Service, Service, or Service Array.

Distribute Among Targets.
(Radio button)

The Translation Route to VRU node behaves like a Distribute node, distributing calls among the targets based on the relative values.

Select Most Eligible Target. (Radio button)

The Translation Route to VRU node is to behave like a Select node, using the following rules:

  • Pick the target with the maximum value / Pick the target with the minimum value

  • Accept Target If (that is, evaluate an acceptance rule

  • Start with first target / Start with next target

Properties:
Add Targets dialog box

Available targets.
(List)

(To open the Add Targets dialog box, click the Add Targets button.)

Available options for the targets specified in the Select Type dialog box.


Note   If you chose Enterprise Service as a target type, you can select just one item from the list. If you chose Service or Service array, you can select one or more items from the list.

Properties:
Translation Route to VRU Properties dialog box

Consider If.
(Optional)

A formula that evaluates to "true" for the target when ICM software executes the Translation Route to VRU node, or that target will not be selected.

Select Max/Select Min Value of.

A formula that determines which of the targets is selected.

Route.
(Drop-down list)

The route on which to send the call if this target is selected. (The list contains all routes associated with the target.)

Translation Route. (Drop-down list; Optional)

The route to send the call for initial external processing if this target is selected. (The list contains all translation routes associated with the same peripheral as the target.)


Note   You must specify a value for this field. When a call is sent to a translation route, the PG retrieves the final route from ICM software and coordinates the other processing with the VRU.

Per-node success connection. (Radio button)

Select this option to attach one success output terminal to the node. This terminal is used regardless of which target is selected.

Per-target success connection. (Radio button)

Select this option to attach a success output terminal to each target in the node.


Note   This option can be useful in scripts where you want to manipulate specific variables after choosing a target.

See also:

"Network IVRs/VRUs"



Wait Node


Object palette icon:


Valid script type(s):

Purpose:

Use this node to halt execution of a script until a specified time period elapses.

Properties:

Timeout.

An interval to wait, in seconds.