> For the complete documentation index, see [llms.txt](https://tutorial.botconversa.com.br/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://tutorial.botconversa.com.br/desafio-whatsapp-transformado-em-5-dias/primeiros-passos/como-funciona-o-construtor-do-botconversa.md).

# Como Funciona o Construtor do BotConversa

{% embed url="<https://adilo.bigcommand.com/watch/b1_2hT5F>" %}

{% hint style="warning" %}
IMPORTANTE: Se estiver usando MAC, não use o SAFARI para construção de fluxos. Sugerimos o uso do navegador Google Chrome para usar o BotConversa.
{% endhint %}

## O Construtor Em Partes

### **Parte 1:** Bloco Inicial

O bloco inicial é o ponto de partida de todos os fluxos. Qualquer fluxo quando é acionado, terá seu início a partir do bloco inicial.

Não existe nenhuma ação que você pode fazer com este bloco. \
\
Ele apenas te diz a partir de onde que o fluxo irá iniciar.

### Parte 2: Conexões

As conexões são as linhas que conectam os blocos do construtor entre si.&#x20;

Essas linhas tornam o entendimento do fluxo extremante fácil e visual para quem busca entender o que está acontecendo no fluxo.&#x20;

Para conectar os blocos você precisa conectar o círculo conector de um bloco ao círculo conector do bloco ao qual você deseja fazer a conexão.

{% hint style="warning" %}
**Para excluir uma linha de conexão** você precisa clicar com o botão direito do mouse em cima da linha. Se ela não desaparecer imediatamente, basta clicar com o botão esquerdo em qualquer lugar na área do construtor que ela irá desaparecer.
{% endhint %}

### Parte 3: Pontos de Conexão

Todo bloco dentro do construtor possui pelo menos um ponto de conexão. A maioria possui dois pontos.

1. <mark style="color:red;background-color:red;">**Ponto de Entrada**</mark>
   * Esse é o ponto que indica de qual bloco a conversa está vindo.
2. <mark style="color:blue;background-color:blue;">**Ponto de Saída**</mark>
   * Esse é o ponto que indica para qual o bloco a conversa vai continuar.

{% hint style="danger" %}
**IMPORTANTE:** Para garantir que os blocos estão conectados entre si, clique no bloco que você escolheu fazer a conexão e arraste ele de um lado para o outro. Se você verificar que a linha está se mexendo junto com o bloco, significa que ele está conectado corretamente.
{% endhint %}

### Parte 4: Bloco de Conteúdo

Toda vez que você criar um novo fluxo de conversa, ele iniciará com dois blocos:

1. Bloco inicial
2. Bloco de conteúdo

O bloco de conteúdo é o bloco que você vai utilizar para colocar o conteúdo que você vai enviar para o seu cliente. Esse conteúdo pode ser composto por:

* Mensagem de texto
* Imagem
* Vídeo
* Áudio
* Arquivos
* Perguntas que salvam a resposta do usuário
* Delays entre mensagem

### Parte 4: Blocos do Construtor

É com os blocos do construtor que você vai dar vida aos seus robôs. Nós temos 7 tipos de blocos que compõe a construção do seu robô.

### **Os blocos são:**

1. **Conteúdo**\ <br>
   * Neste bloco você vai definir quais conteúdos você deseja enviar para o seu cliente. Você pode adicionar quantos elementos de conteúdo quiser dentro de cada bloco de conteúdo.\ <br>
2. **Ação**<br>
   * Neste bloco você vai definir quais ações você deseja fazer "por trás das cortinas" sem que o seu cliente veja no WhatsApp.\
     \
     **Exemplo 1:** Se um cliente responder o nome dele, email e CPF você pode adicionar uma etiqueta de "Cadastro Completo"\
     \
     **Exemplo  2:** Se um cliente deseja pedir 3 pizzas, você pode utilizar o bloco de ação para realizar contas matemáticas e enviar o valor total do pedido.\
     \
     **Exemplo 3:** Se um cliente precisar de ajuda de um humano, você pode abrir a conversa dela para o time de atendimento e notificar toda sua equipe via WhatsApp avisando que um cliente está precisando de ajuda.<br>
3. **Conexão de Fluxo**<br>
   * Este bloco permite que você conecte um robô a outro.&#x20;
   * Isso ajuda demais pois te dá flexibilidade na construção do robô.\
     \
     Exemplo: Ao invés de criar toda a conversa em um único fluxo, você pode criar um fluxo que mostra o menu do robô, um fluxo que mostra produtos, um fluxo que faz orçamento, etc.\
     \
     Isso te dá a flexibilidade de levar e trazer a pessoa para o lugar que você quiser de forma independente. Sem que ela precise iniciar um único fluxo toda vez.\
     \
     Com os fluxos separados, seu time pode enviar o exato fluxo que o cliente precisa na hora que ele precisa.<br>
4. **Condição**<br>
   * Neste bloco você pode criar lógicas de continuação dentro do fluxo.\
     \
     Exemplo: \
     Se o cliente possui a etiqueta X, ele vai para o bloco de conteúdo A.\
     Se o cliente não possui a etiqueta X, ele vai para o bloco de conteúdo B.\
     \
     Algumas condições que podem ser utilizadas:
     * Etiquetas (possui ou não)
     * Campo personalizado (contém valor específico ou não)
       * Exemplo: O campo "endereço" possui valor?\
         Se sim, não preciso pedir novamente.\
         Se não, eu preciso pedir o endereço ao cliente.\ <br>
5. **Randomizador**<br>
   * Este bloco serve para você criar caminhos randômicos no seu robô caso você queria testar diferentes tipos de mensagens ou queira criar uma roleta randômica.<br>
6. **Botões**

* Com o bloco de botões você pode criar botões para a sua conversa. Facilitando demais a  continuidade do fluxo.\
  \
  Cada bloco de botões pode ter até 10 botões normais de 3 em 3 ou 30 em lista pop-up. E ainda pode ser convertido para menu de até 10 números.<br>

1. **Integração**

   * Com o bloco de integração você pode conectar seu fluxo a praticamente qualquer ferramenta online utilizando tanto a integração via [Zapier.com](https://zapier.com) ou a ferramenta de webhook do BotConversa.

### Parte 6: Organizar Fluxo

Essa funcionalidade irá centralizar todo o seu fluxo no construtor para que você tenha uma visão mais organizada de como seu fluxo está montado.

A organização é feita de forma automática e você não é obrigado a utilizá-la.

### Parte 7: Status do Fluxo

Toda fez que você fizer uma alteração no fluxo, esse elemento irá indicar se o fluxo está salvo ou se possui algum erro.
