Automações

Fluxos visuais de atendimento automático

Editor de fluxos (Flow Builder)

O Editor de Fluxos é uma ferramenta visual de drag-and-drop para criar automações de atendimento.

Como acessar

  1. 1Vá em Automações no menu lateral
  2. 2Clique em "+ Novo fluxo" ou edite um existente
  3. 3O editor de fluxos será aberto em tela cheia

Interface do editor

  • Painel esquerdo — Paleta de nós disponíveis (arraste para o canvas)
  • Canvas central — Área de construção visual do fluxo
  • Painel direito — Configuração do nó selecionado
  • Barra superior — Nome do fluxo, botões salvar/voltar, variáveis globais

Construindo um fluxo

  1. 1Todo fluxo começa com um nó Trigger (gatilho)
  2. 2Arraste nós da paleta para o canvas
  3. 3Conecte os nós arrastando das alças de saída para as alças de entrada
  4. 4Clique em um nó para configurá-lo no painel direito
  5. 5Salve o fluxo com o botão Salvar

Variáveis

Os fluxos suportam variáveis para armazenar e usar dados:

  • Variáveis do sistema: contact_name, contact_phone, account_phone
  • Variáveis de pergunta: Respostas salvas por nós "Fazer Pergunta" ou "Menu"
  • Variáveis globais: Definidas no diálogo de variáveis globais do fluxo
  • Variáveis de código: Criadas pelo nó "Código JavaScript"
  • Variáveis UTM: utm_source, utm_campaign, utm_medium, etc.

Use variáveis com a sintaxe {{nome_variavel}} em mensagens.

Templates de fluxo

Ao criar um novo fluxo, você pode escolher um template pré-construído:

  • Atendimento com menu
  • Qualificação de leads
  • FAQ automático
  • Pesquisa NPS

Tipos de gatilho (Triggers)

O nó Trigger define quando o fluxo será iniciado. Tipos disponíveis:

Palavra-chave (keyword)

O fluxo inicia quando o cliente envia uma mensagem contendo a palavra-chave configurada.

  • Exemplo: Palavra-chave "cardápio" → cliente envia "Quero ver o cardápio" → fluxo inicia

Primeira mensagem (first_message)

O fluxo inicia automaticamente quando um novo contato envia a primeira mensagem. Ideal para boas-vindas.

Qualquer mensagem (any_message)

O fluxo inicia em qualquer mensagem recebida (quando não há outro fluxo ativo). Use com cuidado.

Webhook (webhook)

O fluxo é disparado via chamada HTTP externa. Útil para integrações com sistemas externos.

Campanha UTM (utm_campaign)

O fluxo inicia quando a conversa tem dados UTM correspondentes. Configure filtros por:

  • Campanha (utm_campaign)
  • Fonte (utm_source)
  • Meio (utm_medium)

Campos vazios = curinga (aceita qualquer valor). Pelo menos um campo deve ser preenchido.

Ativando o gatilho

Após criar e salvar o fluxo, vá na lista de automações e clique em "Ativar" para associar o gatilho a uma conta WhatsApp.

Tipos de nós

Nós de Mensagem

Descrição
Enviar MensagemEnvia texto, imagem, vídeo ou documento. Suporta variáveis {{var}}
Fazer PerguntaEnvia mensagem e aguarda resposta livre. Salva em variável
MenuLista numerada de opções. Cada opção leva a uma saída diferente
Botões InterativosBotões clicáveis (máx. 3) via Cloud API
Enviar TemplateEnvia template aprovado da Meta (Cloud API)
Enviar E-mailEnvia e-mail via integração configurada

Nós de Lógica

Descrição
CondiçãoRamifica o fluxo com base em variáveis, agente atribuído ou time
DelayPausa o fluxo por segundos, minutos ou horas
Código JavaScriptExecuta código JS em sandbox seguro (fetch, variáveis)
Iniciar Outro FluxoInicia outro fluxo de automação
WebhookFaz requisição HTTP para sistema externo

Nós de Ação

Descrição
Atribuir AgenteAtribui a conversa a um agente específico
Atribuir TimeAtribui a conversa a uma equipe
Agente de IATransfere para o agente de IA (LLM)
Enviar NPSEnvia pesquisa de satisfação ao contato
Alterar StatusMuda o status da conversa (aberta/pendente/resolvida)
Definir PrioridadeDefine a prioridade da conversa
Adicionar TagAdiciona uma tag à conversa
Criar Deal (CRM)Cria um deal no CRM
Evento CAPIEnvia evento para a Meta Conversions API
EncerrarFinaliza o fluxo

Nó de Código JavaScript

O nó Código JavaScript permite executar código personalizado dentro do fluxo em um sandbox seguro.

Variáveis disponíveis

  • variables — Objeto read-only com todas as variáveis do fluxo
  • output — Objeto para escrever resultados (salvos como variáveis)
  • fetch — Função para fazer requisições HTTP
  • console.log — Para debug (visível nos logs do servidor)
  • JSON, Math, Date, Buffer — Utilitários padrão

Exemplo: Consultar API externa

const resp = await fetch('https://api.exemplo.com/dados', {
  headers: { 'Authorization': 'Bearer token123' }
});
const data = await resp.json();
output.nome_cliente = data.nome;
output.saldo = data.saldo;

Configurações

  • Timeout — Tempo máximo de execução (padrão: 5000ms)
  • Em caso de errocontinue (segue o fluxo) ou end (encerra)
  • saveAs — Salva o objeto output inteiro como JSON em uma variável

Dicas

  • Use output.chave = valor para criar variáveis que podem ser usadas nos próximos nós
  • O código roda em sandbox isolado (node:vm) — sem acesso ao filesystem
  • Ideal para integrações com APIs externas, cálculos e transformações de dados