# Conexão com um gatilho

## O gat**ilho de campo**

Este campo especifica o gatilho para a transição para outro bloco.

<div data-with-frame="true"><figure><img src="/files/857fb05d4191f7738cb865810b4142a0792abf78" alt="" width="563"><figcaption></figcaption></figure></div>

{% hint style="success" %}
O gatilho de transição pode ser definido por uma palavra-chave (callback). Você pode ler mais sobre [Gatilhos e tipo de correspondência **aqui**](/doc/pt/chatbot/builder/setting/trigger/type.md).
{% endhint %}

{% hint style="info" %}
Se o **Gatilho** campo na conexão for deixado em branco, a transição ocorrerá com qualquer palavra ou frase do usuário.
{% endhint %}

### Gatilhos da conexão

Uma conexão com gatilho é uma conexão que ativa uma transição somente se um determinado gatilho for atendido.

<div data-with-frame="true"><figure><img src="/files/0ab03025e766ae54c2e9b634cadf2d36308319b8" alt="" width="563"><figcaption></figcaption></figure></div>

Os gatilhos da conexão podem ser definidos:

* Por uma determinada palavra (callback) — especificada no **Gatilho** campo.\
  Por exemplo, quando o **NÃO** botão é pressionado, o bot responde com **"Tenha um bom dia!"**. Você pode ler mais sobre isso **aqui**.\
  Ao mesmo tempo, palavras (callbacks) que a seta deve ignorar podem ser especificadas (usado principalmente quando o **Gatilho** campo está vazio).
* Analisando valores de variáveis — especificado no **Variável** campo. Você pode ler mais sobre isso **aqui**.

Além disso, é possível criar botões de teclado (resposta). Para fazer isso, basta inserir o texto do botão no **Gatilho** campo e ativar o **Exibir como botão** .

Você também pode especificar uma verificação da entrada do usuário no gatilho da conexão usando expressões regulares:

<div data-with-frame="true"><figure><img src="/files/b6e77dd06df176139f2776a4ae40745178665e2d" alt=""><figcaption></figcaption></figure></div>

Você também pode usar uma variável para comparação:

<div data-with-frame="true"><figure><img src="/files/9cca1bb8c7fdb6b51be8b20b44993a52d961a7c7" alt=""><figcaption></figcaption></figure></div>

<mark style="color:$warning;">**No entanto, de acordo com as regras de sintaxe, você não pode especificar vários gatilhos de comparação para a mesma variável em um único gatilho.**</mark>

<div data-with-frame="true"><figure><img src="/files/478c6389acb352e1fff58df94d1b0c8b5860f0a4" alt=""><figcaption></figcaption></figure></div>

Se você precisar verificar vários valores em uma condição, use os operadores **e (&&)**, **ou (||)**&#x65; outros.

{% hint style="info" %}
[Você pode ler mais sobre comparação de variáveis no artigo de mesmo nome.](/doc/pt/chatbot/functions/variaveis.md)
{% endhint %}

### Tipo de correspondência

Por padrão, **"Correspondência imprecisa"** está selecionado.&#x20;

No MaviBot, existem cinco tipos de correspondência de gatilho:

1. Correspondência imprecisa;\
   A condição será verificada por correspondências parciais com a entrada do usuário. Isso significa que, se o usuário inserir uma palavra ou frase com erros ou terminações diferentes, a condição ainda será acionada.
2. Correspondência por palavra-chave;\
   Se esta opção for selecionada, a transição será acionada se a resposta do usuário contiver pelo menos uma palavra-chave do campo "Gatilho".
3. Correspondência com RegEx;\
   A condição verifica a resposta do usuário em relação à expressão regular que você especificar.
4. Correspondência exata;\
   Esta condição verifica a palavra ou frase para uma correspondência exata, sem erros ou modificações.
5. Busca semântica.\
   Esta é a busca inteligente de semântica em uma mensagem do cliente com IA.

<div data-with-frame="true"><figure><img src="/files/917c50d3487b1a147b92a5464e7f1ed63e73d0a9" alt="" width="563"><figcaption></figcaption></figure></div>

{% hint style="info" %}
Por exemplo: validar formato de número de telefone, e-mail, entrada apenas de dígitos etc. Você pode ler mais sobre [expressões regulares **aqui**.](/doc/pt/chatbot/functions/regex.md)
{% endhint %}

### **Configurações avançadas da conexão**

Para abrir as configurações avançadas, clique em **"Configurações avançadas"** abaixo do **Tipo de correspondência** campo, como mostrado na imagem abaixo.

<div data-with-frame="true"><figure><img src="/files/d2546b6dbe862d78072adfb2ce8a02334f1cd70e" alt="" width="563"><figcaption></figcaption></figure></div>

### Ignorar gatilhos

Digite as "palavras negativas" aqui — palavras ou frases às quais o bot não deve responder ao verificar o gatilho.

<div data-with-frame="true"><figure><img src="/files/b961f6890afe59bc2deda34c679791f5bb461a91" alt="" width="563"><figcaption></figcaption></figure></div>

### Variável

A variável para comparação funciona junto com o gatilho ou com o traço de "Ignorar gatilhos". Ou seja, tanto o gatilho quanto o gatilho na variável devem ser atendidos.

<div data-with-frame="true"><figure><img src="/files/f5c7336865739a1e78c8df6333c6749570c36e01" alt="" width="563"><figcaption></figcaption></figure></div>

Se você especificar apenas o nome da variável no campo de variável de comparação, sem uma expressão, a condição será comparada com o valor da variável em vez da entrada do usuário.

{% hint style="warning" %}
Você deve especificá-lo sem `#{}`, usando apenas o nome da variável.
{% endhint %}

No exemplo mostrado na imagem abaixo, a transição ocorrerá se o valor da variável "IDADE":

<div data-with-frame="true"><figure><img src="/files/dee30d1f46e1f430f2d69cb77581328685b21c49" alt=""><figcaption></figcaption></figure></div>

O exemplo criou quatro blocos:

1. Um **Bloco Start** para entrar no bot: este bloco pergunta a idade do cliente.
2. Um **segundo bloco** com uma conexão que coleta os dados do cliente em uma variável (essa variável ajudará a encaminhar o cliente pelo funil).
3. **Dois blocos** conectados ao bloco anterior:
   * Se o cliente tiver **mais de 18 anos**, a mensagem "A segunda mensagem" será enviada.
   * Se o cliente tiver **menos de 18 anos**, a mensagem "Desculpe, você não pode enviar mensagem para o bot" será enviada.

<div data-with-frame="true"><figure><img src="/files/7809a0deca430135d179b43c4f949b76b5feec49" alt="" width="563"><figcaption></figcaption></figure></div>

<div data-with-frame="true"><figure><img src="/files/831baf58bc98b8b49624c807455f9638792ede1f" alt="" width="563"><figcaption></figcaption></figure></div>

{% hint style="success" %}
Saiba mais sobre conexões de coleta de dados no artigo "[Conexão com uma coleta de dados](/doc/pt/chatbot/builder/conexoes/data.md)".
{% endhint %}

Passo 1. Crie quatro blocos.

<figure><img src="/files/90ee650b3a087379a5111cb7ac57d7167e836131" alt="" width="375"><figcaption></figcaption></figure>

Passo 2. Conecte o bloco "Início" ao segundo bloco "Chat".

<div data-with-frame="true"><figure><img src="/files/231b8217f9122d667af5a046fda10c00ff6c0e43" alt="" width="563"><figcaption></figcaption></figure></div>

Passo 3. Vá para as configurações da conexão e ative a caixa de seleção "Coleta de dados".

<div data-with-frame="true"><figure><img src="/files/4b3fadef5cfaefa6d599c209c73d269d9babbf74" alt="" width="563"><figcaption></figcaption></figure></div>

Passo 4. Insira a variável no campo "Dados de entrada" e salve as configurações da conexão.

<figure><img src="/files/a8b668568758fe22f570e39cd0233fd1c1ddd2ed" alt="" width="563"><figcaption></figcaption></figure>

Passo 5. Conecte o segundo bloco aos blocos restantes.

<div data-with-frame="true"><figure><img src="/files/15a230fd72d7f9f96fe3a2ac5f123a47a3c7ab54" alt="" width="563"><figcaption></figcaption></figure></div>

Passo 6. Vá para as configurações da conexão e insira 'idade ≥ 18' no campo "Variável".

<div data-with-frame="true"><figure><img src="/files/c8e39fbd8b7c5cd7170aaff43975390be0008763" alt=""><figcaption></figcaption></figure></div>

Passo 7. Defina o temporizador para "0 segundos" no mesmo conector.

<div data-with-frame="true"><figure><img src="/files/8ce9d96bcdd29fde1a58ca47e435294ed78538b5" alt=""><figcaption></figcaption></figure></div>

Passo 8. Defina o valor para "idade < 18" e configure o conector de forma semelhante ao anterior.

<div data-with-frame="true"><figure><img src="/files/a3f8f57f5948b2ad4fcff7b300a76887c18aff51" alt=""><figcaption></figcaption></figure></div>

{% hint style="success" %}
Pronto! Você acabou de aprender como criar um bot que verifica a idade de um cliente e envia uma mensagem com base na idade dele!
{% endhint %}

### Prioridade

Por padrão, o valor de prioridade é definido como 10. Quanto maior a prioridade da condição, mais cedo ela será verificada.

<div data-with-frame="true"><figure><img src="/files/4cbe01d0d84afeb95be8433aa72c8c5c8928214e" alt="" width="563"><figcaption></figcaption></figure></div>

### Gatilho apenas de callback

Se esta opção estiver ativada, o cliente só avançará para o próximo bloco conectado pela seta se um callback for recebido pelo sistema.

<div data-with-frame="true"><figure><img src="/files/22643e52aa0e4f0687429031a72bcb6c630d6794" alt="" width="386"><figcaption></figcaption></figure></div>


---

# 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.mavibot.ai/doc/pt/chatbot/builder/conexoes/trigger.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.
