# Canais

No Zenvia NLU é possível vincular o seu assistente a mais de um canal de atendimento. Temos algumas opções disponíveis, como:&#x20;

* [Google Business Message](/connect/canais/google-business-messages.md)
* [Bot API](/connect/canais/bot_api.md)
* [Facebook](/connect/canais/facebook.md)
* [Google RCS](/connect/canais/google_rcs.md)
* [Microsoft Teams](/connect/canais/microsoft-teams.md)
* [WhatsApp](/connect/canais/whatsapp.md)
  * [Zenvia](/connect/canais/whatsapp/zenvia.md)
  * [Blip](/connect/canais/whatsapp/blip.md)
  * [Wavy](/connect/canais/whatsapp/wavy.md)
  * [Infobip](/connect/canais/whatsapp/infobip.md)
  * [Liveperson](/connect/canais/whatsapp/liveperson.md)
* [Widget](/connect/canais/widget.md)
* [Workplace](/connect/canais/workplace.md)
* [Live chat](/connect/live-chat.md)
* Telegram

## Visão geral

Esta é a tela principal da visão de todos os canais:

<figure><img src="/files/QResQCChWid3GeXaZqhw" alt=""><figcaption></figcaption></figure>

Para criar uma integração, acesse o conteúdo do canal escolhido.

## Output/Input por canal

Além do objeto `default` é possível definir tratamentos específicos para cada canal, tanto no output, quanto no input. Em ambos os casos, deve-se considerar a compatibilidade deles com os canais.

{% tabs %}
{% tab title="Exemplo de uso: output" %}
**No output** basta adicionar um novo objeto seguindo o modelo `default`com o nome do canal desejado. \
\
Veja um exemplo de configuração:&#x20;

```
[
    {
        "default": {
            "text": [
                "Bom dia",
                "Olá! Tudo bem?",
                "Saudações!"
            ],
            "type": "random_text"
        }
    },
    {
        "widget": {
            "text": "Você está acessando esse chat pelo Widget",
            "type": "text"
        }
    },
    {
        "liveperson": {
            "text": "Você está acessando esse chat pela LivePerson",
            "type": "text"
        }
    }
]
```

Quando tentar  acessar o chat pelo `widget` será exibido um dos textos randômicos e, logo a seguir, o **output** definido para o canal: "Você está acessando esse chat pelo Widget".

![](/files/-MCSNNGOnjIP1F0PFz2s)
{% endtab %}

{% tab title="Exemplo de uso: input " %}
**No Input**, caso haja um canal explícito, ele terá prioridade sobre o `default`. Em outras palavras, será exibido o canal `default` ou o canal especificado, nunca os dois ao mesmo tempo. \
\
Abaixo foi definido o canal `widget`

```
{
    "widget": {
        "type": "quick_replies",
        "payload": {
            "replies": [
                {
                    "title": "Sim",
                    "value": "Sim"
                },
                {
                    "title": "Não",
                    "value": "Não"
                }
            ]
        }
    },
    "liveperson": {
        "type": "file",
        "payload": {}
    }
}
```

Se acessarmos o chat por meio desse mesmo canal, somente o componente `quick_replies` será exibido: \ <br>

<div align="center"><img src="/files/-MCSc3yn_68q7yFgau9l" alt=""></div>
{% endtab %}
{% endtabs %}

##


---

# 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.altu.d1.cx/connect/canais.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.
