For the complete documentation index, see llms.txt. This page is also available as Markdown.

Chat Flow - Exemplo: Múltiplos horários e captura de nome

Este exemplo mostra como usar a Tabela de Horários com várias janelas diferentes, aproveitando o intervalo de pré-abertura para já capturar o nome do cliente antes mesmo do atendimento começar.

Cenário: empresa com atendimento das 08h às 18h. Fora desse horário, o bot informa a ausência. Entre 07h e 07h59, o bot envia uma mensagem de "logo abriremos" e já coleta o nome do cliente para agilizar o atendimento quando a equipe chegar.


Estrutura do fluxo

A Tabela de Horários funciona como um switch na programação: cada branch é avaliada em ordem de cima para baixo e a primeira que casar com o horário atual determina o caminho. Por isso, coloque a branch de pré-abertura (07:00–07:59) antes da branch de fora de horário (00:00–06:59) — assim ela tem prioridade.


Passo 1 — Configurar o Início sem aguardar resposta

No nó Início, clique no lápis para editar.

Em vez de adicionar interações (como uma mensagem de saudação com menu), deixe a lista de interações vazia.

Nas condições, adicione uma condição do tipo "Sem aguardar resposta" e aponte para a Tabela de Horários.

Por que fazer isso? Quando o nó Início tem interações e condições normais, o bot envia uma mensagem e aguarda a resposta do cliente antes de seguir. Com "Sem aguardar resposta", o próprio primeiro contato do cliente já dispara o fluxo — sem que o bot precise enviar nada primeiro. O cliente manda "Oi" e cai direto na Tabela de Horários.


Passo 2 — Tabela de Horários com múltiplas branches

Clique em "Tabela de horários" na barra superior do canvas para adicionar o nó. Conecte a saída do nó Início para esse nó.

Clique no lápis para editar e adicione as branches na seguinte ordem:

Branch 1 — Pré-abertura (prioridade maior):

Campo
Valor

Dias

Todos os dias

Hora início

07:00

Hora fim

07:59

Ação

Próxima etapa → Pré-abertura

Branch 2 — Fora de horário (madrugada):

Campo
Valor

Dias

Todos os dias

Hora início

00:00

Hora fim

06:59

Ação

Próxima etapa → Fora de horário

Branch 3 — Fora de horário (noite):

Campo
Valor

Dias

Todos os dias

Hora início

18:00

Hora fim

23:59

Ação

Próxima etapa → Fora de horário

Branch 4 — Almoço:

Campo
Valor

Dias

Segunda, Terça, Quarta, Quinta, Sexta

Hora início

12:00

Hora fim

13:59

Ação

Próxima etapa → Almoço

Branch Padrão — Horário comercial:

Campo
Valor

Tipo

Padrão (sem restrição de dia/hora)

Ação

Próxima etapa → Menu principal


Passo 3 — Etapa Pré-abertura (Logo abriremos)

Interações:

  1. Mensagem: Olá! Logo abriremos. Bom dia! 😊 Qual é o seu nome?

Condições:

Tipo
Rótulo da variável
Ação

Qualquer resposta

nome_cliente

Próxima etapa → Boas-vindas

Como funciona a captura de variável: o campo Rótulo na condição é o nome pelo qual a resposta do cliente ficará disponível no restante do fluxo. Basta preencher o rótulo (ex: nome_cliente) e definir o Tipo como Texto — tudo que o cliente enviar naquele momento é armazenado nessa variável. Use {{nome_cliente}} em mensagens das etapas seguintes para personalizar o atendimento.

Tipo de variável Texto absorve qualquer conteúdo — texto, número ou caractere especial. Para validar um formato específico (só números, só e-mail), use os tipos Número ou E-mail na configuração da variável.


Passo 4 — Etapa Boas-vindas (após captura do nome)

Interações:

  1. Mensagem: Bom dia, {{nome_cliente}}! Você será atendido(a) assim que nossa equipe chegar. 😊

Condições:

Tipo
Ação

Sem aguardar resposta

Próxima etapa → Aguardar


Passo 5 — Etapa Aguardar (etapa de absorção)

Crie uma etapa chamada Aguardar com nenhuma interação.

Condições:

Tipo
Repetições
Ação

Qualquer resposta

(branco)

(nenhuma — mesma etapa)

Por que criar essa etapa? Depois que o bot envia a mensagem de boas-vindas, o cliente pode mandar outra mensagem ("obrigado", "👍", etc.). Sem uma etapa para absorver essa resposta, o bot ficaria sem saber o que fazer e poderia repetir interações. A etapa de absorção não responde nada — ela simplesmente "engole" qualquer mensagem adicional enquanto o cliente aguarda o atendimento humano.

O campo Repetições em branco significa que não há limite: o bot permanece nessa etapa indefinidamente até que um atendente assuma o ticket.


Passo 6 — Etapa Fora de Horário

Interações:

  1. Mensagem: Olá! Nosso atendimento funciona de **segunda a sexta, das 08h às 18h**. Recebemos sua mensagem e retornaremos em breve. 🙏

Condições:

Tipo
Ação

Padrão

Encerrar


Passo 7 — Etapa Almoço

Interações:

  1. Mensagem: Olá! No momento nossa equipe está em horário de almoço (12h–14h). Retornaremos assim que voltarmos. 🙏

Condições:

Tipo
Ação

Padrão

Encerrar


Passo 8 — Etapa Menu principal (horário comercial)

Conecte ao menu de departamentos ou ao fluxo de atendimento padrão da sua operação.


Após o atendimento humano assumir

No momento em que um atendente for assumir o ticket durante o pré-atendimento, ele já terá o nome do cliente visível no ticket — sem precisar perguntar de novo.

Para encaminhar para uma fila ou atendente específico quando o horário comercial iniciar, adicione as interações Transferir e Bloquear Chatbot na etapa de Boas-vindas:

  1. Mensagem de boas-vindas com {{nome_cliente}}

  2. Transferir → Fila "Aguardando abertura" (opcional)

  3. Bloquear Chatbot


Resultado esperado

Mensagem às 07:30:

  1. Tabela de Horários → branch 07:00–07:59 → Pré-abertura

  2. Bot envia "Logo abriremos. Qual é o seu nome?"

  3. Cliente responde "João" → variável nome_cliente = "João"

  4. Bot envia "Bom dia, João! Você será atendido assim que nossa equipe chegar."

  5. Qualquer mensagem adicional do cliente → etapa Aguardar (sem resposta do bot)

Mensagem às 03:00:

  1. Tabela de Horários → branch 00:00–06:59 → Fora de horário

  2. Bot envia mensagem de ausência → ticket encerrado

Mensagem às 12:30 (segunda a sexta):

  1. Tabela de Horários → branch 12:00–13:59 → Almoço

  2. Bot envia mensagem de almoço → ticket encerrado

Mensagem às 10:00:

  1. Tabela de Horários → nenhuma branch de hora casa → Padrão → Menu principal


Dicas extras

Limpe o cache ao testar Após salvar alterações no fluxo, limpe o cache da plataforma antes de testar. Mudanças no fluxo podem não aparecer imediatamente em conversas que já estão em andamento.

Feche o ticket antes de retestar Para ver o fluxo desde o início, garanta que o atendimento esteja encerrado. Um ticket aberto vai para a etapa em que parou, não recomeça do Início.

Adicione mais pré-visualizações de horário Você pode usar a mesma lógica do pré-atendimento para outros momentos — por exemplo, uma mensagem diferente nos 15 minutos antes do almoço ou nos últimos 30 minutos antes do encerramento.

A Tabela de Horários pode encadear outra Tabela de Horários Quando as regras ficam muito complexas (ex: dias úteis com comportamento diferente de feriados), a ação de uma branch pode apontar para uma segunda tabela ao invés de uma etapa comum.


Atualizado

Isto foi útil?