# Menu

![](/files/-M5NbiYCZim3Mibsho_K)

## **Function**

This module provides users with a way to branch on, and collect complex input.

Menus enable users to create multiple choice questions where each option is associated with a value, where it will be saved to the menu variable upon a valid entry.

Options can be added or removed with the add / remove buttons (<img src="/files/-M4u9_-hAMbYcqwmycsz" alt="" data-size="line">). The maximum number of options available in the module is 10, with a minimum choice of 1.

## **Audio Prompts**

![](/files/-M5NbiYFfv3Q8TXoTnMi)

With this module, in addition to the user prompt text (“*Welcome to the sample menu.*”<img src="/files/-M4u9_00oNcmhydmg4Un" alt="" data-size="line">), built-in prompts (<img src="/files/-M4u9_-nKrEi54Bbs0fo" alt="" data-size="line">) entry will be automatically created in the [Prompt Table](https://docs.plumvoice.com/fuse/audio-manager#prompt-table) for every menu option available. (“For *value*, press *DTMF*.”<img src="/files/-M4u9_01zUA4f80fGCc6" alt="" data-size="line">)

### **Clearing Prompts**

|                                                                                                                                         | ![](https://docs.plumvoice.com/fuse/_media/modules:module-menu6.png) | ![](https://docs.plumvoice.com/fuse/_media/modules:module-menu7.png) |
| --------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- |
| The built-in prompt can be changed to a different text, or blank out completely if the entire menu resides within the user prompt text. | <img src="/files/-M5NbiYHxTNKH8hSmKi3" alt="" data-size="original">  | <img src="/files/-M5NbiYIgx43CowZgpf5" alt="" data-size="original">  |

### **Repeat**

|                                                                                                                                                                                                                                                                                                                                                                                                                                                            |                                                                     |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------- |
| <p>In the scenario where there is a repeat option, if there are no inputs, or if the caller entered an invalid choice, the entire module prompts will be repeated to the caller.<br><br>If there are any portion of the voice prompts that should not be repeated, they should be separated out in a <a href="/pages/-M5Nb29b-ktAjkU5E8FZ">Prompt</a> (<img src="/files/-M4u9_1MzyyDWNLg7bX1" alt="" data-size="line">) module before the menu system,</p> | <img src="/files/-M5NbiYJgOQYxSr0R30V" alt="" data-size="original"> |

### **Branching**

If the user input matches one of the menu options that is listed, the call flow will follow the path to the node on the side of the menu option (<img src="/files/-M4u9_19orhILiV0y114" alt="" data-size="line">).\
If the option node is not connected (<img src="/files/-M4u9_1A9v643zFlaxHc" alt="" data-size="line">), then call-flow will go through the bottom node of the module (<img src="/files/-M4u9_185Kdv8ooUivIA" alt="" data-size="line">).

This can be useful to capture multiple selections that follows the call flow without needing to create a link for all the options available. The menu variable can then be used to determine the value that was set.

See the following example:

|                                                                                                                                                                                                                                                                                                                                                        | ![](https://docs.plumvoice.com/fuse/_media/modules:module-menu3.png) |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------- |
| <p>The call reaches the <em>fruit\_menu</em> module that awaits for a DTMF entry<br><br>The call path will be different depending on the caller's input:<br><strong>1</strong>: Goes right to <em>apple\_menu</em><br><strong>2</strong>-<strong>5</strong>: Goes down to <em>fruit\_result\_prompt</em><br><strong>Other</strong>: No Match error</p> | <img src="/files/-M5NbiYEYz-bM3N4S2ek" alt="" data-size="original">  |

## **Module Settings**

![](/files/-M5NbiZ4qlRrbqN2yiKu)

### [Barge In](/fuse/module-settings.md#barge-in)

|                                                                     |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <img src="/files/-M5NbiYYxRnf29GOm3YO" alt="" data-size="original"> | <p>This setting allows callers to interrupt a prompt before it finishes playing.<br>When enabled, DTMF input interrupts the prompt and progresses the call forward in the call-flow. If speech recognition is enabled on the ensuing module in the call-flow, then end-users can also interrupt the prompt with a spoken utterance, too. Disabling barge-in forces callers to listen to the entire prompt.<br><br>A barge-in enabled module will have a dashed line on top of the text box. See example <a href="/pages/-M4zJLOnor8aJqMZ7an7#visual-indicators">here</a>.</p> |

### [**Enable Speech Input (Menu)**](/fuse/module-settings.md#enable-speech-input-menu)

|                                                                     |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <img src="/files/-M5NbiYdHGfefmrEZUR_" alt="" data-size="original"> | <p>This setting enables Automatic Speech Recognition (ASR) for the menu module.<br>A green microphone (<img src="/files/-M4u9_1letfsNlNQcxxt" alt="" data-size="line">) icon appears in the module when this is enabled.<br><br>Enabling speech recognition generates an additional column in the module called ‘<em>Utterance</em>’.<br>Each option line includes a DTMF input, a speech utterance, and a corresponding value.<br>The DTMF and speech inputs can be different, as the system expects the utterance as speech input, but the menu variable will carry the actual value.<br><br><img src="/files/-M5NbiYDLXsaNmXApg6z" alt="" data-size="original"><br><br>With the example above, if the user press 1 or says “Eastern”, the <em>sample\_voice\_menu</em> variable will carry the value “est”.<br><br><em><strong>Note</strong></em>: Utterance is required to be filled when expecting any speech input. Even if the utterance is the same as value, the utterance field cannot be blank.<br>For accepting multiple utterances for a selection, a new, separate choice needs to be created and they can both branch into the same module, or have the same value.<br><br>The audio manager auto-generates prompts for these options in the format of “<em>For \<value>, Press \<DTMF> or say \<utterance></em>”.<br><br>To set the utterance for other languages in the application, the corresponding language tab in audio manager will have an utterance entry for each choice, along with an utterance icon (<img src="/files/-M4u9_1zrRhZTHxHVHPM" alt="" data-size="line">) in the left and the primary language text underneath for identification.</p> |

### [**Interdigit Timeout**](/fuse/module-settings.md#interdigit-timeout)

| ![](/files/9T5R1DvdfB539xCHA3qb) | <p>This allows users to set the maximum time, in seconds, that elapse between inputting digits before returning a timeout error. This applies to all input modules that accept multiple digits, like Date/Time, Number, and Digits.</p><p></p><p>The default value is 1 second. Acceptable number values range from 1 to 60.</p> |
| -------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

### [Private](/fuse/module-settings.md#private)

|                                                                     |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| <img src="/files/-M5NbiYoLH9-yNY0kT9f" alt="" data-size="original"> | <p>This setting controls the logging function of a module.<br>Enabling the 'Private' setting instructs the module to not record, report, or retain the information input to that module for reporting or any other purposes. When enabled any information entered into a module during a call will be lost immediately when the call terminates.<br>The 'Private' setting is critical for businesses that need to maintain PCI-DSS or HIPAA compliance.<br><br>The module icon, in the upper left-hand corner, becomes grayed-out when this setting is enabled. See more details <a href="/pages/-M4zJLOnor8aJqMZ7an7#visual-indicators">here</a>.</p> |

### [**Show Custom Errors**](/fuse/module-settings.md#show-custom-errors)

|                                                                     |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <img src="/files/-M5NbiYpIlBkq4cl4qvN" alt="" data-size="original"> | <p>Enabling this setting overrides the default, global error options set in the <em>Application Settings</em> > <a href="/pages/-M4z6BCTQuqNA3eCMpwL"><em>User Input Settings</em></a>.<br>This allows users to establish custom error handling in order to act on errors in a specific way in that module.<br>Instead of progressing to the next module in the call-flow, custom error handling allows users to re-prompt the same module, to provide a custom error message, to re-direct the call based on the error, or any other desired behavior.<br><br><img src="/files/-M5NbiYbI6eYm52-OxpX" alt="" data-size="original"><br><br>Adding multiple errors (<img src="/files/-M4u9_-hAMbYcqwmycsz" alt="" data-size="line">) to a module functions behave the same way as a counter.<br>The first error follows the path for the first error listed, if a second error occurs in the same module it follows the second listed error, and so on until all errors are exhausted or an error directs the end-user away from that module.<br><br><img src="/files/-M5NbiY_foh37_Qrs6hH" alt="" data-size="original"> No Input occurs when the caller does not provide an input based on the timeout settings.<br>This is based on the “<em>Initial input timeout</em>” in <a href="/pages/-M4z6BCTQuqNA3eCMpwL">User Input Settings</a><br><br><img src="/files/-M5NbiYaOoi9NNH22Sav" alt="" data-size="original"> No Match occurs when the caller input does not match the module's criteria for the input module.</p> |

### [Timeout Length](/fuse/module-settings.md#timeout-length)

|                                                                     |                                                                                                                                                                                                                                                                                                                     |
| ------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <img src="/files/-M5NbiYv3-c_ACDrj4Um" alt="" data-size="original"> | <p>This allows users to set the maximum time, in seconds, that elapse before returning a timeout error. This applies modules that fetch outside scripts, like the SOAP, REST, or subdialog modules.<br><br>The default value for Timeout Length is 30 seconds.<br>Acceptable number values range from 1 to 120.</p> |

### **Advanced Settings**

Advanced Fuse users may want to use shadow variables that are available with input modules. For more information on this functionality, please visit the [Shadow Variables](/fuse/variables/shadow-variables.md) page.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.plumvoice.com/fuse/input/menu.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
