> For the complete documentation index, see [llms.txt](https://docs.pascom.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.pascom.net/en/setup/acd/ivr.md).

# IVR Menus

Interactive Voice Response (IVR) menus are used to steer and direct callers through option menus to enhance call routing and customer service.

{% embed url="<https://www.youtube.com/watch?v=HBtdUH0Y2Do>" %}

## Concept

IVRs (Interactive Voice Response Menus) are used to route a caller through the phone system by selecting menu options via their telephone keypad. For example, 50 % of all calls to the central switchboard might actually be intended for the sales or support department. In this case, using an IVR to direct calls to the relevant department directly could be beneficial in taking some load of off the [central switchboard](https://www.pascom.net/en/call-contact-center/).

The IVR could then offer the following options to the user:

> "Press **1** to talk to the **sales department** or **2** if you wish to talk to our **support staff**. If you would like to be directed to the **central office**, please **hold** ..."

### Process flow of an IVR

When a IVR menu is entered, the following procedures are executed:

![IVR Call Flow](https://2713225-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVIw0BpSv358R2Pr2HflD%2Fuploads%2Fgit-blob-4b68de5dd875b1c9cf7db20e345fc62bca5fe4d7%2Fivr-call-flow.en.png?alt=media)

As the first step of the IVR flow, an announcement you choose is played. To learn how to record your own announcements, please see Custom Prompts and Music On Hold. Your announcement could be structured similar to this example:

> "Press 1 for sales department or 2 for the support department. If you do not select any option, you will automatically be directed to the central office..."

After the announcement, the system waits for the user to press a key for as long for a specified amount of time which you can set using the **timeout** function in the IVR menu. In our experience, a 5 second timeout is usually enough.

If the caller presses a button with a corresponding **entry**, the associated actions will then be carried out.

If the caller presses a button with **no corresponding entry**, the entry with the special number i (as in Invalid) is called. Actions associated with this number should make the caller aware of the invalid key that was pressed and should offer the IVR menu to the caller again.

If the caller **doesn't press any button** during the **timeout**, the entry with the special number t (as in Timeout) is called. Actions associated with this number should make the caller aware that no key was pressed and should offer the IVR menu to the caller again or the caller should be put through to the central office.

### Multi-Stage IVRs

In many scenarios it makes sense to ask several questions in a row to put callers through to their desired destination. Firstly, you could ask the callers if they wished to be put through to the support department and then ask for a more specific support category (problems concering Windows, Linux, etc.) to select the appropriate staff member they can then talk to.

To create multi-stage IVRs, you can create any number of IVRs and forward calls from one IVR to another. This way, an arbitrary number of IVRs can be implemented.

{% hint style="success" %}
Preferably, you should not create nested IVRs that are deeper than two levels. Higher complexity leads to confusion and this is usually frustrating for the caller and therefore is not desirable.
{% endhint %}

## Configuration

### Maintaining IVRs

In the PASCOM web interface, select **ACD** > **IVR**. To add a new IVR, press **Add**. To modify an existing IVR, select it from the list and press **Edit**.

| Parameter       | Explanation                                                                                                                                                                                                                                                                                                    |
| --------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Title           | The title of the IVR menu.                                                                                                                                                                                                                                                                                     |
| Answer channel  | Usually, the channel is answered immediately if there is hold music to be played or an announcement to be made. This option allows you to configure a delay (in milliseconds). In some cases, immediate answering of a call leads to the first syllable being skipped. The delay time mitigates this problem.. |
| Timeout         | The time in seconds that PASCOM waits for the caller to press a key after playing the announcements.                                                                                                                                                                                                           |
| Extension       | The extension number for this IVR menu.                                                                                                                                                                                                                                                                        |
| Upstream prompt | This announcement is played when the menu is entered and should contain text similar to "Press 1 to ..., 2 for ..., etc". To learn how to record your own announcements, please see Custom Prompts and Music On Hold.                                                                                          |

### Creating entries

In the PASCOM web interface, select **ACD** > **IVR**. Select the IVR you wish to config / edit options for and press the **Entries** button. Here, you can define the available options (and configure the corresponding key) and how they should be handled once selected by the caller:

Press the **Add** button to create a new entry.

| Parameter | Explanation                                                                                                                                                                                                                                                                                                                                                       |
| --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Title     | General title for the entry.                                                                                                                                                                                                                                                                                                                                      |
| Number    | The key pressed by the caller. Valid keys are arbitrary **numbers** or **sequences of numbers**. Special numbers are **t** for timeout and **i** to signal that an invalid key was pressed (note that these two are characters and not numbers). To avoid overlapping keys either use single, double or triple digit combinations and avoid mixing these numbers. |

### Adding Actions to an Entry

For each entry, corresponding actions must exist that are to be carried out if and when a certain button is pressed.

In the PASCOM web interface, select **ACD** > **IVR**, select the desired IVR and click the **Entries** button. Select the entry you want to modify and press the **Edit** button. Actions pertaining to the entry can be found in the **Intern** and **Extern** tabs.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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 following URL with the `ask` and `goal` query parameters:

```
GET https://docs.pascom.net/en/setup/acd/ivr.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `build a script that syncs our docs to a CMS` lets GitBook tailor the answer to that use case.

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.
