Agent Greeting and Whisper Announcement Feature Guide for Cisco Unified Contact Center Enterprise Release 9.0(1)
Deploy Agent Greeting
Downloads: This chapterpdf (PDF - 2.04MB) The complete bookPDF (PDF - 4.01MB) | Feedback

Deploy Agent Greeting

Contents

Deploy Agent Greeting

This chapter describes how to deploy and configure the Agent Greeting feature.

Agent Greeting deployment tasks

Procedure
    Step 1   Ensure your system meets the baseline requirements for software, hardware, and configuration described in the System Requirements and Limitations section. See System Requirements and Functional Limitations.
    Step 2   Configure one or more servers to act as media servers. Configuration requirements include IIS and FTP. See Prepare a Media Server.
    Step 3   In CVP, add media servers, configure FTP connection information, and deploy the media servers. See Add and Configure Media Servers in CVP.
    Step 4   Configure Media Server for Agent Greeting.
    Step 5   Republish .tcl Scripts to VXML Gateway for Agent Greeting support.
    Step 6   Set Cache Size on VXML Gateway.
    Step 7   Record the voice prompts to play to agents when they record a greeting and to deploy the audio files to your media server, see Create Voice Prompts for Recording Greetings.
    Step 8   Configure Call Types to record and play agent greetings.
    Step 9   Configure Dialed Numbers to record and play agent greetings.
    Step 10   Define Network VRU Scripts for Agent Greeting.
    Step 11   In Script Editor:
    Step 12   Modify the CCE Call Routing Scripts to Use Play Agent Greeting Script.

    What to Do Next

    Schedule the script.

    Schedule the script

    Procedure
      Step 1   Select Script > Call Type Manager.
      Step 2   From the Call Type Manager screen, select the Schedule tab.
      Step 3   From the Call type drop-down list, select the call type to associate with the script; for example, PlayAgentGreeting.
      Step 4   Click Add and select the script you want from the Scripts box.
      Step 5   Click OK twice to exit.

      What to Do Next

      Add the Active X controls for Agent Greeting to your custom C++ or COM-sourced CTI OS agent and supervisor desktops. See Include Agent Greeting Controls in Agent Desktops

      Configure Media Server for Agent Greeting

      Agent Greeting uses the Unified CVP media server. If you previously configured and deployed one or more Unified CVP media servers for other features, you do not have to configure any additional servers for Agent Greeting. You can optionally add additional media servers.

      Agent Greeting uses the Unified CVP media server to store and serve the following types of files:

      • Prompt files, prepared by Administrators. These files supply the prompts that agents hear when they record their greetings. The Administrator must manually add the prompt files to all of the media servers that their Agent Greeting scripts will query to retrieve those files.
      • Greeting files, recorded by agents. These files are the actual greetings that play to callers. They are recorded by individual agents. The system handles the storage of these files as follows:
        • A greeting file is named using the convention AgentGreetingType_agentID. For more about AgentGreetingType, see Specify AgentGreetingType Call Variable.
        • When a greeting is first recorded, it is stored temporarily on the Unified CVP Call Server, where an agent can listen to it prior to confirming its use.
        • When the agent confirms the greeting, the file is transferred, using FTP, to all media servers that are deployed and are configured with FTP enabled. Make sure an FTP server is installed and configured for the correct version of IIS on the media server. For instructions consult the Microsoft corporation (http:/​/​microsoft.com).
        • To satisfy a request for the greeting to play to a caller, the greeting file is copied from the media server to the VXML Gateway, where it is cached. The cached copy is used to satisfy subsequent requests for the greeting. Content expires in the cache based on the cache timeout period defined on the media server.

      The routing scripts look for the prompt and greeting files either on the configured default Unified CVP media server or on a specific server identified in the script. Some typical scripting scenarios for retrieving files for Agent Greeting include:

      • All files are retrieved from the default server.
      • All files are retrieved from the default server if available; otherwise, a redundant server is queried.
      • For security, the prompt files are retrieved from one server and the greetings files are retrieved from a different server.
      • For load balancing, the greetings files are dispersed among several servers and retrieved based on tests in the script.

      To configure a Unified CVP media server or add a new one to the list, see CVP Media Server.

      Media server hardware and network requirements

      1. Ensure the server is accessible to CVP, Unified CCE, and your agent desktops.
      2. See the Unified CVP Hardware and System Software Functional Specification for information about Media Server hardware requirements and co-resident software compatibilities.

      Prepare a Media Server

      1. Ensure that IIS is properly configured and running on the server. It must be listening on port 80.
      2. Ensure the server is accessible to CVP, Unified CCE, and your agent desktops.
      3. Perform the following steps:
        1. On the taskbar, click Start, point to Administrative Tools, and then click Server Manager.
        2. In the Server Manager hierarchy pane, expand Roles, and then click Web Server (IIS).
        3. In the Web Server (IIS) pane, scroll to the Role Services section, and then click Add Role Services.
        4. On the Select Role Services page of the Add Role Services wizard, expand FTP Server.
        5. Select FTP Service.

          Note


          To support ASP.NET membership or IIS Manager authentication for the FTP service, you need to select FTP Extensibility.


        6. Click Next.
        7. On the Confirm Installation Selections page, click Install.
        8. On the Results page, click Close.
        9. In the sites section, click Add FTP Site. Provide a site name and path to the same location as the http directory c:\inetpub\wwwroot.
        10. Select your desired binding method, specify to start automatically, select No SSL and click Next.
        11. On the Authentication and Authorization section select the type of authentication required. If using basic, note the name and password of the account.
        12. Select the authorization; for anonymous select Anonymous users.
        13. Set the read and write permissions.

          Note


          Make note of your FTP connection information -- connection type, user name, password, and port number.


      4. Make sure that the FTP and the IIS share the same root directory, because the recording application writes the file to the media server directory structure, and the greeting playback call uses IIS to fetch the file. The en-us/app directory should be under the same root directory for FTP and IIS.
      5. Create a dedicated directory on the server to store your greeting files. This lets you specify a lower cache timeout of 5 minutes for your agent greeting files that does not affect other more static files you may be serving from other directories. By default, the Record Greeting application posts the .wav file to the en-us/app directory under your web/ftp root directory. You may create a dedicated directory such as ag_gr under the en-us/app directory, and then indicate this in the Unified CCE script that invokes the recording application. Use the array for the ECC variable call.user.microapp.ToExtVXML to send the ftpPath parameter to the recording application. Make sure the ECC variable length is long enough, or it may get truncated and fail.
      6. In IIS Manager, set the cache expiration for the dedicated directory to a value that allows re-recorded greetings to replace their predecessor in a reasonable amount of time, while minimizing requests for data to the media server from the VXML Gateway. The ideal value varies depending on the number of agents you support and how often they re-record their greetings. Two minutes may be a reasonable starting point.
      7. Also find the site you are using, go to the agent greeting folder you created (ag_gr), and then select HTTP Response Headers.
      8. Select Add, then Set Common Headers.
      9. Select Expire Web Contentand set your desired value.

      Note


      After specifying the cache timeout, it is a good idea to clear the cache on the VXML Gateway. This ensures the gateway requests the latest files from the media server. You need only clear the gateway cache once. Open a command prompt on the CVP VXML Gateway, log into IOS, and enter the following commands:

      my_server# conf t

      my_server(config)# clear http client cache

      my_server(config)# exit

      my_server(config)# wr



      Note


      The HTTP client response timeout setting on the gateway must be greater than the time it takes to complete the largest anticipated FTP file transfer. If an FTP file transfer takes longer than the configured duration in seconds for HTTP client response timeout, the FTP transfer completes correctly, but the call drops as soon as the configured timeout duration is met. To change the HTTP client response timeout setting, open a command prompt on the CVP VXML Gateway, log into IOS, and enter the following commands:

      my_server# conf t

      my_server(config)# http client response timeout <new value in seconds>

      my_server(config)# exit

      my_server(config)# wr

      By default, the HTTP client response timeout value for CVP is 30 seconds.


      How greeting files are recorded and served

      Following is an illustration of how Greeting files are recorded and served, followed by a step by step description.

      1. An agent initiates a greeting recording session and records a greeting.
      2. The VXML Gateway passes the recorded (but unsaved) greeting file to the VXML Server.
      3. The agent asks to listen to the greeting before saving it. The file is played from the VXML Server.
      4. The agent saves the greeting. The file is named (based on the agent Login Name + AgentGreetingType) and stored on the media server.
      5. Requests for the greeting file come in through the VXML Gateway. The VXML Gateway examines its web server cache for the file. If the file is present and not expired, the cached version is served. If the file is not present, or if its timestamp exceeds the cache expiration, the file is retrieved from the media server and cached again.

      Add and Configure Media Servers in CVP

      You can add one or more servers to CVP to act as media servers. If you add multiple media servers, note the following:
      • CVP automatically propagates files that are added to one media server out to all media servers in the list that have FTP enabled. To enable FTP on a media server, use the following procedure.
      • You can designate one media server as the default. If a default media server is defined, requests for files are automatically sent to that server without your having to specify that server in your routing scripts.
      1. Access the CVP Operations Console by typing https://<OAMP_server_IP>:9443/oamp.
      2. At the CVP Operations Console, select Device Management > Media Server.
      3. Add a server to the list of CVP media servers.
      4. Select FTP Enabled.
      5. Configure the credentials and port settings that will permit CVP to write files to the server using FTP.
      6. Optionally, you can designate one of your media servers as the Default Media Server.
      7. Click the Deploy button to deploy the list of media servers to your CVP Call Servers. Note: If you deploy the list of media servers and then designate a default, you must redeploy the list.

      Republish .tcl Scripts to VXML Gateway

      The .tcl script files that ship with Unified CVP Release 9.0(1) include updates to support Agent Greeting. You must republish these updated files to your VXML Gateway.

      Republishing scripts to the VXML Gateways is a standard task in CVP upgrades. If you did not upgrade CVP and republish the scripts, you must republish the scripts before you can use Agent Greeting.

      Procedure
        Step 1   In the Unified CVP Management Console, select Bulk Administration > File Transfer > Scripts and Media.
        Step 2   Set Device to Gateway.
        Step 3   Select the gateways you want to update. Typically you would select all of them unless you have a specific reason not to.
        Step 4   Select Default Gateway Files.
        Step 5   Click Transfer.

        Set Cache Size on VXML Gateway

        To ensure adequate performance, set the size of the cache on the VXML Gateway to the maximum allowed. The maximum size is 100 megabytes; the default is 15 kilobytes. Failure to set the VXML Gateway cache to its maximum can result in slowed performance to increased traffic to the media server.

        Use the following Cisco IOS commands on the VXML Gateway to reset the cache size:

        conf t
        http client cache memory pool 100000
        exit
        wr

        For more information about configuring the cache size, see the Configuration and Administration Guide for Cisco Unified Customer Voice Portal.

        Create Voice Prompts for Recording Greetings

        You must create audio files for each of the voice prompts that agents hear as they record a greeting. The number of prompts you require can vary, but a typical set can consist of:

        • A welcome followed by a prompt to select which greeting to work with (this assumes you support multiple greetings per agent)
        • A prompt to select whether they want to hear the current version, record a new one, or return to the main menu
        • A prompt to play if a selected greeting is not found.

        To create voice prompts for recording greetings:

        Procedure
          Step 1   Create the files using the recording tool of your choice. When you record your files:
          • The media files must be in .wav format. Your .wav files must match Unified CVP encoding and format requirements (G.711, CCITT A-Law 8 kHz, 8 bit, mono).
          • Test your audio files. Ensure that they are not clipped and that they are consistent in volume and tone.
          Step 2   After recording, deploy the files to your Unified CVP media server. The recommended default deployment location is to the <web_server_root>\en-us\app directory.
          Step 3   Note the names of the files and the location where you deployed them on the media server. Your script authors need this information for the Agent Greeting scripts.

          Built-in Recording Prompts

          The Unified CVP Get Speech micro-application used to record Agent Greetings includes the following built-in prompts:

          • A prompt that agents can use to play back what they recorded
          • A prompt to save the greeting, record it again, or return to the main menu
          • A prompt that confirms the save, with an option to hang up or return to the main menu

          You can replace these .wav files with files of your own. For more information, see the CVP Call Studio documentation.

          Example Record Greeting Prompts

          Unified CCE includes three example record greeting audio prompts. These are installed on each ICM server at <icm_root>\wav. These example files are referenced in the example recording script that are included with ICM. If you plan to deploy the example script, copy the audio prompts to the <web_server_root>en-us\app directory on your media server.

          Configure Call Types

          To record and play agent greetings, create the following call types.

          Procedure
            Step 1   In Unified CCE Administration, select Manage > Call Type.
            Step 2   Create a call type to record agent greetings and use the name RecordAgentGreeting.
            Step 3   Create a call type to record agent greetings and use the name PlayAgentGreeting.

            Configure Dialed Numbers

            To record and play agent greetings, create the following dialed numbers.

            Procedure
              Step 1   In CCE Administration, select Manage > Dialed Number.
              Step 2   Create a dialed number to record agent greetings and use the name RecordAgentGreeting. The name must math exactly and is case-sensitive.
              Step 3   Create a dialed number to record agent greetings and use the name PlayAgentGreeting. The name must math exactly and is case-sensitive.
              Step 4   Complete the following for each dialed number:
              1. For routing type, use Internal Voice.
              2. Leave domain as is. The domain defaults to a set value and you cannot change it.
              3. To associate each number to its call type (and to a script that will execute), select the call type that matches the purpose of each dialed number.

              Define Network VRU Scripts for Agent Greeting

              For Agent Greeting record and play scripts to interact with Unified CVP, Network VRU scripts are required. The number of VRU scripts that you require and how you configure them depends on how you choose to script Agent Greeting.

              To create these scripts, use the Network VRU Script List Tool found in Configuration Manager

              The following table lists an example set of Agent Greeting Network VRU scripts based on the example Agent Greeting scripts that are included with the software. .


              Note


              If you require the following example VRU scripts, you must manually create them.


              • The Network VRU must be a Type10
              • The default timeout 180 is acceptable
              • Leave Overridable unchecked
              Table 1 Agent Greeting Network VRU Scripts
              Name /

              VRU Script Name

              Configuration Parameter Interruptible

              (Y/N)

              What it does

              AgentGreeting

              PM,-a

              null

              N

              Causes a saved greeting audio file to play. The -a parameter automatically generates the file name by concatenating the agent's Login Name with the AgentGreetingType variable value set in your routing scripts that target an agent.

              GreetingMenu_1_to_9

              M,press_1_thru_9_greeting,A

              1-9

              Y

              During a recording session, play an audio file that presents a voice menu prompting the agent to press the number corresponding to the greeting he or she wants to record. The 1-9 configuration parameter defines the range of allowable keys. So this value also determines the number of concurrent greetings agents can have. The A parameter specifies that the file is in the (default) Application directory on the Unified CVP VXML Server.

              GreetingSubMenu

              M,press1-press2-press3,A

              1-3

              Y

              During a recording session, play an audio file that prompts the agent to press 1 to listen to a greeting, 2 to record, or 3 to go to the main menu.

              Greeting_Not_Found

              PM,no_greeting_recorded,A

              Y

              Y

              During a recording session, if an agent tries to play back a greeting that does not exist, play the no_greeting_recorded audio file. The Y configuration parameter in this instance allows barge-in (digit entry to interrupt media playback).

              T10_GS_AUDIUM

              GS,Server,V, FTP

              ,,,,,,,,,,Y

              Y

              This starts the external VXML application that records the greeting. The VRU script name must be specified exactly as shown and is case-sensitive.

              The Y parameter in the eleventh position of the Configuration Parameter is required. It allows the script to pass FTP connection information to the VXML server. The VXML server then uses this information to make an FTP connection to the media server when saving greeting files.


              Note


              For descriptions of VRU Script Name parameters and detailed instructions on creating Network VRU scripts for CVP micro-applications, see the Configuration and Administration Guide for Cisco Unified Customer Voice Portal.


              Import example Agent Greeting scripts

              To view or use the example Agent Greeting scripts, you must first import them into Script Editor. To import the scripts:

              Procedure
                Step 1   Launch Script Editor.
                Step 2   Select File > Import Scriptand select a script to import.

                The scripts are located in the icm\bin directory on the data server (DS) node.

                Note   

                When you import the example scripts, Script Editor maps objects that are referenced in the scripts. Some of the objects, such as the external Network VRU scripts, skill groups, route to SkillGroup, or Precision Queue, do not map successfully. You must create these manually or change these references to point to existing scripts, skill groups, and Precision Queues in your system.


                What to Do Next

                In addition to importing the scripts, you may need to modify the following items. For more information, see Agent Greeting Scripts.

                • If you do not use a default media server, you must modify the media server specification.
                • If you do not use the default values for application and locale (en-us/app), you must modify the path name of greeting files.
                • Using the Unified CCE Administrator tool, enable all expanded call variables referenced by the following sample scripts.

                Agent Greeting Example Routing Scripts

                The example routing script files in the icm\bin directory include:

                • AG.ICMS—This script sets up an Agent Greeting by setting the greeting type to be used on the call and then queueing the call to a skill group or Precision Queue. Once an agent is selected from the skill group or Precision Queue and the call routed to the agent, the PAG.ICMS script is invoked. It requires that you define an AgentGreeting VRU script (described in Define Network VRU Scripts for Agent Greeting) and a skill group.
                • PAG.ICMS—This script causes an Agent Greeting to play. It is invoked by the PlayAgentGreeting dialed number that you configured earlier in the configuration process. This number must be associated with a call type that then executes the script. It requires that you define an AgentGreeting VRU script, described in Define Network VRU Scripts for Agent Greeting..
                • RECORD_AG.ICMS—This script lets agents record a greeting. It is called from the agent desktop when an agent clicks the Record Agent Greeting button. It prompts the agent to select which greeting to play or record. This script is invoked by the RecordAgentGreeting dialed number that you configured earlier in this configuration process. It requires that you define all five VRU scripts described in Define Network VRU Scripts for Agent Greeting.
                • WA_AG.ICMS—This script plays a Whisper Announcement and an Agent Greeting together on the same call flow. It requires that you define an AgentGreeting VRU script (described in Define Network VRU Scripts for Agent Greeting) and a skill group.

                Note


                The PAG.ICMS and RECORD_AG.ICMS example scripts assume that a default media server is configured in Unified CVP, and the greeting files are stored in a dedicated directory named ag_gr directory. The WA_AG.ICMS script does not include a dedicated directory.



                Note


                For greeting, the initial script sets up the call between caller and agent, and a different script plays the greeting to the agent after the caller is connected. If the initial Unified CCE script overrides the default media server with a SET node, the call context of expanded call variables is preserved on the greeting playback call as well, and the Default Media Server may be overridden. In this case, modify the greeting playback script to use a SET node with the correct media server.


                Test Agent Greeting File Path

                When an agent records a greeting, the greeting file is saved with a system-generated name as follows:
                • The file name starts with the value of the Call.AgentGreetingType variable associated with the choice the agent made when recording the greeting. For example, if the agent selected the first option, and the Agent Greeting record script sets the first option to "1," then the greeting file name is appended with _1. As another example, if descriptive strings were implemented, and the first option is associated with the string "French," then the greeting file name starts with French_.
                • The agent's id number is appended to the starting string. For agent 10201 would have greeting files named 10201_1 or 10201_French.
                The greeting file is saved in a directory whose path is determined by the following variables in the Agent Greeting record script:
                • A specific media server, or the default media server. (The file is later pushed to all FTP-enabled media servers.)
                • A specific application directory, or the default application directory.
                • A specific locale directory, or the default locale directory.

                To test the path you defined to the greeting file in your script variables, plug the complete URL into a browser. The .wav file should play. For example:

                • If your script uses a default media server whose IP is 192.1.1.28 + the default locale + an application directory named greet + agent123_im1.wav, then the generated URL should be http://192.1.1.28/en-us/app/greet/agent123_1.wav. Entering this URL into a browser should cause this agent’s greeting to play.
                • If your script includes: http://my_server.my_domain.com + the default locale + an application directory app/greet + agent123_1.wav, then the path should be http://my_server.my_domain.com/en-us/app/greet/agent123_1.wav.

                Modify the CCE Call Routing Scripts to Use Play Agent Greeting Script

                For an Agent Greeting play script to run, you must add an AgentGreetingType Set Variable node to your existing CCE call routing scripts: This variable's value is used to select the audio file to play for the greeting. Set the variable before the script node that queues the call to an agent (that is, the Queue [to Skill Group or Precision Queue], Queue Agent, Route Select, or Select node). For more information, see Agent Greeting Example Routing Scripts.

                Specify AgentGreetingType Call Variable

                To include Agent Greeting in a script, insert a Set Variable node that references the AgentGreetingType call variable. The AgentGreetingType variable causes a greeting to play and specifies the audio file it should use. The variable value corresponds to the name of the greeting type for the skill group or Precision Queue. For example, if there is a skill group or Precision Queue for Sales agents and if the greeting type for Sales is '5', then the variable value should be 5.

                You can use a single greeting prompt throughout a single call type. As a result, use one AgentGreetingType set node per script. However, as needed, you can set the variable at multiple places in your scripts to allow different greetings to play for different endpoints. For example, if you do skills-based routing, you can specify the variable at each decision point used to select a particular skill group or Precision Queue.


                Note


                Only one greeting can play per call. If a script references and sets the AgentGreetingType variable more than once in any single path through a script, the last value to be set is the one that plays.


                Use these settings in the Set Variable node for Agent Greeting:

                • Object Type: Call.
                • Variable: Must use the AgentGreetingType variable.
                • Value: Specify the value that corresponds to the greeting type you want to play. For example: "2" or "French"
                  • You must enclose the value in quotes.
                  • The value is not case-sensitive.
                  • The value cannot include spaces or characters that require URL encoding.

                The following script example illustrates how to include Agent Greeting in a script using the Set Variable node:

                Figure 1. Modified call routing script to enable greeting play

                Scripting Agent Greeting for multiple customers

                In the out-of-box method for deploying Agent Greeting, Unified CCE uses the customer information from the built-in "PlayAgentGreeting" dialed number to choose the correct network VRU to play the greeting. If your deployment has multiple customers configured within your Unified CCE instance and you want to use Agent Greeting with all of them, you must configure things differently to work around customer associations.

                Configure custom dialed number for Agent Greeting play

                To play Agent Greetings for multiple customer instances, configure the built-in PlayAgentGreeting dialed number for each Unified CM routing client, but do not associate it with a specific customer. The Unified CM peripheral uses this number to initiate Agent Greeting play. If you want your greetings to be played from a different network VRU, use the TranslationRouteToVRU node in your routing scripts to explicitly choose the network VRU.

                Configure custom dialed number for Agent Greeting record

                To record Agent Greetings when you have multiple customers, you must create your own custom dialed number for recording. You may want to create different dialed numbers for different customers. As with Agent Greeting play, if you want to use different network VRUs to record Agent Greetings for different customers, use the TranslationRouteToVRU node in your routing script to explicitly select the network VRU.

                When you create your own dialed number to record greetings, you cannot use the default Record Greeting button that ships with CTI OS (as it is associated with the hard-coded "RecordAgentGreeting" DN). Create your own custom button or have your agents enter the record dialed number using the dial pad on their desktops.

                Include Agent Greeting Controls in Agent Desktops

                CTI OS includes Active X objects that let you include Agent Greeting controls in your COM and C++ sourced agent desktops. Available controls include Enable Greeting, Disable Greeting, and Record Greeting. See your CTI OS Developer's Guide for more information. Agent Greeting controls are not supported with Java or .NET based CTI OS desktops, or with non-CTI OS desktops such as CAD.

                Agent Greeting Scripts

                Agent Greeting requires two call routing scripts: one that agents can use to record greetings and one to play a greeting to callers. Examples of these scripts are included in your installation. This section describes the elements in the installed example scripts, including optional features and other modifications that you can make. To create scripts from scratch, use this section to understand the required elements in Agent Greeting scripts.


                Note


                If you plan to use the installed example scripts out of the box, you can ignore this section.


                Agent Greeting Recording Script

                The Agent Greeting recording script is a dedicated routing script that allows agents to record greetings. You can use the installed example scripts or create your own.

                The script should be called from the agent desktop when an agent clicks the Record Greeting button. If you support multiple greetings per agent, it should include prompts to select which greeting to play or record. The dialed number RecordAgentGreeting must be created for the specific routing client and associated with a call type which then executes this script.

                In the example script shown here, the agent is first prompted to select one of nine possible greeting types. After selecting a greeting type, the agent chooses whether to 1) listen to the existing greeting for that type; 2) record a new greeting for that type, or 3) return to the main menu. If the agent selects the option to listen, the name of the application directory on the media server is set and the external VRU script that plays the greeting is triggered. Then the agent is returned to the main menu. If the agent selects the option to record, the Unified CVP recording application is called. The recording application contains its own built-in audio prompts that step the agent through the process of recording and saving a greeting. At the end, the agent is returned to the main menu.

                There are several other behaviors in the script to note: An agent may select to listen to a greeting type for which no greeting exists. In that event, a VRU script that plays an error message is called. Also, in two places in the script, the path to the application directory is reset to the default. This is because (in this example) that is where the files for the audio files reside. The only files that reside outside of the default directory are the greetings themselves.

                Figure 2. Agent Greeting record script

                RecordAgentGreeting Micro-Application

                Unified CVP includes a dedicated micro-application -- RecordAgentGreeting -- for recording agent greetings. The application lets agents record, review, re-record, and confirm the save of a greeting. It includes audio files to support each of these functions. If an agent is not satisfied with a greeting, it can be re-recorded up to three times. Upon confirmation of a save, the application FTPs the saved file to the media server. Built-in error checking includes checks for the data required to name the file (agent Login Name + AgentGreetingType variable value), media server specification, valid menu selections made by the agent, and successful FTP of the greeting file.

                Agent Greeting Record Script Nodes

                Using the example script as a reference, here are descriptions of the functions its nodes perform.

                Table 2 Script Node Functions for Agent Greeting
                Node Value What it does

                Variable:Call:user.

                microapp.input_type

                D

                Sets the allowable input type to DTMF (touch tone).

                RunExtScript:Press 1-9 to Select Greeting X

                M,press_1_thru_9_greeting,A

                Runs the VRU script that defines which digits are valid to select an AgentGreetingType and plays a voice prompt describing the options.

                Variable:Call:AgentGreetingType

                Call.CallerEnteredDigits

                Sets the AgentGreetingType to the digit the agent pressed. This text is used in the greeting wave file. It can be a simple numbering system or more descriptive titles such as "English."

                RunExtScript:

                1 - hear greeting X,

                2 - record greeting X,

                3 - return to menu

                M,press1-press2-press3,A

                Runs the VRU script that defines which digits are valid to select a desired action and plays a voice prompt describing the options.

                CED

                1,2,3

                Tells the script how to handle the caller entered digits in response to the 1,2,3 external script.

                Variable:Call: user.microapp.app_media_lib

                Set three times:

                • Once to "app/ag_gr"
                • Twice to "" (an empty string; that is, the default)

                Defines the path to the application directory on the Unified CVP media server. Prior to playing the greeting file, it is set to the dedicated greeting file directory (in this example, app/ag_gr). After the greeting file plays, it is reset to the default application directory where (in this example) the files for voice prompts are stored. If the voice prompts were stored in the same directory as the greeting files, there would be no need to reset the path.

                RunExtScript: Play Recording

                PM,-a,A

                Runs the VRU script that plays the selected Agent Greeting.

                RunExtScript:Greeting Not Found

                PM,no_greeting_recorded,A

                Runs the VRU script that plays an error message if the Agent Greeting selected to play does not exist.

                Variable:

                Call:user.microapp.

                ToExtVXML[]

                Array Index: 2

                Value: "ftpPath=<path_to_dedicated/ directory>"

                For example: "ftpPath=en-us/app/ag_gr"

                Specifies the FTP information that the VXML server uses to write greeting files to the media server. The information must match the FTP information configured for the media server in the Unified CVP Operations Console.

                The value for array index must be 2.

                The value consists of:
                • ftpPath= to set the path to the dedicated directory for agent greeting files.
                • The path must begin with the locale directory.

                To view additional setting options, see CVP documentation.

                Variable:

                Call:user.microapp.

                ToExtVXML[]

                Array Index: 0

                Value: "application=RecordAgentGreeting"

                Identifies the external Unified CVP micro-application (RecordAgentGreeting) that is used to record the greeting.

                The value for array index must be 0.

                RunExtScript: Run Default Recording Application

                GS,Server,V

                Runs the VRU script that launches the Get Speech micro-application on the VXML server.

                Specify Media Server in Routing Scripts

                When you configure media servers in CVP, you can specify a default media server. The benefit to specifying a default media server is that your scripts do not need a Set Variable node to access the default media server. For this to work, you must make sure that the files a script requests are stored on the default server.

                If you do not define a default media server, or if you define a default but the files that your script requires are not stored on the default, then the script must include a Set Variable node to identify a media server.

                To specify a media server that stores the files required by your script, use the following settings in the Set Variable node :

                • Object Type: Call.
                • Variable: Must use the user.microapp.media_server expanded call variable.
                • Value: Specify the HTTP path to the server. For example: "http://myserver.mydomain.net." You must enclose the path in quotes.
                • Alternately you can specify an IP address in place of a DNS. Include the listening port number if the web server for the media server listens on a port other than 80 (for HTTP) or 443 (for HTTPS).

                In scripts that invoke an external VXML application (as the Agent Greeting record script does), if you explicitly set a variable for the media server (user.microapp.media_server), then you must also set the following variables:

                • The path to the media server application directory (user.microapp.app_media_lib)
                • The CVP UseVXMLParams value to N.(user.microapp.UseVXMLParams)

                See the following example.

                Figure 3. Additional required variables when specifying a media server



                Specify Greeting File Locale and Application Directories in Routing Scripts

                CVP uses a default storage directory for media files: <web_server_root>/en-us/app. To take advantage of this, Unified CCE call routing scripts automatically add en-us/app to the server name when constructing HTTP requests for media files. For example:

                • If the script node that defines the media server has a value of "http://myserver.mydomain.com," and
                • The script node that defines which audio file to play has a value of "agent123_1.wav", then
                • The HTTP request for the file is automatically constructed as http://myserver.mydomain.com/en-us/app/agent123_1.wav

                If your greeting audio files are stored in a different locale directory, you must add a Set Variable node to your script that identifies the locale directory. As you must store your greeting files in a dedicated subdirectory under the locale, you must always add a Set Variable node that identifies that directory.

                Use these settings in the Set Variable node to specify your locale directory:

                • Object Type: Call.
                • Variable: Must use the user.microapp.locale expanded call variable.
                • Value: Specify the directory name. For example: "pt-br" (Portuguese-Brazil). You must enclose the path in quotes.

                Use these settings in the Set Variable node to specify your application directory:

                • Object Type: Call.
                • Variable: Must use the user.microapp.app_media_lib expanded call variable.
                • Value: Specify the directory name. For example: to use a directory "greet" in place of the default directory "app", enter "greet". To use a sub-directory "greet" under "app" enter "app/greet". You must enclose the path in quotes.

                Verify Length for Media Server Locale and Application Directory Variables

                If you include Set Variable nodes for the media server, locale, and/or application directories, make sure that the values you set for them do not exceed the Maximum Length settings for their corresponding expanded call variables.

                For example, if you include a Set Variable node for the media server with a value of "http://mysubdomain.mydomain.co.uk", the string is 33 characters long. Therefore, the Maximum Length setting for the user.microapp.media_server expanded call variable must be 33 or greater. Otherwise, the server name is truncated in the HTTP request for the file and the file is not found.

                To configure expanded call variables, use the Unified CCE Configuration Manager. Select List Tools > Expanded Call Variables List.

                To configure ECC variables, use Unified CCE Administration. Select Manage > Expanded Call Variables.

                Descriptive Agent Greeting Type Strings

                The previous Agent Greeting record script example stores Agent Greeting Type values as numbers (although in string format). But suppose you prefer more descriptive string names. For example, "English," "French," and "Spanish." Or "Sales," "Billing," and "Tech Support." Descriptive names can make it easier to understand at a glance what different numeric key selections in your scripts correspond to. Note that they also affect how greeting files are named (for example agent123_English.wav as opposed to agent123_1.wav).

                The following script example is almost identical to the previous record script, except that it includes four additional nodes (highlighted in green). They consist of an additional CED node that maps the keys 1, 2, and 3 to language names. The Run Ext Script node (in gray) was modified for the new options. The rest of the script is the same with no other changes required. Note that your routing scripts require a corresponding mapping of numeric keys to language names.

                Figure 4. Script with descriptive greeting type strings

                Agent Greeting Play Script

                The Agent Greeting feature requires a dedicated routing script that causes the agent greeting to play. This script is invoked by the PlayAgentGreeting dialed number.

                The Play script must contain at least two and possibly four specific nodes, depending on other factors.

                You always need the following nodes:

                • A Run External Script node that calls the VRU script that plays the greeting.
                • A Set Variable node that sets the directory path to your greeting files.

                You may also need to include in your scripts Set Variable nodes that:

                • Specify the Media Server: Unified CVP lets you specify a default media server. If you are not serving your audio files from the default media server, your scripts must include a variable that identifies the server where your audio files are stored.
                • Specify the Locale Directory: Additionally, if you are not storing your files in the default locale directory shoulden-us on the media server, you must include a variable that specifies the name of the locale directory where the files are stored.

                  Note


                  The Locale Directory set variable node is optional. It is needed only if you decide to use another directory other than the default one.


                Figure 5. Agent Greeting Play Script Example