# Um chatbot simples

Criar um chatbot na plataforma Mavibot é bastante simples se você tiver concluído a seção “Noções básicas de construção de bots no Mavibot”, que explica os fundamentos de trabalhar com o construtor de funil (editor), com tipos de blocos e setas, com tipos de anexos, botões, além de uma calculadora, etc.

{% hint style="info" %}
Antes de começar a criar um chatbot simples, recomendamos fortemente que você estude a seção “Noções básicas de construção de bots no Mavibot”! ссылка “[Основы botостроения Salebot](broken://pages/05ea9b8f02ec02935daccc8294c7c18076ac940b)”!
{% endhint %}

## Como criar um bloco

Para criar o primeiro bloco no funil, clique duas vezes com o botão esquerdo do mouse no campo do editor:

<figure><img src="/files/988672357c6e059ef0a5f8b8bcff45115034765e" alt="" width="563"><figcaption><p>Como criar um bloco com um clique do mouse</p></figcaption></figure>

Como você pode ver no exemplo acima, o bloco pode ser movido por todo o editor de campos selecionando qualquer local conveniente.

Você também pode criar um bloco simplesmente clicando em "Salvar" na parte inferior da tela e selecionando seu tipo:

<figure><img src="/files/a72343827df0da8715a4c32da5f8a236f246a567" alt="" width="563"><figcaption><p>Como criar um bloco com escolha de tipo</p></figcaption></figure>

Você pode selecionar os seguintes tipos de bloco para iniciar o chatbot: "Iniciar um diálogo" ou "Verificação da condição primária":

<figure><img src="/files/bdb9bcb1a1a88ab8866e8aad19025e46015b6ef6" alt="" width="531"><figcaption><p>Fig. 1</p></figcaption></figure>

Sabemos pelo artigo "Criando blocos e seus tipos" ссылка [Создание блоков и их типы](broken://pages/18671fff0a42fa51b34fa4b209ccb1f1fa09263f)" que o tipo de bloco "Verificação da condição primária" tem a prioridade mais alta: assim como o tipo de bloco "Início do diálogo", a cadeia do diagrama de blocos do seu chatbot pode ser iniciada a partir dele&#x20;

Tecnicamente, a principal diferença é que, se houver um bloco com o tipo "Verificação da condição primária" no esquema do chatbot e se o usuário inserir uma palavra-chave (frase) desse bloco durante o diálogo, a conversa com o cliente continuará a partir desse bloco.\
Isso permite que você dê flexibilidade adicional à estrutura do diálogo, e o cliente pode obter imediatamente o que precisa (por exemplo, fechar um negócio com você ou se inscrever no seu curso).

Nas condições do bloco, você precisa especificar uma palavra-chave (por exemplo, a tag de uma mini landing page/site ou outra frase necessária para o bot funcionar, "Oi; olá, separadas por ponto e vírgula), à qual o bot responderá:

<figure><img src="/files/6283aeec279ba2f72a30575e2a9c253292ed29fd" alt="" width="523"><figcaption><p>Fig. 2 Exemplo de preenchimento do bloco para um chatbot</p></figcaption></figure>

Como pode ser visto no exemplo acima (Fig. 2), na condição do bloco, especificamos a tag da mini landing page criada na plataforma Mavibot, a partir da qual ocorrerá a assinatura, e no campo "Seleção de correspondência", selecionamos o tipo "correspondência exata".

Se necessário, você pode especificar palavras-chave de outro tipo na condição (por exemplo, "Oi, Olá", etc.). Nesse caso, selecione o tipo de correspondência "Ignorando erros e imprecisões", que ajudará o bot a reconhecer palavras-chave nas mensagens dos seus clientes escritas com erros de digitação ou equívocos:

<figure><img src="/files/a2a8c164badd43f59c7698c35ce8e88bd42eebf2" alt="" width="563"><figcaption><p>Reação do bloco a frases-chave com erros</p></figcaption></figure>

## Como criar o bloco seguinte no diagrama e especificar as condições da seta

Arraste a seta do primeiro bloco para baixo. Dessa forma, o construtor cria automaticamente um novo bloco e usa a seta para conectar os blocos em um único esquema, o que permitirá que o cliente avance no funil:

<figure><img src="/files/a01a7d2de250a3900a319be5d18a4a3c226229f2" alt="" width="563"><figcaption><p>Criando um novo bloco no diagrama</p></figcaption></figure>

Nas configurações da seta, vamos especificar condições para que o chatbot colete os dados inseridos pelo usuário e os salve na variável de que precisamos.

Para isso, vá para as configurações da seta, onde você precisa ativar o botão "Usuário insere dados" e também especificar a variável na qual o chatbot salvará os dados do cliente:

<figure><img src="/files/454aaaeb953cd4f6789559646991b4e67c31878b" alt="" width="563"><figcaption><p>Fig. 3</p></figcaption></figure>

Depois que o usuário enviar seu nome na mensagem, o bot o escreverá na variável necessária:

<figure><img src="/files/679912674ebea4d2e078d1a79f8e4c085157889b" alt="" width="563"><figcaption><p>Fig. 4. O cartão do cliente com seus dados</p></figcaption></figure>

No segundo bloco do diagrama, escreveremos uma mensagem que solicitará a idade do seu cliente. Para isso, use expressões regulares. ссылка[expressões regulares](broken://pages/d3e2a9fb83dcb20a12d0282f85c8491ce2d733b9).&#x20;

> Expressões regulares usadas neste artigo:
>
> 1. número de celular  -> ^((\\+7|7|8)+(\[0-9]){10})$
> 2. email -> ^\[-\w.]+@(\[A-z0-9]\[-A-z0-9]+\\.)+\[A-z]{2,4}$
> 3. inserção de números (para idade) -> ^\[1-9]+\[0-9]\*$
>
> Veja a lista completa de expressões regulares aqui. ссылка [aqui](broken://pages/d3e2a9fb83dcb20a12d0282f85c8491ce2d733b9).&#x20;

No campo de mensagem do segundo bloco do diagrama do Chatbot, escreva a pergunta necessária: por exemplo, "Quantos anos você tem?":

<figure><img src="/files/d05dcb31246abdea00f1785e6ba3df7ff6899548" alt="" width="563"><figcaption><p>Fig. 5. Mensagem para o usuário</p></figcaption></figure>

Em seguida, siga estas etapas:

Etapa 1. Arraste a seta do segundo bloco para criar o próximo bloco do diagrama da mesma forma que o anterior foi criado.

Etapa 2. Nas configurações da seta, na condição, escreva uma expressão regular como ^\[1-9]+\[0-9]\*$ e selecione o tipo de correspondência "Expressão Regular"

<figure><img src="/files/c849369d2d6d94166fd445da4afa316c9e741b1c" alt="" width="503"><figcaption><p>Fig. 6. Usando uma expressão regular</p></figcaption></figure>

{% hint style="warning" %}
Lembre-se: a opção de correspondência ao usar expressões regulares precisa ser "Expressão Regular", caso contrário o esquema do chatbot funcionará com erros!
{% endhint %}

Etapa 3. Nas configurações da seta, ative o botão "Usuário insere dados" e informe o nome da variável onde o chatbot salvará os dados do cliente:

<figure><img src="/files/4d1c8cbe8943355dd7989736e90b00002c68980f" alt="" width="439"><figcaption><p>Fig. 7. </p></figcaption></figure>

O exemplo (Fig. 8) mostra que o chatbot escreve os dados do cliente no cartão dele:

<figure><img src="/files/d2367ced25f9c2d3d75f7c16f1caa3ef34390ee7" alt="" width="563"><figcaption><p>Fig. 8. O cartão do cliente com seus dados</p></figcaption></figure>

## Unidade de coleta de dados do cliente: número de telefone/email

Durante o diálogo com clientes, muitas vezes surge a necessidade de comunicação posterior com o cliente por telefone, mas surge a pergunta: como configurar um chatbot para coletar automaticamente informações sobre o cliente? Usando expressões regulares, é claro.

Para usar a função de coleta de número de telefone (ou email), use as seguintes expressões regulares:

1. Número de celular (Rússia): ^((\\+7|7|8)+(\[0-9]){10})$&#x20;
2. Número de celular (com qualquer código de país): ^(\\+)?((\d{2,3}) ?\d|\d)((\[ -]?\d)|( ?(\d{2,3}) ?)){5,12}\d$
3. E-mail: ^\[-\w.]+@(\[A-z0-9]\[-A-z0-9]+\\.)+\[A-z]{2,4}$

{% hint style="danger" %}
Certifique-se de que não haja espaço antes da expressão regular na condição da seta!

<img src="/files/116806400c64750c61ce2bfd33562a471247634d" alt="" data-size="original">

Caso contrário, o esquema do chatbot funcionará com erros.
{% endhint %}

{% hint style="info" %}
No esquema, usamos uma expressão regular para números de telefone de qualquer país.&#x20;
{% endhint %}

Assim como o bot registrou o nome e a idade do cliente, o número de telefone do usuário (ou endereço de email, se a expressão regular apropriada for selecionada) será adicionado ao sistema.

Crie um bloco no qual você usará o bot para enviar uma mensagem ao cliente pedindo que ele envie um número de telefone (ou email) para o usuário:

<figure><img src="/files/04355fe806880897183bea49aa7642259ed65b80" alt="" width="563"><figcaption><p>Fig. 9. O bloco com a mensagem para receber o número de telefone do cliente</p></figcaption></figure>

Em seguida, puxe a seta para fora deste bloco, onde a expressão regular correspondente precisa ser escrita na condição da seta.

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

{% hint style="success" %}
Como mencionado anteriormente, não se esqueça de definir a opção de correspondência como "Expressão regular" para evitar erros no chatbot.
{% endhint %}

Com a condição em que as expressões regulares são definidas, o chatbot aceitará apenas os valores do número de celular na forma de números e, no caso de um endereço postal, apenas os tipos padronizados estabelecidos de endereços postais.

Se o cliente enviou uma mensagem que não corresponde ao valor do número de telefone (email), você pode criar um bloco que informará ao cliente sobre os dados inseridos incorretamente:

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

Para isso, a partir do bloco onde você inseriu a mensagem para o número de telefone do cliente, deslize a segunda seta e escreva a mensagem necessária no bloco criado, por exemplo, "Isso não é um número de telefone. Por favor, informe o número de telefone!":

<figure><img src="/files/db61052ae937f7a7535a3919ebaee5f980041919" alt=""><figcaption><p>Fig. 11</p></figcaption></figure>

Selecione o tipo de bloco "Fora da condição" (Fig. 11). Esse bloco não tem uma condição como no bloco "Status do diálogo", mas você não pode ir para ele.

Em relação ao nosso esquema, o bloco "Não estado" será muito útil, porque então o usuário não mudará do último bloco, e para prosseguir pelo funil, ele precisará inserir um número de telefone:

<figure><img src="/files/6e91df03b40fb2ad928ff260cc89b17cc18091d9" alt="" width="563"><figcaption><p>Fig. 12</p></figcaption></figure>

{% hint style="info" %}
Você pode saber mais sobre as várias funções do bloco "Não estado" no artigo de mesmo nome. ссылка "[Не состояние](broken://pages/4ca2702013b6dc4899082ae01d502d278291c791)"&#x20;
{% endhint %}

## Blocos do próximo diálogo do bot com o cliente

Vamos começar a configurar blocos com botões; durante o clique do cliente, o chatbot responderá de acordo com as condições do botão (por exemplo, consentimento para pagamento; pagamento direto ou redirecionamento para outro site de terceiros, etc. funções).

Para isso, a partir do bloco marcado em vermelho na Fig. 12, puxe a seta para baixo, onde você pode definir o temporizador nas configurações:

<figure><img src="/files/040d1939ca39e55d4e3f70cec6e21a1d147d03c9" alt="" width="485"><figcaption><p>Fig. 13</p></figcaption></figure>

Para definir o temporizador, vá para as configurações da seta e defina o intervalo de tempo necessário, após o qual o chatbot enviará uma mensagem ao cliente:

<figure><img src="/files/73799e384fc05be82cca5396ef8c65be6cf9d49e" alt="" width="563"><figcaption><p>Fig. 14</p></figcaption></figure>

No próximo bloco, adicione os botões "Ligue-me hoje" e "Ligue-me amanhã".

{% hint style="info" %}
Leia mais sobre as configurações de botões no esquema do chatbot neste "artigo". ссылка [artigo](broken://pages/74ce604fce5dc31ee6456eb67302274a89872603).&#x20;

Para aprender como conectar e configurar sistemas de pagamento para realizar pagamentos em botões (links) no bot, veja a seção "Integrações" -> "Sistemas de pagamento". ссылка [Sistemas de pagamento](broken://pages/c1dc878f0c61b12d79f9688fe382f6a31f01d659)".&#x20;
{% endhint %}

### Como adicionar botões

Para adicionar botões que o chatbot enviará ao cliente, clique em "Botões" dentro das configurações do bloco:

<figure><img src="/files/2adfe58bead709e370949e3d429cd0594f92dca5" alt="" width="392"><figcaption><p>Fig. 15</p></figcaption></figure>

Em seguida, clique em "Adicionar botão".

<figure><img src="/files/7c26d5aab6409d51ace249ef8b8dc8a5f14666f5" alt="" width="386"><figcaption><p>Fig. 16</p></figcaption></figure>

Em seguida, abrirá uma janela para adicionar um botão, onde você precisa especificar o nome do botão e configurá-lo de acordo com suas necessidades:

<figure><img src="/files/927bdf4ab40fa7f234ecdea9c1f45b1639f39dd7" alt=""><figcaption></figcaption></figure>

Agora este bloco encaminhará os botões para o seu cliente, o que permitirá que você identifique posteriormente o melhor horário (em relação ao esquema feito neste artigo) para entrar em contato com ele:

<figure><img src="/files/bd106f38e9b1091e879c9eaee905d593ce6a8ef1" alt="" width="518"><figcaption><p>Fig. 17. O diálogo do bot na aba de testes</p></figcaption></figure>

O diálogo com o cliente será exibido na aba Clientes, onde você pode acompanhar todas as alterações nas conversas com os clientes:

<figure><img src="/files/ed821a56edc42494bf8319780183e2e28534dfe1" alt="" width="563"><figcaption><p>Fig. 18. Visualização do diálogo na aba "Clientes"</p></figcaption></figure>

Depois que o cliente clicar em um determinado botão, uma mensagem correspondente será enviada para o diálogo na aba "Clientes": por exemplo, "ligue-me hoje":

<figure><img src="/files/4f2019a6ab7b012c4eff3c8387bb8707e22ccdbe" alt="" width="347"><figcaption><p>Fig. 19</p></figcaption></figure>

### Fim dos blocos de encerramento do diálogo com o cliente

Depois de adicionar os botões, é necessário encerrar o diálogo com o cliente de alguma forma para não deixá-lo no escuro depois que ele clicar no botão correspondente.

Vamos criar dois blocos com setas saindo do bloco com os botões para isso:

<figure><img src="/files/3eda2b97ffff6fecf0e1f89981d85fbdbd5bc945" alt="" width="416"><figcaption><p>Fig. 20. Blocos de conclusão do diálogo</p></figcaption></figure>

Agora vamos escrever o nome de cada botão nas condições de cada seta:

<figure><img src="/files/4c282c6885f52021137ac96a37c41592f44258aa" alt="" width="533"><figcaption><p>Fig. 21</p></figcaption></figure>

Nas condições dos blocos criados, escreva as mensagens necessárias que o chatbot enviará quando o cliente clicar no botão:

<figure><img src="/files/99d0be97b4e58cff49d99c331b618fa403bd4090" alt=""><figcaption><p>Fig. 22. O bloco do chatbot que encerra o diálogo</p></figcaption></figure>

Agora o chatbot notificará o cliente de que sua solicitação foi aceita.

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

Na seção "Clientes", você pode ver a resposta do cliente e retornar a ligação em um horário conveniente, além de continuar o diálogo, se necessário, ou esclarecer detalhes.

Para verificar os dados que o cliente lhe enviou, vá para a aba "Clientes":

<figure><img src="/files/3ebd505d36d7917021ab6d50d4d88ab417a085f5" alt="" width="563"><figcaption><p>Fig. 23. Onde verificar os dados do cliente</p></figcaption></figure>

O esquema final do chatbot fica assim:

<figure><img src="/files/ea18aedbc3266b3437d6b520622581901ba59bf7" alt="" width="467"><figcaption><p>Fig. 24</p></figcaption></figure>

Assim, criamos um chatbot simples composto por apenas oito blocos, que recebe informações sobre o cliente e as registra em variáveis na forma de nome, idade e número de telefone, além de indicar quando é melhor para o seu gerente entrar em contato com o usuário.


---

# 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/como-fazer.../um-chatbot-simples.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.
