Packaged CCE Administration Guide for Release 9.0(x)
Scripting with Packaged CCE
Downloads: This chapterpdf (PDF - 3.81MB) The complete bookPDF (PDF - 7.16MB) | Feedback

Scripting with Packaged CCE

Contents

Scripting with Packaged CCE

Common Tasks

This topic contains information about common tasks you perform in Script Editor. This topic does not contain information about every possible task you can perform. For more information on Script Editor, see the Script Editor online help.

The Palette

Figure 1. Palette Icon

You can display the Palette by clicking the Palette icon in the Main toolbar or by selecting Palette from the View menu. The Palette contains the icons that represent the nodes used in scripts.

The available nodes are divided into the following tabs:

General Tab

The General tab contains icons for the following scripting activities:

Routing Tab

The Routing tab contains icons for the following scripting activities:

Targets Tab

The Targets tab contains icons for the following scripting activities:

Queue Tab

The Queue tab contains icons for the following scripting activities:

Create Routing Script

Procedure
    Step 1   In Script Editor, choose File > New or click New. You are prompted to select a Routing Script or an Administrative Script:
    Figure 2. New Dialog Box

    Step 2   Click the following icon.
    Figure 3. Routing Script

    The new script opens in the Edit window, with a Start node.

    Step 3   Build the script.
    Step 4   To save the script, choose File > Save or click Save. You are prompted for a script name.

    Add Comments to a Node

    Most nodes have a Comment tab:

    Figure 4. Comment Tab

    Procedure
      Step 1   You can add a comment in the Enter text field.
      Step 2   You can also select the location where you want your comment to appear in the node. You can do this by selecting a radio button in the Text justification area.

      Specify a Connection Label Location for a Node

      Most nodes have a Connection Labels tab.

      Procedure
        Step 1   You can specify the location of connection labels by moving the slider in the Label position area (when viewing a script in monitor mode). You can move the slider to the following locations:
        1. Origin, for the connection label to display close to the node you are editing.
        2. Destination, for the connection label to display close to the targeted node.
        3. Center, for the connection label to display between the nodes.
        Step 2   You can also select to show the connection label by clearing the Display monitor labels check box.

        Validate Scripts

        Procedure
          Step 1   To validate a single script, with the script open in the active window, choose Script > Validate or click the Validate Icon on the toolbar.

          Step 2   To validate multiple scripts, choose Script > Validate All or on the toolbar, click the Validate All Icon.

          You are prompted to choose between validating active versions of all scripts or all the opened scripts.

          Figure 5. Validate All Query Dialog

          Step 3   Make the appropriate selection and click OK.
          1. If a script is valid, a dialog box opens stating that script is valid.
          2. If the script is not valid, the Validate Script dialog box opens with a list of the errors. When you select an error, the node where the error occurs is highlighted in the Edit window.

          Open Script Explorer

          Procedure
          In Script Editor, choose File > Script Explorer or on the toolbar, click the Explorer Icon.

          The Script Explorer dialog box opens, listing scripts by customer and business entity:

          You can then set the active version of the script, view its properties, rename it, or delete it. For more information, see the Script Editor Online Help.


          Schedule Routing Script

          You schedule a script by associating it with a call type as follows:

          Procedure
            Step 1   Choose Script > Call Type Manager. The Call Type Manager dialog box opens.
            Figure 6. Call Type Manager Dialog Box—Schedules Tab

            Step 2   Select the call type to associate with the script.
            Step 3   Click Add. The Add Call Type Schedule dialog box opens.
            Step 4   In the Script tab, select the script to schedule:
            Figure 7. Add Call Type Dialog Box - Script Tab

            Step 5   In the Period tab, choose the information to define the period for which the schedule will be effective.
            Figure 8. Add Call Type Schedule Dialog Box - Period Tab

            Step 6   Optionally, in the Description tab, enter a description of the schedule.
            Step 7   Click OK in the Add Call Type Schedule dialog box.
            Step 8   Click OK in the Call Type Manager dialog box.
            Note    The schedule is not saved until you click OK in the Call Type Manager dialog box.

            Viewing Modes

            You can view a script in four different modes:

            • Browse - Allows you to view the script and edit it.
            • Edit - Allows you to edit the script.
            • Monitor - Allows you to monitor the script
            • Quick Edit - Allows you to make certain modifications to a script, with the following guidelines:
              • In Quick Edit mode, you cannot add or delete a node.
              • In Quick Edit mode, you can adjust most of the properties of the script nodes you select in the Node Control table of your assigned feature control set. However, in Quick Edit mode you cannot edit any properties of the selected nodes that change the structure of a script or that reset previous reporting data.
            • As a Quick Edit Only User:
              • You can only edit scripts through Quick Edit mode.
              • You cannot create or delete a script.
              • You can access the Properties of any script node in any mode by either right-clicking the node and selecting Properties, or by double-clicking the node.
              • You cannot edit the Call Type Manager dialog box (Script > Call Type Manager).
              • You cannot edit the Administrative Manager dialog box (Script > Administrative Manager).
              • You cannot edit the Custom Functions dialog box (Script > Custom Functions).
              • You can choose the viewing mode from the Scripting toolbar, or from the Script menu.

            Making Packaged CCE Work with Unified CVP

            The following sections describe the differences between Packaged Contact Center Enterprise ( Packaged CCE) and Unified Customer Voice Portal (Unified CVP) scripting and show how they work together in common tasks.

            Difference between CCE and CVP Scripting

            Packaged CCE scripting offers call control such as how a call should be treated based on time of day, call type, and so on. It also handles queuing for an agent based on skill group or service. It determines when to send the call to Unified CVP (for example, to play prompts, collect call entered digits, and get or put information in a database), or for queuing the call while waiting for an agent.

            Packaged CVP scripting offers IVR interaction, like playing a prompt based on an audio file or text-to-speech or collecting caller-entered digits via touch tone or speech. It also offers advanced features such as accessing an external database or web service for information used in creating a dynamic caller interaction experience. Examples include accessing current balance or storing collected customer information in a database.

            Packaged CCE scripting is used for routing the call; but when the call needs to go to the CVP, a self-service component is enlisted with Unified CVP scripts that have been created in Call Studio. For example, if a customer calls a credit card company and gets a voice recorded message, the Packaged CCE component makes the decision which script to run, whether the interaction is treated as a sales call or a service call and then selects which VRU (voice response unit) scripts get run, The call is then sent to a VRU, which connects the call to the Unified CVP "self-service engine". It accomplishes these tasks without the customer talking to an agent, such as getting the account balance with touch tone activation or speech. Once the information is collected control is then returned to the Packaged CCE script. The Packaged CCE script queues the customer for an agent, and connects her to an agent.

            How Packaged CCE and Unified CVP Work Together

            To summarize, Packaged CCE and Unified CVP work together to perform such tasks as:

            • Playing media, such as a recording stating office hours, to a caller.
            • Playing streaming audio, such as a radio broadcast, to a caller.
            • Retrieving caller-entered data, DTMF, or speech.
            • Playing back different types of data, such as an account number or balance, to a caller.
            • Moving calls to other destinations. For example, forwarding calls to an agent.

            Packaged CCE uses CVP messaging technology to direct Unified CVP and to receive the responses from Unified CVP.

            For more information about Packaged CCE working with Unified CVP, proceed to Before You Begin.

            Call Types, Contact Data, and Scripting

            When writing scripts to route contacts, you must understand Call Types and contact data. Call Types are typically created during use of the call type gadget of the Unified CCE Administration tool and are therefore discussed in greater detail in the Access Configuration Manager in Packaged CCE Administration Guide for Release 9.0(x).

            Call Types

            A Call Type is the first-level category of a contact and is determined by data associated with the contact. You associate a script with a Call Type. When a contact of a certain Call Type is received, the associated script runs on that contact.

            Default Call Types

            A default Call Type is the Call Type used when a contact does not map to a defined Call Type.

            You define a default Call Type for each routing client through the Configuration Manager in the PG Explorer tool. The General Default call type is set through the Configuration Manager in the System Information tool. You also define a general default Call Type that is not specific to a routing client. For more information, see the Call Types chapter in Packaged CCE Administration Guide for Release 9.0(x) .

            Relation between Call Types and Scripts

            Scripts are scheduled by Call Type. In other words, when Packaged CCE receives a request to route a contact, it determines the Call Type of that contact, then runs the associated script.

            Call Types provide the first level of categorization of contacts, enabling you to write scripts to route contacts differently depending on their call type. While other types of categorization take place within a script, Call Types enable you to provide contacts with different treatment by running different scripts to begin with. Call Types enable categorization before a script begins to execute.

            Call Type Qualifiers

            The Call Type is determined by the following data, which are referred to as Call Type qualifiers:

            • Dialed Number

            The Call Type qualifiers described in this section apply to contacts from all media. The terminology used is applicable to voice contacts; where the terminology differs for other media, the differences are explained in this section, as well as the following sections in this topic:

            • Contact Data for Chat
            • Contact Data for E-Mail

            Dialed Number (DN)

            A Dialed Number (DN) is a string that represents the telephone number dialed by the caller, preceded by the name of the routing client and a period. For example, "ucm.18005551212" might be a Dialed Number.

            Typically, a Dialed Number is associated with one or more Call Types.

            Association of Contacts with Call Types in Packaged CCE

            Following is the general process of how Packaged CCE attempts to associate a contact with a Call Type.

            1. If the Dialed Number of the contact maps to a defined Call Type, Packaged CCE uses that Call Type.
            2. If no Call Type matches the contact, Packaged CCE uses the default Call Type for the routing client.
            3. If no default Call Type is defined for the routing client, Packaged CCE uses the general default Call Type.
            4. If no general default Call Type is defined, Packaged CCE returns an error to the routing client.

            Determination of Call Type for Voice Contact

            The following example demonstrates how Packaged CCE determines the Call Type for a voice contact and runs the appropriate script:

            1. When configuring Packaged CCE , you create a Call Type called "MASSACHUSETTS_SALES". This Call Type is defined as:
              • Having a Dialed Number of "ucm.8005551234".
            2. You create a script called "MASSACHUSETTS_SALES_SCRIPT," which finds the longest available agent in the "NORTHEAST_SALES" skill group.
            3. You schedule the script to run for the "MASSACHUSETTS_SALES" Call Type.
            4. Packaged CCE determines that the Call Type is "MASSACHUSETTS_SALES" and executes the "MASSACHUSETTS_SALES_SCRIPT" script.
            5. Packaged CCE assigns the task to a particular agent.

            Determination of Call Type for E-mail or Web Request

            The following basic example demonstrates how Packaged CCE determines the Call Type for e-mail or chat web request:

            1. When configuring Packaged CCE, you create a Call Type called "SSC_CT". This Call Type is defined as having a Script Selector (Dialed Number) of "SSC_DN".
            2. When configuring Unified EIM/WIM, set the value of the Script Selector for Media Routing Domain to "SSC_DN".
            3. You create a script called "SSC_SCRIPT," which finds the longest available agent in the "COLLABORATION_SALES" skill group.
            4. You schedule the script to run for the "SSC_CT" Call Type.
            5. An e-mail is sent or a web user requests a chat session.
            6. A route request is sent to Packaged CCE .
            7. Packaged CCE determines that the Call Type is "SSC_CT" and executes the "SSC_SCRIPT" script.
            8. Packaged CCE instructs the Unified EIM/WIM to assign the task to a particular agent.

            Contact Categorization

            When you create a routing script, you typically use the nodes available in Script Editor to define how the script is to categorize contacts. By categorizing contacts, a script can provide unique solution for different customer needs.

            Categorization and Call Type

            Categorization is the process of classifying a contact based on certain data associated with the contact. Through categorization, a script can determine the best way to process a contact.

            Categorization through Scheduling Scripts by Call Type

            Call Types provide the first level of categorization for routing scripts. You schedule scripts by Call Type; therefore, the Call Type of a contact determines which script is executed, enabling you to create different scripts for different types of contacts.

            Change Call Type to Static

            You can change the Call Type of a contact from within a script by using the Call Type node (in the Routing tab of the Palette).
            Figure 9. The Call Type Icon

            The following figure is the Call Type Properties dialog box of the Static Call Type node:

            Figure 10. Call Type Properties Dialog Box - Static Call Type



            To define a static call type node, complete the following steps.
            Procedure
              Step 1   In the Call Type tab, click the Statically radio button.
              Step 2   From the Call Type list, click the call type to assign to the contact.

              What to Do Next


              Warning


              The Call Type node changes the Call Type and continues the current script execution. The Requalify Call node terminates the current script execution and executes a new script associated with that Call Type.


              Change Call Type to Dynamic

              You can change the Call Type of a contact from within a script by using the call type node (on the Routing tab of the Palette).

              Figure 11. Call Type icon


              Note


              Dynamic Call Type selection is not available when an External Authorization server is used with Internet Script Editor and will be grayed out in the interface.

              The following figure is the Call Type Properties dialog box of a dynamic call type node:

              Figure 12. Call Type Properties Dialog Box - Dynamic Call Type



              To define a dynamic call type node, complete the following steps.

              Procedure
                Step 1   On the call type tab, select the Dynamically radio button.
                Step 2   To dynamically change the call type of a contact by call type name, In the Find By section, select the Call Type Name radio button.
                Step 3   To dynamically change the call type of a contact by call type ID, In the Find By section, select the Call Type ID radio button.
                Step 4   To determine which call type name or ID to use to change the call type of a contact, click the Formula Editor button to create a formula.

                What to Do Next

                Change Call Type and Execute a New Script

                You can change the Call Type of a contact from within a script and execute a new script associated with the Call Type by using the Requalify Call node ( in the Routing tab of the Palette).
                Figure 13. The Requalify Call Icon

                Following is the Requalify Properties dialog box of the Requalify Call node:

                Figure 14. The Requalify Properties - Requalify Call Tab

                Define Requalify node properties as follows:
                Procedure
                  Step 1   In the Requalify Call Tab, select the Call type to assign to the contact.
                  Step 2   Optionally, add comments.

                  What to Do Next


                  Warning


                  The Call Type node changes the Call Type and continues the current script execution. The Requalify Call node terminates the current script execution and executes a new script associated with that Call Type.

                  Categorization by Call Type Qualifiers

                  As described in the topic Call Types, Contact Data, and Scripting, a contact's Call Type is determined by the Dialed Number qualifier.

                  When Packaged CCE determines a contact's Call Type based on these qualifiers, it executes the associated script.

                  However, after the script executes, you can further categorize the contact based on the values of the Call Type qualifiers.

                  Categorize Contact by Dialed Number

                  You can categorize a contact based on its Dialed Number by using the Dialed Number (DN) node ( in the Routing tab of the Palette).
                  Figure 15. The Dialed Number Icon

                  Following is the DN Properties dialog box of the Dialed Number node:

                  Figure 16. DN Properties - Dialed numbers rab

                  You can define the Dialed Number node properties as follows:
                  Procedure
                    Step 1   Select one or more dialed numbers or Script Selectors from the Dialed numbers list and click Add> to move them to the Target dialed numbers list. If the current contact matches one of the selections in the Target dialed numbers list, processing continues on the node's success branch; otherwise, processing continues on the failure branch.
                    Step 2   Optionally, add comments and connection labels.

                    Categorization by Time and Date

                    You schedule a script by associating it with a Call Type. When a contact of a certain Call Type is received, the associated script runs for that contact.

                    However, after the script executes, you can further categorize the contact based on the time and day of week. This categorization refines the schedule.


                    Note


                    The time and day of the week are determined by the settings on the CallServer virtual machine.

                    For example, a Call Type named "CHAT_CT" may be defined to include all chat web requests. A script named "CHAT_SCRIPT" executes every time a contact with the Call Type "CHAT_CT" is received. Typically, this script instructs Unified WIM to assign the request to the longest available agent in the "Chat" skill group. However, the contact center is staffed differently over the weekend and the supervisor wants reports to better reflect weekend activity. Therefore, for chat web requests received on Saturday or Sunday, the script branches differently and instructs Unified WIM to assign the request to the longest available agent in the "WKEND_SUPPORT" skill group.

                    As another example, for a contact center where no phone support is available during night hours or weekends, you may choose to design a script that routes a phone call to an announcement instead to an agent, during those off hours.

                    Categorize Contact by Date and Time

                    You use the Time node (in the General tab of the Palette) to choose from among several paths within the script based on the current time at Packaged CCE Central Controller. Following is the Time Properties dialog box of the Time node.
                    Figure 17. Time Icon

                    Following is the Properties dialog box of the Time node:

                    Figure 18. Time Properties

                    You must insert targets and connections from the Time node before you can define the node's properties.

                    Then define Time node properties as follows:
                    Procedure
                      Step 1   For each branch listed in the Connections list, define a Time Range. You can define multiple time ranges for a single branch. Click Add Time to add a new time range to the branch, or select a time range listed and click Modify Time to modify it. A dialog box opens in which you can define the time range (the Add Time dialog box is shown below; the Modify Time dialog box looks and functions similarly):
                      Figure 19. Add Time Dialog

                      Step 2   To delete a time associated with the branch, select the time and click Delete Time.
                      Step 3   You can define a branch as Otherwise by selecting the branch and clicking Make Otherwise. Execution follows this branch if none of the specified time ranges apply. You can specify only one Otherwise branch for the node. If you do not want to define the branch as Otherwise, select the branch and click Delete Otherwise.
                      Step 4   Optionally, add comments and connection labels.

                      What to Do Next


                      Note


                      If you delete a connection, the time-range information you specified in the Properties dialog box is also deleted.

                      Categorize Contact by the Day of Week

                      You use the Day of Week node (in the General tab of the Palette) to transfer control to one of several branches depending on the current day of week (Sunday, Monday, etc.).
                      Figure 20. Day of Week Icon

                      Following is the Properties dialog box of the Day of Week node:

                      Figure 21. Day of Week Properties

                      You can define multiple output connections from the Day of Week node and associate each with one or more days of the week.

                      You must insert targets and connections from the Day of Week node before you can define the node's properties.

                      Define Day of Week node properties as follows:
                      Procedure
                        Step 1   For each branch listed in the Connection list, check the days of the week in which processing should continue on that branch. To check the day for that connection, left-click in a spot in the grid corresponding to that connection and day. A check mark appears in the grid.You can associate each day of week with one connection. However, you can associate each connection with one or more days of the week.
                        Step 2   Optionally, add comments and connection labels.

                        Categorization by Branching

                        Within a script, you can create multiple branches to direct script processing based on certain conditions. Branching allows you to use a single script that processes contacts differently, depending on data associated with the contact, or on conditions at the contact center.

                        Execute a Different Script

                        You use the Go To Script node (in the General tab of the Palette) to direct contact processing to another script without changing the call type. When Packaged CCE encounters a Go To Script node, it stops executing the current script and starts the script indicated in the node.
                        Figure 22. Go To Script Icon

                        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.

                        Following is the Properties dialog box of the Go To Script node:

                        Figure 23. Go To Script Properties

                        Define "Go to Script" node properties as follows:
                        Procedure
                          Step 1   Select the Business entity that owns the script that the node should execute. By default, Packaged CCE consists of one business entity.
                          Step 2   Select a script from the Scripts list. From within an administrative script, you can only go to another administrative script. Within a routing script, you can only go to another routing script.
                          Step 3   Optionally, add comments and connection labels.

                          Direct Script Execution to Different Branches by Percentage

                          You can direct specific percentages of contacts to different branches in a script by using the Percent Allocation node (in the General tab of the Palette).
                          Figure 24. Percent Allocation Icon

                          Each branch may lead directly to a target, or may include additional processing. Because contacts are distributed by percentage and without tests of the targets' data, distributing by percentage never fails.

                          For example, in a geographically diverse environment, you can create a script that sends 10% of contacts to Boston, 5% to Chicago, and distributes the remaining 85% to another set of targets.

                          Following is the Properties dialog box of the Percent Allocation node:

                          Figure 25. % Allocation Properties

                          Define Percent Allocation node properties as follows:
                          Procedure
                            Step 1   In the Percent column for each connection, enter a percent number for the percentage of contacts to process on that branch.
                            Note    Note: The percent total for all rows must equal 100.
                            Step 2   Optionally, modify the Connection name. Changes appear in the connector labels when you save the properties and view the script.
                            Step 3   Optionally, add comments and connection labels.

                            Categorize Contact Based on a Condition

                            You use the If node (in the General tab in the Palette) to direct script execution to one of two branches based on the result of an evaluation. You can use formulas to define the If node.
                            Figure 26. If Icon

                            When Packaged CCE executes an If node, it first evaluates the condition specified in the node Properties dialog box Define condition field. If Packaged CCE 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.

                            Following is the Properties dialog box of the If node:

                            Figure 27. If Properties

                            Define If node properties as follows:
                            Procedure
                              Step 1   In the Define condition field, enter a condition or use the Formula Editor to create a formula.
                              Step 2   Optionally, add comments and connection labels.

                              Categorize a Contact Based on its Media Routing Domain

                              You use the Media Routing Domain node to categorize contacts based on their media routing domains. This node is described in the Universal Queue section of this document.

                              Selection of Routing Targets

                              After defining how a script is used to categorize contacts, you typically use the nodes available in Script Editor to specify how the contact is to be routed to a target. By selecting routing targets, you determine the destination for contacts.

                              Routing Targets

                              A routing target is an entity to which Packaged CCE can route a contact. The routing target receives the contact and processes it accordingly.

                              The routing targets available for Packaged CCE are peripheral-level skill targets.

                              • Agents
                              • Skill groups

                              Agent Routing Nodes

                              The following nodes available for agent routing:

                              1. Queue to Agent Node. For more information, see Queuing to Agents
                              2. Agent to Agent Node. For more information, see Transferring a Call from Agents to Agents

                              Transfer Calls from Agents to Agents

                              You can transfer a call from an agent to an agent by using the Agent to Agent node in the Targets tab of the Palette.
                              Figure 28. Agent to Agent icon

                              The Agent to Agent node routes the call to the specified agent. You define the agent either by directly selecting the agent from the database or by providing an expression using a formula. The expression must translate to agent peripheral number or SkillTargetID. The router 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.

                              Following is the Properties dialog box for the Agent to Agent node:

                              Figure 29. Agent to Agent Properties

                              Define Agent to Agent node properties as follows:
                              Procedure
                                Step 1   Choose an option from the Select agent by drop-down list:
                                1. Peripheral number - To select a peripheral and a provide formula that translates to the agent's peripheral number.
                                2. Enterprise Name - To select the agent from the list of configured agents.
                                3. Skill target ID - To select the agent by providing an expression that translates into the agent's SkillTargetID. In the Packaged CCE/Unified CCH supervisory case, the expression should use the call's PreferredAgentID.
                                Step 2   Based on your selection in Step 1, select the peripheral or agent, or enter an expression, as necessary.
                                Step 3   Optionally, check or uncheck Fail node if agent is unavailable:
                                1. When checked, the success branch of the Agent to Agent node is executed and the router sends the call if the router finds a valid label for the agent, the agent is available, and the agent state is Ready.
                                2. The failure branch of the Agent to Agent node is executed if the router does not find a valid label for the agent, or the agent is not available or the agent is in TempUnavailable mode (the router has just send a call to the agent).
                                3. When not checked, the success branch of the Agent to Agent node is executed and the router sends the call if the router finds a valid label for the agent. The failure branch of the Agent to Agent node is executed if the Router does not find a valid label for the agent.
                                Step 4   Optionally, add comments and connection labels.

                                Nodes Used to Stop Script Processing

                                You can use the following nodes to stop script processing:

                                • End Node
                                • Termination Node
                                • Release Call Node

                                End Node

                                You can terminate the script by using the End node in the General tab of the Palette.

                                Figure 30. End icon

                                If the script reaches the End node, it has failed to find a target for the contact. Packaged CCE then uses the default route for the Dialed Number.

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

                                You do not define any properties for the End node. You can optionally add comments.

                                Release Call Node

                                You can terminate the script and disconnect the caller by using the Release Call node in the Targets tab of the Palette.

                                Figure 31. Release Call Icon

                                You can use a Release Call node in situations where the caller needs no further service after executing several CVP scripts.

                                You do not define any properties for the Release Call node. You can optionally add comments.

                                Target Requery

                                Target Requery is a script node feature that addresses routing failures due to transient failures in the network (such as network congestion). If the determined destination for a contact is available but not reachable, Target Requery attempts to find a different valid destination.

                                You need Target Requery to address the following failures:

                                • Failure to deliver a call to an agent.
                                • Failure of the outbound leg of a blind-mode Network Transfer.
                                • Target Requery works on a per call basis; that is, the routing information for one call does not affect the state for other calls. If the first target selected for the contact was not reachable, the target is not eliminated from the potential routing destinations for other contacts.

                                Target Requery Functionality

                                In the Packaged CCE system, when queried, the CallRouter returns a label to the routing client. The routing client then routes the call to the destination specified by the label. If the destination is not reachable (for example, because of a busy signal or no answer), the call is routed to the default destination.

                                With Target Requery, if the router fails to route to the target node, a second attempt is made. If the failure occurs a second time, then the router continues from the failure path in the node.


                                Note


                                In a Queue node, just one target is used and the failure path of the node is immediately taken. You can create a script that increases the priority and requeries the call from the failure path to the same queue.

                                In the event of a failure, you can handle requerying in the scripting environment, as you deem appropriate.

                                Target Requery does not require different definitions for different failure cases. However, you can choose to handle different failures differently.

                                  Test of the RequeryStatus Variable

                                  You can test the error path of these script nodes using Target Requery to determine the specific network cause of failure and conditionally retry the attempt as necessary. You can accomplish this using an If node to check the value of the Call variable RequeryStatus. The decision path for the script is then determined by the value of the RequeryStatus variable.

                                  The following are possible values for the RequeryStatus variable:

                                  Table 1 RequeryStatus Variables

                                  Requery Status Variable

                                  Description

                                  REQUERY_ANSWER (0)

                                  CallRouter internal use. Script ends and the call was successfully sent to the chosen target. Not visible to users.

                                  REQUERY_ROUTE_SELECT_FAILURE (1)

                                  Routing client generated an error code from ReRouteReq msg indicating a Route Select failure.

                                  REQUERY_CALLED_PARTY_BUSY (2)

                                  Routing client generated error code from ReRouteReq msg indicating the called party is busy.

                                  REQUERY_NO_ANSWER (3)

                                  Routing client generated an error code from ReRouteReq msg indicating no answer.

                                  REQUERY_ERROR (4)

                                  CallRouter generated an error code. The attempt to send the call to target failed because the target was not reachable (i.e., busy, ring no answer).

                                  REQUERY_TIMED_OUT (5)

                                  CallRouter internal use. Script ends. The attempt to send the call to target failed because the Routing Client did not respond within the DivertOnBusyCallTimeout period. Not visible to users.

                                  REQUERY_ABORTED (6)

                                  CallRouter internal use. Script ends. The attempt to send the call to target failed because the caller hung up or the call was lost. Not visible to users. In the case of ABANDON and DISCONNECT, the CallRouter assumes the call has ended and ends the script. The RequeryStatus value is set to 6, indicating REQUERY_ABORTED. This is used for the internal workings of the CallRouter but is not visible to users. Which Nodes Support Target.

                                  Nodes that Support Target Requery

                                  The following nodes support Target Requery:

                                  • Queue
                                  • Queue to Agent
                                  • Route Select
                                  • Precision Queue

                                  Use Target Requery

                                  You define nodes to enable Target Requery. For the Queue, Queue to Agent, and Route Select nodes:
                                  Procedure
                                    Step 1   Open the node properties.
                                    Step 2   Click Change. A dialog box opens.
                                    Step 3   Check Enable target requery.
                                    Step 4   Click OK to close the dialog box.
                                    Step 5   Click OK to close the properties dialog box.

                                    What to Do Next

                                    For Select nodes:

                                    1. Open the node properties.
                                    2. Check Enable target requery.
                                    3. Click OK to close the properties dialog box

                                    Network VRUs

                                    Through routing scripts, you can divert a call to a Network VRU for additional call processing.

                                    VRU Functionality

                                    A VRU, or Voice Response Unit, is a telecommunications device, also called an Interactive Voice Response Unit (IVR), that plays recorded announcements and responds to caller-entered touch-tone digits. Cisco Voice Portal (CVP) is the supported VRU for Packaged CCE. A VRU can also be equipped with Automatic Speech Recognition (ASR) or Text-to-Speech (TTS) capabilities.

                                    Access to VRU Scripts in Unified ICM Scripts

                                    After you set up VRUs through the Unified ICM Configuration Manager, you can write routing scripts that send calls to the VRU, queue the call, and invoke specific VRU scripts.

                                    Send Call to a VRU with Send to VRU Node

                                    You can send a call to CVP for further processing by using the Send to VRU node (in the Queue tab of the Palette).

                                    Figure 32. The Send to VRU icon

                                    When Packaged CCE executes a Send to VRU Node, it looks up the call's Dialed Number, the Dialed Number's Customer, and the Customer’s Network VRU. If that fails to retrieve a Network VRU, the router uses the system default Network VRU .

                                    There are two failure cases:

                                    • If the label does not exist, script execution continues with control flowing through the nodes failure output terminal.
                                    • If Packaged CCE does not receive confirmation, execution continues with control flowing through the nodes failure output terminal.

                                    In all other cases script execution continues with control flowing through the nodes success output terminal.

                                    Notes:

                                    • If the Run External Script, Play, Menu, Collect Data, or Queue node is used in a script before a Send To VRU node, an implicit Send To VRU node is assumed. You do not have to use the Send To VRU node. However, Cisco recommends that you make a practice of including the node in routing scripts, as it can act as a visual aid if you ever need to troubleshoot the script.
                                    • If the call is delivered to the CVP but then abandoned, script execution ends. In monitor mode, a special label on the Send To VRU node accounts for these cases.

                                    You do not need to set properties for the Send to VRU node. However, you can optionally add comments or connection labels.

                                    Run External Scripts

                                    You can instruct a Network CVP to run a specific script by using the Run External Script node (in the Queue tab of the Palette).
                                    Figure 33. The Run External Script icon

                                    You can use multiple Run External Script nodes to execute a series of scripts on the CVP.

                                    The Run External Script node is valid for use with all the VRU types.

                                    The execution of Packaged CCE routing script waits for the external script to finish:
                                    • If the external script runs successfully, control then passes through the success branch of the Run External Script node.
                                    • If the external script does not run successfully for any reason, then control passes through the failure branch of the Run External Script node.
                                    Notes:
                                    • If the current call is not at a CVP when the Run External Script node executes, the Packaged CCE sends the call to the associated Network VRU, as executing a Send to VRU node.
                                    • Design scripts so that the Failure branch of a Run External Script Node contains a test for the Call.VRUStatus variable. If the value is 2, the VRU is likely to be not functioning properly. Therefore, the script avoids executing any subsequent Run External Script nodes on this Failure branch.

                                    Note


                                    When an uninterruptible script is used in a Run External Script node, the CallRouter waits for the script result from the VRU. It then executes the next node. Calls can only be routed when they reach an interruptible node. The Wait node and interruptible Run External Script node ( micro apps) are interruptible. Every other node is uninterruptible.

                                    Following is the Properties dialog box for the Run External Script node:

                                    Figure 34. Run External Script Properties

                                    Define Run External Script node properties as follows:
                                    Procedure
                                      Step 1   Select the Packaged CCE Script/External Script Name you want to execute.
                                      Step 2   Optionally, add comments and connection labels.

                                      VRU Errors

                                      The following table lists the possible values for the VruStatus variable:

                                      Table 2  VruStatus Variable Codes

                                      Value

                                      Meaning

                                      Description

                                      0

                                      VRU_SUCCESS

                                      The last VRU node was successful.

                                      1

                                      VRU_ERROR

                                      The last VRU node failed because of a routing or configuration error.

                                      2

                                      VRU_TIMEOUT

                                      The last Send To VRU failed because the routing client did not respond within 20 seconds or the last Run External Script node failed because the timeout limit defined for the script expired.

                                      3

                                      VRU_ABORTED

                                      The last VRU node did not complete because the caller hung up or was otherwise lost. (Because this causes the routing script to terminate immediately, this value is never seen.)

                                      4

                                      VRU_DIALOG_ FAILED

                                      The last VRU node failed because communication with the VRU ended unexpectedly.

                                      5

                                      VRU_SCRIPT_ NOT_FOUND

                                      The VRU failed because the referenced VRU script was not found in the Packaged CCE configuration.

                                      Call Queuing at VRUs

                                      You can queue a call at a Network VRU until a specific resource becomes available. A call can be queued for one or more skill groups, or a Precision Queue. As soon as an agent becomes available at one of the specified targets, the call is removed from the queue and sent to the target.

                                      Specifically, you can:

                                      • Place a call in a Precision Queue.
                                      • Place the call in a Precision Queue for one or more skill groups.
                                      • Adjust the priority of call in a queue for one or more skill groups.
                                      • Remove the current call from any queues to which it is assigned.

                                      For example:

                                      1. The call is first sent to the Network VRU. This step is required before you queue the call.
                                      2. The call is queued for three skill groups.
                                      3. If the call is successfully queued, the script cycles between a Wait node and a Run External Script node so that the caller hears an announcement every 30 seconds. If an agent in one of the skill groups becomes available, the call is removed from queue and taken back from the CVP . Routing script execution ends and the call is delivered to the target.

                                      Note


                                      In this scenario, you would likely make the VRU script interruptible so that the routing script can retrieve the call immediately when the resource becomes available.

                                      Place a Call in Queue

                                      You can place a call in queue at a CVP for one or more skill groups using the Queue node (in the Queue tab of the Palette).
                                      Figure 35. The Queue icon

                                      If an agent becomes available in one of the skill groups, the call is routed to that resource.


                                      Note


                                      If the current call is not at a CVP when the Queue node executes, Packaged CCE sends the call to the associated Network VRU. (This does not apply to Type 2 VRUs, which are VRUs at customer premises.)


                                      The Queue node includes a Priority field, which sets the initial queuing priority for the calls processed through this node versus other calls queued for the same target. The Priority is expressed as an integer from 1 (top priority) to 10 (least priority). The default value is 5.

                                      If more than one call is queued to a group when an agent becomes available, the queued call with the lowest priority number is routed to the target first. For example, assume an agent in a skill group becomes available and two calls are queued to that skill group. If one call has priority 3 and the other has priority 5, the call with priority 3, the lower value, is routed to the skill group while the other call continues to wait.


                                      Note


                                      The Queue node does not actually result in instructions being sent to the VRU. When queuing occurs the Queue node exits immediately through the success branch and the call is assumed to be at the VRU; the script should then continue with a Run External Script node to instruct the VRU what to do while holding the call until an agent to becomes available. Typically this would invoke a Network VRU Script that plays music-on-hold, possibly interrupted on a regular basis with an announcement.

                                      Following is the Properties dialog box for the Queue node:

                                      Figure 36. Queue to Skill Group Properties

                                      Define Queue node properties as follows:
                                      Procedure
                                        Step 1   To change the queue type:
                                        1. Click Change. The Queue Type dialog box opens.
                                        2. Select a Target Type (Skill Group). 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.
                                        3. Optionally, select a Priority to set 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.)
                                        4. Optionally, check Enable Target Requery.
                                          Note    When Target Requery is enabled in a Queue node and a Requery happens, for example because the call is presented to an available agent, but the agent does not answer, the script continues through the failure terminal. The script can then inspect the call variable RequeryStatus to determine what to do next. The typical action in case of a No Answer would be to Queue the call again, possibly to other skill groups, and possibly increase the priority so that it is taken out of the queue before regular queued calls.
                                        5. Click OK to close the Queue Type dialog box.
                                        Step 2   To add targets:
                                        1. click Add Targets. The Add Targets dialog box opens, listing available targets of the type you specified.
                                        2. Use the Available Targets list and the Add button to select targets.
                                        3. Click OK to close the Add Targets dialog box. The target members you selected appear in the Properties dialog box.
                                        Step 3   Optionally, continue defining Target Type information for the Route (Drop-down list) member. This is 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.)
                                          Step 4   Optionally, add connection labels.

                                          What to Do Next


                                          Note


                                          When processing a Queue node, the router first checks for an available target, if there is none available then the router attempts to queue the call. The call does not move to the VRU if there is an available agent.

                                          Precision Queue Script Node

                                          You can use the Precision Queue script node to queue a call in the Unified CCE based on caller requirements until agents with desired proficiency become available. This node contains multiple agent selection criterion which are separated into steps.

                                          Figure 37. Precision Queue Script Node



                                          You must use the Unified CCE Web Administration or the Web Services API (see the Unified Contact Center Enterprise Developer Guide) to configure a Precision Queue.

                                          A single call can be queued on multiple Precision Queues. If an agent becomes available in one of the Precision Queues, the call is routed to that resource. You cannot reference multiple Precision Queues with a single Precision Queue node. However, you can execute multiple Precision Queue nodes sequentially to achieve this.

                                          The Precision Queue node includes a Priority field, which sets the initial queuing priority for the calls processed through this node versus other calls queued to the other targets using different nodes. The priority is expressed as an integer from 1 (top priority) to 10 (least priority). The default value is 5.

                                          If more than one call is queued to a Precision Queue when an agent becomes available, the queued call with the lowest priority number is routed to the target first. For example, assume an agent in a Precision Queue becomes available and two calls are queued to that Precision Queue. If one call has priority 3 and the other has priority 5, the call with priority 3, the lower value, is routed to the Precision Queue while the other call continues to wait. If the priorities of the two calls are same, then the call queued first is routed first.

                                          VRU script instructions are not sent to the VRU. If a call enters the Precision Queue node and no resource is available, the call is queued to the Precision Queue and the node transfers the call to the default VRU, if the call is not already on a VRU. The script flow then exits immediately through the success branch and continues to a Run External Script node to instruct the VRU what to do while holding the call until an agent becomes available. Typically, this invokes a Network VRU Script that plays music-on-hold, possibly interrupted on a regular basis with an announcement. The script flow can also use other queuing nodes to queue the same call to other targets, for example, Queue to Skill Group and Queue to Agent.

                                          Precision Queue Properties Dialog Box - Static Precision Queue

                                          The following list describes the Precision Queue Properties dialog box for a static Precision Queue script node.

                                          Figure 38. Precision Queue Properties dialog box—Static Precision Queue



                                          The following property is unique to static precision queues:

                                          • Drop-down list—To route calls that enter this node to a static Precision Queue, you must select a Precision Queue from the list.

                                          The following properties are common to static and dynamic precision queues:

                                          • Select Precision Queue radio buttons—You can select one of the following options for each a Precision Queue:
                                            • Statically—Select this option to choose a single Precision Queue to be selected for all the calls that enter this node.
                                            • Dynamically—Select this option to select a Precision Queue on a call-by-call basis based on a formula.

                                            Note


                                            The Dynamic Precision Queue selection is not available when an External Authorization server is used with Internet Script Editor and will be grayed out in the interface.


                                          • Priority selection—To select the initial queuing priority for calls processed through this node, you can select from 1 to 10. The default is 5.
                                          • Enable target requery check box—To enable the requery feature for calls processed through this node, select this check box. When a requery occurs, for example if a call is presented to an available agent and the agent does not answer, the script continues through the failure terminal. The script can then inspect the call variable RequeryStatus to determine what to do next. The typical action in case of a No Answer is to queue the call again to other precision queues, and increase the priority so that it is taken out of the queue before regular queued calls.

                                          Precision Queue Properties Dialog Box - Dynamic Precision Queue

                                          The following list describes the Precision Queue Properties dialog box for a dynamic precision queue script node.

                                          Use dynamic precision queues when you want a single routing script for multiple precision queues (for example, when the overall call treatment does not vary from one precision queue to another). Dynamic precision queues can simplify and reduce the overall number of routing scripts in the system.

                                          Figure 39. Precision Queue Properties dialog box—Dynamic Precision Queue




                                          Note


                                          Dynamic Precision Queue selection is not available when an External Authorization server is used with Internet Script Editor and will be grayed out in the interface.


                                          The following properties are unique to dynamic precision queues:

                                          • Find By radio buttons—To dynamically route calls that enter this node to a Precision Queue name or ID, use the Find By radio buttons.
                                            • Precision Queue Name radio—Select this option to dynamically route calls that enter this node to a Precision Queue name.
                                            • Precision Queue ID—Select this option to dynamically route calls that enter this node to a Precision Queue ID.
                                          • Formula Editor button—To determine to which Precision Queue name or ID to route calls that enter this node, click the Formula Editor button to create a formula. The formula is then evaluated at run time to select a precision queue by either name or by database ID. For example, you can use the formula "Call.PeripheralVariable4" to look up the Precision Queue if call variable 4 contained the Precision Queue name, as a result of a database lookup or from CVP call processing.

                                          For properties which are common to static and dynamic precision queues see, Precision Queue Properties Dialog Box - Static Precision Queue

                                          Queuing Behavior of Precision Queue Node

                                          Precision Queues internally are configured with one or more time-based steps, each with a configured wait time. After a call is queued, the first step begins and the timer starts. This occurs although the execution path of the script exited the success node and a new node may be targeted (for example, Run Ext. Script).

                                          If the timer for the first step expires, control moves to the second step (assuming one exists), and so on. As long as the call remains in queue and there are steps left to execute, the call internally continues to move between steps regardless of the path the call takes after it leaves the Precision Queue node. If a call is queued to two or more Precision Queues, the call internally walks through the steps for each Precision Queue in parallel. After the call reaches the last step on a Precision Queue, it remains queued on that step until the call is routed, abandoned, or ended.

                                          Adjust Priority of a Call in a Queue

                                          You can override the priority of a call in queue set by the Queue node by using the Queue Priority node (in the Queue tab of the Palette).

                                          Figure 40. The Queue Priority Icon

                                          For example:

                                          1. The original priority of the call in queue is set by the Queue to Skill Group node or the Precision Queue node.
                                          2. The call waits in queue for 20 seconds while the caller listens to an announcement.
                                          3. Call control passes to a second Wait node.
                                          4. If 20 more seconds pass without an agent becoming available, the Queue Priority node executes and raises the call's priority in queue.

                                          Notes:

                                          • Only use the Queue Priority node after a Queue to Skill Group node or a Precision Queue node. Any subsequent use of the Queue to Skill Group node or the Precision Queue node results in setting the queue priority back to the original setting for that node.
                                          • The Queue Priority node sets the priority for a call within all queues that the call is placed in. If a call requires the priority to be raised in one queue only, you should use a subsequent Queue to Skill Group or Precision Queue node for only that skill group/queue (with the new priority).
                                          • Queuing priorities should be handled very carefully. Just increasing Queue priority does not get a call handled sooner. The effect depends on the other call in the queue. For example, if all calls are treated using the example above, the priority increase has no net effect. If the script above is only used for the Platinum customers while the Standard customers script leaves them at the default priority level, the effect is that all Platinum customers that have been in queue for more than 20 seconds are handled first regardless of other customers in queue. This can be a dangerous practice, because while the delay for Platinum customers is greater than 20 seconds, no Standard customer will ever be handled. The solution is to increase the priority level for Standard customers as well, but only after they have been in queue for a longer period, for example 3 minutes.

                                          Following is the Properties dialog box for the Queue Priority node:

                                          Figure 41. Queue Priority Properties

                                          Define Queue Priority node properties as follows:

                                          1. 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 versus other calls queued for the same target.
                                          2. Optionally, add comments or connection labels.

                                          Remove Call from a Queue

                                          You can remove a call from any queues by using the Cancel Queuing node (in the Queue tab of the Palette).
                                          Figure 42. The Cancel Queuing Icon

                                          You do not have to define properties for the Cancel Queuing node. You can optionally add comments or connection labels.

                                          Temporarily Halt Script Execution

                                          You can halt script execution for a specified number of seconds by using the Wait node (in the Queue tab of the Palette).
                                          Figure 43. The Wait icon

                                          The Wait node simply stops script executing for the specified number of seconds. In the meantime, the Network VRU is waiting for instructions.


                                          Warning


                                          You must set protocol time-out variables in the VRU system to a value greater than the longest wait node used in the script.

                                          Following is the Properties dialog box for the Wait node:

                                          Figure 44. Wait Properties

                                          Define Wait node properties as follows:
                                          Procedure
                                            Step 1   In the Timeout in field, specify an interval to wait, in seconds.
                                            Step 2   Optionally, add comments or connection labels.

                                            Multichannel Routing

                                            Overview of Multichannel Services

                                            When Unified ICM is integrated with Unified WIM or Unified EIM, you write routing scripts to route contacts that are handled by these applications.

                                            Supported Route Requests

                                            Packaged CCE supports the following types of multichannel route requests:

                                            • Web callback - A web callback request is one that does not involve Unified WIM. A customer clicks a button on a website that says, "Call me back." Then the caller and agent simply talk on the phone.
                                            • Blended collaboration - With blended collaboration, the caller and agent talk on the phone and are linked in a collaborative web session. They can share web pages, forms, and applications, while at the same time conducting a voice conversation.
                                            • Text chat - The caller and agent can conduct a text chat session when a telephone call is not desired or not possible. They can both chat and collaborate on the web.
                                            • E-mail message - The customer and agent communicate using electronic mail.

                                            Application Request Routing

                                            The Unified WIM or Unified EIM applications route requests to Packaged CCE Media Routing Peripheral gateway (MR-PG). The Media Routing Peripheral Interface Manager (MR-PIM) on the MR-PG provides a generic interface to queue and route requests. The MR-PIM communicates with the CallRouter, which runs a routing script to determine how best to handle the request.

                                            Packaged CCE uses a media class ID to identify the type of media or channel. A media class is a communication channel that is correlated to an application. Cisco_Voice is a predefined media class that is used for web and delayed callbacks requests and Packaged CCE inbound and outbound voice calls.

                                            Each media class has at least one Media Routing Domain (MRD), which is a collection of skill groups associated with a medium. The Packaged CCE uses the MRD to route a task to an agent who is associated with a skill group and a particular medium. Each MRD requires a Packaged CCE script, but it is possible to route requests from different MRDs using one script.

                                            Synchronized Agents and Skill Groups

                                            Agents are common across the multichannel software, but skill groups are application-specific. Agents can be created in the Unified WIM or Unified EIM applications or in Packaged CCE and agents can be shared across applications. When agents or skill groups are created in either Unified WIM or Unified EIM, they are simultaneously created in Packaged CCE . If an agent is created in Packaged CCE , the agent must be enabled in the Unified WIM and Unified EIM applications if the agent wants to log in to and work on those applications.

                                            Skill groups are application-specific, and even though they are simultaneously created in Packaged CCE when they are created in Unified WIM or Unified EIM, do not create, modify, or delete them in Packaged CCE . You cannot enable skill groups in the applications.

                                            Independent Media Queues

                                            You can configure the multichannel software to route all media through independent queues defined by media class. You can configure agents to log in to only one media type to take either e-mail, text chat, or voice. In this configuration, requests are queued only to agents who have logged in to the corresponding media application.

                                            Universal Queue

                                            Universal Queue Functionality

                                            Universal Queue is the term used to describe the system's ability to route requests from different channels to agents who work with customer contacts in multiple media. With Universal Queue, the Packaged CCE treats requests from different channels as part of a single queue. Routing scripts can send requests to agents based on business rules regardless of the channel from which the request came. For example, the Packaged CCE can route phone, chat, and e-mail message requests to an agent who works with all these channels, based on the agent's skills and current tasks.

                                            Universal Queue Configuration Overview

                                            You can configure the multichannel software to manage a single universal work queue for all requests. You can configure agents to handle all media types, switching media on a task-by-task basis. For example, you can configure an agent as a member of three skill groups if the agent handles voice, e-mail, and chat, and the agent logs in to the softphone, the Unified EIM, and the Unified WIM. The agent is assigned the longest waiting request from any of the three skill groups, or you can choose to prioritize the requests using the multichannel software scripting environment.

                                            Multichannel scripts and media routing domains

                                            Media Routing Domains

                                            A Media Routing Domain (MRD) is a collection of skill groups and services associated with a specific communication channel. For example, the Unified EIM uses Packaged CCE MRD to route a task to an agent who is associated with a skill group and a particular channel. MRDs are defined in the Packaged CCE configuration and have unique IDs across the enterprise.

                                            Media Routing Domains and Interruptibility

                                            When you configure MRDs, you indicate whether tasks for the MRD are interruptible. If the MRD is not interruptible, and agent working on tasks for that MRD is not assigned tasks from other MRDs. If the MRD is interruptible, the agent may be assigned tasks from another MRD.

                                            Typically, voice calls and Unified WIM tasks are not interruptible, as agents are interacting with customers synchronously. E-mail messages, on the other hand, are typically interruptible because contact with the customer is asynchronous. Therefore, an agent responding to an e-mail message may be interrupted by a phone call or chat session.

                                            Use Media Routing Domains to Categorize Contacts

                                            You can categorize contacts based on the MRD based on the route request made by the MRD using the Media Routing Domain node (in the Routing tab of the Palette).
                                            Figure 45. MRD Domain icon

                                            For example, you can have different MRDs for an Unified EIM instance and Unified WIM chat. You can have a single script for both types of requests that branches so that it routes e-mail messages and chats to different targets.

                                            You must insert targets and connections from the MRD node before you define the node's properties.


                                            Note


                                            A branch can include multiple MRDs, but a single MRD can only be associated with one branch.

                                            Following is the Properties dialog box for the Media Routing Domain node:

                                            Figure 46. Media Routing Domain Properties

                                            Define Media Routing Domain node properties as follows:
                                            Procedure
                                              Step 1   To associate a MRD with a branch: Select the branch:
                                              1. Click Add.
                                              2. Choose a MRD from the drop-down list.
                                              Step 2   To delete a branch, select it and click Delete.
                                              Step 3   To rename a branch, select it, click Rename, and type the new name.
                                              Step 4   You can define a branch as Otherwise by selecting the branch and clicking Make Otherwise. Execution follows this branch if none of the specified time ranges apply. You can specify only one Otherwise branch for the node.

                                              What to Do Next

                                              For more information, see Media Routing Domain List.

                                              Queue to Agent Node

                                              You can queue a contact directly to an agent by using the Queue to Agent node (in the Queue tab of the Palette).

                                              You can change the Queue to Agent type to:

                                              • Specify an agent directly
                                              • Select an agent by expression

                                              Change Queue to Agent Type

                                              Procedure
                                                Step 1   In the Queue to Agent properties dialog box, click Change. The Queue Agent Type dialog box opens:
                                                Figure 47. Queue Agent Type

                                                Step 2   To select a specific agent, select Explicit agent references.
                                                Step 3   To select and agent by an expression, select Lookup agent references by expression.
                                                Step 4   Select a Priority between 1 (the highest) and 10 (the lowest).
                                                Step 5   Optionally, select Enable target requery.

                                                Specify an Agent Directly

                                                Following is the properties dialog box of the Queue to Agent node when you select to specify agents directly:

                                                Figure 48. Agent Direct Properties

                                                To specify agents directly:

                                                Procedure
                                                  Step 1   If necessary, change the Queue to Agent type to Explicit agent references.
                                                  Step 2   In the Agent column, select an agent.
                                                  Step 3   In the Media Routing Domain column, select the media routing domain for the selected agent.
                                                  Step 4   In the Skill Group column, select the skill group for the selected agent and media routing domain.
                                                  Step 5   In the Route column, select the route for the selected agent and media routing domain.
                                                  Step 6   Optionally, select Queue if agent not logged in, to have the contact queued to the agent even if the agent is not currently logged in.
                                                  Step 7   To test the data you entered, click Validate.
                                                  Step 8   Optionally, modify Connection Labels.

                                                  Use of Formulas

                                                  You can use formulas in many routing nodes to both categorize contacts and select routing targets.

                                                  Formula Usage

                                                  A formula consists of one or more expressions that the Packaged CCE evaluates to produce a value that it can use for subsequent script processing. You define expressions—made up of variables, constants, operators, and functions—as part of custom selection rules or distribution criteria in scripts.

                                                  Formula Example

                                                  Following is a simple example of a formula:

                                                  CallerEnteredDigits == 1

                                                  In this example:

                                                  • The Left-value, CallerEnteredDigits, is a variable. More specifically, it is a call control variable.
                                                  • The operator is the "Equal To" equality operator.
                                                  • The Right-value is the number 1.

                                                  If the value of CallerEnteredDigits is 1, the formula returns true; otherwise, the formula returns false.

                                                  Variables

                                                  Variable Usage

                                                  A variable is a named object that holds a value. You use variables in formulas to select targets and help in call tracking.

                                                  Variable Syntax

                                                  Following is the syntax for using a variable in a formula:

                                                  object-type.object-name.variable-name

                                                  Where:

                                                  • The object-type is an object category, such as SkillGroup.
                                                  • The object-name is the name of an object contained in Packaged CCE database, such as the name of a SkillGroup (for example, BosSales).
                                                  • The variable-name is the name of an object that can hold a value, such as call information for the Skill Group; for example, (CallsInProgress).
                                                  • Each component in the variable is separated by a period (.).

                                                  Single-Target Variables

                                                  A single-target variable examines data for one specified routing target. For example, the variable:

                                                  SkillGroup.BosSales.CallsInProgress: Examines the number of calls in progress for the BosSales skill group.

                                                  Multiple-Target Variables

                                                  A multiple-target variable examines data across multiple routing targets. For example, the function:

                                                  Max(SkillGroup.*.LongestAvailable): Finds the skill group, from all skill groups defined in the target set for the script node that calls the function, with the longest available agent.

                                                  You use an asterisk (*) as the object-name value to indicate that the variable is to examine data across multiple targets.

                                                  Call Control Variables

                                                  Call control variables provide information about the current contact that is being routed by the script. Call control variables include information about where the route request came from, contact classification data, and data to be passed to the peripheral that receives the contact.

                                                  Variable

                                                  Data Type

                                                  Description

                                                  Can be Set by the User

                                                  CallerEnteredDigits

                                                  String

                                                  Digits caller entered in response to prompts.

                                                  Yes

                                                  CallingLineID

                                                  String

                                                  Billing telephone number of the caller.

                                                  No

                                                  DialedNumberString

                                                  String

                                                  Telephone number dialed by the caller.

                                                  No

                                                  ExpCallVarName

                                                  String

                                                  Expanded Call Context (ECC) variable value assigned in scripts and passed with contact.

                                                  Yes

                                                  PeripheralVariable1-

                                                  PeripheralVariable10

                                                  String

                                                  Values passed to and from the peripheral.

                                                  Yes

                                                  RequeryStatus

                                                  Integer

                                                  Provides the ability to test the error path of the Label, Queue, RouteSelect, and Select nodes to determine the specific network cause of failure and conditionally retry the attempt as necessary.

                                                  No

                                                  RouterCallDay

                                                  Integer

                                                  An encoded value that indicates the date on which Packaged CCE processes the call.

                                                  No

                                                  RouterCallKey

                                                  Integer

                                                  A value that is unique among all calls Packaged CCE has processed since midnight. RouterCallDay and RouterCallKey combine to form a unique call identifier.

                                                  No

                                                  RoutingClient

                                                  String

                                                  The name of the routing client that made the route request.

                                                  No

                                                  TimeInQueue

                                                  Integer

                                                  Number of seconds a call has been queued.

                                                  No

                                                  UserToUserInfo

                                                  String

                                                  ISDN private network User to User information

                                                  Yes

                                                  VruStatus

                                                  Integer

                                                  Indicates the result of a previous VRU node.

                                                  No

                                                  CallGUID

                                                  varchar (32)

                                                  Globally unique call identifier.

                                                  No

                                                  LocationParamName

                                                  varchar(50)

                                                  Location name.

                                                  No

                                                  PstnTrunkGroupID

                                                  varchar(32)

                                                  The Trunk Group ID on which the call arrived on IOS Gateway.

                                                  No

                                                  PstnTrunkGroupChannelNumber

                                                  Integer

                                                  The Trunk Group Channel Number on which the call arrived on IOS Gateway.

                                                  No

                                                  SIPHeader

                                                  varchar(255)

                                                  Specific header information extracted from a SIP call that arrives at CVP (or VRU).

                                                  Yes


                                                  Note


                                                  The Call Variables are used in "SET" node by several customers in an Admin Script as temporary placeholders for complex calculation. However, because any call context is only existent as long as the call itself, the Variables cease to exist after the Route Request (a.k.a Call) is complete (be it by virtue of a successful Routing Script Execute Completionor or an Administrative Script Execute Completion). They cannot be used to store values, so as to be re-used in Routing Scripts, as the Routing Scripts itself will have a new set of CallVariables created for the Route Request.

                                                  Note


                                                  When comparing two Call Variables of Numeric string, you must use the Built-In Function "value()" in the IF Node to perform Numeric comparison, otherwise there is a String comparison. Ex: value(Call.PeripheralVariable1)>=value(Call.PeripheralVariable2) where Call.PeripheralVariable1 and Call.PeripheralVariable2 are given as Numeric string.

                                                  Expanded Call Variables

                                                  Expanded Call variables store values associated with the contact.

                                                  Expanded call values are written to Termination Call Detail records only if, and when, an ECC value is explicitly set, which can be done any numbers of ways, such as using a script, a CVP, CTI, and so on. This applies to null values as well as non-null values.

                                                  If an expanded call variable is defined, but never assigned a value, it does not have a row in the Termination Call Variable table when a Termination Call Detail record is written.

                                                  Generally speaking, expanded call values are passed from leg to leg on the call. After a value is assigned, the value is recorded in the Termination Call Variable for every Termination Call Detail Segment. However, this depends on how each new call segment is created.

                                                  The Packaged CCE is delivered with some ECC variables, and you can create others through the Unified CCE Administration tool.

                                                  Persistent vs. Non-Persistent Call Variables

                                                  When Packaged CCE writes call data records to its historical database, it can store the values of all call variables. Storing excessive call variable data can degrade historical database performance. When you define a call variable (using the Expanded Call Variables gadget in the Unified CCE Administration web tool), you can tag it as either persistent or non-persistent. Only persistent call variables are written to the historical database. You can use non-persistent variables in routing scripts, but they are not written to the database.

                                                  User Variables

                                                  User variables are variables you create to serve as temporary storage for values you can test with an If Node. For example, you could create a user variable called usertemp to serve as a temporary storage area for a string value used by an If node.

                                                  You create user variables through the Unified CCE Administration tool. For more information, see the User Variable List in Packaged CCE Administration Guide for Release 9.0(x).

                                                  Each user variable must:

                                                  • Have a name that begins with user.
                                                  • Be associated with an object type, for example, SkillGroup. (This enables the Packaged CCE to maintain an instance of that variable for each object of that type in the system.)
                                                  • Be identified as a persistent (retains value across CallRouter restarts) or non-persistent (does not retain value across CallRouter restarts) variable.
                                                  • Store a value up to 40 characters long.

                                                  After you have define a variable, you can use the Formula Editor to access the variable and reference it in expressions, just as you would with a built-in variable.

                                                  Set Variable Node Usage

                                                  Figure 49. Set Properties window

                                                  You can set the value of a variable with the Set Variable node:

                                                  • Object type - Choose the type of object the variable is associated with.
                                                  • Object - Choose the specific object the variable is associated with.

                                                  • Note


                                                    If you choose Call as the Object Type, this field does not apply.
                                                  • Variable - The specific variable you want to set.

                                                    Note


                                                    The variables that are available are determined by the value you choose in the Object Type field.

                                                    Note


                                                    Define all integer fields in tables accessed by a Set Variables node as NOT NULL.
                                                  • Array index - Enter 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 variable array.

                                                    Note


                                                    This field is only available if you select an array variable in the Variable field.
                                                  • Value - Enter the value to assign to the variable. The value can be:
                                                    • A constant
                                                    • A reference to another variable
                                                    • An expression

                                                  SkillGroup.Avail and SkillGroup.ICMAvailable Variables

                                                  When Packaged CCE system includes only the voice channel, the value of the SkillGroup.Avail variable is the number of agents in the available state, meaning that the agents are able to accept new calls.

                                                  However, when the web or E-mail channel is used with non-voice Media Routing Domains and agents log in to multiple domains, the value of the SkillGroup.Avail variable is calculated differently. There is also a SkillGroup.ICMAvail variable.

                                                  The following table describes the difference between the SkillGroup.Avail and the SkillGroup.ICMAvail variables:

                                                  Case

                                                  SkillGroup.Avail

                                                  SkillGroup.ICMAvailable

                                                  Only voice domain is used

                                                  Number of agents in the Available state.

                                                  Same

                                                  Multiple Domains are used

                                                  Number of agents in the Available state, regardless of what they may be doing in this or other domains.

                                                  Number of agents who can actually handle an additional task or call in the domain.

                                                  SkillGroup.ICMAvailable Variable

                                                  The value of the SkillGroup.ICMAvailable variable is the actual number of agents logged in to the skill group who can take new calls or tasks. Such agents must meet all the following criteria:

                                                  1. They are routable in the domain.
                                                  2. The agent's state in the domain is something other than "Not-Ready".
                                                  3. The agent is below the maximum task limit.

                                                    Note


                                                    For most domains (that is, if the agent is not a Unified WIM Multi-session agent), the maximum task limit is 1, and an agent is below the maximum only when the agent is not working on any call or task.
                                                  4. The agent is not working on another task in a non-interruptible domain.

                                                  SkillGroup.Avail Variable

                                                  SkillGroup.Avail is the number of agents in the skill group who are not doing anything in the domain. An agent who is logged in to two domains can be counted as Avail in one domain even though that agent is handling a task in another non-interruptible domain. An agent in a domain that handles multiple tasks (such as chat) is not counted as Avail if that agent is handling a task, even though the agent has additional capacity for more tasks.

                                                  The following table shows some possible values for these variables. Assume three agents are logged in to a voice skill group, and the same three agents are also logged in to another non-interruptible domain, such as Unified WIM Chat. This table shows the voice skill group states.

                                                  Case

                                                  SkillGroup.Avail

                                                  SkillGroup.ICMAvailable

                                                  Initial state

                                                  3

                                                  3

                                                  First agent handles a call

                                                  2

                                                  2

                                                  Second agent handles a Collaboration chat session

                                                  2 (because there are two agents doing nothing in the domain)

                                                  1 (because there is only one agent left to handle voice calls)

                                                  Voice call ends

                                                  3

                                                  2

                                                  Collaboration chat ends

                                                  3

                                                  3

                                                  If a routing script needs to check the number of available agents, using SkillGroup.Avail produces better results as it uses an extrapolation mechanism in determining the available agent.

                                                  Following is another example showing agents handling chat. Assume three agents logged in to a chat skill group, each capable of handling two chats. This table shows states for the chat group.

                                                  Case

                                                  SkillGroup.Avail

                                                  SkillGroup.TalkingIn

                                                  SkillGroup.ICMAvailable

                                                  Initial state

                                                  3

                                                  0

                                                  3

                                                  First agent handles a Collaboration chat session

                                                  2 (because the agent is now in the talking state)

                                                  1

                                                  3 (because all three agents can still handle additional chats)

                                                  Second agent handles a Collaboration chat session

                                                  1

                                                  2

                                                  3

                                                  Third agent handles a Collaboration chat session

                                                  0

                                                  3

                                                  3

                                                  First agent handles second Collaboration chat session

                                                  0

                                                  3 (even though a total of 4 chats are in progress, only 3 agents are doing the work)

                                                  2 (because only the second and third agents can handle an additional chat)

                                                  By default, Script Editor shows the ICMAvailable value instead of Avail value when displaying skill group real-time data.

                                                  Closed Variables

                                                  Closed variables are available for use for Skill Groups, Peripherals, and Media Routing Domains. Closed variables allow administration scripts to turn dequeuing to these objects on and off. The Closed variables default to 0, meaning that the object is open. A script (usually an administration script) can change the state of the Closed variables.

                                                  If a Closed flag is set to a non-zero integer, then calls are not dequeued to affected agents, regardless of their state.

                                                  When closed variables are set to zero, the queued calls do not go to the available agents immediately, and continue to be in the queue. When the agent state changes from "Not Ready" to "Ready" state, the new calls are sent to the availabe agents (agents in the "Ready" state) only, and not the queued calls.

                                                  Operator Precedence

                                                  The following table shows the order in which operators are evaluated.


                                                  Note


                                                  The operators with priority 1 are evaluated first, then those with priority 2, and so on. The order of evaluation within each priority level can also be important. Prefix operators are evaluated from right-to-left in an expression. Assignment operators are also evaluated from right-to-left. In all other cases where operators have equal priority, they are evaluated left-to-right.

                                                  Priority

                                                  Operator type

                                                  Operators

                                                  1

                                                  Prefix (unary)

                                                  + - ! ~

                                                  2

                                                  Multiplication and division

                                                  * /

                                                  3

                                                  Addition and subtraction

                                                  + -

                                                  4

                                                  Shift right and shift left

                                                  >> <<

                                                  5

                                                  Relational

                                                  < > <= >=

                                                  6

                                                  Equality

                                                  == !=

                                                  7

                                                  Bitwise And

                                                  &

                                                  8

                                                  Bitwise exclusive Or

                                                  ^

                                                  9

                                                  Bitwise inclusive Or

                                                  |

                                                  10

                                                  And

                                                  &&

                                                  11

                                                  Or

                                                  ||

                                                  12

                                                  Conditional

                                                  ?

                                                  13

                                                  Sequential

                                                  ,

                                                  Operators

                                                  Prefix Operators

                                                  The Prefix Operators in the following table take a single operand:

                                                  Operator

                                                  Meaning

                                                  Comments/Examples

                                                  +

                                                  Positive

                                                  Numeric values are positive by default, so the positive operator (+) is optional. Example: 2 and +2 represent the same value.

                                                  -

                                                  Negative

                                                  The negative operator (-) changes the sign of a value. Example: 2 represents a positive value; -2 represents a negative value.

                                                  !

                                                  Logical negation

                                                  A logical expression is any expression that evaluates to true or false. The logical negation operator (!) changes the value of a logical expression. Note: Numerically, a false value equates to 0 and a true value equates to a non-zero value. Example: If the current value of SkillGroup.Sales.Avail is 3, then SkillGroup.Sales.Avail > 0 is true and (SkillGroup.Sales.Avail > 0) is false.

                                                  ~

                                                  One's complement

                                                  Operates on a bit value, changing each 1 bit to 0 and each 0 bit to 1. Note: This operator is rarely used.

                                                  Arithmetic Operators

                                                  The Arithmetic Operators in the following table take two operands:

                                                  Operator

                                                  Meaning

                                                  Comments/Examples

                                                  *

                                                  Multiplication

                                                  Arithmetic operators perform the basic operations of addition, subtraction, multiplication and division. You can use them in making calculations for a skill group, service, or route. Note: Multiplication (*) and division (/) operators are evaluated before addition (+) and subtraction (-) operators. Examples: Returns the number of agents who are logged in to the service but not currently available. Evaluates to because the multiplication is performed first.

                                                  /

                                                  Division

                                                  +

                                                  Addition

                                                  -

                                                  Subtraction

                                                  Equality Operators

                                                  The Equality Operators in the following table take two operands:

                                                  Operator

                                                  Meaning

                                                  Comments/Examples

                                                  ==

                                                  Equal to

                                                  Equality operators allow you to determine whether two values are equivalent or not. Examples: Is true if any calls are currently queued for the service. Is true if all agents logged in to the service are currently available.

                                                  !=

                                                  Not Equal To

                                                  Relational Operators

                                                  The Relational Operators in the following table take two operands:

                                                  Operator

                                                  Meaning

                                                  Comments/Examples

                                                  >

                                                  Greater than

                                                  Relational operators allow you to perform a more sophisticated comparison than the equality operators. Examples: Is true if more members of the skill group are in the Not Ready state. Is true if at least as many agents are Ready as Not Ready.

                                                  <

                                                  Less than

                                                  >=

                                                  Greater Than or Equal To

                                                  <=

                                                  Less Than or Equal To

                                                  Logical Operators

                                                  The Logical Operators in the following table take two operands. Logical operators examine the values of different logical expressions:

                                                  Operator

                                                  Meaning

                                                  Comments/Examples

                                                  &&

                                                  And

                                                  The expression is true if both of the operands are true. If either is false, the overall expression is false. The following is true if the skill group has at least one agent logged in and no agents are currently available.

                                                  ||

                                                  Or

                                                  The expression is true if either or both of the operands is true. If both are false, the overall expression is false. The following is true if the skill group has at least 5 agents logged in or no agents are currently available. However, the expression is false if less than five agents are logged in and there is an agent available.


                                                  Note


                                                  The equality (==) and relational (>) operators are evaluated before the logical operators (&& and ||).

                                                  Bitwise Operators

                                                  The Bitwise Operators in the following table take two operands.

                                                  Operator

                                                  Meaning

                                                  Comments/Examples

                                                  &

                                                  And

                                                  The & Bitwise Operator turns specific bits in a value on or off. The following expression turns off the six low-order bits of AvgTalkTimeTo5.

                                                  Note the use of the complement operator (~) with the constant. This is equivalent to rounding the value down to the next multiple of 64.

                                                  |

                                                  Inclusive Or

                                                  Inclusive Or and Exclusive Or differ in the way they handle the case where bits in both values are 1: Inclusive Or evaluates the result as true and sets a 1 bit in the result. Exclusive Or evaluates the result as false and sets a 0 bit in the result. (An Exclusive Or applies the rule "one or the other, but not both").

                                                  ^

                                                  Exclusive Or

                                                   

                                                  Miscellaneous Operators

                                                  The following table lists miscellaneous operators:

                                                  Operator

                                                  Meaning

                                                  Comments/Examples

                                                  ?

                                                  Conditional

                                                  The conditional operator (?) takes three operands and its syntax is as follows:

                                                  The Packaged CCE evaluates the expression by first examining the logical expression condition and then tests the following condition: If the result is true, then the overall expression evaluates to the value of the expression true-result. If the result is false, then the overall expression evaluates to the expression false-result. The following expression determines whether the number of agents available for skill group S1 is even or odd.

                                                  &

                                                  Concatenation

                                                  The concatenation operator (&) joins two strings end-to-end. returns the value.

                                                  ,

                                                  Sequential

                                                  The sequential or comma operator (,) takes two operands, each of which is an expression. Packaged CCE evaluates the left expression first and then the right expression. The value of the overall expression is the value of the right expression. The first expression typically affects the valuation of the second.

                                                  <<

                                                  Shift left

                                                  The shift left (<<) and shift right (>>) operators shift the bits within a value. The following example shifts the bits in Avail two places to the left. The two right-most positions are filled with zeroes: The following example shifts the bits in Avail two places to the right. In this case, the positions are filled with sign bits (0 if the original value is positive or zero; 1 if the original value is negative).

                                                  Built-in functions

                                                  Date and Time Functions

                                                  The following table lists the built-in date and time functions:

                                                  Function

                                                  Data Type

                                                  Return Value/Example

                                                  date [ (date) ]

                                                  Integer

                                                  Returns the current system date or the date portion of a given date-time value. The given date can be a floating point value (as returned by the now function), a string of the form mm/dd/yy, or three integers: yyyy, mm, dd. date (with no arguments) returns the current date. = date (2001, 7, 15) tests whether the current date is July 15, 2001.

                                                  Note    Do not use the slash (/) character in defining a date function. Because it is the division operator, the function would not return the results you are looking for. You can enclose the argument within a string.

                                                  day [ (date) ]

                                                  Integer

                                                  Returns the day of month (1-31) for the current date or a given date. The given date must be an integer or a floating-point value, as returned by the date or now function. Tests whether tomorrow is the first of the month.

                                                  hour [ (time) ]

                                                  Integer

                                                  Returns the hour (0-23) of the current time or a given time. The given time must be a floating-point value, as returned by the now function. Tests whether the current time is before noon.

                                                  minute [ (time) ]

                                                  Integer

                                                  Returns the minutes (0-59) of the current time or a given time. The given time must be a floating-point value as returned by the time function. Tests whether the current time is in the second fifteen-minute interval after an hour.

                                                  month [ (date) ]

                                                  Integer

                                                  Returns the month (1-12) of the current month or a given date. The given date must be a floating-point value, as returned by the date or now function. Tests whether the current month is June.

                                                  now

                                                  Float

                                                  Returns the current date and time, with the date represented as an integer and the time represented as a fraction. Note: You can use the date or time functions without any arguments to return just the current date or time. This function is useful for comparing the current date and time to a specific point in time. To test whether the current date and time is later than 10 P.M., December 24, 2001, use the expression.

                                                  second [ (time) ]

                                                  Integer

                                                  Returns the seconds (0-59) of the current time or a given time. The given time must be a floating-point value, as returned by the time function. Tests whether the current time is within the last ten seconds of a minute.

                                                  time [ (time) ]

                                                  Float

                                                  Returns the current system time or the time portion of a date-time value. The given time can be a floating point value, a string of the form hh:mm:ss, or two or three numeric values: hh, mm [, ss ]. (with no arguments) returns the current time. Tests whether the current time is after 2:00 PM.

                                                  weekday [ (date) ]

                                                  Integer

                                                  Returns the current day of week (Sunday=1, Monday=2, etc.) of the current date or given date. The given date must be an integer or floating-point value, as returned by the date or now function. Tests whether today is Tuesday.

                                                  year [ (date) ]

                                                  And

                                                  Returns the year of the current year or given date. The given date must be a floating-point value, as returned by the date or now function. Tests whether the millennium has passed.

                                                  Mathematical Functions

                                                  The following table lists the built-in mathematical functions:

                                                  Function

                                                  Data Type

                                                  Return Value/Example

                                                  abs(n)

                                                  Floating Point or Integer

                                                  Returns the absolute value of (the number with no sign). Returns the value 15.

                                                  max(n1, n2 [,n3] . . .)

                                                  Floating Point or Integer

                                                  Returns the largest of the operands. Each operand must be numeric. Returns the value 3.

                                                  min(n1, n2 [,n3] . . .)

                                                  Integer

                                                  Returns the smallest of the operands. Each operand must be numeric. Returns the value -2.

                                                  mod(n1,n2)

                                                  Floating Point or Integer

                                                  Returns the integer remainder of n1 divided by n2. Returns the value 99.

                                                  random()

                                                  Floating Point or Integer

                                                  Returns a random value between 0 and 1.

                                                  sqrt(n)

                                                  Floating Point or Integer

                                                  Returns the square root. (The operand n must be numeric and non-negative). Returns the value 7.

                                                  trunc(n)

                                                  Floating Point or Integer

                                                  Returns the value of truncated to an integer. returns the value 28.

                                                  Miscellaneous Functions

                                                  The following table lists the built-in miscellaneous functions:

                                                  Function

                                                  Data Type

                                                  Return Value/Example

                                                  after(string1,string2)

                                                  String

                                                  That portion of string2 following the first occurrence of string1. If string1 does not occur in string2, the null string is returned. If string1 is the null string, string2 is returned. Returns the value defg.

                                                  before(string1,string2)

                                                  String

                                                  That portion of string2 that precedes the first occurrence of string1. If string1 does not occur in string2, string2 is returned. If string1 is the null string, the null string is returned. Returns the value abc.

                                                  ClidInRegion

                                                  Logical

                                                  Indicates whether the CLID for the current contact is in the geographical region specified by string. The value string must be the name of a defined region. You can use the Name variable of a region to avoid entering a literal value. Tests whether the CLID is from the Maryland region.

                                                  concatenate(string1,string2, . . .)

                                                  String

                                                  Returns the concatenation of the arguments. The function takes up to eight arguments. Returns the value abcde.

                                                  find(string1, string2 [,index ])

                                                  Integer

                                                  Returns the starting location of string1 within string2. If you specify an index value, searching starts with the specified character of string2. Returns the value 6.

                                                  if(condition,true-value,false-value)

                                                  Logical

                                                  Returns a value of true-value if the condition is true; false-value if the condition is false. Returns the current hour in 12-hour format rather than 24-hour format.

                                                  left(string,n)

                                                  String

                                                  Returns left-most n characters of string. Returns the value abc.

                                                  len(string)

                                                  Integer

                                                  Returns the number of characters in string. Returns the value 3.

                                                  mid(string,start,length)

                                                  String

                                                  Returns a substring of string beginning with the start character and continuing for length characters. Eeturns the value bcd.

                                                  result

                                                  Floating Point or Integer

                                                  Returns the result of the current Select node. (This function is valid only in a Select node.) If you are using the LAA rule in the Select node, result Returns the number of seconds the selected agent has been available.

                                                  right(string,n)

                                                  String

                                                  Returns right-most n characters of string. Returns the value cde.

                                                  substr(string,start [ , length ])

                                                  String

                                                  Returns a substring of string beginning with start character and continuing for length characters. Returns the value 01851.

                                                  text(n)

                                                  String

                                                  Converts a numeric value to a string. Returns the value "5".

                                                  valid(variable)

                                                  Logical

                                                  Returns whether variable has a valid value. Tests whether the database C name is a valid value.

                                                  ValidValue(variable,value)

                                                  String

                                                  If variable has a valid value, returns that value; otherwise, returns "value". Returns either a name from the database or the string value None.

                                                  value(string)

                                                  Floating Point or Integer

                                                  Converts a string to a numeric value. Returns the value 5.

                                                  Custom Functions

                                                  Custom functions are those functions you create for use within scripts, as opposed to built-in functions.

                                                  Add Custom Functions

                                                  Procedure
                                                    Step 1   In Script Editor, from the Script menu, choose Custom Functions. The Custom Functions dialog box opens, listing all the custom functions currently defined.
                                                    Step 2   Click Add to open the Add Custom Function dialog box.
                                                    Step 3   Specify the following:
                                                    1. Function name. All custom function names must begin with user.
                                                    2. Number of Parameters. The number of parameters to be passed to the function. A function may take 0, 1, or more parameters.
                                                    3. Function definition. The expression to be evaluated when the function is called. When entering the function definition, keep the following in mind:

                                                      The parameters to a function are numbered beginning with 1. To reference a parameter within the expression, surround it with percent signs (%). For example, %3% is a reference to the third parameter.

                                                      The lower portion of the dialog box is just like the Formula Editor. You can use it to help build the expression.

                                                    Step 4   When finished, click Test. The Test Function dialog box opens.
                                                    Step 5   Test the function by entering an example of how you might reference the function. Include a specific value for each parameter.
                                                    Step 6   Click Evaluate to see how the Script Editor interprets the function call and click Close to return to the Add Custom Function dialog box.
                                                    Step 7   Use one of the Validate buttons to validate the scripts that reference a selection function. (The Validate All button lets you validate all the scripts that reference any custom function.)
                                                    Step 8   When finished, click OK to apply changes and to close the dialog box.

                                                    Import Custom Functions

                                                    Procedure
                                                      Step 1   In Script Editor, from the Script menu, choose Custom Functions. The Custom Functions dialog box opens, listing all the custom functions currently defined.
                                                      Step 2   Click Import. The Import Custom Function dialog box opens.
                                                      Step 3   Choose a file name with an ICMF extension (.ICMF) and click Open. The Script Editor examines the file for naming conflicts. If a conflict is found, a dialog box appears listing options for resolving the conflict.
                                                      Step 4   Choose one of the options and click OK.
                                                      Note    If you choose to rename the function, the new name must begin with user.

                                                      The Script Editor performs automapping and the following happens:

                                                      • If all imported objects were successfully auto-mapped, a message window appears prompting you to review the mappings. Click OK to access the Object Mapping dialog box.
                                                      • If some imported objects were not successfully auto-mapped, the Object Mapping dialog box appears, with all unmapped objects labeled Unmapped.

                                                      The Object Mapping dialog box contains three columns:

                                                      • Object Types. The type of imported objects.
                                                        • Imported Object. Name of imported object.
                                                        • Mapped To. What this imported object will be mapped to.
                                                      • (Optional.) Click an Imported Object value. The Mapped To column displays all the valid objects on the target system.
                                                      • (Optional.) Choose an object from the Mapped To columns drop-down list on the target system that you want to map the imported object to.

                                                      Note


                                                      Multiple objects may be mapped to the same target. Objects may be left unmapped; however, the resulting custom function are not valid until all objects are mapped.

                                                      When the mapping is complete, click Apply and Finish.

                                                      Export Custom Functions

                                                      Procedure
                                                        Step 1   In Script Editor, from the Script menu, choose Custom Functions. The Custom Functions dialog box opens, listing all the custom functions currently defined.
                                                        Step 2   Choose the custom function(s) from the list and click Export. The Export Custom Function dialog box opens.
                                                        Note    If you selected a single function, that functions name appears in the File Name field. If you selected more than one function, the File Name field is blank.
                                                        Step 3   (Optional.) Change the File Name.
                                                        Note    You cannot change the file type; you can save the script only in .ICMF format.
                                                        Step 4   Click Save. If the file name already exists, the system prompts you to confirm the save.
                                                        Step 5   If prompted, click OK. The custom function(s) are saved to the specified file in text format.

                                                        Scripts in a Packaged CCE Environment

                                                        Call Priority

                                                        When a call is queued to a skill group because there are no agents available, the Queue to Skill Group node sets the call's priority. The Queue Priority node can then promote the call's priority based on time the caller has waited. The call can be queued to multiple skill groups with the same or different priorities.

                                                        If there are calls in the agent's skill group queues when an agent becomes available, the agent is presented with the highest priority (1-10 with 1 being the highest priority) call that has waited the longest within the skill group(s) that the agent is assigned to.

                                                        Check for Available Agents

                                                        A script that routes to Packaged CCE agents needs to check for an available agent within a skill group. If an agent is not available, then the script should use a Queue to Skill Group node. The script execution ends when an agent becomes available or when the caller disconnects.

                                                        Queue to Skill Group Node

                                                        If you use the Queue to Skill Group node, then do not use the base priority within the Queue node unless the option is enabled in the router through the registry.

                                                        Cancel Queuing Node

                                                        If the call needs to be taken out of a skill group, then use the Cancel Queuing node. The Cancel Queuing node takes the call out of all the skill groups it is queued to.

                                                        End Node

                                                        The End node either tries default routing, or if there is no default label, it sends an error (dialog fail) to the routing client.

                                                        Agent to Agent Node

                                                        You can use the Agent to Agent node for agent to agent transfers; the router checks agent availability before sending the call to the agent. If the agent is not available, the script queues the call to a skill group. You can also use the Agent to Agent node to send a call to the agent: the "caller" is not required to be an agent.

                                                        CVP as a Queue Point

                                                        Packaged CCE relies on the CVP to queue the call while it is waiting for an available agent.

                                                        The Packaged CCE sends the call to the CVP port for queuing:

                                                        1. To provide the call with a termination point that allows the VoIP Gateway to return the correct signals or messages back to the PSTN.
                                                        2. Provide announcements or music or expected wait time or initial position in queue to the caller while they are waiting for an agent. Allow the caller an option to leave a message if the caller does not want to wait for an agent.
                                                        3. To obtain further information from the caller that is not sent from the network

                                                        The CVP lets Packaged CCE know when the caller disconnects through the Event Report Message with an Event Type of either DISCONNECT or ABANDON. When an agent becomes available, Packaged CCE automatically instructs CVP to route the call to the agent through the Connect message.

                                                        Interruptible vs. Non-Interruptible

                                                        If the VRU script is collecting digits from the customer to ascertain information regarding the caller that is crucial for a screen pop or call routing, put the VRU script in a non-interruptible mode.

                                                        If a call was queued to a skill group through a Queue to Skill Group node and then sent to VRU to hear a non-interruptible VRU script, if during the time that the caller is interacting and listening to the non-interruptible VRU script, an agent becomes available, the call will not be connected to the agent. The Packaged CCE only looks for available agents for that call when the VRU script is finished and the call executes an interruptible node such as a Wait node or a Run External Script node for a VRU script that is interruptible. The call does, however, maintain its place in the queue so when the call does become available for an agent, it is answered before calls that came in afterward it (assuming the same priority).

                                                        For announcement and music type of treatments, put the VRU Scripts in interruptible mode. This allows the call to be connected to the first available agent even while the caller is listening to a VRU script.

                                                        You set the interruptibility of a VRU script through the Network VRU Scripts gadget in the Unified CCE Administration Web tool. Neither the VRU or the Packaged CCE script can overwrite this setting.

                                                        Utility nodes

                                                        Start Node

                                                        The Start 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.

                                                        You do not define any properties for the Start node. However, you can add comments and connection labels:

                                                        Figure 50. Start Properties

                                                        Comment Node

                                                        Use the Comment node (in the General tab of the Palette) to include a block comment in a script. A block comment provides general documentation for a script or section of a script:

                                                        Figure 51. The Comment Icon

                                                        Figure 52. Comment Properties

                                                        For example, you might add a comment describing the purpose of the script.

                                                        You can move and resize the comment box within the script.


                                                        Note


                                                        If you choose the Auto-Size Height option, you cannot adjust the height of the comment.

                                                        Line Connector Node

                                                        Use the Line Connector node (in the General tab of the Palette) to make routing and administrative scripts clear and understandable.

                                                        Figure 53. The Line Connector Icon

                                                        A script can be difficult to understand and the call flow hard to follow if:

                                                        • The connecting lines between nodes are too long.
                                                        • The connecting lines go in different directions.
                                                        • The connecting lines run over other nodes and other connection lines.

                                                        The Line Connector node allows you to break and reconnect lines using one or more of its multiple input connections and single output connection. Any request coming into this node (on any one of the multiple inputs) goes to the single output connection of the line connector node.

                                                        For the Line Connector node, you define the connection labels:

                                                        Figure 54. Line Connector Properties

                                                        CVP Scripting

                                                        Writing Scripts for Unified CVP

                                                        This section discusses using Packaged CCE configuration and script editing to access the Unified CVP solution.

                                                        It includes information about how to:

                                                        • Set up Packaged CCE to interact with Unified CVP
                                                        • Write applications for Unified CVP

                                                        Note


                                                        This section contains important information for CVP application developers. It also may be of interest to Call Center Managers, Unified CVP System Managers, and Packaged CCEsystem managers.

                                                        Before You Begin

                                                        This chapter makes the following assumptions:

                                                        • The information in this chapter assumes that you are already familiar with using the Unified CCE Administration and Script Editor tools for call center operations and management.
                                                        • When creating applications that interact with Unified CVP, only use alphanumeric characters for application, element, and field names; do not use special characters such as periods, asterisks or brackets. Following this practice will avoid potential issues with data transfer between different systems.

                                                        Scripts to Access Unified CVP from Packaged CCE

                                                        Both Packaged CCE and Unified CVP use scripts to invoke their features. In fact, Packaged CCE references Unified CVP scripts from within its own scripts . This method of invoking Unified CVP from within Packaged CCE enables Packaged CCE to take advantage of the features of Unified CVP.

                                                        The two products (Packaged CCE and Unified CVP) provide two service creation (scripting) environments. Each environment is used for different purposes:

                                                        • ICM Script Editor. Use this scripting tool to develop agent routing scripts and to invoke the Unified CVP micro-applications: Play Media, Get Speech, Get Digits, Menu, Play Data, and Capture. These applications are the basic building blocks of a voice interaction design.
                                                        • Call Studio. Use Call Studio to develop sophisticated CVP applications.

                                                          Note


                                                          For more information, refer to "Scripting for Unified CVP with Call Studio."

                                                        Packaged CCE Scripting

                                                        The Packaged CCE Script Editor is used to develop agent routing scripts, and to invoke Unified CVP micro-applications - basic building blocks of a voice interaction design. The Unified CVP micro-applications are: Play Media, Get Speech, Get Digits, Menu, Play Data, and Capture. These applications are combined and customized in the Packaged CCE routing script to produce a viable voice interaction with the caller.

                                                        While it is possible to develop full scale CVP applications using micro-applications, it is not recommended. Micro-application-based scripts are primarily used for initial prompt and collection operations, as well as for directing the playing of .wav files while calls are in queue. Instead, use the CVP scripts developed using Call Studio to create the CVP applications.

                                                        In an environment where Packaged CCE script works with Call Studio script (the 2-script implementation for Unified CCE-integrated models described here), the Packaged CCE script remains in control (and receives control back), even while it delegates the more complex self-service activity to the Call Studio script. Data can be passed from one script to the other and back through ECC variables.


                                                        Note


                                                        The capability of using Packaged CCE scripting for anything other than simple functions has been kept in support of legacy deployments. New customers are strongly advised to use the VoiceXML scripting environment of Unified CVP for creating CVP applications.

                                                        Unified CVP Call Studio Scripting

                                                        Sophisticated CVP applications can be developed using Call Studio which is an Eclipse-based service creation environment whose output is an intermediary file describing the application flow. That file gets loaded onto the VXML Server for execution. To invoke a VXML Server application, the script writer includes a Get Speech (GS) micro-application via the Run External Script node in his Packaged CCE routing script. This micro-application instructs the VoiceXML Gateway to interact with the VXML Server directly to execute the application. The final results are passed back to Packaged CCE .

                                                        Some of the Call Studio scripting environment features include:

                                                        • A drag-and-drop interface with a palette of CVP functions
                                                        • The ability to do database queries
                                                        • Extensibility with Java code written to perform any task a Java application can perform

                                                        Note


                                                        Packaged CCE does not support using the MicroApp nodes that are available in the ICM Script Editor. All MicroApp implementation must be done using the Run External Script node in ICM Script Editor. Refer to Writing Unified CCE Applications for Unified CVP for detailed information about setting Unified CVP-specific parameters in this node for each Unified CVP micro-application.

                                                        Note


                                                        For more information about creating scripts, refer to "Scripting for Unified CVP with Unified CCE."

                                                        Scripting for Unified CVP with Packaged CCE

                                                        The sections that follow include:

                                                        • A discussion of micro-applications.
                                                        • A sample Packaged CCE script.
                                                        • A discussion of how Packaged CCE and Unified CVP exchange information.

                                                        Micro-Applications

                                                        Micro-applications are a set of specific CVP functions that can be invoked by Packaged CCE , enabling communication with the caller.

                                                        There are six Unified CVP micro-applications:

                                                        • Play Media. Plays a message to the caller.
                                                        • Play Data . Retrieves data from a storage area and plays it to the caller in a specific format called a data play back type.
                                                        • Get Digits. Plays a media file and retrieves digits from the caller.
                                                        • Menu. Plays a media menu file and retrieves a single telephone keypad entry from the caller.
                                                        • Get Speech. Executes a Call Studio script on VXML Server.
                                                        • Capture. The Capture (CAP) micro-application enables you to trigger the storage of current call data at multiple points in the Packaged CCE routing script.

                                                        Micro-applications are interpreted by the CVP Service, which resides on the Call Server. The CVP Service sends VoiceXML code to the VoiceXML Gateway Voice Browser.


                                                        Note


                                                        Using ASR/TTS(speech) through micro-applications is not supported. You have to use Call Studio scripts for any caller interaction that requires use of ASR/TTS (speech).


                                                        Simple Example Script: Welcome to XYZ Corporation

                                                        Suppose you want to create a Packaged CCE script that has an example call flow as follows.

                                                        This simple script performs the following functions:

                                                        • Executes the GetInfo Call Studio script on the VXML Server to collect some caller input based on the example callflow.
                                                        • Based on caller input, queues for a sales or support agent .
                                                        • If an agent is not available, executes the MOH Call Studio script which will play music-on-hold to the caller until an agent becomes available.
                                                        Procedure
                                                          Step 1   A call arrives at CCE and executes a CCE script.
                                                          Step 2   The caller hears a welcome prompt.
                                                          Step 3   The CCE script sends the call to CVP for collecting some information from the caller before queuing the call for an agent. For example, a menu is offered such as "press 1 for sales and 2 for support," as well as entering an account number.
                                                          Step 4   If the caller is an existing customer, the caller-entered account number is used to retrieve additional information about the caller from an external database.
                                                          Step 5   Caller-entered digits and the additional information about the caller are returned back to the CCE script to be shown a screen pop to the agent, when an agent becomes available.
                                                          Step 6   The call is then queued waiting for an agent in a particular skill group, based on the caller selection of the type of service.
                                                          Step 7   If an agent is available, the caller is connected to that agent. The agent desktop displays the caller information collected via caller input as well as database lookup.
                                                          Step 8   If an agent is not available, the call is sent back to CVP for playing music-on-hold while the caller waits for an agent to become available.
                                                          Step 9   The information collected from the caller is preserved as call context on the call until the agent becomes available.

                                                          You can create a script such as the one shown in the following figure.

                                                          Figure 55. Packaged CCE Script with Call Flow

                                                          This simple script performs the following functions:

                                                          • Executes the GetInfo Call Studio script on the VXML Server to collect some caller input based on the example callflow.
                                                          • Based on caller input, queues for a sales or support agent .
                                                          • If an agent is not available, executes the MOH Call Studio script which will play music-on-hold to the caller until an agent becomes available.
                                                          Note    In a "real life" application, any Packaged CCE script you create would include error checking to ensure that micro-applications instructions are properly executed.

                                                          Packaged CCE Unified CVP Micro-App Connection

                                                          Before the Unified CVP can be accessible through the Script Editor’s Run External Script node, you must first set up Packaged CCE with special Unified CVP parameters using the Unified CCE Administration tool.

                                                          Begin by using the Packaged CCE Administration’s New Network VRU Script window to define Unified CVP parameters.

                                                          Figure 56. New Network VRU Script Example

                                                          In the figure above:

                                                          • PM,Welcome. (VRU Script Name field.) This means: "Use the instructions in the Play Media micro-application to play the Welcome.wav media file."
                                                          • N. (Configuration Param field.) This means: "Do not allow barge-in." (Barge-in is when the caller can interrupt message play by entering a digit, causing the script to move to the next prompt.)
                                                          • You must check the Interruptible checkbox as shown in the figure above. This specification allows the script to be interrupted by the Unified CVP script functions.

                                                          Note


                                                          As shown in the two columns of the following table, certain entries for the VRU Script Name and Configuration Param fields are case-sensitive.

                                                          Attribute

                                                          Allowed Values

                                                          Applies to

                                                          Case-Sensitive?

                                                          Attribute: VRU Script Name (for example, PM, GD).

                                                          PM, GD

                                                          All micro-applications

                                                          N

                                                          Attribute: Media Library Type (A, S, V)

                                                          A, S, V

                                                          All micro-applications

                                                          N

                                                          Barge-in Allowed

                                                          Y/N

                                                          All micro-applications

                                                          N

                                                          Data playback type

                                                          Number, Char

                                                          PlayData (PD)

                                                          N

                                                          Time Format

                                                          HHMM, HHMMSS, HHMMAP

                                                          PlayData (PD)

                                                          N

                                                          Timeout Message Override

                                                          Y/N

                                                          Get Digits (GD), Get Speech (GS), Menu (M)

                                                          N

                                                          Invalid Entry Message Override

                                                          Y/N

                                                          Get Digits (GD), Get Speech (GS), Menu (M)

                                                          N

                                                          DTMF Termination Key

                                                          N

                                                          All micro-applications

                                                          N

                                                          Media File Name

                                                           

                                                          All micro-applications

                                                          Y

                                                          Once the network VRU script configuration settings have been saved, the information is available to the Script Editor. When you place a Run External Script node in the Script Editor workspace and open the Properties dialog box, it displays all the script names defined in the system.

                                                          The Run External Script node below shows that the ICM Script Name Play_Welcome was selected.

                                                          Figure 57. Run External Script Node



                                                          Information Exchange Between Packaged CCE and Unified CVP

                                                          When Packaged CCE processes a Run External Script node, parameters are sent to Unified CVP.

                                                          These parameters contain instructions about how to interact with a caller, such as:

                                                          • What micro-application to use.
                                                          • The location of the media files to be played to the caller.
                                                          • Timeout settings to be used during caller digit entry.

                                                          Some CVP parameters are passed to Unified CVP through Expanded Call Context (ECC) variables and/or Call.Peripheral variables. Other parameters are sent in the normal VRU messaging interface (Packaged CCE /CVP Service Control Interface).

                                                          Packaged CCE Data Handling

                                                          In defining scripts, you might specify strings, numbers, or formulas to be sent to Unified CVP. When passing numbers to Unified CVP, always enclose them in quotes so that they will be processed as a string.

                                                          This is especially important if:

                                                          • Leading 0’s are significant to the data type (times, character), enter the number as a quoted string (example: "031524").
                                                          • Trailing 0’s after a decimal point are significant to the data type (number, character, currency), enter the number as a quoted string (examples: "42.00" or "42.10").
                                                          • The number is very large (example: a number normally expressed through exponential notation).

                                                          Unified CVP Script Error Checking

                                                          Unified CVP uses the user.microapp.error_code ECC variable to return information regarding problems encountered while running a script.

                                                          Unified CVP software tests for the following conditions when processing Packaged CCE scripts:
                                                          ASR Error

                                                          Failure of an Advanced Speech Recognition component.

                                                          General error

                                                          General error occurred.

                                                          Invalid Configuration Param

                                                          Data passed from Packaged CCE to the CVP Service is not consistent with what the micro-application requires for processing.

                                                          Invalid variable data

                                                          The variable data passed was not valid for the script type being processed.

                                                          Invalid VRU Script Name format

                                                          VRU Script Name data passed from Packaged CCE to the CVP Service does not contain the expected components (micro-application name, media file name, media file type, uniqueness value).

                                                          Locale

                                                          Locale was not supported. (Only applies to Play Data micro-applications that use .wav files. Does not apply to Play Data micro-applications that use TTS, or to Play Media, Get Digits, Menu, Get Speech, or Capture micro-applications.)

                                                          Misconfigured ECC variable

                                                          An ECC variable was set to a value the CVP Service did not recognize. ECC variable definitions must be the same in Packaged CCE and Unified CVP.

                                                          Network Error

                                                          Failure of an IP network connection.

                                                          Reached Maximum Invalid Tries

                                                          Caller was unsuccessful in entering digits during each of the tries allowed by the micro-application. (Only applies to Get Digits, Menu, and Get Speech micro-applications.)

                                                          Reached Maximum Number Entry Tries

                                                          Caller did not enter digits in response to the prompt for each of the tries allowed by the micro-application. (Only applies to Get Digits and Get Speech micro-applications.)

                                                          Semantic-Runtime

                                                          Semantic error occurred while running a micro-application.

                                                          System Error

                                                          Unexpected failure of a Unified CVP component.

                                                          Timed Out

                                                          Caller did not enter digits in response to the prompt in the time allowed by the micro-application.

                                                          TTS Error

                                                          Failure of a Text-to-Speech component.

                                                          Unavailable Media file

                                                          Media file name passed from Packaged CCE to the CVP Service did not exist on the Media Server.

                                                          Unknown micro-application

                                                          Micro-application name passed from Packaged CCE to the CVP Service did not exist on the CVP Service.

                                                          Unsupported locale

                                                          The VoiceXML Interpreter (that is, gateway) did not recognize the locale passed from the CVP Service.

                                                          Unsupported VoiceXML element

                                                          The VoiceXML Interpreter (that is, gateway) did not recognize a VoiceXML element passed from the CVP Service, VXML Server, or media server.

                                                          Unsupported VoiceXML format

                                                          The VoiceXML Interpreter (that is, gateway) did not recognize a VoiceXML format passed from the CVP Service, VXML Server, or media server.

                                                          Each Unified CVP micro-application has individualized settings for user.microapp.error_code, as shown in the following table.

                                                          Table 3  Possible user.microapp.error_code ECC Variable Settings for Non-Video

                                                          Error Code

                                                          Play Media

                                                          Play Data

                                                          Get Digits

                                                          Menu

                                                          Get Speech

                                                          Capture

                                                          0

                                                          No error

                                                          No error

                                                          No error

                                                          No error

                                                          No error

                                                          No error

                                                          1

                                                          Caller Hangup

                                                          Caller Hangup

                                                          Caller Hangup

                                                          Caller Hangup

                                                          Caller Hangup

                                                          N/A

                                                          2

                                                          Network Error

                                                          Network Error

                                                          Network Error

                                                          Network Error

                                                          Network Error

                                                          N/A

                                                          3

                                                          System Error

                                                          System Error

                                                          System Error

                                                          System Error

                                                          System Error

                                                          System Error

                                                          5

                                                          Unknown micro-application

                                                          Unknown micro-application

                                                          Unknown micro-application

                                                          Unknown micro-application

                                                          Unknown micro-application

                                                          Unknown micro-application

                                                          6

                                                          Invalid VRU Script Name format

                                                          Invalid VRU Script Name format

                                                          Invalid VRU Script Name format

                                                          Invalid VRU Script Name format

                                                          Invalid VRU Script Name format

                                                          N/A

                                                          7

                                                          Invalid Configuration Param

                                                          Invalid Configuration Param

                                                          Invalid Configuration Param

                                                          Invalid Configuration Param

                                                          Invalid Configuration Param

                                                          N/A

                                                          8

                                                          Misconfigured ECC variable

                                                          Misconfigured ECC variable

                                                          Misconfigured ECC variable

                                                          Misconfigured ECC variable

                                                          Misconfigured ECC variable

                                                          N/A

                                                          9

                                                          One of the following:

                                                          • Media file does not exist.
                                                          • Invalid URL for Media file.

                                                          One of the following:

                                                          • Media file does not exist
                                                          • Invalid URL for Media L file

                                                          One of the following:

                                                          • Media file does not exist
                                                          • Invalid URL for Media L file

                                                          One of the following:

                                                          • Media file does not exist
                                                          • Invalid URL for Media L file

                                                          One of the following:

                                                          • Media file does not exist
                                                          • Invalid URL for Media file

                                                          N/A

                                                          10

                                                          Semantic-Runtime Error

                                                          Semantic-Runtime Error

                                                          Semantic-Runtime Error

                                                          Semantic-Runtime Error

                                                          Semantic-Runtime Error

                                                          N/A

                                                          11

                                                          Unsupported VoiceXML format

                                                          Unsupported VoiceXML format

                                                          Unsupported VoiceXML format

                                                          Unsupported VoiceXML format

                                                          Unsupported VoiceXML format

                                                          N/A

                                                          12

                                                          Unsupported VoiceXML element

                                                          Unsupported VoiceXML element

                                                          Unsupported VoiceXML element

                                                          Unsupported VoiceXML element

                                                          Unsupported VoiceXML element

                                                          N/A

                                                          13

                                                          N/A

                                                          Variable data is invalid

                                                          N/A

                                                          N/A

                                                          N/A

                                                          N/A

                                                          14

                                                          N/A

                                                          Location of variable data is empty

                                                          N/A

                                                          N/A

                                                          N/A

                                                          N/A

                                                          15

                                                          N/A

                                                          Time format is invalid

                                                          N/A

                                                          N/A

                                                          N/A

                                                          N/A

                                                          16

                                                          N/A

                                                          N/A

                                                          Reached Maximum Invalid Tries

                                                          Reached Maximum Invalid Tries

                                                          Reached Maximum Invalid Tries

                                                          N/A

                                                          17

                                                          N/A

                                                          N/A

                                                          Reached Maximum No Entry Tries

                                                          Reached Maximum No Entry Tries

                                                          Reached Maximum No Entry Tries

                                                          N/A

                                                          20

                                                          N/A

                                                          Data value out of range

                                                          N/A

                                                          N/A

                                                          N/A

                                                          N/A

                                                          23

                                                          No answer

                                                          No answer

                                                          No answer

                                                          No answer

                                                          No answer

                                                          N/A

                                                          24

                                                          Busy

                                                          Busy

                                                          Busy

                                                          Busy

                                                          Busy

                                                          N/A

                                                          25

                                                          General transfer error

                                                          General transfer error

                                                          General transfer error

                                                          General transfer error

                                                          General transfer error

                                                          N/A

                                                          26

                                                          Invalid extension

                                                          Invalid extension

                                                          Invalid extension

                                                          Invalid extension

                                                          Invalid extension

                                                          N/A

                                                          27

                                                          Called party hung up

                                                          Called party hung up

                                                          Called party hung up

                                                          Called party hung up

                                                          Called party hung up

                                                          N/A

                                                          28

                                                          Error after transfer established

                                                          Error after transfer established

                                                          Error after transfer established

                                                          Error after transfer established

                                                          Error after transfer established

                                                          N/A

                                                          30

                                                          Unsupported locale

                                                          Unsupported locale

                                                          Unsupported locale

                                                          Unsupported locale

                                                          Unsupported locale

                                                          N/A

                                                          31

                                                          ASR error

                                                          ASR error

                                                          ASR error

                                                          ASR error

                                                          ASR error

                                                          N/A

                                                          32

                                                          TTS error

                                                          TTS error

                                                          TTS error

                                                          TTS error

                                                          TTS error

                                                          N/A

                                                          33

                                                          General ASR/TTS error

                                                          General ASR/TTS error

                                                          General ASR/TTS error

                                                          General ASR/TTS error

                                                          General ASR/TTS error

                                                          N/A

                                                          34

                                                          Unknown error

                                                          Unknown error

                                                          Unknown error

                                                          Unknown error

                                                          Unknown error

                                                          N/A

                                                          40

                                                          VXML Server system unavailable

                                                          N/A

                                                          N/A

                                                          N/A

                                                          VXML Server system unavailable

                                                          N/A

                                                          41

                                                          VXML Server application error

                                                          N/A

                                                          N/A

                                                          N/A

                                                          VXML Server application error

                                                          N/A

                                                          42

                                                          VXML Server application used hangup element instead of subdialog return element

                                                          N/A

                                                          N/A

                                                          N/A

                                                          VXML Server application used hangup element instead of subdialog return element

                                                          N/A

                                                          43

                                                          VXML Server application is suspended

                                                          N/A

                                                          N/A

                                                          N/A

                                                          VXML Server application is suspended

                                                          N/A

                                                          44

                                                          VXML Server session error (for example, application has not yet been loaded)

                                                          N/A

                                                          N/A

                                                          N/A

                                                          VXML Server session error (for example, application has not yet been loaded)

                                                          N/A

                                                          45

                                                          VXML Server encounters a bad fetch error (for example, media or grammar file not found)

                                                          N/A

                                                          N/A

                                                          N/A

                                                          VXML Server encounters a bad fetch error (for example, media or grammar file not found)

                                                          N/A

                                                          46

                                                          Audio streaming error

                                                          N/A

                                                          N/A

                                                          N/A

                                                          N/A

                                                          N/A


                                                          Note


                                                          user.microapp.error_code is always zero, indicating success, if control proceeds out the Checkmark (success) branch of the Run External Script node. Usually, if control proceeds out the X (failure) branch, Unified CVP sets this variable to one of the codes listed here. (Set up your routing script to always test the error code after an X branch is taken.)

                                                          Note


                                                          However, if a configuration error, or a network or component failure of some sort, prevents the micro-application from being executed at all, then Unified CVP does not get a chance to set this variable at all. Such cases can be identified by using a Set node to pre-set user.microapp.error_code to some known invalid value such as -1, and then to test for that value using an If node, following the X branch of the Run External Script node.

                                                          Writing Packaged CCE Applications for Unified CVP

                                                          Once Packaged CCE -to-Unified CVP initial setup is complete, you can create Packaged CCE applications to access Unified CVP micro-applications.

                                                          You do this using two Packaged CCE software tools:

                                                          • Unified CCE Administration
                                                          • Packaged CCE Script Editor

                                                          The sections that follow give a brief overview of how to use these tools to access Unified CVP functionality.

                                                          Configure a Unified CVP Network VRU Script

                                                          Procedure
                                                            Step 1   Within Packaged CCE Administration, select Tools > List Tools> Network VRU Scripts.
                                                            Step 2   In the Network VRU Scripts window, enable the Add button by clicking Retrieve.
                                                            Step 3   Click Add.

                                                            The Attributes property tab is enabled.

                                                            Step 4   Complete the Attributes tab as described below.
                                                            Note    The format of the strings for the VRU Script Name and Configuration Param fields are very specific and vary for different micro-applications (Play Media, Play Data, Get Digits, Menu, and Get Speech).
                                                            • Name. A unique name for the VRU script.
                                                            • VRU Script Name. A 39-character, comma-delimited string used by Unified CVP to pass parameters to the CVP Service. The content of string depends on the micro-application to be accessed. For more information on what to specify in this field, refer to the following sections:
                                                            • Timeout. The number of seconds Packaged CCE waits for a response from the VRU after invoking the script before assuming that the Unified CVP script has failed.
                                                              Note   

                                                              This setting is designed to detect VRU failures only; attempting to use it as a technique for interrupting script processing can lead to unexpected results. Use the 180-second default or lengthen the setting to a duration that is longer than the longest time the script is expected to take.

                                                            • Timeout. The number of seconds Packaged CCE waits for a response from the VRU after invoking the script before assuming that the Unified CVP script has failed.
                                                              Note   

                                                              This setting is designed to detect VRU failures only; attempting to use it as a technique for interrupting script processing can lead to unexpected results. Use the 180-second default or lengthen the setting to a duration that is longer than the longest time the script is expected to take.

                                                            • Interruptible. (Checkbox.) Whether Packaged CCE can interrupt the script (for example, if a routing target becomes available).
                                                            • Description. Any additional information about the script.
                                                            Step 5   When finished, click Save to apply your changes.

                                                            Run External Script Node That Accesses a Unified CVP Micro-Application

                                                            Procedure
                                                              Step 1   Within Script Editor, place the Run External Script object in the workspace, right-click, and open the Properties dialog box.

                                                              The Run External Script Properties dialog box lists all Network VRU scripts currently configured

                                                              Note    The ICM Script Name column reflects the values defined through the Name field in ICM Configuration Manager’s Scripts tool.
                                                              Step 2   Select the ICM Script/VRU Script Name you want to execute.
                                                              Step 3   Modify the Comments tab, if desired.
                                                              Step 4   Modify the Labels tab, if desired.
                                                              Step 5   When finished, click OK to submit the changes and close the dialog box.

                                                              Unified CVP Micro-Applications

                                                              The sections that follow describe the parameters that can be defined through Unified CCE Administration for each of the six Unified CVP micro-applications.

                                                              Keep the following in mind as you configure each Network VRU Script to be used with Unified CVP:

                                                              • Each micro-application parameter in fields of theNetwork VRU Script ’s Attributes tab must be separated by a comma.
                                                              • If a parameter value is not specified, the micro-application uses its default.

                                                              Dynamic Audio File Support for Micro-Applications

                                                              Unified CVP lets you use a single micro-application and specify the prompt using call variables and the Packaged CCE formula editor.

                                                              To provide dynamic audio file capability, set the second VRU script parameter to a numeric value, 1-10, prefixed by a dash. You then set the Media Library to either "A", "S", or "V". Unified CVP looks in the corresponding Call.PeripheralVariable for the name of the audio file to play.

                                                              When you set the Media Library to "A" or "S", Unified CVP plays the audio file specified by the Call Variable after the "-(number)". For example, if the second VRU Script Parameter is set to "-4", it plays the audio file specified in Call.PeripheralVariable4. This functionality is added for Play Media, Menu, and Get Digits micro-applications.


                                                              Note


                                                              When A is specified as the Media Library, it means CVP looks for the media file under the C:\inetpub\wwwroot\en-us\app folder by default and when S is specified, it looks under the C:\inetpub\wwwroot\en-us\sys folder by default.

                                                              Second VRU Script Parameter

                                                              Corresponding Call Variable

                                                              -1 to -10

                                                              Call.PeripheralVariable (1 to 10)

                                                              For an example of how to use a dynamic audio file, see the following table.

                                                              VRU Script Parameter Example

                                                              Definition

                                                              PM, -3,A

                                                              PM - Uses the Play Media micro-application.

                                                              -3 - Plays the file specified in Call.PeripheralVariable3.

                                                              A - Acquires the file from the application media files folder (for example, C:\inetpub\wwwroot\en-us\app).

                                                              Notes
                                                              • If you do not specify a file extension for the file name in the Call.PeripheralVariable, the default media file extension is applied (for example, .wav for audio files).
                                                              • If you set the second VRU script parameter to a value prefixed with a dash and don’t specify a file name in the corresponding Call.PeripheralVariable, the CVP Service creates a VoiceXML that does not contain a media prompt.
                                                              • You can only specify the name of a single file in the Peripheral Variable. You cannot set this value to a name/value pair.

                                                              For more information, refer to the sections on individual micro-applications in this chapter.

                                                              Default Media Server for Micro-Applications

                                                              In prior releases (before Unified CVP 8.5), the only way to specify a media server for a micro-application was to use the ECC variable user.microapp.media_server. You can now use the Operations Console to designate a default media server for the entire deployment.

                                                              The global default media server can be specified in the Operations Console by selecting Device Management > Media Server. The default media server is used by the micro-applications if the ECC variable user.microapp.media_server is missing or empty in the Packaged CCE script.

                                                              The following list specifies the order in which the micro-application tries to resolve which media server to use:

                                                              1. Media server is specified by the ECC variable: user.microapp.media_server
                                                              2. Global default media server is specified

                                                              The first non-empty media server value encountered in the above order is used by the micro-application. This applies to all micro-applications including

                                                              • Play Media (PM)
                                                              • Play Data (PD)
                                                              • Get Digits (PD)
                                                              • Menu (M)

                                                              The following screen shot shows the Packaged CCE script where Play Media micro-application plays a media file using the ECC variable user.microapp.media_server.

                                                              Figure 58. Packaged CCE Script with Play Media using ECC Variable



                                                              The following screen shot shows the Packaged CCE script where Play Media micro-application plays a media file using a default media server configured in the Operations Console.

                                                              Figure 59. Packaged CCE Script with Play Media Using Default Media Server



                                                              Capture Micro-Application

                                                              The Capture (CAP) micro-application allows you to trigger the storage of current call data at multiple points in the Packaged CCE routing script. The CAP micro-application must be configured as a VRU script, and it is executed using a RunExternalScript node, just as with any other Unified CVP micro-application. The VRU Script Name value is "CAP" or "CAP,xxx," where "xxx" is any arbitrary string to be used if necessary for uniqueness purposes. There is no VRU Script Config string.

                                                              Executing a Capture micro-application causes the Packaged CCE PG to produce an intermediate termination record. Specifically, it writes a record in the Termination_Call_Detail (TCD) table which includes all current call variables (not the VRUProgress variable), router call keys, date and time, and caller entered digits. Together with the TCD record, the Capture micro-application writes a set of records to the Termination_Call_Variable (TCV) table which includes the current values of all ECC variables.

                                                              Packaged CCE provides no standard reporting templates for TCD and TCV records. These tables are large and minimally indexed, and are optimized for writing rather than querying, to minimally impact call handling throughput. If you plan to report on this data, create off-hours extract processes which copy rows in their raw format into a database which is external to Packaged CCE . From there you can organize the tables in the way that best supports your querying requirements.

                                                              Information you need about these records includes:

                                                              • TCD records for a given call may be identified because they contain the same RouterCallKeyDay and RouterCallKey. Successive TCD records are ordered by incrementing RouterCallKeySequenceNumber.
                                                              • Intermediate TCD records may be identified because they contain a CallDisposition of 53, "PartialCall". Only the last TCD record for the call contains the actual disposition.
                                                              • TCV records corresponding to a particular TCD record may be obtained by joining on TCV.TCDRecoveryKey. This key matches the RecoveryKey value in the TCD record.
                                                              • As of Packaged CCE 6.0(0), the TCD record’s CallTypeId is also populated for VRU peripherals. This means you can determine the call’s current CallType at each Capture micro-application invocation, and at the end of the call.
                                                              • In Unified CVP Comprehensive call flow models, these records are associated with the VRU leg peripheral. If you are doing VRU application reporting, you can filter for TCD records which contain the PeripheralID of the CVP VRU leg.

                                                              The Capture micro-application places a heavy demand on Packaged CCE resources. Each time you use it, Packaged CCE writes one TCD record and multiple TCV records. Though it can conveniently capture the information you need, it can also capture extra information which you do not require. If you overuse this micro-application, it can place a heavy load on Packaged CCE in terms of processing time and disk space, which despite the minimal indexing, may impact Packaged CCE ’s ability to handle the expected call load. Carefully choose where you need to capture information in your scripts. Spread data items into as many call variables as possible to maximize the usefulness of each invocation.

                                                              Play Media Micro-Application

                                                              The Play Media (PM) micro-application can be configured to play a message that is contained in a media file or streaming audio file.

                                                              Configure Network VRU Script for Play Media

                                                              Use Packaged CCE Administration’s Network VRU Scripts tool to specify parameters.

                                                              Procedure
                                                                Step 1   Configure VRU Script field parameters:
                                                                • Micro-application type. For Play Media, valid options are: PM or pm.
                                                                • Media File Name. Name of the media file to be played (that is, the prompt file) or the name of the external VoiceXML file. The valid options are:
                                                                  • A file name (for instance, a .wav file).
                                                                  • null - (default) If this field is empty, no prompt is played.
                                                                  • -(number 1-10) - Unified CVP plays the file in the corresponding Call.PeripheralVariable file. For example, a value of 2 instructs Unified CVP to look at Call.PeripheralVariable2.
                                                                  • -a - Unified CVP automatically generates the media file name for agent greeting when this option is specified. The file name is based on GED-125 parameters received from Packaged CCE .
                                                                • Media Library Type. Flag indicating the location of the media files to be played. The valid options are:
                                                                  • A - (default) Application
                                                                  • S - System
                                                                • Uniqueness value. Optional. A string identifying a VRU Script Name as unique.
                                                                Step 2   Configure the Configuration Param field parameters:
                                                                • Barge-in Allowed. Specifies whether barge-in (digit entry to interrupt media playback) is allowed. The valid options are:
                                                                  • Y - (default) barge-in allowed
                                                                  • N - barge-in not allowed
                                                                    Note   

                                                                    Voice barge-in is not supported by Play Media and Play Data micro-applications. However, Dual Tone Multifrequency (DTMF) barge-in is supported for these micro-applications.

                                                                    For more information about barge-in, see How Unified CVP Handles Barge-In.

                                                                • RTSP Timeout. Specifies the Real-time Streaming Protocol (RTSP) timeout - in seconds - when RTSP is used. The valid range is 0 - 43200 seconds (default is 10 seconds). If the value is set to 0 or a timeout value is not provided, the stream does not end. See How to Configure the Play Media Micro-Application to Use Streaming Audio for more details.
                                                                • Type-ahead Buffer Flush. The Cisco VoiceXML implementation includes a type-ahead buffer that holds DTMF digits collected from the caller. When the VoiceXML form interpretation algorithm collects user DTMF input, it uses the digits from this buffer before waiting for further input. This parameter controls whether the type-ahead buffer is flushed after the prompt plays out. A false value (default) means that the type-ahead buffer is not flushed after the prompt plays out. If the prompt allows barge-in, the digit that barges in is not flushed. The valid options are
                                                                  • Y - flush the type-ahead buffer
                                                                  • N - (default) do not flush the type-ahead buffer
                                                                    Note   

                                                                    This parameter is normally used when two or more PM and/or PD microapps are used in a loop in the CCE script (such as while in queue for an agent). If the PM and/or PD microapps are enabled for barge-in, one would set this parameter to Y to prevent an uncontrolled looping in the CCE script when the user barges in.


                                                                How Unified CVP Handles Barge-In
                                                                Unified CVP deals with barge-in as follows:
                                                                • If barge-in is not allowed, the gateway continues prompt play when a caller starts entering digits.
                                                                • If barge-in is allowed, the gateway discontinues prompt play when the caller starts entering digits. See Get Speech and External VoiceXML
                                                                Configure Play Media Micro-Application to Use Streaming Audio

                                                                Use the CCE Script Editor to configure Play Media (PM) micro-application to play .wav files from a streaming audio server.

                                                                Cisco does not sell, OEM, or support any Media Servers. The IOS gateway only supports µ-law wav files in 8-bit format. Media Servers such as RealNetwork's Helix Server will serve RTSP broadcast audio streams in the µ-Law format.


                                                                Note


                                                                The IOS gateway only supports µ-law wav files in 8-bit format.

                                                                You must enclose the stream URL and stream name values in quotation marks.


                                                                Procedure
                                                                  Step 1   Add a Set Node in the script to configure the media_server ECC variable.
                                                                  • On the Set Variable tab of the Set Properties dialog box, select Call from the Object Type drop down and then set the Variable to user.microapp.media.server.

                                                                  • In the Value field, specify the URL up to, but not including, the stream name.
                                                                    Note   

                                                                    The URL must begin with an rtsp:// prefix (Real-time Streaming Protocol) to stream audio over the network. A trailing forward slash is not permitted in the URL.

                                                                  • Click OK.
                                                                  Step 2   Add another Set Node in the script to configure the stream name.
                                                                  • On the Set Variable tab of the Set Properties dialog box, select Call from the Object Type drop down and set the Variable to PeripheralVariable<1>. The range for standard CCE Peripheral Variables is PeripheralVariable1 through PeripheralVariables10.

                                                                  • In the Value field, specify the stream name and click OK.
                                                                    Note   

                                                                    Stream names are case-sensitive.

                                                                  Step 3   Add a Run External Script node to the workspace and double-click Run External Script.

                                                                  The Run External Script Properties dialog box lists all of the Network VRU scripts that are currently configured.



                                                                  Note   

                                                                  In the example above, the CVP_RTSPStream_Forever script's external script name contains four parameters: PM, -1, A, 5. The second parameter, -1, instructs CVP to play the stream name declared in PeripheralVariable1 (shown in Step 2). It is recommended that you configure streaming audio following the steps outlined so that you may easily change the stream name within the Script Editor, if necessary.

                                                                  You can also use the Run External Script node in the CCE Script Editor to configure CCE to failover to a new streaming server. For example, if you want to point to an alternate streaming server (IP address), use the X-path out of the Run External Script node to redefine the media_server ECC variable. In a failover situation, the script executes and the stream plays from the targeted streaming server and proceeds normally.

                                                                  Step 4   From the Run VRU Script tab, select the CCE Script Name desired and click OK.
                                                                  Step 5   Optionally, you can use the Packaged CCE Administration's Network VRU Scripts tool to configure the timeout value for the stream.

                                                                  Configure the Configuration Param field parameter:

                                                                  • In the RTSP Timeout field, enter a timeout value (in seconds).
                                                                    • The valid range is 0 - 43200 seconds.
                                                                    • If the value is set to 0 or a timeout value is not provided the stream does not end.
                                                                  Step 6   Access the IOS device in global configuration mode and use the rtsp client timeout connect command to set the number of seconds the router waits before it reports an error to the Real-time Streaming Protocol (RTSP) server.

                                                                  The range is 1 to 20. The recommended value is 10 seconds.


                                                                  If the SIP Call with CVP Service is Terminated with Reason Code: Q.850;Cause=38 then be sure that the network interface configuration is as follows:
                                                                  ip route-cache same-interface
                                                                  ip route-cache cef
                                                                  ip route-cache
                                                                  ip mroute-cache
                                                                  no cdp enable
                                                                                              
                                                                  If specified, remove the following line from the network interface:
                                                                  keepalive 1800

                                                                  This issue arises if the Unified CVP loses network connectivity, then the VXML Server Gateway is not able to get information from the CVP Service, and as a result a code 38 rejection is generated in the Gateway logs.

                                                                  Configure Custom Streaming Ringtones

                                                                  You can configure custom ringtone patterns that enable you to play an audio stream to a caller in place of the usual ringtone. Customized streaming ringtones are based on the dialed number destination and, when configured, play an in-progress broadcast stream to the caller while the call is transferred an agent.

                                                                  Play Media Examples: Play Welcome Message
                                                                  The following table shows some Network VRU Script configuration examples for Play Media.

                                                                  Table 4 Network VRU Script configuration examples

                                                                  Example

                                                                  Field Name

                                                                  Field Contents

                                                                  Tells Unified CVP...

                                                                  1

                                                                  VRU Script Name

                                                                  PM,Welcome

                                                                  To use the Play Media (PM) micro-application to play the "Welcome.wav" Media file and accept the defaults for remaining settings.

                                                                  Note    If no file extension is specified, .wav is assumed.

                                                                  Configuration Param

                                                                  N

                                                                  That Barge-in is not allowed.

                                                                  2

                                                                  VRU Script Name

                                                                  pm,July,S

                                                                  To use the Play Media (PM) micro-application to play the "July.wav" Media file, using the System (S) Media library.

                                                                  Configuration Param

                                                                  Null (Accept default.)

                                                                  That Barge-in is allowed.

                                                                  3

                                                                  VRU Script Name

                                                                  PM,WebSite,,0

                                                                  To use the Play Media (PM) micro-application to play the "Website.wav" Media file, using the default Media Type (Application library), and setting 0 as the Uniqueness value.

                                                                  Note    A , (comma) indicates a skipped parameter. When a parameter is skipped, Unified CVP applies its default.

                                                                  Configuration Param

                                                                  Null (Accept default.)

                                                                  That Barge-in is allowed.

                                                                  4

                                                                  VRU Script Name

                                                                  PM,WebSite,,1

                                                                  To use the Play Media (PM) micro-application to play the "Website.wav" Media file, using the default Media Type (Application library), and setting 1 as the Uniqueness value.

                                                                  Configuration Param

                                                                  N

                                                                  That Barge-in is not allowed.

                                                                  5

                                                                  VRU Script Name

                                                                  PM, -3, A

                                                                  To use the Play Media (PM) micro-application, using the file listed in Call.PeripheralVariable3, acquiring the file from the Application (A) media library.

                                                                  Configuration Param

                                                                  N

                                                                  That Barge-in is not allowed.

                                                                  6

                                                                  VRU Script Name

                                                                  PM, stream.rm

                                                                  To use the Play Media (PM) micro-application to play "stream.rm" from a streaming audio server and accept the defaults for remaining settings.

                                                                  Configuration Param

                                                                  N, 30

                                                                  That Barge-in is not allowed, and the stream is configured to stop playing in 30 seconds.


                                                                  Note


                                                                  Play Media sets the ECC variable user.microapp.error_code to zero, indicating success, if control proceeds out the Checkmark (success) branch of the Run External Script node. If control proceeds out the X (failure) branch, Play Media typically sets this variable to one of the codes listed in Unified CVP Script Error Checking.

                                                                  Play Data Micro-Application

                                                                  The Play Data micro-application retrieves data from a storage area and plays it to the caller in a specific format, called a data play back type.

                                                                  Some possible sources of the data to be played back:
                                                                  • Information retrieved from a database look-up
                                                                  • Information entered by the caller
                                                                  Play Data and Data Storage
                                                                  Before this micro-application can be called, you must specify the location of the play back data. You do this with a Script Editor Set node that points to one of the following storage areas:
                                                                  • One of the standard Packaged CCE Peripheral Variables (PeripheralVariable1 through PeripheralVariables10).
                                                                  • The user.microapp.play_data elements.
                                                                  Configure Network VRU Script Settings for Play Data Micro-Application

                                                                  Use the CCE Configuration Manager’s Network VRU Script rtool’s Attributes tab to specify parameters.


                                                                  Note


                                                                  Voice barge-in is not supported by Play Media and Play Data micro-applications. However, DTMF barge-in is supported for these micro-applications.

                                                                  If you are using integers that are larger than nine digits, enclose the value in quotation marks, so it will be treated as a string.


                                                                  Procedure
                                                                    Step 1   Configure VRU Script field parameters:
                                                                    • Micro-application type. For Play Data, valid options are: PD or pd.
                                                                    • Data Playback Type. The type of the data to be returned ("played") to the caller. The valid options are:
                                                                      • Number
                                                                      • Char (character)
                                                                      • Date
                                                                      • Etime (elapsed time)
                                                                      • TOD (Time of Day)
                                                                      • 24TOD (24-hour Time of Day)
                                                                      • DOW (Day of Week)
                                                                      • Currency
                                                                      Note   

                                                                      24TOD and DOW data play back types are not supported when using TTS. Currency other than US dollar (USD) is not supported.

                                                                      For more information about each of these playback types, including input format and output examples, see Play Back Types for Voice Data.

                                                                    • Uniqueness value. Optional. A string identifying a VRU Script Name as unique.
                                                                    Step 2   Configure the Configuration Param field parameters:
                                                                    • Location of the data to be played . The valid options are:
                                                                      • null (default) - If you leave this option empty, uses the ECC variable user.microapp.play_data.
                                                                      • A number representing a Call Peripheral Variable number (for example, a 1 to represent Call.PeripheralVariable1).
                                                                      Note   

                                                                      For more information on data location, see Play Data and Data Storage.

                                                                    • Barge-in Allowed. Specifies whether barge-in (digit entry to interrupt media playback) is allowed. The valid options are:
                                                                      • Y - (default) barge-in allowed
                                                                      • N - barge-in not allowed
                                                                        Note   

                                                                        Voice barge-in is not supported by Play Media and Play Data micro-applications. However, DTMF barge-in is supported for these micro-applications.

                                                                        For more information about barge-in, see How Unified CVP Handles Barge-In.

                                                                    • Time Format Valid only for the time Data Playback types (Etime, TOD, 24TOD). The available formats are:
                                                                      • null - leave this option empty for non-time formats
                                                                      • HHMM - default for time formats
                                                                      • HHMMSS - includes seconds
                                                                      • HHMMAP - includes am or pm; valid only for TOD
                                                                    • Type-ahead Buffer Flush . The Cisco VoiceXML implementation includes a type-ahead buffer that holds DTMF digits collected from the caller. When the VoiceXML form interpretation algorithm collects user DTMF input, it uses the digits from this buffer before waiting for further input. This parameter controls whether the type-ahead buffer is flushed after the prompt plays out. A false value (default) means that the type-ahead buffer is not flushed after the prompt plays out. If the prompt allows barge-in, the digit that barges in is not flushed. The valid options are:
                                                                      • Y - flush the type-ahead buffer
                                                                      • N - (default) do not flush the type-ahead buffer
                                                                        Note   

                                                                        This parameter is only applicable when using the Cisco IOS gateway with DTMF barge-in. This parameter is normally used when two or more PM and/or PD microapps are used in a loop in the CCE script (such as while in queue for an agent). If the PM and/or PD microapps are enabled for barge-in, one would set this parameter to Y to prevent an uncontrolled looping in the CCE script when the user barges in.


                                                                    Play Back Types for Voice Data

                                                                    Configuring how voice data is presented to a caller is an important part of setting up your Unified CVP. The "Data Play Back Types" table below describes each type, along with sample valid values and formats for the supported locales when not using TTS:

                                                                    • en-us. English (United States)
                                                                    • en-gb. English (Great Britain)
                                                                    • es-mx. Spanish (Mexico)
                                                                    • es-es. Spanish (Spain)

                                                                    Locale is selected by setting the user.microapp.locale variable.

                                                                    Any string of characters typically used in the language may need to be spoken back character by character (this includes special keyboard symbols and numbers). If a particular symbol is not used by a particular language, a string containing that symbol may be spelled out with a Play Data with Char data type.

                                                                    For example, assume that an CVP application in the US (a locale of en-us) queries a database for an account owner’s name and spells the name back to the caller. If the name pulled from the database was "Hänschen Walther," the media files that would need to be pulled from the Media Server would have been derived from a URL including the en-us locale. The symbol ä has a decimal value of 228, which is different than the symbol a which has a value of 97. It is the translator’s task to record the proper word(s) for each symbol to be supported. For detailed information on character translation, refer to "System Media Files."

                                                                    Table 5  Data Play Back Types

                                                                    Data Play Back Type

                                                                    Description

                                                                    Input Format

                                                                    Output Examples (When Not Using TTS)

                                                                    Number

                                                                    Play the stored data as a number.

                                                                    -###############.######

                                                                    The leading minus (-) is optional and is played as "minus."

                                                                    The whole number portion of the string can contain a maximum of 15 digits (for a maximum value of 999 trillion, 999 billion and so on).

                                                                    The decimal point is represented as a period (.) and played as "point." It is optional if there is no floating portion.

                                                                    The floating point portion of the number is optional and can contain a maximum of six digits.

                                                                    Trailing zeros are played.

                                                                    en-us and en-gb typical spoken form:

                                                                    • -123 = "minus one hundred twenty three"
                                                                    • 35.67 = "thirty five point six seven"
                                                                    • 1234.0 = "one thousand, two hundred, thirty four point zero"

                                                                    es-mx and es-es typical spoken form:

                                                                    • -120 = "menos ciento veinte"
                                                                    • 10.60 = "diez coma seis cero"
                                                                    • 1,100 = "mil cien"

                                                                    Char

                                                                    Play the stored data as individual characters.

                                                                    All printable American National Standards Institute (ANSI) characters are supported.

                                                                    Note   

                                                                    Code Page 1252 is ANSI standard. It contains ASCII (characters 0-127) and extended characters from 128 to 255

                                                                    en-us and en-gb typical spoken form:

                                                                    • abc123= "A, B, C, one, two, three"

                                                                    es-mx and es-es typical spoken form:

                                                                    • abc123 = "A, B, C, uno, dos, tres"

                                                                    Date

                                                                    Play the stored data as a date.

                                                                    YYYYMMDD, regardless of locale.

                                                                    YYYY options: the range of 1800 through 9999.

                                                                    MM options: the range of 01 through 12.

                                                                    DD options: the range of 01 through 31.

                                                                    Note   

                                                                    The software does not validate the date (for example, 20000231 is valid and played accordingly). However, a failure occurs if any bounds are broken (for example, 34 for month).

                                                                    en-us typical spoken form:

                                                                    • MMDDYYYY format: 20000114 = "January fourteenth, two thousand"

                                                                    en-gb typical spoken form:

                                                                    • DDMMYYYY format: 20000114 = "Fourteenth of January, two thousand"

                                                                    es-mx and es-es typical spoken form:

                                                                    • DDMMYYYY format: 20001012 = "doce octubre dos mil"
                                                                    Note    All spoken forms use the proper grammar for the locale.

                                                                    Etime (elapsed time)

                                                                    Play the stored data as an amount of elapsed time.

                                                                    HHMM or HHMMSS

                                                                    Maximum 99 hours, 59 minutes, 59 seconds

                                                                    Leading zeros are ignored.

                                                                    en-us and en-gb typical spoken form:

                                                                    • HHMM format: 0830= "eight hours thirty minutes"
                                                                    • HHMMSS format: 083020= "eight hours, thirty minutes, twenty seconds"

                                                                    es-mx and es-es typical spoken form:

                                                                    • HHMM format: 0205 = "dos horas cinco minutos"
                                                                    • HHMMSSS format: 020101 = "dos horas un minuto un segundo"

                                                                    TOD (Time of Day)

                                                                    Play the stored data as a time of day.

                                                                    HHMM or HHMMSS 24 hour time

                                                                    HH options: 00 - 24

                                                                    MM options: 00 - 59

                                                                    SS options: 00 - 59

                                                                    en-us and en-gb typical spoken form:

                                                                    • HHMM format: 0800 = "eight o’clock" 0830 = "eight thirty" 1430 = "two thirty"
                                                                    • HHMMSS format: 083020 = "eight thirty and twenty seconds"
                                                                    • HHMMAP format: 1430 = "two thirty p.m."

                                                                    es-mx and es-es typical spoken form:

                                                                    • HHMM format: 0100 = "una a.m."
                                                                    • HHMMAP format: 1203 = "doce y tres p.m."
                                                                    • HHMMSS format: 242124 = "doce veintiuno a.m."

                                                                    DOW (Day of Week)

                                                                    Play the stored data as a day of week.

                                                                    An integer from 1 through 7 (1 = Sunday, 2 = Monday, et cetera).

                                                                    Note   

                                                                    The DOW data play back type is not supported when using TTS.

                                                                    en-us and en-gb typical spoken form:

                                                                    • 7 = "Saturday"

                                                                    es-mx and es-es typical spoken form:

                                                                    • 7 = "Sabado"
                                                                    System Media Files

                                                                    The following tables describe the English System Media Files installed by Unified CVP. These system media files are intended as samples only. It is the Customer/Media Administrator’s responsibility to record all the system prompts for all the locales.

                                                                    The table that follows lists the System Media File information for cardinal numbers.

                                                                    Table 6  System Media Files, Cardinal Numbers

                                                                    Symbol (where applicable)

                                                                    Decimal Value

                                                                    Media File Name

                                                                    Media File Content

                                                                    Data Play Back Types / When Media File Is Used

                                                                       

                                                                    point

                                                                    point

                                                                    Number

                                                                       

                                                                    minus

                                                                    minus

                                                                    Number

                                                                    0

                                                                    48

                                                                    0

                                                                    zero

                                                                    All except DOW

                                                                    1

                                                                    49

                                                                    1

                                                                    one (masculine version), uno (es-mx and es-es)

                                                                    All except DOW

                                                                    2

                                                                    50

                                                                    2

                                                                    two

                                                                    All except DOW

                                                                    3

                                                                    51

                                                                    3

                                                                    three

                                                                    All except DOW

                                                                    4

                                                                    52

                                                                    4

                                                                    four

                                                                    All except DOW

                                                                    5

                                                                    53

                                                                    5

                                                                    five

                                                                    All except DOW

                                                                    6

                                                                    54

                                                                    6

                                                                    six

                                                                    All except DOW

                                                                    7

                                                                    55

                                                                    7

                                                                    seven

                                                                    All except DOW

                                                                    8

                                                                    56

                                                                    8

                                                                    eight

                                                                    All except DOW

                                                                    9

                                                                    57

                                                                    9

                                                                    nine

                                                                    All except DOW

                                                                       

                                                                    10

                                                                    ten

                                                                    Same for the rest of all the numbers

                                                                       

                                                                    11

                                                                    eleven

                                                                     
                                                                       

                                                                    12

                                                                    twelve

                                                                     
                                                                       

                                                                    13

                                                                    thirteen

                                                                     
                                                                       

                                                                    14

                                                                    fourteen

                                                                     
                                                                       

                                                                    15

                                                                    fifteen

                                                                     
                                                                       

                                                                    16

                                                                    sixteen

                                                                     
                                                                       

                                                                    17

                                                                    seventeen

                                                                     
                                                                       

                                                                    18

                                                                    eighteen

                                                                     
                                                                       

                                                                    19

                                                                    nineteen

                                                                     
                                                                       

                                                                    20

                                                                    twenty

                                                                     
                                                                       

                                                                    21

                                                                    twenty-one

                                                                     
                                                                       

                                                                    22

                                                                    twenty-two

                                                                     
                                                                       

                                                                    23

                                                                    twenty-three

                                                                     
                                                                       

                                                                    24

                                                                    twenty-four

                                                                     
                                                                       

                                                                    25

                                                                    twenty-five

                                                                     
                                                                       

                                                                    26

                                                                    twenty-six

                                                                     
                                                                       

                                                                    27

                                                                    twenty-seven

                                                                     
                                                                       

                                                                    28

                                                                    twenty-eight

                                                                     
                                                                       

                                                                    29

                                                                    twenty-nine

                                                                     
                                                                       

                                                                    30

                                                                    thirty

                                                                     
                                                                       

                                                                    31

                                                                    thirty-one

                                                                     
                                                                       

                                                                    32

                                                                    thirty-two

                                                                     
                                                                       

                                                                    33

                                                                    thirty-three

                                                                     
                                                                       

                                                                    34

                                                                    thirty-four

                                                                     
                                                                       

                                                                    35

                                                                    thirty-five

                                                                     
                                                                       

                                                                    36

                                                                    thirty-six

                                                                     
                                                                       

                                                                    37

                                                                    thirty-seven

                                                                     
                                                                       

                                                                    38

                                                                    thirty-eight

                                                                     
                                                                       

                                                                    39

                                                                    thirty-nine

                                                                     
                                                                       

                                                                    40

                                                                    forty

                                                                     
                                                                       

                                                                    41

                                                                    forty-one

                                                                     
                                                                       

                                                                    42

                                                                    forty-two

                                                                     
                                                                       

                                                                    43

                                                                    forty-three

                                                                     
                                                                       

                                                                    44

                                                                    forty-four

                                                                     
                                                                       

                                                                    45

                                                                    forty-five

                                                                     
                                                                       

                                                                    46

                                                                    forty-six

                                                                     
                                                                       

                                                                    47

                                                                    forty-seven

                                                                     
                                                                       

                                                                    48

                                                                    forty-eight

                                                                     
                                                                       

                                                                    49

                                                                    forty-nine

                                                                     
                                                                       

                                                                    50

                                                                    fifty

                                                                     
                                                                       

                                                                    51

                                                                    fifty-one

                                                                     
                                                                       

                                                                    52

                                                                    fifty-two

                                                                     
                                                                       

                                                                    53

                                                                    fifty-three

                                                                     
                                                                       

                                                                    54

                                                                    fifty-four

                                                                     
                                                                       

                                                                    55

                                                                    fifty-five

                                                                     
                                                                       

                                                                    56

                                                                    fifty-six

                                                                     
                                                                       

                                                                    57

                                                                    fifty-seven

                                                                     
                                                                       

                                                                    58

                                                                    fifty-eight

                                                                     
                                                                       

                                                                    59

                                                                    fifty-nine

                                                                     
                                                                       

                                                                    60

                                                                    sixty

                                                                     
                                                                       

                                                                    61

                                                                    sixty-one

                                                                     
                                                                       

                                                                    62

                                                                    sixty-two

                                                                     
                                                                       

                                                                    63

                                                                    sixty-three

                                                                     
                                                                       

                                                                    64

                                                                    sixty-four

                                                                     
                                                                       

                                                                    65

                                                                    sixty-five

                                                                     
                                                                       

                                                                    66

                                                                    sixty-six

                                                                     
                                                                       

                                                                    67

                                                                    sixty-seven

                                                                     
                                                                       

                                                                    68

                                                                    sixty-eight

                                                                     
                                                                       

                                                                    69

                                                                    sixty-nine

                                                                     
                                                                       

                                                                    70

                                                                    seventy

                                                                     
                                                                       

                                                                    71

                                                                    seventy-one

                                                                     
                                                                       

                                                                    72

                                                                    seventy-two

                                                                     
                                                                       

                                                                    73

                                                                    seventy-three

                                                                     
                                                                       

                                                                    74

                                                                    seventy-four

                                                                     
                                                                       

                                                                    75

                                                                    seventy-five

                                                                     
                                                                       

                                                                    76

                                                                    seventy-six

                                                                     
                                                                       

                                                                    77

                                                                    seventy-seven

                                                                     
                                                                       

                                                                    78

                                                                    seventy-eight

                                                                     
                                                                       

                                                                    79

                                                                    seventy-nine

                                                                     
                                                                       

                                                                    80

                                                                    eighty

                                                                     
                                                                       

                                                                    81

                                                                    eighty-one

                                                                     
                                                                       

                                                                    82

                                                                    eighty-two

                                                                     
                                                                       

                                                                    83

                                                                    eighty-three

                                                                     
                                                                       

                                                                    84

                                                                    eighty-four

                                                                     
                                                                       

                                                                    85

                                                                    eighty-five

                                                                     
                                                                       

                                                                    86

                                                                    eighty-six

                                                                     
                                                                       

                                                                    87

                                                                    eighty-seven

                                                                     
                                                                       

                                                                    88

                                                                    eighty-eight

                                                                     
                                                                       

                                                                    89

                                                                    eighty-nine

                                                                     
                                                                       

                                                                    90

                                                                    ninety

                                                                     
                                                                       

                                                                    91

                                                                    ninety-one

                                                                     
                                                                       

                                                                    92

                                                                    ninety-two

                                                                     
                                                                       

                                                                    93

                                                                    ninety-three

                                                                     
                                                                       

                                                                    94

                                                                    ninety-four

                                                                     
                                                                       

                                                                    95

                                                                    ninety-five

                                                                     
                                                                       

                                                                    96

                                                                    ninety-six

                                                                     
                                                                       

                                                                    97

                                                                    ninety-seven

                                                                     
                                                                       

                                                                    98

                                                                    ninety-eight

                                                                     
                                                                       

                                                                    99

                                                                    ninety-nine

                                                                     
                                                                       

                                                                    oh

                                                                    oh

                                                                    24TOD, Date

                                                                       

                                                                    hundred

                                                                    hundred

                                                                    Number, 24TOD, Date, Currency

                                                                       

                                                                    thousand

                                                                    thousand

                                                                    Number, Date, Currency

                                                                       

                                                                    million

                                                                    million

                                                                    Number, Currency

                                                                       

                                                                    billion

                                                                    billion

                                                                    Number, Date, Currency

                                                                       

                                                                    trillion

                                                                    trillion

                                                                    Number, Currency

                                                                    The table that follows lists the System Media File information for ordinal numbers.


                                                                    Note


                                                                    If ordinal system prompts are to be used in a script for a purpose other than dates, they should be recorded as application prompts with the true ordinal values.
                                                                    Table 7  System Media Files, Ordinal Numbers

                                                                    Symbol (where applicable)

                                                                    Decimal Value

                                                                    Media File Name

                                                                    Media File Content

                                                                    Data Play Back Types / When Media File Is Used

                                                                       

                                                                    1ord

                                                                    first

                                                                    Date

                                                                       

                                                                    2ord

                                                                    second

                                                                    Date for all ordinal numbers

                                                                       

                                                                    3ord

                                                                    third

                                                                     
                                                                       

                                                                    4ord

                                                                    fourth

                                                                     
                                                                       

                                                                    5ord

                                                                    fifth

                                                                     
                                                                       

                                                                    6ord

                                                                    sixth

                                                                     
                                                                       

                                                                    7ord

                                                                    seventh

                                                                     
                                                                       

                                                                    8ord

                                                                    eighth

                                                                     
                                                                       

                                                                    9ord

                                                                    nineth

                                                                     
                                                                       

                                                                    10ord

                                                                    tenth

                                                                     
                                                                       

                                                                    11ord

                                                                    eleventh

                                                                     
                                                                       

                                                                    12ord

                                                                    twelveth

                                                                     
                                                                       

                                                                    13ord

                                                                    thirteenth

                                                                     
                                                                       

                                                                    14ord

                                                                    fourteenth

                                                                     
                                                                       

                                                                    15ord

                                                                    fifteenth

                                                                     
                                                                       

                                                                    16ord

                                                                    sixteenth

                                                                     
                                                                       

                                                                    17ord

                                                                    seventeenth

                                                                     
                                                                       

                                                                    18ord

                                                                    eighteenth

                                                                     
                                                                       

                                                                    19ord

                                                                    nineteenth

                                                                     
                                                                       

                                                                    20ord

                                                                    twentieth

                                                                     
                                                                       

                                                                    21ord

                                                                    twenty-first

                                                                     
                                                                       

                                                                    22ord

                                                                    twenty-second

                                                                     
                                                                       

                                                                    23ord

                                                                    twenty-third

                                                                     
                                                                       

                                                                    24ord

                                                                    twenty-fourth

                                                                     
                                                                       

                                                                    25ord

                                                                    twenty-fifth

                                                                     
                                                                       

                                                                    26ord

                                                                    twenty-sixth

                                                                     
                                                                       

                                                                    27ord

                                                                    twenty-seventh

                                                                     
                                                                       

                                                                    28ord

                                                                    twenty-eight

                                                                     
                                                                       

                                                                    29ord

                                                                    twenty-nineth

                                                                     
                                                                       

                                                                    30ord

                                                                    thirtieth

                                                                     
                                                                       

                                                                    31ord

                                                                    thirty-first

                                                                     

                                                                    The table that follows lists the System Media File information for measurements.

                                                                    Table 8  System Media Files, Measurements

                                                                    Symbol (where applicable)

                                                                    Decimal Value

                                                                    Media File Name

                                                                    Media File Content

                                                                    Data Play Back Types / When Media File Is Used

                                                                    ½

                                                                    189

                                                                    one_half

                                                                    one half

                                                                    Char

                                                                    ¼

                                                                    188

                                                                    one_quarter

                                                                    one quarter

                                                                    Char

                                                                    ¾

                                                                    190

                                                                    three_quarters

                                                                    three quarters

                                                                    Char

                                                                    A, a

                                                                    65,97

                                                                    a

                                                                    A

                                                                    Char

                                                                    B,b

                                                                    66,98

                                                                    b

                                                                    B

                                                                    Char

                                                                    C, c

                                                                    67,99

                                                                    c

                                                                    C

                                                                    Char

                                                                    D, d

                                                                    68,100

                                                                    d

                                                                    D

                                                                    Char

                                                                    E, e

                                                                    69,101

                                                                    e

                                                                    E

                                                                    Char

                                                                    F, f

                                                                    70,102

                                                                    f

                                                                    F

                                                                    Char

                                                                    G, g

                                                                    71,103

                                                                    g

                                                                    G

                                                                    Char

                                                                    H, h

                                                                    72,104

                                                                    h

                                                                    H

                                                                    Char

                                                                    I, I

                                                                    73,105

                                                                    I

                                                                    I

                                                                    Char

                                                                    J, j

                                                                    74,106

                                                                    j

                                                                    J

                                                                    Char

                                                                    K, k

                                                                    75,107

                                                                    k

                                                                    K

                                                                    Char

                                                                    L, l

                                                                    76,108

                                                                    l

                                                                    L

                                                                    Char

                                                                    M, m

                                                                    77,109

                                                                    m

                                                                    M

                                                                    Char

                                                                    N, n

                                                                    78,110

                                                                    n

                                                                    N

                                                                    Char

                                                                    O, o

                                                                    79,111

                                                                    o

                                                                    O

                                                                    Char

                                                                    P, p

                                                                    80,112

                                                                    p

                                                                    P

                                                                    Char

                                                                    Q, q

                                                                    81,113

                                                                    q

                                                                    Q

                                                                    Char

                                                                    R, r

                                                                    82,114

                                                                    r

                                                                    R

                                                                    Char

                                                                    S, s

                                                                    83,115

                                                                    s

                                                                    S

                                                                    Char

                                                                    T, t

                                                                    84,116

                                                                    t

                                                                    T

                                                                    Char

                                                                    U, u

                                                                    85,117

                                                                    u

                                                                    U

                                                                    Char

                                                                    V, v

                                                                    86,118

                                                                    v

                                                                    V

                                                                    Char

                                                                    W, w

                                                                    87,119

                                                                    w

                                                                    W

                                                                    Char

                                                                    X, x

                                                                    88,120

                                                                    x

                                                                    X

                                                                    Char

                                                                    Y, y

                                                                    89,121

                                                                    y

                                                                    Y

                                                                    Char

                                                                    Z, z

                                                                    90,122

                                                                    z

                                                                    Z

                                                                    Char

                                                                             

                                                                    Œ, œ

                                                                    140,156

                                                                    oe_140_156

                                                                    Ligature OE

                                                                    Char

                                                                    À,à

                                                                    192,224

                                                                    a_192_224

                                                                    A grave

                                                                    Char

                                                                    Á,á

                                                                    193,225

                                                                    a_193_225

                                                                    A acute

                                                                    Char

                                                                    Â,â

                                                                    194,226

                                                                    a_194_226

                                                                    A circumflex

                                                                    Char

                                                                    Ã,ã

                                                                    195,227

                                                                    a_195_227

                                                                    A tilde

                                                                    Char

                                                                    Ä,ä

                                                                    196,228

                                                                    a_196_228

                                                                    A umlaut

                                                                    Char

                                                                    Å,å

                                                                    197,229

                                                                    a_197_229

                                                                    A with ring above

                                                                    Char

                                                                    Æ,æ

                                                                    198,230

                                                                    ae_198_230

                                                                    Ligature AE

                                                                    Char

                                                                    È,è

                                                                    200,232

                                                                    e_200_232

                                                                    E grave

                                                                    Char

                                                                    É,é

                                                                    201,233

                                                                    e_201_233

                                                                    E acute

                                                                    Char

                                                                    Ê,ê

                                                                    202,234

                                                                    e_202_234

                                                                    E circumflex

                                                                    Char

                                                                    Ë,ë

                                                                    203,235

                                                                    e_203_235

                                                                    E umlaut

                                                                     

                                                                    Ì,ì

                                                                    204,236

                                                                    i_204_236

                                                                    I grave

                                                                    Char

                                                                    Í, í

                                                                    205,237

                                                                    i_205

                                                                    I acute

                                                                    Char

                                                                    Î,î

                                                                    206,238

                                                                    i_206

                                                                    I circumflex

                                                                    Char

                                                                    Ï,ï

                                                                    207,239

                                                                    i_207

                                                                    I umlaut

                                                                    Char

                                                                    Ð

                                                                    208

                                                                    char_208

                                                                    character 208

                                                                    Char

                                                                    ð

                                                                    240

                                                                    char_240

                                                                    character 240

                                                                     

                                                                    Ò,ò

                                                                    210,242

                                                                    o_210_242

                                                                    O grave

                                                                    Char

                                                                    Ó,ó

                                                                    211,243

                                                                    o_211_243

                                                                    O acute

                                                                    Char

                                                                    Ô,ô

                                                                    212,244

                                                                    o_212_244

                                                                    O circumflex

                                                                    Char

                                                                    Õ,õ

                                                                    213,245

                                                                    o_213_245

                                                                    O tilde

                                                                    Char

                                                                    Ö,ö

                                                                    214,246

                                                                    o_214_246

                                                                    O umlaut

                                                                    Char

                                                                    x

                                                                    215

                                                                    multiply

                                                                    multiplication sign

                                                                    Char

                                                                    Ø,ø

                                                                    216,248

                                                                    o_216_248

                                                                    oh stroke

                                                                    Char

                                                                    Ù,ù

                                                                    217,249

                                                                    u_217_249

                                                                    U grave

                                                                    Char

                                                                    Ú,ú

                                                                    218,250

                                                                    u_218_250

                                                                    U acute

                                                                    Char

                                                                    Û,û

                                                                    219,251

                                                                    u_219_251

                                                                    U circumflex

                                                                    Char

                                                                    Ü,ü

                                                                    220,252

                                                                    u_220_252

                                                                    U umlaut

                                                                    Char

                                                                    Ý,ý

                                                                    221,253

                                                                    y_221_253

                                                                    Y acute

                                                                    Char

                                                                    Þ

                                                                    222

                                                                    char_222

                                                                    character 222

                                                                    Char

                                                                    ß

                                                                    223

                                                                    ss

                                                                    double s

                                                                    Char

                                                                    ÷

                                                                    247

                                                                    divide

                                                                    division sign

                                                                    Char

                                                                    þ

                                                                    254

                                                                    char_254

                                                                    character 254

                                                                    Char

                                                                    Ÿ,ÿ

                                                                    159,255

                                                                    y_159_255

                                                                    character 159 or 255

                                                                    Char

                                                                    The table that follows lists the System Media File information for month values.

                                                                    Table 9  System Media Files, Months

                                                                    Symbol (where applicable)

                                                                    Decimal Value

                                                                    Media File Name

                                                                    Media File Content

                                                                    Data Play Back Types / When Media File Is Used

                                                                       

                                                                    January

                                                                    January

                                                                    Date

                                                                       

                                                                    February

                                                                    February

                                                                    Date

                                                                       

                                                                    March

                                                                    March

                                                                    Date

                                                                       

                                                                    April

                                                                    April

                                                                    Date

                                                                       

                                                                    May

                                                                    May

                                                                    Date

                                                                       

                                                                    June

                                                                    June

                                                                    Date

                                                                       

                                                                    July

                                                                    July

                                                                    Date

                                                                       

                                                                    August

                                                                    August

                                                                    Date

                                                                       

                                                                    September

                                                                    September

                                                                    Date

                                                                       

                                                                    October

                                                                    October

                                                                    Date

                                                                       

                                                                    November

                                                                    November

                                                                    Date

                                                                       

                                                                    December

                                                                    December

                                                                    Date

                                                                    The table that follows lists the System Media File information for month values.

                                                                    Table 10  System Media Files, Days

                                                                    Symbol (where applicable)

                                                                    Decimal Value

                                                                    Media File Name

                                                                    Media File Content

                                                                    Data Play Back Types / When Media File Is Used

                                                                       

                                                                    Sunday

                                                                    Sunday

                                                                    DOW

                                                                       

                                                                    Monday

                                                                    Monday

                                                                    DOW

                                                                       

                                                                    Tuesday

                                                                    Tuesday

                                                                    DOW

                                                                       

                                                                    Wednesday

                                                                    Wednesday

                                                                    DOW

                                                                       

                                                                    Thursday

                                                                    Thursday

                                                                    DOW

                                                                       

                                                                    Friday

                                                                    Friday

                                                                    DOW

                                                                       

                                                                    Saturday

                                                                    Saturday

                                                                    DOW

                                                                    The table that follows lists the System Media File information for month values.

                                                                    Table 11  System Media Files, Time

                                                                    Symbol (where applicable)

                                                                    Decimal Value

                                                                    Media File Name

                                                                    Media File Content

                                                                    Data Play Back Types / When Media File Is Used

                                                                       

                                                                    hour

                                                                    hour

                                                                    Etime, 24TOD per locale, TOD per locale

                                                                       

                                                                    hours

                                                                    hours

                                                                    Etime,24TOD per locale,TOD per locale

                                                                       

                                                                    minute

                                                                    minute

                                                                    Etime

                                                                       

                                                                    minutes

                                                                    minutes

                                                                    Etime

                                                                       

                                                                    second

                                                                    second

                                                                    Etime,24TOD

                                                                       

                                                                    seconds

                                                                    seconds

                                                                    Etime,24TOD

                                                                       

                                                                    on

                                                                    on

                                                                    per locale(unused for en-us)

                                                                       

                                                                    at

                                                                    at

                                                                    per locale(unused for en-us)

                                                                       

                                                                    am

                                                                    am

                                                                    TOD

                                                                       

                                                                    pm

                                                                    pm

                                                                    TOD

                                                                       

                                                                    oclock

                                                                    oclock

                                                                    TOD

                                                                    The table that follows lists the System Media File information for currency values.


                                                                    Note


                                                                    The customer’s Media Administrator may prefer to replace the contents of "currency_minus" (for the negative amount) and "currency_and" (the latter can even be changed to contain silence).
                                                                    Table 12  System Media Files, Currency

                                                                    Symbol (where applicable)

                                                                    Decimal Value

                                                                    Media File Name

                                                                    Media File Content

                                                                    Data Play Back Types / When Media File Is Used

                                                                       

                                                                    currency_ minus

                                                                    minus

                                                                    Currency

                                                                       

                                                                    currency_and

                                                                    and

                                                                    Currency

                                                                    $

                                                                    36

                                                                    USD_dollar

                                                                    dollar

                                                                    Currency

                                                                    USD_dollars

                                                                    dollars

                                                                    Currency

                                                                    Note    Unified CVP uses the USD_dollar.wav and USD_dollars.wav media files; the dollar.wav and dollars.wav used by ISN Version 1.0 are no longer installed.

                                                                    $

                                                                    36

                                                                    CAD_dollar

                                                                    dollar

                                                                    Currency

                                                                       

                                                                    CAD_dollars

                                                                    dollars

                                                                    Currency

                                                                       

                                                                    HKD_dollar

                                                                    dollar

                                                                    Currency

                                                                       

                                                                    HKD_dollars

                                                                    dollars

                                                                    Currency

                                                                    ¢

                                                                    162

                                                                    cent

                                                                    cent

                                                                    Currency

                                                                       

                                                                    cents

                                                                    cents

                                                                    Currency

                                                                       

                                                                    euro

                                                                    euro

                                                                    Currency

                                                                    £

                                                                    163

                                                                    GBP_pound

                                                                    pound

                                                                    Currency

                                                                       

                                                                    GBP_pounds

                                                                    pounds

                                                                    Currency

                                                                       

                                                                    penny

                                                                    penny

                                                                    Currency

                                                                       

                                                                    pence

                                                                    pence

                                                                    Currency

                                                                       

                                                                    MXN_peso

                                                                    peso

                                                                    Currency

                                                                       

                                                                    MXN_pesos

                                                                    pesos

                                                                    Currency

                                                                       

                                                                    centavo

                                                                    centavo

                                                                    Currency

                                                                       

                                                                    centavos

                                                                    centavos

                                                                    Currency

                                                                    The table that follows lists the System Media File information for gaps of silence and miscellaneous phrases.

                                                                    Table 13 System Media Files, Silence and Miscellaneous Phrases

                                                                    Symbol (where applicable)

                                                                    Decimal Value

                                                                    Media File Name

                                                                    Media File Content

                                                                    Data Play Back Types / When Media File Is Used

                                                                       

                                                                    silence_.1_ sec

                                                                    (.1 second of silence)

                                                                    Used for pauses where needed

                                                                       

                                                                    silence_.25_ sec

                                                                    (.25 second of silence)

                                                                    Used for pauses where needed

                                                                       

                                                                    silence_.5_ sec

                                                                    (.5 second of silence)

                                                                    Used for pauses where needed

                                                                       

                                                                    silence_1_sec

                                                                    (1 second of silence)

                                                                    Used for pauses where needed

                                                                       

                                                                    and

                                                                    and

                                                                    Etime,TOD,25TOD

                                                                    The table that follows lists the System Media File information for ANSI characters.

                                                                    Table 14  System Media Files, ANSI Characters

                                                                    Symbol (where applicable)

                                                                    Decimal Value

                                                                    Media File Name

                                                                    Media File Content

                                                                    Data Play Back Types / When Media File Is Used

                                                                     

                                                                    32

                                                                    space

                                                                    space

                                                                    Char

                                                                    !

                                                                    33

                                                                    exclamation_ mark

                                                                    exclamation mark

                                                                    Char

                                                                    "

                                                                    34

                                                                    double_ quote

                                                                    double quote

                                                                    Char

                                                                    #

                                                                    35

                                                                    pound

                                                                    pound

                                                                    Char

                                                                    %

                                                                    37

                                                                    percent

                                                                    percent

                                                                    Char

                                                                    &

                                                                    38

                                                                    ampersand

                                                                    ampersand

                                                                    Char

                                                                    '

                                                                    39

                                                                    apostrophe

                                                                    apostrophe

                                                                    Char

                                                                    (

                                                                    40

                                                                    open_ parenthesis

                                                                    open parenthesis

                                                                    Char

                                                                    )

                                                                    41

                                                                    close_ parenthesis

                                                                    close parenthesis

                                                                    Char

                                                                    *

                                                                    42

                                                                    asterisk

                                                                    asterisk

                                                                    Char

                                                                    +

                                                                    43

                                                                    plus

                                                                    plus

                                                                    Char

                                                                    ,

                                                                    44

                                                                    comma

                                                                    comma

                                                                    Char

                                                                    -

                                                                    45

                                                                    hyphen

                                                                    hyphen

                                                                    Char

                                                                    .

                                                                    46

                                                                    period

                                                                    period

                                                                    Char

                                                                    /

                                                                    47

                                                                    slash

                                                                    slash

                                                                    Char

                                                                    :

                                                                    58

                                                                    colon

                                                                    colon

                                                                    Char

                                                                    ;

                                                                    59

                                                                    semicolon

                                                                    semicolon

                                                                    Char

                                                                    <

                                                                    60

                                                                    less_than

                                                                    less than

                                                                    Char

                                                                    =

                                                                    61

                                                                    equal

                                                                    equal

                                                                    Char

                                                                     

                                                                    62

                                                                    greater_than

                                                                    greater than

                                                                    Char

                                                                    ?

                                                                    63

                                                                    question_ mark

                                                                    question mark

                                                                    Char

                                                                    @

                                                                    64

                                                                    at_symbol

                                                                    at

                                                                    Char

                                                                    [

                                                                    91

                                                                    left_square_bracket

                                                                    left square bracket

                                                                    Char

                                                                    \

                                                                    92

                                                                    backslash

                                                                    backslash

                                                                    Char

                                                                    ]

                                                                    93

                                                                    right_square_bracket

                                                                    right square bracket

                                                                    Char

                                                                    ^

                                                                    94

                                                                    caret

                                                                    caret

                                                                    Char

                                                                    _

                                                                    95

                                                                    underscore

                                                                    underscore

                                                                    Char

                                                                    `

                                                                    96

                                                                    single_quote

                                                                    single quote

                                                                    Char

                                                                    {

                                                                    123

                                                                    open_brace

                                                                    open brace

                                                                    Char

                                                                    |

                                                                    124

                                                                    pipe

                                                                    pipe

                                                                    Char

                                                                    }

                                                                    125

                                                                    close_brace

                                                                    close brace

                                                                    Char

                                                                    ~

                                                                    126

                                                                    tilde

                                                                    tilde

                                                                    Char

                                                                    130

                                                                    char_130

                                                                    low single quote

                                                                    Char

                                                                    ƒ

                                                                    131

                                                                    char_131

                                                                    F with hook

                                                                    Char

                                                                    132

                                                                    low double quote

                                                                    low double quote

                                                                    Char

                                                                    133

                                                                    ellipsis

                                                                    ellipsis

                                                                    Char

                                                                    134

                                                                    char_134

                                                                    character 134

                                                                    Char

                                                                    135

                                                                    char_135

                                                                    character 135

                                                                    Char

                                                                    ˆ

                                                                    136

                                                                    char_136

                                                                    character 136

                                                                    Char

                                                                    137

                                                                    per_mille

                                                                    per mile

                                                                    Char

                                                                    Š

                                                                    138

                                                                    char_138

                                                                    character 138

                                                                     

                                                                    <

                                                                    139

                                                                    left_pointing _angle

                                                                    left pointing angle

                                                                    Char

                                                                    145

                                                                    left_single_ quote

                                                                    left single quote

                                                                    Char

                                                                    146

                                                                    right_single_ quote

                                                                    right single quote

                                                                    Char

                                                                    147

                                                                    left_double_ quote

                                                                    left double quote

                                                                    Char

                                                                    148

                                                                    right_double _quote

                                                                    right double quote

                                                                    Char

                                                                    ·

                                                                    149

                                                                    bullet

                                                                    bullet

                                                                    Char

                                                                    150

                                                                    en_dash

                                                                    en dash

                                                                    Char

                                                                    151

                                                                    em_dash

                                                                    em dash

                                                                     

                                                                    ˜

                                                                    152

                                                                    small_tilde

                                                                    small tilde

                                                                    Char

                                                                    153

                                                                    trade_mark

                                                                    trade mark

                                                                    Char

                                                                    š

                                                                    154

                                                                    char_154

                                                                    character 154

                                                                    Char

                                                                    155

                                                                    char_155

                                                                    character 155

                                                                    Char

                                                                    ¡

                                                                    161

                                                                    exclamation_ mark_ inverted

                                                                    inverted exclamation mark

                                                                    Char

                                                                    ¤

                                                                    164

                                                                    char_164

                                                                    character 164

                                                                    Char

                                                                    ¦

                                                                    166

                                                                    broken_pipe

                                                                    broken pipe

                                                                    Char

                                                                    §

                                                                    167

                                                                    section

                                                                    section

                                                                    Char

                                                                    ¨

                                                                    168

                                                                    char_168

                                                                    character 168

                                                                    Char

                                                                    ©

                                                                    169

                                                                    copyright

                                                                    copyright

                                                                    Char

                                                                    ª

                                                                    170

                                                                    char_170

                                                                    character 170

                                                                    Char

                                                                    «

                                                                    171

                                                                    left_double_ angle_ quote

                                                                    left double angle quote

                                                                    Char

                                                                    ¬

                                                                    172

                                                                    not

                                                                    not

                                                                    Char

                                                                    -

                                                                    173

                                                                    char_173

                                                                    character 173

                                                                    Char

                                                                    ®

                                                                    174

                                                                    registered

                                                                    registered

                                                                    Char

                                                                    ¯

                                                                    175

                                                                    char_175

                                                                    character 175

                                                                    Char

                                                                    °

                                                                    176

                                                                    degree

                                                                    degree

                                                                    Char

                                                                    ±

                                                                    177

                                                                    plus_minus

                                                                    plus or minus

                                                                    Char

                                                                    ²

                                                                    178

                                                                    superscript_ 2

                                                                    superscript two

                                                                    Char

                                                                    ³

                                                                    179

                                                                    superscript_ 3

                                                                    superscript three

                                                                    Char

                                                                    ´

                                                                    180

                                                                    acute_accent

                                                                    acute accent

                                                                    Char

                                                                    µ

                                                                    181

                                                                    micro

                                                                    micro

                                                                    Char

                                                                    182

                                                                    paragraph

                                                                    paragraph

                                                                    Char

                                                                    ·

                                                                    183

                                                                    middle_dot

                                                                    middle dot

                                                                    Char

                                                                    ¸

                                                                    184

                                                                    cedilla

                                                                    cedilla

                                                                    Char

                                                                    ¹

                                                                    185

                                                                    superscript_ 1

                                                                    superscript one

                                                                    Char

                                                                    º

                                                                    186

                                                                    char_186

                                                                    character 186

                                                                    Char

                                                                    »

                                                                    187

                                                                    right_double _angle_ quote

                                                                    right double angle quote

                                                                    Char

                                                                    ¿

                                                                    191

                                                                    question_ mark_ inverted

                                                                    inverted question mark

                                                                    Char

                                                                    Play Data Configuration Examples
                                                                    The following table shows several configuration examples for Play Data.

                                                                    Table 15  Play Data configuration examples

                                                                    If the VRU Script Name field setting is…

                                                                    It means…

                                                                    If the Configuration Param field is…

                                                                    It means…

                                                                    PD,Number

                                                                    Note   

                                                                    If you are using integers that are larger than nine digits, enclose the value in quotation marks, so it will be treated as a string.

                                                                    PD - Use the Play Data micro-app.

                                                                    Number - Play back the data as a number.

                                                                    empty

                                                                    Play the data in the default ECC, user.microapp.play_data, as a number.

                                                                    PD, Char

                                                                    pd - Use the Play Data micro-app.

                                                                    Char - Play back the data as individual characters.

                                                                    1

                                                                    1 - Play the data in Call PeripheralVariable 1 as a character.

                                                                    PD,Etime,0

                                                                    Note   

                                                                    If you are using integers that are larger than 9 digits, enclose the value in quotation marks, so it will be treated as a string.

                                                                    PD - Use the Play Data micro-app.

                                                                    Etime - Play back the data as a Time.

                                                                    1,,HHMM

                                                                    1 - Play the data in Call PeripheralVariable 1 as an elapsed time.

                                                                    , - (Skipped parameter) Accept default setting (Y)

                                                                    HHMM - Play the time in HHMM format (for example, 8 hours, 30 minutes).

                                                                    PD,Date

                                                                    PD - Use the Play Data micro-app.

                                                                    Date - Play back the data as a Date.

                                                                    1,N

                                                                    1 - Play the data in Call Variable 1 as a date.

                                                                    N - No barge-in allowed.

                                                                    PD,Currency

                                                                    PD - Use the Play Data micro-app.

                                                                    Currency - Play back the data as a Currency.

                                                                    4,N

                                                                    4 - Play the data in Call Variable 4 s currency.

                                                                    N - No barge-in allowed.


                                                                    Note


                                                                    Play Data sets the ECC variable user.microapp.error_code to zero, indicating success, if control proceeds out the Checkmark (success) branch of the Run External Script node. If control proceeds out the X (failure) branch, Play Data typically sets this variable to one of the codes listed in Unified CVP Script Error Checking.


                                                                    Get Digits Micro-Application

                                                                    The Get Digits (GD) micro-application plays a media file and retrieves digits. For example, you could use Get Digits in an application that prompts a caller to enter a password.

                                                                    Unified Customer Voice Portal passes the retrieved digits back to Packaged CCE for further processing using the Caller-Entered Digits (CED) field in the CCE/CVP Messaging interface. (This is available in the Packaged CCE script through the variable Call.CallerEnteredDigits).

                                                                    Configure Network VRU Script Settings for Get Digits Micro-Application

                                                                    Use the Packaged CCE Administration’s Network VRU Script tool to specify parameters.

                                                                    Procedure
                                                                      Step 1   Configure VRU Script field parameters:
                                                                      • Micro-application type. For Get Digits, valid options are: GD or gd.
                                                                      • Media File Name. Name of the media file to be played (that is, the prompt file). The valid options are:
                                                                        • A file name (for instance, a .wav file).
                                                                          Note   

                                                                          The file name is case-sensitive.

                                                                        • null - (default) If this field is empty, no prompt is played.
                                                                        • -(number 1-10) - Unified CVP plays the file in the corresponding Call.PeripheralVariable file. For example, entering -2 causes Unified CVP to look at Call.PeripheralVariable2.
                                                                      • Media Library Type . Flag indicating the location of the media files to be played. The valid options are:
                                                                        • A - (default) Application
                                                                        • S - System
                                                                      • Uniqueness value. Optional. A string identifying a VRU Script Name as unique.
                                                                      Step 2   Configure the Configuration Param field parameters:
                                                                      • Minimum Field Length. Minimum number of digits expected from the caller. The valid options are: 1-32 (the default is 1)
                                                                      • Maximum Field Length. Maximum number of digits expected from the caller. The valid options are: 1-32 (the default is 1).
                                                                        Note   

                                                                        For information about Maximum Field Length and the DTMF Termination Key, see Get Digits and Digit Entry Completion.

                                                                      • Barge-in Allowed . Specifies whether barge-in (digit entry to interrupt media playback) is allowed. The valid options are:
                                                                        • Y - (default) barge-in allowed
                                                                        • N - barge-in not allowed
                                                                        For more information about barge-in, see How Unified CVP Handles Barge-In.
                                                                        Note   

                                                                        Unified CVP deals with barge-in as follows: If barge-in is not allowed, the SIP/Gateway continues prompt play when a caller starts entering digits. If barge-in is allowed, the Gateway discontinues prompt play when the caller starts entering digits. See Get Speech and External VoiceXML.

                                                                      • Inter-digit Timeout . The number of seconds the caller is allowed between entering digits. If exceeded, the system times-out. The valid options are: 1-99 (the default is 3).
                                                                      • No Entry Timeout . The number of seconds a caller is allowed to begin entering digits. If exceeded, the system times-out. The valid options are: 0-99 (the default is 5).
                                                                      • Number of No Entry Tries. Unified CVP repeats the "Get Digits" cycle when the caller does not enter any data after the prompt has been played. (Total includes the first cycle.) The valid options are: 1-9 (the default is 3).
                                                                      • Number of Invalid Tries. Unified CVP repeats the "Get digits" cycle when the caller enters invalid data (total includes the first cycle). The valid options are: 1-9 (default is 3).
                                                                      • Timeout Message Override . The valid options are:
                                                                        • Y - override the system default with a pre-recorded Application Media Library file
                                                                        • N - (default) do not override the system default
                                                                      • Invalid Entry Message Override. The valid options are:
                                                                        • Y - override the system default with a pre-recorded Application Media Library file.
                                                                        • N - (default) do not override the system default
                                                                        Note   

                                                                        For more information about Timeout and Invalid Entry Messages, see System Media Files.

                                                                      • DTMF Termination Key. A single character that, when entered by the caller, indicates that the digit entry is complete. The valid options are:
                                                                        • 0-9
                                                                        • * (asterisk)
                                                                        • # (pound sign, the default)
                                                                        • N (No termination key)
                                                                        Note   

                                                                        For information about Maximum Field Length and the DTMF Termination Key, see Get Digits and Digit Entry Completion.

                                                                      • Incomplete Timeout. The amount of time after a caller stops speaking to generate an invalid entry error because the caller input does not match the defined grammar. The valid options are: 0-99 (the default is 3).
                                                                        Note   

                                                                        If the value is set to 0, the CVP Service treats the NoEntry Timeout as NoError.


                                                                      Get Digits Configuration Examples
                                                                      The following table shows several configuration examples for Get Digits for an application that prompts using .wav files and retrieves input through DTMF.

                                                                      Table 16  Get Digits configuration examples for .wav files

                                                                      If the VRU Script Name field setting is…

                                                                      It means…

                                                                      If the Configuration Param field setting is…

                                                                      It means…

                                                                      GD,Password,A,0

                                                                      GD - Use the Get Digits micro-app.

                                                                      Password - Play the Media file named "Password.wav."

                                                                      A - Application Media Library.

                                                                      0 - Uniqueness value.

                                                                      6,12

                                                                      6 - Minimum field length

                                                                      12 - Maximum field length

                                                                      Accept defaults for all other settings.

                                                                      GD,Password,A,1

                                                                      gd - Use the Get Digits micro-app.

                                                                      Password - Play the Media file named "Password.wav."

                                                                      A - Application Media Library.

                                                                      1 - Uniqueness value.

                                                                      6,12,N,3,5,2,2,N,Y,#

                                                                      6 - Minimum field length

                                                                      12 - Maximum field length

                                                                      N - No barge-in allowed

                                                                      3 - Inter-digit Timeout (seconds)

                                                                      5 - No Entry Timeout (seconds)

                                                                      2 - Number of no entry tries

                                                                      2 - Number of invalid tries

                                                                      N - Timeout Msg Override

                                                                      Y - Invalid Entry Msg Override

                                                                      # - DTMF Termination key

                                                                      Note    The two examples above both play the Password.wav file ("Please enter your password followed by the pound sign.") and collect digits. They differ in that the first example accepts most of the default settings available through the Configuration Param field; the second field does not.

                                                                      GD,ssn

                                                                      GD - Use the Get Digits micro-app.

                                                                      ssn - Play the Media file named "ssn.wav."

                                                                      9,9,

                                                                      9 - Minimum field length

                                                                      9 - Maximum field length

                                                                      Accept defaults for all other settings.

                                                                      Note    Type-ahead can only be used with the Get Digits micro-application when user.microapp.input_type is set to D. See Get Speech and External VoiceXML.

                                                                      GD, -4, S

                                                                      gd - Use the Get Digits micro-app

                                                                      -4 - Calls the file specified in Call.PeripheralVariable4

                                                                      S - Acquires the file from the System media library

                                                                      6,12,

                                                                      6 - Minimum field length

                                                                      12 - Maximum field length

                                                                      Accept defaults for all other settings

                                                                      Get Speech and External Voice XML

                                                                      You can use the Get Speech micro-application to pass information to and from an external VoiceXML file. The following table describes how to set the Get Speech script to use external VoiceXML.

                                                                      To set up the Get Speech micro-application to use external VoiceXML, set the Media Library Type to "V". The CVP Service creates VoiceXML that calls the external VoiceXML that is specified in the external VoiceXML file name. The URL to the external VoiceXML is formed from a combination of the media_server, locale, App_Media_Lib and external VoiceXML file name. If the VoiceXML file name does not contain a file extension, the default "*.VoiceXML" is used.

                                                                      If the external VoiceXML is used, the only GetSpeech VRU Script parameters that are used are:

                                                                      • "Number of Invalid Entry" errors, and
                                                                      • "Number of No Entry" errors.

                                                                      The CVP Service "NoEntry" and "InvalidEntry" retry logic are used if the external VoiceXML returns a <noinput> or <nomatch> event.

                                                                      Error handling
                                                                      Error handling

                                                                      The error handling for an external VoiceXML called from the Get Speech micro-application includes the following:

                                                                      • If you set the "Media Library Type" to "V" and you do not set an "External VoiceXML Name" parameter, an "Invalid VRU Script Name" error is returned to Packaged CCE .
                                                                      Get Digits and Digit Entry Completion

                                                                      Unified CVP tests GD digit entry input against several conditions to determine whether digit entry is complete.

                                                                      Unified CVP considers digit entry to be complete if the caller enters any of the following:

                                                                      • The maximum allowable number of digits (when terminator key is not used).
                                                                      • The maximum number of digits, excluding a terminator key.
                                                                      • Less than the maximum number of digits, followed by the terminator key.
                                                                      • Less than the maximum number of digits and exceeding the inter-digit timeout.
                                                                      • Nothing and reaching the no entry timeout.

                                                                      Caution


                                                                      It is important that you set up your Packaged CCE script to test for all the scenarios mentioned below.
                                                                      If Digit Entry Input is Complete

                                                                      After digit-entry input is complete, Unified CVP validates the digit string to determine if it is >= (greater than or equal to) the minimum length and <= (less than or equal to) the maximum length.

                                                                      In variable-length data entry, the Maximum Field Length value does not accommodate the termination key. For example, if a GD micro-application is configured to accept a password that is between 6 and 12 digits long and digit-entry completion is indicated through a termination key (or a timeout), the Minimum Field Length setting would be 6, the Maximum Field Length setting would be 12, and the DTMF Termination Key is defined as a single character.

                                                                      Before passing the result back to the CVP Service, SIP Service discards the termination key (only the password digits are included in the CED returned to Packaged CCE ).


                                                                      Note


                                                                      In this example, if the 13th digit is entered without reaching the interdigit timeout and the 13th digit is not the terminator key, the extra digits are buffered by the gateway VXML browser and will be consumed by the next digit collecting node (for example: GD or Menu micro-app).

                                                                      This type-ahead behavior is described online in the Type-ahead Support section of the Cisco VoiceXML Programmer’s Guide.

                                                                      After validating the digit string, Unified CVP does the following:

                                                                      • If the string is valid, Unified CVP stores the digit string (not including the terminator key) in the Call.CallerEnteredDigits variable, exits the node through the Checkmark (success) branch, and returns control to Packaged CCE software.
                                                                      • If the string is not valid, Unified CVP considers it an invalid entry and does the following:
                                                                        • If the Number of Invalid Entry Tries value is not reached, Unified CVP plays an error message and re-plays the original prompt.
                                                                        • If the Number of Invalid Entry Tries value is reached, Unified CVP stores the last-entered digit string in the Call.CallerEnteredDigits variable, exits the node through the X (failure) branch, sets the user.microapp.error_code ECC variable to 16 (Reached Maximum Invalid Tries), and returns control to Packaged CCE .
                                                                      If No Entry Timeout Occurs

                                                                      If the caller does not enter input and No Entry Timeout period is exceeded, the following happens:

                                                                      • If the Number of No Entry Tries value has not been reached, Unified CVP plays the "no entry" error message and re-plays the original prompt.
                                                                      • If the Number of No Entry Tries value has been reached, Unified CVP exits the node through the X (failure) branch, sets the Call.CallerEnteredDigits variable to NULL, the user.microapp.error_code ECC variable to 17 (Reached Maximum No Entry Tries), and returns control to Packaged CCE .

                                                                      Menu Micro-Application

                                                                      This micro-application plays a menu media file and retrieves a defined digit. (Menu is similar to the Get Digit micro-application except that it only accepts one digit, which it checks for validity.)

                                                                      Unified CVP passes the retrieved digit back to Packaged CCE for further processing using the Caller-Entered Digits (CED) field in the Packaged CCE / CVP Messaging interface.

                                                                      Configure Network VRU Script Settings for the Menu Micro-Application

                                                                      Use the Packaged CCE Administration Network VRU Script tool to specify parameters.

                                                                      Procedure
                                                                        Step 1   Configure VRU Script field parameters:
                                                                        • Micro-application type . For Menu, valid options are: M or m.
                                                                        • Media File Name. Name of the media file to be played (that is, the prompt file). The valid options are
                                                                          • A file name (for instance, a .wav file)
                                                                            Note    The file name is case-sensitive.
                                                                          • null - (default) If this field is empty, Unified CVP examines the contents of the user.microapp.inline_tts ECC variable. If this ECC variable contains a value, Unified CVP prompts using TTS. If the ECC is empty, no prompt is played.
                                                                          • -(number 1-10) - Unified CVP plays the file in the corresponding Call.PeripheralVariable file. For example, entering -2 causes Unified CVP to look at Call.PeripheralVariable2.
                                                                        • Media Library Type . Flag indicating the location of the media files to be played. The valid options are:
                                                                          • A - (default) Application
                                                                          • S - System
                                                                        • Uniqueness value. Optional. A string identifying a VRU Script Name as unique.
                                                                        Step 2   Configure the Configuration Param field parameters:
                                                                        • A list of menu choices . The valid options are:
                                                                          • 0-9
                                                                          • * (asterisk)
                                                                          • # (pound sign)
                                                                          Formats allowed include:
                                                                          • Individual options delimited by a / (forward slash)
                                                                          • Ranges delimited by a - (hyphen) with no space
                                                                        • Barge-in Allowed . Specifies whether barge-in (digit entry to interrupt media playback) is allowed. The valid options are:
                                                                          • Y - (default) barge-in allowed
                                                                          • N - barge-in not allowed
                                                                          For more information about barge-in, see How Unified CVP Handles Barge-In.
                                                                        • No Entry Timeout . The number of seconds a caller is allowed to begin entering digits. If exceeded, the system times-out. The valid options are: 0-99 (the default is 5).
                                                                        • Number of No Entry Tries. Unified CVP repeats the "Menu" cycle when the caller does not enter any data after the prompt has been played. (Total includes the first cycle.) The valid options are: 1-9 (the default is 3).
                                                                        • Number of Invalid Tries . Unified CVP repeats the prompt cycle when the caller enters invalid data. (Total includes the first cycle.) The valid options are: 1-9 (the default is 3).
                                                                        • Timeout Message Override. The valid options are:
                                                                          • Y - override the system default with a pre-recorded Application Media Library file
                                                                          • N - (default) do not override the system default
                                                                        • Invalid Entry Message Override . The valid options are:
                                                                          • Y - override the system default with a pre-recorded Application Media Library file
                                                                          • N - (default) do not override the system default
                                                                          Note    For more information about Timeout and Invalid Entry Messages, refer to "System Media Files."

                                                                        Menu Configuration Examples

                                                                        The following table shows several configuration examples for Menu for use in an application where input type is DTMF.

                                                                        Table 17  Menu Configuration Example - DTMF Application

                                                                        If the VRU Script Name field setting is…

                                                                        It means...

                                                                        If the Config Param setting is...

                                                                        It means...

                                                                        M,Banking

                                                                        M - Use the Menu micro-app.

                                                                        Banking - Play the Media file named "Banking.wav."

                                                                        Note    This file may contain a message such as: "For Checking, press 1. For Savings, press 2. For Money Market, press 3."

                                                                        1-3

                                                                        1-3 - Accept numbers 1, 2, 3. Accept all other defaults (No Entry Timeout, Number of no entry tries, Number of invalid tries, Timeout Msg Override, Invalid Entry Msg Override).

                                                                        M,Main_Menu

                                                                        M - Use the Menu micro-app.

                                                                        Main_Menu - Play the Media file called "Main_Menu.wav."

                                                                        Note    This file may contain a message such as: "For information or transactions on checking, press 1. For savings or club accounts, press 2. For other information, press 0. If you know your party’s extension, press 9."

                                                                        0-2/9,,4,2,2

                                                                        0-2/9 - Accept numbers 0, 1, 2, and 9.

                                                                        , (Skipped parameter) - Accept the default barge-in setting (Y).

                                                                        4 - No Entry Timeout value (in seconds).

                                                                        2 - Number of no entry tries allowed.

                                                                        2 - Number of invalid tries allowed.

                                                                        Accept all other defaults (Timeout Msg Override, Invalid Entry Msg Override).

                                                                        M,-2,S

                                                                        M - Use the Menu micro-app.

                                                                        -2 - Plays the file specified in Call.PeripheralVariable2.

                                                                        S - Acquires the file from the System media library.

                                                                        1-3

                                                                        1-3 - Accept numbers 1, 2, 3. Accept all other defaults (No Entry Timeout, Number of no entry tries, Number of invalid tries, Timeout Msg Override, Invalid Entry Msg Override).


                                                                        Note


                                                                        Menu sets the ECC variable user.microapp.error_code to zero, indicating success, if control proceeds out the Checkmark (success) branch of the Run External Script node. If control proceeds out the X (failure) branch, Menu typically sets this variable to one of the codes listed in Unified CVP Script Error Checking.
                                                                        Menu and Digit Entry Completion

                                                                        Unified CVP tests Menu digit entry input against two conditions to determine whether digit entry is complete:

                                                                        • If a caller enters a digit, Unified CVP checks whether the digit is within the set of valid digits for this menu.
                                                                        • If a caller does not enter a digit, Unified CVP checks whether the No Entry Timeout value has been reached.

                                                                        Caution


                                                                        It is important that you set up your Packaged CCE script to test for all the scenarios mentioned below.
                                                                        Digit Entry Completion

                                                                        After a caller enters a digit, Unified CVP validates the digit against the list of valid menu options that were defined through CCE Configuration Manager. Then Unified CVP does the following:

                                                                        • If the digit is valid, Unified CVP stores the digit in the Call.CallerEnteredDigits variable, exits the node through the Checkmark (success) branch, and returns control to Packaged CCE .
                                                                        • If the digit is not valid, Unified CVP considers it an invalid entry and does the following:
                                                                          • If the Number of Invalid Entry Tries value has not been reached, Unified CVP plays the "invalid message" file and re-plays the menu prompt.
                                                                          • If the Number of Invalid Entry Tries value has been reached, Unified CVP stores the last-entered invalid digit in the user.microapp.caller_input variable, exits the node through the X (failure) branch, sets the user.microapp.error_code ECC variable to 16 (Reached Maximum Invalid Tries), and returns control to Packaged CCE .
                                                                        If No Entry Timeout Occurs

                                                                        If the caller does not enter a digit within the No Entry Timeout period:

                                                                        • If the Number of No Entry Tries value is reached, Unified CVP plays the "no entry" error message and re-plays the menu prompt.
                                                                        • If the Number of No Entry Tries value has been reached, Unified CVP exits the node through the X (failure) branch, sets the Call.CallerEnteredDigits variable to NULL, the user.microapp.error_code ECC variable to 17 (Reached Maximum No Entry Tries), and returns control to Packaged CCE .

                                                                        Get Speech Micro-Application

                                                                        The Get Speech (GS) micro-application is used to execute a Call Studio script on VXML Server.

                                                                        Configure Network VRU Script Settings for the Get Speech Micro-Application

                                                                        Use the Packaged CCE Administration’s Network VRU Script tool to specify parameters.


                                                                        Note


                                                                        By default a pre-configured network VRU script called VXML_Server has already been configured in Packaged CCE. This should be used in all Run External Script nodes that intend to execute a Call Studio script. When using an optional feature like Courtesy Callback, you must configure additional GS network VRU scripts.


                                                                        Procedure
                                                                          Step 1   Configure VRU Script field parameters:
                                                                          • Micro-application type. For Get Speech, valid options are: GS or gs.
                                                                          • Media File Name. Only the value Server is supported for this field for GS.
                                                                          • Media Library Type. Only the value V is supported for this field for GS.
                                                                          • Uniqueness value. Optional. A string identifying a VRU script name as unique.
                                                                          Step 2   Configure the Configuration Param field parameters:
                                                                          Note    Configuration parameters 1-10 are only for non-Packaged CCE deployments with CVP where GS is supported with external VXML. Only the Pass FTP Information parameter (parameter 11) is configurable when using the Agent Greeting recording feature.
                                                                          • Pass FTP Information Specifies whether to pass FTP server information to the VXML Server. This option is only useful if the VXML Server application uses the FTP_Client Element and the FTP server information is already configured using the Operations Console. Valid options are:
                                                                            • Y - Pass FTP server information to the VXML Server as VXML Server session variables.
                                                                            • N - (default) Do not pass FTP server information.
                                                                            If the Pass FTP Information parameter is set, the following information is passed:
                                                                            • ftpServer - A space separated string of FTP servers. For example, ftp_host1|21|username|password ftp_host2. Everything is optional except the host name. See FTP_Client Element settings located in the Elements Specifications for Cisco Unified CVP VXML Server and Cisco Unified Call Studio guide for more information.
                                                                            • ftpPath - A path on the FTP server. By default, this path is formed from the content of the ECC variable user.microapp.locale concatenated with path separator (/) and the content of the ECC variable user.microapp.app_media_lib. One exception is if the value of user.microapp.app_media_lib is .., then app is used instead. An example of a path is: en-us/app

                                                                          Passing Information to the Call Studio Scripts Executing on VXML Server

                                                                          You can pass up to 1050 characters to the Call Studio scripts executing on VXML server by using an ECC Variable array.

                                                                          Table 18  To External VoiceXML ECC Variable Array

                                                                          ECC Variable Name

                                                                          Type

                                                                          Max. Number of Elements

                                                                          Max. Size of Each Element

                                                                          user.microapp.ToExtVXML

                                                                          Array

                                                                          5

                                                                          210

                                                                          This variable array contains a list of semicolon delimited name/value pairs. The following is an example of the syntax:

                                                                          Table 19 Sample Array Definition

                                                                          Variable Name

                                                                          Values

                                                                          user.microapp.ToExtVXML[0]

                                                                          "Company=Cisco;Job=technical writer"

                                                                          user.microapp.ToExtVXML[1]

                                                                          "Location=Boxborough;Street=Main"

                                                                          user.microapp.ToExtVXML[2]

                                                                          "FirstName=Gerrard;LastName=Thock"

                                                                          user.microapp.ToExtVXML[3]

                                                                          "Commute=1hour;Car=Isuzu"

                                                                          Unified CVP sends each name/value pair as a session variable on the call to VXML server (for example, a session variable named Company with a value of Cisco). The session variables are accessible in the Call Studio scripts.

                                                                          Passing Data Back to Packaged CCE from the VXML Server

                                                                          Unified CVP can return 840 characters from the VXML server.

                                                                          The following ECC Variable array is added:

                                                                          Table 20  From External VoiceXML ECC Variable Array

                                                                          ECC Variable Name

                                                                          Type

                                                                          Max. Number of Elements

                                                                          Max. Size of Each Element

                                                                          user.microapp.FromExtVXML

                                                                          Array

                                                                          4

                                                                          210

                                                                          The Get Speech micro-app returns up to 840 characters by populating the user.microapp.caller_input variable and each element of the user.microapp.FromExtVXML array.


                                                                          Note


                                                                          By default user.microapp.FromExtVXML ECC variable is pre-defined for Packaged CCE but not enabled. You can use the pre-defined ECC variable or update the length based on your needs.

                                                                          Scripting for Unified CVP with Call Studio

                                                                          You can use Call Studio to build sophisticated CVP applications which can then be loaded onto a VXML Server machine for execution.

                                                                          To invoke a VXML Server application, create a Packaged CCE routing script that

                                                                          • Includes a user.microapp.ToExtVXML[0] ECC variable instructing the VoiceXML Gateway to interact with the VXML Server directly to execute the application
                                                                          • Instructs the application to pass back results to Packaged CCE

                                                                          This section describes

                                                                          • Call Studio and how to use it to pass data to Packaged CCE
                                                                          • How to integrate Call Studio scripts with Packaged CCE scripts
                                                                          • How to deploy Call Studio Scripts in Unified CVP

                                                                          About Call Studio

                                                                          Call Studio is an Eclipse-based service creation environment whose output is an intermediary file which describes the application flow.

                                                                          Among its many features, the Call Studio scripting environment

                                                                          • Has a drag-and-drop interface with a palette of CVP functions
                                                                          • Can perform database queries
                                                                          • Can be extended with Java code written to perform any task a Java application can perform

                                                                          The following figure shows a Call Studio application that can be used with the Unified CVP Standalone with Packaged CCE Lookup call flow model. See Configuration Overview.

                                                                          Figure 60. Call Studio Application Used with Unified CVP Standalone



                                                                          High-Level Configuration Instructions

                                                                          This chapter presents a set of high-level instructions for configuring many of the Unified CVP call flow models (deployment models).

                                                                          Each set of call flow model instructions contains:

                                                                          • A brief overview of that call flow model
                                                                          • High-level instructions for configuring the components in that call flow model
                                                                          • References to detailed instructions (elsewhere in this guide, in online help, or in other documents) for performing each high-level task

                                                                          This chapter also includes information, or pointers to information, for configuring the Gateway, Packaged CCE VRU handling and Unified CVP Call Server (including the SIP Service, Packaged CCE service, and CVP Service).

                                                                          Call Studio ReqICMLabel Element to Pass Data

                                                                          The ReqICMLabel element allows a Call Studio script to pass caller input, Call Peripheral variables, and Expanded Call Context (ECC) variables to a Packaged CCE script. The ReqICMLabel must be inserted into a Call Studio script as a decision element. In Call Studio, the returned Packaged CCE label result can be used by other elements in the same application, such as the Transfer or Audio element. The Transfer element sends instructions to the IOS Voice Browser to transfer the caller to the desired location.

                                                                          After the ReqICMLabel exits its path, you can retrieve the values set by the Packaged CCE script by selecting the Element Data tab for the ReqICMLabel element. The element data value is {Data.Element.ReqICMLabelElement.result}. ReqICMLabelElement is the name of the ReqICMLabel element in the Call Studio script. The default name for this element is ReqICMLabel_<n>. For example, if you changed ReqICMLabel to GetICMLabel, the value returned from Packaged CCE is {Data.Element.GetICMLabel.result}, where result is the variable of the ReqICMLabel element that contains the Packaged CCE label.

                                                                          Table 21 Settings

                                                                          Name (Label)

                                                                          Type

                                                                          Required

                                                                          Single Setting Value

                                                                          Substitution Allowed

                                                                          Default

                                                                          Notes

                                                                          Call Peripheral Variables 1 - 10 (callvar1 - callvar10)

                                                                          String

                                                                          No

                                                                          Yes

                                                                          Yes

                                                                           

                                                                          Call Peripheral variables passed by the Call Studio script to thePackaged CCE server. This setting can be a maximum of 40 characters. The Packaged CCE server returns a name-value pair for up to 10 Call Peripheral Variables in a result. Any value that is placed in callvar<n> from a Call Studio script is returned unchanged, if the Packaged CCE script does not change it.

                                                                          Call Peripheral Variables Return 1 - 10 (callvarReturn1 - callvarReturn10)

                                                                          String

                                                                          No

                                                                          Yes

                                                                          Yes

                                                                           

                                                                          Call Peripheral variables created upon the return of the Packaged CCE Label request, regardless of whether or not these variables are filled by the Packaged CCE script. You need two sets of these variables to keep reporting to the Packaged CCE Call Peripheral Variables separate from what is returned from Packaged CCE .

                                                                          FromExtVXML0 - 3 (External VXML 0 - External VXML 3)

                                                                          String Array

                                                                          No

                                                                          Yes

                                                                          Yes

                                                                           

                                                                          External Call Context (ECC) variables passed by the Call Studio script to the Packaged CCE Packaged CCE server. Each variable is a string of name-value pairs, separated by semicolons, for up to four external VoiceXML variables. This setting can be a maximum of 210 characters.

                                                                          ToExtVXML0 - 4 (External VXML 0 - External VXML 4)

                                                                          String Array

                                                                          No

                                                                          Yes

                                                                          Yes

                                                                           

                                                                          External Call Context (ECC) variables received from the Packaged CCE script. The Packaged CCE erver returns a string of name-value pairs, separated by semicolons, for up to five external VoiceXML variables.

                                                                          Timeout

                                                                          Integer

                                                                          Yes

                                                                          Yes

                                                                          Yes

                                                                          3000 (ms)

                                                                          The number of milliseconds that the transfer request waits for a response from the Packaged CCE server before timing out.

                                                                          Note    This value is increased or decreased by increments of 500 ms.

                                                                          caller_input (Caller Input)

                                                                          String

                                                                          No

                                                                          Yes

                                                                          Yes

                                                                           

                                                                          This setting can be a maximum of 210 characters. The caller_input is only passed to Packaged CCE from Call Studio.

                                                                          Table 22 Element Data

                                                                          Name

                                                                          Type

                                                                          Notes

                                                                          result

                                                                          String

                                                                          Packaged CCE label returned from a Packaged CCE server. You can use this result as input to other Call Studio elements, such as Transfer or Audio. The element data value is {Data.Element.ReqICMLabelElement.result}.

                                                                          callvar<n>

                                                                          String

                                                                          Call Peripheral variables that the Call Studio scripts passes to the Packaged CCE server. Valid Call Peripheral Variables are callvar1 - callvar10.

                                                                          callvarReturn<n>

                                                                          String

                                                                          Call Peripheral variables that the Packaged CCE script returns to the VXML Server. Valid Call Peripheral Variables are callvarReturn1 - callvarReturn10.

                                                                          For example, if a Packaged CCE script contains Call Peripheral variable 3 with the string value "CompanyName=Cisco Systems, Inc", you can access the value of CompanyName that is returned by the Packaged CCE script by using

                                                                          Data.Element.ReqICMLabelElement.callvarReturn3

                                                                          The returned value is "Cisco Systems, Inc."

                                                                          Table 23 Session Data

                                                                          Name

                                                                          Type

                                                                          Notes

                                                                          name

                                                                          String

                                                                          Value for a name-value pair contained in a ToExtVXML variable returned in the Packaged CCE label. You must know which name-value pairs are set in the Packaged CCE script to retrieve the correct value from the Call Studio script.

                                                                          For example, if a Packaged CCE script contains a user.microapp.ToExtVXML0 variable with the string value "CustomerName=Mantle", specify Data.Session.CustomerName. If the same Packaged CCE script contains a user.microapp.ToExtVXML0 variable with the string value "BusinessType=Manufacturing", you can access the customer business type returned by the Packaged CCE script by using Data.Session.BusinessType.

                                                                          Table 24 Exit States

                                                                          Name

                                                                          Notes

                                                                          done

                                                                          The element execution is complete and the value is successfully retrieved.

                                                                          error

                                                                          The element failed to retrieve the value.

                                                                          Studio Element Folder is "Cisco."

                                                                          Integrate Call Studio Scripts with Unified CCE Scripts - Traditional Method

                                                                          This section describes how to integrate the VXML Server into the Unified CVP solution in the traditional way. This process involves

                                                                          • Creating a Unified CCE script with ECC variables configured for VXML Server
                                                                          • Creating a VRU Script to run in the Packaged CCE script
                                                                          Integrate Call Studio Scripts with Packaged CCE Scripts

                                                                          The following steps describe how to integrate Call Studio scripts with Packaged CCE :

                                                                          Procedure
                                                                            Step 1   Set the user.microapp.ToExtVXML[0] ECC variable to application=HelloWorld.
                                                                            Note    This example indicates that the VXML Server executes the "HelloWorld" application. To execute a different application, change the value of user.microapp.ToExtVXML[0] accordingly.
                                                                            Step 2   Create a Run External Script node within the Packaged CCE script with a VRU Script Name value of GS,Server,V.
                                                                            • Configure the timeout setting in the Network VRU Script to a value greater than the timeout value in the VXML Server application. (This timeout is only used for recovery from a failed VXML Server.)
                                                                            • Always leave the Interruptible checkbox in the Network VRU Script Attributes checked. Otherwise, calls queued to a VXML Server application may stay in the queue when an agent becomes available.
                                                                            Step 3   After you configure the Packaged CCE script, configure a corresponding VXML Server script with Call Studio. The VXML Server script must
                                                                            • Begin with a Unified CVP Subdialog_Start element (immediately after the Call Start element)
                                                                            • Contain a Unified CVP Subdialog_Return element on all return points (script must end with a Subdialog_Return element)
                                                                            • Must include a value for the call input for the Unified CVP Subdialog_Return element
                                                                            • Must add Data Feed/SNMP loggers to enable reporting

                                                                            Outbound Option Scripting

                                                                            Outbound Option uses Packaged CCE Enterprise scripting configured on the Administrative Workstation to manage campaigns.

                                                                            There are two types of scripts:

                                                                            Outbound Option Administrative Scripts

                                                                            Outbound Option administrative scripts enable, disable, or throttle campaign skill groups for outbound campaigns. The scripts can also automatically close out a skill group for a specific campaign based on time or any other conditional factor that the admin script can access. This scripting is performed at the skill group level to provide more flexibility when managing larger campaigns that are distributed across multiple skill groups.

                                                                            Enable a campaign skill group by setting the campaign mode to one of the available modes: Preview, Direct Preview, Progressive or Predictive. (For more information about these modes, refer to this section: Dialing Modes.) Schedule an administrative script to run at regular intervals. Disable the campaign skill group by the administrative script, using a script node to change the campaign mode to inbound for that skill group.

                                                                            This script also provides the ability to control the percentage of agents to be used in a campaign skill group and whether this skill group is used for other campaigns or inbound calls.


                                                                            Note


                                                                            An administrative script controls a campaign skill group. A campaign skill group can be mapped only to one campaign at a time. A skill group can be reused if new campaigns are added. If a campaign skill group is recycled, its administrative scripting should be reused as well. However, note that although it is possible to have two administrative scripts controlling the same skill group, conflicting campaign mode requests for Outbound Option can result.
                                                                            Outbound Option Agent Routing Scripts

                                                                            Two types of routing scripts are described later in this document. One is for Agent Campaign and one is for IVR Campaign. For instructions on creating them, refer to Set Up Routing Scripts.

                                                                            Call Type Reporting and Outbound Option Campaigns

                                                                            The call type is an Unified Contact Center concept that maps a route point dialed number to a routing script. It is also a very useful reporting object for the enterprise to describe all calls that traversed a specific routing script. The call type mostly applies to inbound traffic in the call center because the dialer does not use the routing script when placing outbound calls. However, Outbound Option does use routing scripts to reserve agents and to transfer calls to the Unified CVP, so that it can provide some insight into how calls are being routed.

                                                                            Because Outbound Option uses a routing script to reserve agents, the Call Type real-time and half-hour reports contain data for Outbound Option reservation calls. It is important to note that this call type data pertains only to reservation calls and does not include reporting information for any outbound calls. To eliminate any confusion regarding Call Type reporting, create a separate call type for Outbound Option routing scripts.

                                                                            Call Studio Scripts in Unified CVP

                                                                            Call Studio scripts can be deployed in one of the following ways:

                                                                            • In Call Studio, create and deploy the Call Studio scripts to the local machine using the Archive option.
                                                                            • In Call Studio, use the Deploy Remotely option to deploy the scripts to an FTP Server.
                                                                            • In the Operations Console, upload the archived Call Studio script file from the local machine to the Operations Server and deploy it to other VXML Server machines.
                                                                            Deploy Call Studio Scripts Using Call Studio
                                                                            Procedure
                                                                              Step 1   Create or modify one or more VoiceXML application scripts.
                                                                              Step 2   Use Call Studio to set up the loggers using the ActivityLogger, ErrorLogger, and Admin Logger tools. Set up the Unified CVP Datafeed logger for each application.
                                                                              Note    Call Studio also includes CVPDatafeedLogger and CVPSNMPLogger. Call Studio lets you change other parameters for these loggers, such as log file size, log lever, et cetera.

                                                                              See the Call Studio documentation for more information.

                                                                              Step 3   Deploy one or more VoiceXML application scripts to the local machine using the archive option. The archived scripts are saved as a zipped file under a user-specified directory, for example:

                                                                              C:\Program Files\Cisco\CallStudio

                                                                              Note    The sample folder is C:\Cisco\CallStudio, which is also the default folder.

                                                                              Deploy Call Studio Scripts Using the Operations Console
                                                                              Procedure
                                                                                Step 1   From the web browser, enter the following URL:

                                                                                https://ServerIP:9443/oamp or http://ServerIP:9000/oamp

                                                                                Step 2   Enter your user ID in the User Name field.
                                                                                Note    The first time you log in after installing Unified CVP, enter Administrator, the default user account.
                                                                                Step 3   In the Password field, enter your password, as follows:
                                                                                • If you are logging in to the default Administrator account, enter the password that was set for this account during installation.
                                                                                • If the user ID or password is invalid, the Operations server displays the message, "Invalid Username or password." Click the link, enter your user ID and password again, and click OK.

                                                                                The Operations Console Welcome window appears.

                                                                                Step 4   Select Bulk Administration > File Transfer > Scripts and Media.
                                                                                Step 5   From the Device Association drop-down menu, select Gateway.
                                                                                Step 6   In the Available pane, select one or more archived script files to deploy.
                                                                                Step 7   Click the arrow icon to move the file from Available to Selected.
                                                                                Step 8   Click Transfer to transfer the selected archived scripts file(s) to the selected device.