# 4. Conduza a conversa com Condições

Além de serem reutilizadas dentro da própria conversa, as variáveis podem ajudar o bot a direcionar a conversa para diferentes rumos, usando blocos de Condição.

<figure><img src="/files/375f2919e5ce9af50efc3986031e8592b5013c41" alt=""><figcaption><p>O que construiremos na lição 4. </p></figcaption></figure>

## Passo 8: Verificar uma variável em um bloco de Condição

Nosso bot Bee agora pergunta se o usuário é novo, e em seguida pede informações do usuário.

Gostaríamos que o Bee desse uma resposta ligeiramente diferente dependendo se o usuário é novo ou está retornando. Para isso, precisaremos de um **bloco de Condição** bloco que verifica a variável {userType}.

<figure><img src="/files/4dd2d0d8e26ce54b2f96fcb8358ab655b188b870" alt=""><figcaption><p>O tipo de bloco Condição.</p></figcaption></figure>

{% hint style="success" %}
&#x20;[bloco de Condição](https://docs.chatlayer.ai/bot-answers/dialog-state/plugins) blocos permitem que seu bot redirecione o usuário para outro bloco dependendo das condições das variáveis de sessão, seguindo uma lógica if-then.
{% endhint %}

### Obter variáveis ao clicar em botões

Vamos salvar uma variável {userType} ao clicar no botão **Verificar tipo de usuário** neste bloco. Essa variável pode ter o valor *retornando* ou *novo*.

Para salvar uma variável ao clicar em um botão:

1. Abra a **Verificar tipo de usuário** bloco.
2. No primeiro **Sou novo** botão, clique em **+ Adicionar uma variável** e crie a variável *userType.*

<figure><img src="/files/055e9e70b9b37e2127ce2024ac7a5dbe60782c35" alt="" width="302"><figcaption><p>Crie uma variável ao clicar em um botão.</p></figcaption></figure>

3. Adicione o valor *novo*.
4. Para o segundo botão, faça o mesmo com o valor *retornando*.

<figure><img src="/files/2acf8336a86292d5d8becef4cea40cdb842179c6" alt=""><figcaption><p>Faça seus botões Ir para capturarem variáveis.</p></figcaption></figure>

5. **Salvar** suas alterações.

Agora, quando um usuário clicar em um desses botões, o sistema lembrará da variável {userType}. Vamos utilizar essa variável dentro de um bloco de Condição.

### Adicionar um bloco de Condição

Nosso objetivo é criar um bloco de Condição que avalie a variável {userType} e forneça uma resposta diferente com base em seu valor.

Para adicionar um bloco de Condição:

1. Abra a **Próximo bloco** bloco.
2. Vá para seu **Configurações**.
3. Altere seu Tipo para **bloco de Condição**.

<figure><img src="/files/17a80601f85b840cc87c34245b5e7c2b2c3fec9a" alt=""><figcaption><p>Altere o tipo de diálogo de um bloco nas suas Configurações.</p></figcaption></figure>

4. Você verá uma mensagem de aviso. Clique **Sim, alterar tipo**.
5. Em **Nome do diálogo do bot**, altere o nome do bloco para *Roteador userType*.

<figure><img src="/files/8a3a6ed405650ef3573ae8bdd460f2f88eb82fcc" alt=""><figcaption><p>Altere o nome de um bloco nas suas Configurações.</p></figcaption></figure>

6. Volte para sua configuração e clique no **+** para adicionar sua primeira condição.
7. Preencha o bloco da seguinte forma, usando o **operador igual sem diferenciar maiúsculas de minúsculas**:
   * Se {userType} = novo,
     * então Ir para **Enviar e-mail novo usuário**. Você pode criar esse novo bloco diretamente a partir do campo de texto.
   * Caso contrário, se {userType} = retornando,
     * então Ir para **Enviar e-mail retornando usuário**. Você pode criar esse novo bloco diretamente a partir do campo de texto.
   * Caso contrário:
     * Ir para **Ocorreu um erro**.

{% hint style="success" %}
O bloco Ocorreu um Erro é um [bloco padrão](https://docs.chatlayer.ai/bot-answers/dialog-state#default-blocks) acionado quando uma integração de API não consegue completar uma determinada solicitação, ou quando o Chatlayer considera que seu bot entrou em um loop bloqueado.
{% endhint %}

Sua janela deve ficar assim:

<figure><img src="/files/f6e6b2c4ab01bbae7a396b094a031999bb2ffdee" alt=""><figcaption><p>Preencha seu bloco de Condição com condições.</p></figcaption></figure>

8. **Salvar** suas alterações.

Seu canvas está um pouco bagunçado agora, e isso é totalmente normal. Vamos organizá-lo um pouco:

### Organize seu fluxo

Para reorganizar seu fluxo quando estiver bagunçado, clique no botão **Auto-layout** no canto inferior direito do seu canvas.

<figure><img src="/files/060900c1a9ab3e7696fd40a54ff74e6a1c21f3e5" alt=""><figcaption></figcaption></figure>

O que criamos deve ficar assim agora:

<figure><img src="/files/385623ba13c274ec79e5e54414a6be33edc8be14" alt=""><figcaption><p>Como seu canvas deve parecer neste ponto.</p></figcaption></figure>

## Resumo da lição 4

Parabéns! Nesta lição, você aprendeu a:

* [ ] Armazenar variáveis a partir de cliques em botões.
* [ ] Adicionar um bloco de Condição.
* [ ] Verificar variáveis dentro de um bloco de Condição e direcionar a conversa de acordo.
* [ ] Organizar seu canvas usando Auto-layout.

## O que vem a seguir

A seguir, veremos como conectar seu bot a provedores terceiros para que você aproveite as funcionalidades do seu bot.

{% content-ref url="/pages/66aa3cf8f1d49d01d4f8c94c9d8c49d4f725add7" %}
[5. Potencialize seu bot com Ações](/chatlayer-documentation-pt-br/comece-rapidamente/leadzy-tutorial/5.-empower-your-bot-with-actions.md)
{% endcontent-ref %}

## 💬 Feedback

{% hint style="warning" %}
Seu feedback sobre o tutorial significa muito para nós! Por favor, conte-nos o que você acha através de [este formulário curto.](https://forms.office.com/Pages/ResponsePage.aspx?id=ropROyGJe0qEl2GddWziDlEYn6XpsIRDjnCtdRk8L21UMFZMMlAzN0tHOTI4UjMxVTgzTVAwTE5aOCQlQCN0PWcu)
{% endhint %}


---

# 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.chatlayer.ai/chatlayer-documentation-pt-br/comece-rapidamente/leadzy-tutorial/4.-steer-the-conversation-with-conditions.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.
