Jump to: navigation, search

Menu Block

The Menu block collects DTMF and/or speech input from the caller. Typically, you use it for directed input choices (such as selecting to pay bills, get account balances, and so on) so that users are directed to the correct place in the application to perform their transactions, talk to an operator, or other options. In case of speech applications, tones can be associated with phrases to allow either speech or DTMF input from the caller. The phrases and tones are defined in the Menu tab. In case of user input blocks (Menu, Input, Record, Transfer), Composer adds a global variable  of type "Block" to the variables list.  You can conveniently use this variable for accessing the user input value. The Menu block has the following properties:

Menu Block Exception Events

The Menu block has four local exception events as described in Exception Events.

  • error
  • error.noresource
  • noinput
  • nomatch

Number of Allowed Retries Exceeded

Assume you need to configure the following use case:

  1. User is allowed one invalid entry attempt and one no input attempt. User will then be re-prompted and given a chance to repeat the attempt.
  2. When all allowed attempts are exceeded, the user hears a prompt (something like You have exceeded the number of possible retries; please call us later when you have correct information. Good bye).
  3. At this point, the call should be terminated (or transferred to an agent or some other action taken.

To handle step 2 during application design: In Menu/Input blocks, move exceptions (nomatch, noinput) to supported events. You can then define the flow path(s) for the case when number of attempts is exceeded. The callflow below illustrates this configuration:
Exceeded.gif

Name Property

Please find this property's details under Common Properties.

Block Notes Property

Can be used for both callflow and workflow blocks to add comments.  

Exceptions Property

Find this property's details under Common Properties.

Language Property

The language set by this property overrides any language set by the Set Language block, the Project preferences, or the incoming call parameters. The property takes effect only for the duration of this block, and the language setting reverts back to its previous state after the block is done. In the case of the Menu block, this property affects the language of grammars of TTS output:

  1. Click under Value to display a down arrow.
  2. Click the down arrow and select English - United States (en-US) or the variable that contains the language.

Condition Property

Find this property's details under Common Properties for Callflow Blocks.

Logging Details Property

Find this property's details under Common Properties for Callflow Blocks.

Log Level Property

Find this property's details under Common Properties for Callflow Blocks.

Enable Status Property

Find this property's details under Common Properties for Callflow Blocks.

Menu Mode Property

To assign a value to the Menu Mode property:

  1. Select the Menu Mode row in the block's property table.
  2. In the Value field, select one of the following from the drop-down list:

DTMF

The DTMF format indicates the menu option mode of input will be via the telephone keypad.

Voice

The Voice format indicates the menu option mode of input will be a voice phrase.

Hybrid

The Hybrid menu mode will handle both DTMF and Voice inputs, that is via telephone keypad and voice phrase. Note:  If you select the Hybrid menu mode, you will have to provide both voice and DTMF values for all menu options.

Menu Options Property

Use the Menu Options property to add phrases and/or tones to the VoiceMap. To add, delete, or arrange menu options:

  1. Click the Menu Options row in the block's property table.
  2. Click the OpenDialogBoxButton.gif button to open the Menu Options dialog box.Available Menu Details fields depend on the option selected in the Menu Mode property.

For DTMF mode:

  • Name*-- Displays the name of the menu option.
  • DTMF-Option*--Indicates where the option appears on the menu (1 for first option, 2 for second option, and so on).
  • Return Value*--Displays the menu option's return value.
  • Post Action*--Specify a script (optional).

For Voice mode:

  • Name*-- Displays the name of the menu option.
  • Voice-Option*--Allows input of a voice phrase that will be played for the menu option.
  • Return Value*--Displays the menu option's return value.
  • Post Action*--Specify a script (optional).

For Hybrid mode:

  • Name*-- Displays the name of the menu option.
  • DTMF-Option*--Indicates where the option appears on the menu (1 for first option, 2 for second option, and so on).
  • Voice-Option*--Allows input of a voice phrase that will be played for the menu option.
  • Return Value--Displays the menu option's return value.
  • Post Action*--Specify a script (optional).

Menu Options Table

In a new Menu block, four menu options populate the Menu Options table by default. To set or change one of the existing menu options:

  1. Select a menu option in the Menu Options table to enable Menu Options fields.
  2. In the Name* box, change the default name to a more descriptive name.
  3. From the DTMF-Option* drop-down list, select a numeric value to indicate the order that this option will appear in the menu.
  4. In the Return Value box, type a return value for this menu option.
  5. Composer 8.1.410.14 adds a new POST ACTION column. Click to open Expression Builder where you can define a script for post-processing. The Post processing script get executed if the configured option/condition was selected.

Add Button

Use the Add button to add a new menu option.

  1. In the Name* box, change the default name to a more descriptive name.
  2. From the DTMF-Option* drop-down list, select a numeric value to indicate the order that this option will appear in the menu.
  3. In the Return Value box, type a return value for this menu option.

Up/Down Buttons

Use the Up and Down buttons to reorder your menu option elements. Select the element you want to reposition, and then click Up or Down, as necessary.

Delete Button

To delete a menu option:

  1. Select an entry from the list.
  2. Click Delete.

Repeat Menu Option Property

Use for specifying a Repeat DTMF key that will cause the menu to be replayed to the caller, from the beginning. The generated VXML will use a <reprompt/> when this DTMF is entered by the caller.  Composer's variable support and application root document support allows specifying the same key across blocks.  To enable the re-prompting functionality for both DTMF and ASR, you can connect a Menu block outport back to the Menu block itself. To specify:

  1. Click the Repeat Menu Options row in the block's property table.
  2. Click the OpenDialogBoxButton.gif button to open the Repeat Menu Options dialog box.
  3. Click Add.
  4. Name the option.
  5. Click the down arrow and select a number to indicate where the option appears on the menu (1 for first option, 2 for second option, and so on).
  6. Specify the menu option's return value.
  7. Click OK.

Use Utterance to Segment Property

Select true or false. You can use this property for Menu block segmentation based on input utterance (the raw string of words that were recognized by the platform). If set to false, Menu block segmentation is based on menu options or return values.

Output Result Property

You must use the Output Result property to assign the collected data to a user-defined variable for further processing. Note!  This property is mandatory. You must select a variable for the output result even if you do not plan on using the variable. If this is not done, a validation error will be generated in the Problems view.

  1. Select the Output Result row in the block's property table.
  2. In the Value field, click the down arrow and select a variable.

For more information, see Upgrading Projects/Diagrams.

Security Property

When the Security property is set to true, data for this block is treated as private. GVP will consider the data associated with this block as sensitive and will suppress it in platform logs and metrics. To assign a value to the Security property:

  1. Select the Security row in the block's property table.
  2. In the Value field, select true or false from the drop-down list.

Clear Buffer Property

Use the Clear Buffer property for clearing the DTMF digits in the key-ahead buffer. If it is not set to true, the DTMF digits entered are carried forward to the next block. It is commonly used for applications the caller is familiar with. For example, the caller hears a welcome prompt but knows the next prompt will solicit the caller's input or menu selection. The caller may start inputting with dtmf while the welcome prompt plays and expect the input to carry forward. To assign a value to the Clear Buffer property:

  1. Select the Clear Buffer row in the block's property table.
  2. In the Value field, select true or false from the drop-down list.

Interruptible Property

This property specifies whether the caller can interrupt the prompt before it has finished playing. To assign a value to the Interruptible property:

  1. Select the Interruptible row in the block's property table.
  2. In the Value field, select true,false,or DTMF (for DTMF barge-in mode support) from the drop-down list.

Prompts Property

Find this property's details under Common Properties. Note: When Type is set to Value and Interpret-As is set to Audio, you can specify an HTTP or RTSP URL.  When Type is set to Variable and Interpret-As is set to Audio, you can specify a variable that contains an HTTP or RTSP URL. Starting with 8.1.410.14, validation displays a warning message if a resource file does not exist.

Timeout Property

The Timeout property defines the length of the pause between when the voice application plays the last data in the list, and when it moves to the next block. To provide a timeout value:

  1. Select the Timeout row in the block's property table.
  2. In the Value field, type a timeout value, in seconds.

Get Shadow Variables Property

Shadow variables (optional) provide a way to retrieve further information regarding the value of an input item. By setting this property to true, it will expose the block’s shadow variable within the callflow. When enabled, the shadow variable will be included in the list of available variables. (For example, the Log block’s Logging Details will show Menu1$.) A shadow variable is referenced as blockname$.shadowVariable, where blockname is the value of the input item's name attribute, and shadowVariable is the name of a specific shadow variable, for example: Menu1$.duration. Shadow variables can provide platform-related information about the interaction/input. For example, for speech recognition, this may be the confidence level the platform receives from the ASR engine about how closely the engine could match the user utterance to specified grammar. To assign a value to the Get Shadow Variables property:

  1. Select the Get Shadow Variables row in the block's property table.
  2. In the Value field, select true or false from the drop-down list.

Number of Allowed Attempts Exceeded Property

Determines how many opportunities the user will be provided to re-enter the value. If Use Last Prompt Indefinitely is set to true, this property has no effect; otherwise, the error.com.genesyslab.composer.toomanynomatches or error.com.genesyslab.composer.toomanynoinputs errors will be raised on reaching the maximum retry limit. To provide a value for the number of retries allowed:

  1. Select the Number Of Retries Allowed row in the block's property table.
  2. In the Value field, type a value for the number of retries that will be allowed.

Retry Prompts Property

Find this property's details under Common Properties.

Use Last Reprompt Indefinitely Property

If you set the Use Last Reprompt Indefinitely property to true, the application uses your last reprompt as the prompt for all further retries. Therefore, the exception handlers that come out for nomatch and noinput are redundant--even if you set the default exceptions that come out as red dots on the left-side of the block. To assign a value to the Use Last Reprompt Indefinitely property:

  1. Select the Use Last Reprompt Indefinitely row in the block's property table.
  2. In the Value field, select true or false from the drop-down list.

Use Original Prompts Property

If you set the Use Original Prompts property to true, in the event of an error requiring a retry, the application first plays back the retry error prompt, and then plays back the original prompt for the block (as specified in the Prompts property). To assign a value to the Use Original Prompts property:

  1. Select the Use Original Prompts row in the block's property table.
  2. In the Value field, select true or false from the drop-down list.

Use Single Counter For Nomatch And Noinput Property

If you set the Use Single Counter For Nomatch And Noinput property to true, the application maintains a single combined counter for the nomatch and noinput errors. For example, if the block has three nomatch retry messages and three noinput retry messages, the user gets three retry attempts. If you do not select this option, the application generates a total of six retries; and the user gets up to six retry attempts while not exceeding three of each type -- noinput or nomatch. Note: This property not available on the Record block. To assign a value to the Use Single Counter For Nomatch And Noinput property:

  1. Select the Use Single Counter For Nomatch And Noinput row in the block's property table.
  2. In the Value field, select true or false from the drop-down list.

This page was last edited on November 30, 2018, at 18:46.
Comments or questions about this documentation? Contact us for support!