# Quick Reply Array Action

This action will display multiple quick reply buttons with a common interaction target. Use this action when you want to give the user multiple choices but you need to redirect the flow to a common interaction like, for example, when creating a survey.&#x20;

![](https://content.gitbook.com/content/tZEstFBYh3uMutlup6ku/blobs/4VGLd7UzsjUArrFzFzwC/image.png)

### Settings

The action uses the following settings:

| Setting                        | Description                                                                                                                                                                                   | [Parsed](../dynamic-parsing) |
| ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------- |
| Buttons                        | The list of buttons to be displayed. Buttons can be separated by a pipe (\|) or by a new line.                                                                                                | :white\_check\_mark:         |
| Variable Name                  | The name of the variable that will hold the full text of the clicked button.                                                                                                                  | :white\_check\_mark:         |
| From Url                       | Associate an image to all buttons retrieving it from an external URL.                                                                                                                         | :no\_entry:                  |
| Upload To Storage              | Associate an image to all buttons retrieving it from [your Xenioo Account storage](../../basic-concepts/your-account/the-free-plan).                                                          | :no\_entry:                  |
| Image URL                      | The fully qualified URL of the image                                                                                                                                                          | :white\_check\_mark:         |
| Override Keyboard Mode         | If enabled will replace the standard [Telegram ](../../basic-concepts/publishing/channels/telegram)Keyboard with a custom one made of all the buttons in this array. See [Remarks](#remarks). | :no\_entry:                  |
| Auto-Hide Keyboard After Click | If enabled will automatically hide the custom keyboard when the user select a button or moves away from the flow                                                                              | :no\_entry:                  |

### Remarks

By default, this action is created with an empty Go To Operation attached. The operation can be removed if not required by your chatbot flow.\
\
The Override Keyboard Mode is currently supported only by the [Telegram ](../../basic-concepts/publishing/channels/telegram)channel. By mixing new lines separators and pipes (|) you can build advanced custom keyboards.&#x20;

![](https://content.gitbook.com/content/tZEstFBYh3uMutlup6ku/blobs/Yn6EpjiClrOchiiqboKN/image.png)

By using this action you can also create specific buttons layouts that cannot be created using [single Quickreply buttons](xenioo.bots.actions.base.buttonaction).

![](https://content.gitbook.com/content/tZEstFBYh3uMutlup6ku/blobs/ia7eXO9Fd81hdtBZ73LS/image.png)

{% hint style="warning" %}
[Telegram ](../../basic-concepts/publishing/channels/telegram)does not allow buttons to be displayed without any preceding text. Please make sure to have at [least one text bubble](xenioo.bots.actions.base.textaction) before any quick button or no button will be displayed.
{% endhint %}

By default, the custom keyboard on telegram will be hidden as soon as the user clicks on a button or types something that receives a reply. To override this behaviour, disable the "Auto-Hide Keyboard after click" flag. Please see [Telegram ](../../basic-concepts/publishing/channels/telegram)channel variables and[ Device State](../iot/xenioo.bots.actions.base.controldevicestateaction) action for further information on how to hide or check for keyboard state.

### Trigger

On User Click. This action will trigger any child operation as the user clicks any of the generated buttons.

### Variables

This action produces a variable as specified under "Variable Name" of settings containing the full text of the clicked button.

### Availability

Channel specific availability follows the table below:

| Channel          | Availability                                                                                                          |
| ---------------- | --------------------------------------------------------------------------------------------------------------------- |
| Facebook         | Fully Available. A maximum of 11 buttons can be displayed at once.                                                    |
| WhatsApp         | **Not Available**                                                                                                     |
| Telegram         | Fully Available. Can only be displayed after a [text bubble](xenioo.bots.actions.base.textaction) has been displayed. |
| Web              | Fully Available                                                                                                       |
| Alexa            | **Not Available**                                                                                                     |
| Google Assistant | Available only on Screen enabled devices.Other devices will ignore the content.                                       |
| Slack            | Fully Available                                                                                                       |
| API              | Fully Available                                                                                                       |

This action can be used only inside interactions and not as child of other actions.
