Cisco Packaged Contact Center Enterprise Administration and Configuration Guide, Release 10.0(1)
Scripting with Packaged CCE
Downloads: This chapterpdf (PDF - 3.87MB) The complete bookPDF (PDF - 6.34MB) | The complete bookePub (ePub - 2.0MB) | Feedback

Contents

Scripting with Packaged CCE

Script Editor and Internet Script Editor

In a Packaged CCE deployment, two tools are available for creating routing and administration scripts—Script Editor and Internet Script Editor. You can use either or both of these two tools. They provide the same functionality, and that functionality is documented in this section. This table lists some considerations:

Script Editor

Internet Script Editor

Is automatically deployed as part of the Unified CCE Data Server installation.

Must be enabled during the installation of the Unified CCE Data Server by selecting it in Web Setup, then downloaded and installed.

Requires a full Administration and Data server. You must run it from the Unified CCE Data Server.

Can be run on a local machine.

Can be used by global administrators.

Can be used by global administrators and departmental administrators.

Imposes no scripting access restrictions for global administrators.

Imposes scripting access restrictions for departmental administrators.

Administrator privileges in Internet Script Editor

In a Packaged CCE deployment, global administrators and departmental administrators have different access permissions in Internet Script Editor.

Global administrators have access as follows:
  • Full access to scripts and can reference all global and all departments objects when they create scripts.
  • Full access to dynamic scripting nodes.
Departmental administrators have access as follows:
  • Full access to scripts that reference global objects and objects in their departments.
  • Read-only access to scripts that reference Dynamic Scripting Nodes such as formulas.
  • No access to scripts that reference objects that are associated with departments they do not administer.

Install Internet Script Editor

Before You Begin

The Internet Script Editor installer requires Windows XP Professional Service Pack 2 or Windows 7 (Professional, Enterprise, Ultimate).

You cannot install it directly on a VM.

For example, for Packaged CCE, you cannot install it on the Data Server or on an HDS.

Procedure
    Step 1   Point your browser to server-name/install/iscripteditor.htm, where server-name is the name of the computer on which you installed the distributor with the Internet Script Editor client package.
    Step 2   Enter your Domain and User Name, and Password, then click OK.
    Step 3   Click Download Internet Script Editor.

    You can also open the iscripteditor.exe file directly from the web page.

    Step 4   Navigate to the directory where you want to save iscripteditor.exe.
    Step 5   Click Save to begin the download.
    Step 6   When the download is complete, close the browser.
    Step 7   On your desktop, navigate to iscripteditor.exe and execute the file.
    Step 8   When the InstallShield Wizard for Internet Script Editor starts, click Next to continue.
    Step 9   Select the default Destination Folder by clicking Next; or click Browse to navigate to the desired Destination Folder, and then click Next.
    Step 10   When the InstallShield Wizard indicates the installation is complete, click Finish.

    A shortcut for Internet Script Editor (IScriptEditor) appears on the desktop, as well as in the Start menu in the Programs/Cisco Systems Inc. program group.

    Start Internet Script Editor

    Procedure
      Step 1   Double-click the desktop shortcut for Internet Script Editor (IScriptEditor).
      Step 2   Click Connection.
      Step 3   Enter the correct Address, Port, and ICM Instance information.
      Step 4   Click OK.
      Step 5   Enter your User Name and Password.
      Step 6   Enter the Domain of Unified ICM system.
      Step 7   Click OK.
      Step 8   Upgrade Internet Script Editor as necessary.

      Upgrade Internet Script Editor

      After you start Internet Script Editor, if there is a newer version, you receive a message informing you that you can upgrade Internet Script Editor.


      Note


      Some upgrades are optional; these upgrades typically contain GUI enhancements. Other upgrades, typically involving protocol or database changes, are mandatory. You cannot use Internet Script Editor until you accept mandatory upgrades.
      Procedure
        Step 1   Accept a software upgrade.

        A web page opens from which you can download the new Internet Script Editor.

        Step 2   From this point, follow the directions on installing Internet Script Editor, above.

        You cannot use Internet Script Editor during the upgrade.


        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.


        Note


        If you are a department administrator for Packaged CCE deployments (Packaged CCE: CCE-PAC-M1 and Packaged CCE: CCE-PAC-M1 Lab Only), then you will not have access to the Script Editor. Instead, you have to use the Internet Script Editor client, unless restricted by the feature control of the client or by your role.


        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:

        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. (See 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 Unified CCE and Unified 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.

                  Unified 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 Unified 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 Unified 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 created using the Call Type tool in Unified CCE Web Administration. See Call types for more information.

                  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 specify the system default call type in the Settings tool of Unified CCE Web Administration. For more information, see System settings for call reporting.

                  Relation between call types and scripts

                  Scripts are scheduled by call type. In other words, when the system 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 dialed number, which is referred to as the call type qualifier.

                    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 the system attempts to associate a contact with a call type:

                    1. If the dialed number of the contact maps to a defined call type, the system uses that call type.
                    2. If no call type matches the contact, the system uses the default call type.
                    3. If no default call type is defined, the system returns an error to the routing client.

                    Determination of call type for voice contact

                    The following example demonstrates how the system 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 the system 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


                      The dynamic call type option is enabled only for System Administrators. For other users, this option is disabled.


                      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.

                        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

                          A contact's call type is determined by the dialed number qualifier.

                          When the system 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    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 the system executes an If node, it first evaluates the condition specified in the node Properties dialog box Define condition field. If the system 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 the system 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 Specify an agent directly
                                      2. Agent to Agent Node. For more information, see Transfer calls 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 Unified 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 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.
                                            Step 6   For the Label, Select and Precision Queue nodes:

                                            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 Unified Customer 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 Packaged CCE scripts

                                            You can write routing scripts that send calls to the VRU, queue the call, and invoke specific VRU scripts. VRU scripts are configured using the Network VRU Scripts gadget in the Unified CCE Web Administration tool.

                                            Send call to a VRU with Send to VRU Node

                                            You can send a call to Unified 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, include the node in routing scripts as a visual aid if you ever need to troubleshoot the script.
                                            • If the call is delivered to the Unified 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 Unified 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 Unified CVP.

                                            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.

                                            Note


                                            • If the current call is not at a Unified 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 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 Unified 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 Unified 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 Unified 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 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



                                                  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 option is enabled only for System Administrators. For other users, this option is disabled.


                                                  • 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


                                                  The dynamic precision queue option is enabled only for System Administrators. For other users, this option is disabled.


                                                  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 Unified 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

                                                  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.


                                                  Note


                                                  You must set protocol time-out variables in Unified CVP 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 your system 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. (See Contact categorization and Selection of 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. (See Variable usage.)

                                                          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 skill group (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 (.).

                                                          Note


                                                          Passing of internationalized characters through Media Routing interface is not supported. The application that interacts with ICM through the Media Routing interface must send any call related data in English only.


                                                          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 Unified CVP (or VRU).

                                                          Yes


                                                          Note


                                                          The Call Variables can be used in a "SET" node 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 Completion 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 themselves 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. Example: 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 Unified 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.

                                                          The Latin 1 Character set for expanded call context variables and peripheral call variables is supported when used with Unified CVP, Cisco Finesse, and Cisco Social Miner, among others.

                                                          The use of multi-byte character sets in limited usage for ECC and peripheral call variables is also supported, when:

                                                          • setting them in script editor using double quotes
                                                          • stored in Termination Call Variables with appropriate SQL collation
                                                          • setting and receiving them via CTI OS desktops.

                                                          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.

                                                          Each user variable must:

                                                          • Have a name that begins with user.
                                                          • Be associated with an object type, for example, skill group. (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 the 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 and the number of agents available in that state.

                                                          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

                                                          Shift right

                                                          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.

                                                          EstimatedWaitTime

                                                          Integer

                                                          Returns the minimum estimated wait time for each of the queues against which the call is queued (skill group(s) or precision queue(s)). Queue to Agent(s) is not supported. If no data is available, returns -1. The estimated wait time is calculated once, when the call enters the queue.

                                                          The default estimated wait time algorithm is based on a running five minute window of the rate of calls leaving the queue. Any calls which are routed or abandoned during the previous 5 minutes are taken into account as part of the rate leaving queue. For precision queues, the rate leaving queue represents the rate at which calls are delivered or abandoned from the entire precision queue, not any individual precision queue steps.

                                                          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. Returns 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.

                                                                Scripting specifics 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.

                                                                Scripts for precision queues

                                                                To implement Precision Routing in your contact center, you must create scripts.

                                                                You can create and use configured (static) and dynamic precision queue nodes in your scripts.

                                                                • Static precision queue nodes target a single, configured precision queue. When the script utilizes a single precision queue, use static precision queues.
                                                                • Dynamic precision queue nodes are used to target one or more previously configured precision queues. 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.

                                                                Precision Queue script node

                                                                Use the Precision Queue script node to queue a call based on caller requirements until an agent with desired proficiency become available. This node contains multiple agent selection criteria which are separated into steps.

                                                                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 (voice response unit) 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. 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 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.

                                                                Configure a static precision queue

                                                                Procedure
                                                                  Step 1   In the Precision Queue Properties dialog box, select the Statically option.
                                                                  Step 2   From the list, select a precision queue to which to route all calls that enter this node.
                                                                  Step 3   In the Priority selection box, select the initial queuing priority for calls processed through this node. You can select from 1 - 10. The default is 5.
                                                                  Step 4   Check the Enable target requery check box to enable the requery feature for calls processed through this node. The requery behavior for the Precision Queue node is to be determined.
                                                                  Step 5   To edit a precision queue, select a precision queue from the list, and then click Edit Precision Queue.

                                                                  Configure a dynamic precision queue

                                                                  Procedure
                                                                    Step 1   In the Precision Queue Properties dialog box, select the Dynamically option.
                                                                    Step 2   In the Priority selection section, select the initial queuing priority for calls processed through this node. You can select from 1 - 10. The default is 5.
                                                                    Step 3   Check the Enable target requery check box to enable the requery feature for calls processed through this node. The requery behavior for the precision queue node is to be determined.
                                                                    Step 4   Select a queue option:
                                                                    • To dynamically route calls that enter this node to a precision queue name, select the Precision Queue Name option.
                                                                    • To dynamically route calls that enter this node to a precision queue ID, select the Precision Queue ID option.
                                                                    Step 5   Click Formula Editor to create a formula that determines the precision queue name or ID to which to route calls.

                                                                    Queuing behavior of the 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.

                                                                    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.

                                                                    For a transfer to a specific target agent, the initiating agent enters the target agent ID. The DNP entry matching the dialed number (agent ID) must have a DNP type of PBX. For this DNP type, the PIM enters the dialed number (agent ID) into the Caller-Entered Digits (CED) field while sending the route request to the Router. To have the Router handle the call properly, specify the CED field as the location of the agent ID in the Agent to Agent node.

                                                                    Agent IDs must not match any of the extensions on the Unified Communications Manager cluster. If you make all agent IDs of the same length and begin with the same number, a generic wildcard string can match all agent IDs. With that wildcard string, you need only one entry in the DNP for agent-to-agent routing.

                                                                    The agent-to-agent node requires that you specify the PIM. If your environment has multiple PIMs, use an agent ID number plan to determine which PIM contains an agent. Agent IDs are associated with a specific PIM and are not unique by themselves. You can set up a consistent agent ID assignment plan (such as, all agent IDs on PIM 1 begin with 1, and so on). That pattern enables you not to repeat agent IDs across the enterprise. Then, you can parse the CED field in the script editor to determine which PIM contains a specific agent.

                                                                    Unified CVP as a queue point

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

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

                                                                    • To provide the call with a termination point that allows the VoIP Gateway to return the correct signals or messages back to the PSTN.
                                                                    • 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.
                                                                    • To obtain further information from the caller that is not sent from the network

                                                                    The Unified 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 Unified 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

                                                                    Unified 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 Unified CVP application developers. It also may be of interest to Call Center Managers, Unified CVP System Managers, and Packaged CCE system 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:

                                                                    • 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 Unified CVP applications.

                                                                      Note


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

                                                                    Invoke Unified CVP micro-applications though Packaged CCE scripts

                                                                    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.

                                                                    Instead of developing full scale Unified CVP applications using micro-applications, use Unified CVP scripts developed using Call Studio to create the Unified CVP applications. 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.

                                                                    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 Unified CVP applications.

                                                                    Unified CVP Call Studio scripting

                                                                    Sophisticated Unified 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 Unified 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 Script Editor. All MicroApp implementation must be done using the Run External Script node in Script Editor. Refer to Writing Packaged 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 Writing Packaged CCE applications for Unified CVP.

                                                                    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 Unified 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 Unified CVP Service, which resides on the Call Server. The Unified 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 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 Packaged CCE and executes a Packaged CCE script.
                                                                      Step 2   The caller hears a welcome prompt.
                                                                      Step 3   The script sends the call to Unified 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 Packaged 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 Unified 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 Unified 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 /Unified 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 Unified 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 Unified 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 Unified 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 Unified CVP Service did not exist on the Media Server.

                                                                      Unknown micro-application

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

                                                                      Unsupported locale

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

                                                                      Unsupported VoiceXML element

                                                                      The VoiceXML Interpreter (that is, gateway) did not recognize a VoiceXML element passed from the Unified 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 Unified 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 following section describes using the Script Editor to access Unified CVP micro-applications. See Add and maintain network VRU scripts for information about configuring Unified CVP Network VRU scripts in Unified CCE Web Administration.

                                                                      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 as needed.
                                                                        Step 4   Modify the Labels tab as needed.
                                                                        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 Unified 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 Unified 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

                                                                        You can specify a media server for a micro-application was to use the ECC variable user.microapp.media_server. You also can 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.
                                                                        • 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 Unified 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 Configure 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 Packaged 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 Packaged 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 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 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 IVRUnified CVP_RTSPStream_Forever script's external script name contains four parameters: PM, -1, A, 5. The second parameter, -1, instructs Unified CVP to play the stream name declared in PeripheralVariable1 (shown in Step 2). 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 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 standard value is 10 seconds.


                                                                            If the SIP Call with Unified 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 Unified CCE Administration Network VRU Script tool’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.


                                                                            Before You Begin

                                                                            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 .

                                                                              • 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 Play Data and data storage.

                                                                              • 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 Unified 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/Unified 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 Unified CCE Administration 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 Unified 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 VoiceXML

                                                                                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 Unified 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 Unified 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 Unified 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 / Unified 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. See the Courtesy Callback section in the Cisco Packaged Contact Center Enterprise Features Guide at http:/​/​www.cisco.com/​en/​US/​products/​ps12586/​tsd_​products_​support_​series_​home.html for further details.


                                                                                  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 Unified 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. See the Agent Greeting feature section in the Cisco Packaged Contact Center Enterprise Features Guide at http:/​/​www.cisco.com/​en/​US/​products/​ps12586/​tsd_​products_​support_​series_​home.html for further usage of this parameter.
                                                                                    • 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 Unified 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

                                                                                    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 Unified 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

                                                                                      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.

                                                                                          Outbound Option scripting

                                                                                          Detailed scripting information for Outbound Option is available in the Cisco Packaged Contact Center Enterprise Features Guide at http:/​/​www.cisco.com/​en/​US/​products/​ps12586/​tsd_​products_​support_​series_​home.html.