fix(n8n): so processa mensagens quando o ticket esta no fluxo de Orcamento

O Webhook do Canal dispara pra toda mensagem do numero, entao o bot estava
respondendo (pedindo exames) pra qualquer coisa -- CPF, agendamento,
resultado de exame etc. Filtra por ticket.stepChatFlow, so seguindo quando
o ticket esta parado no passo Menu Orcamento ou Menu Orcamento 2; qualquer
outra coisa e ignorada sem resposta.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Eric
2026-08-21 10:50:13 -03:00
co-authored by Claude Sonnet 5
parent 2322940264
commit 091878d484
2 changed files with 106 additions and 3 deletions
@@ -357,6 +357,29 @@ ApiID e token dedicados a este projeto. Correção aplicada:
- Isso mantém este projeto completamente independente do de agendamento —
nenhum node ou credencial é compartilhado entre os dois.
### Descoberta 7: filtro por fluxo/fila (o bot respondia a qualquer mensagem)
Como o "Webhook do Canal" dispara pra **toda mensagem do número** (não só
pra quem está no menu de Orçamento), o bot estava respondendo pra qualquer
coisa — cliente mandando foto do CPF, pedindo agendamento, etc. — sempre
pedindo exames. Isso não reflete o atendimento real: o cliente manda
mensagem, recebe o menu de filas, escolhe "Orçamento", e só a partir daí a
automação deve agir.
Correção: o payload do webhook traz `ticket.stepChatFlow`, identificando em
qual passo do ChatFlow o ticket está parado. Os passos `Menu Orçamento` e
`Menu Orçamento 2` (os únicos dois pontos do ChatFlow que levam a essa
automação) têm ids fixos: `node-1787312722889` e `node-1787312980617`.
Adicionado o node **"Está no fluxo de Orçamento?"**, logo após extrair os
campos: só segue adiante (pro resto do pipeline) se `stepChatFlow` for um
desses dois; qualquer outra coisa cai num `NoOp` e é ignorada — sem
resposta nenhuma, deixando pra fila/fluxo correspondente cuidar.
**Risco conhecido:** esse filtro depende dos ids de step atuais do
ChatFlow. Se o `Menu Orçamento`/`Menu Orçamento 2` forem recriados (não só
editados) no editor do Z-PRO, os ids mudam e o filtro precisa ser
atualizado no node `Está no fluxo de Orçamento?`.
### Ainda em aberto
- Remover as interações antigas "Webhook Avançado"/"Mensagem" dos passos
@@ -364,6 +387,9 @@ ApiID e token dedicados a este projeto. Correção aplicada:
antigo, que não existe mais no n8n — não causam mais duplicidade, mas
ficam como chamada morta até serem removidas).
- Confirmar que o número de envio agora bate com o número que recebe.
- Validar que o filtro por `stepChatFlow` realmente bloqueia mensagens fora
do fluxo de Orçamento (CPF, agendamento, resultado de exame etc.) e não
bloqueia as de dentro.
- Trocar a tabela de exames de exemplo pela lista real, direto no `system
message` do node `AI Agent - Orçamento`.