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>
O envio estava saindo pelo canal do bot de agendamento (sub-workflow
enviar_texto, projeto diferente) -- por isso recebia num numero e
respondia por outro. Cria credencial httpHeaderAuth propria ('ZPRO API
Token - Orcamento de Exames') e troca o envio para uma chamada HTTP direta
dentro deste workflow, isolada do projeto de agendamento.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
O 'Webhook do Canal' do Z-PRO (fora do ChatFlow, opcao 'Mensagens
recebidas') manda o payload completo da mensagem, incluindo msg.image.url
para fotos -- resolve a limitacao que bloqueava imagem. Novo endpoint
orcamento-exames-canal-zpro substitui o antigo orcamento-exames-zpro
(removido). Download da imagem autenticado com Bearer usando o bmToken do
proprio payload. Volta ao envio assincrono via sub-workflow enviar_texto,
ja que esse webhook e uma notificacao (nao e capturado/reenviado pelo
Z-PRO como no ChatFlow). Prompt volta a aceitar foto normalmente.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Investigacao exaustiva no ChatFlow do Z-PRO (seletor de variaveis, passo
n8n, passo Midia, tipo de variavel na captura) confirma que nao ha, hoje,
nenhum mecanismo pra repassar imagem recebida pro webhook. O agente agora
pede pro cliente digitar os exames em vez de pedir foto -- workflow funciona
100% via texto; imagem fica documentada como limitacao em aberto na spec.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
O Z-PRO captura a resposta HTTP do webhook e reenvia direto ao cliente
(variavel n8n1 -> passo Mensagem), entao o envio assincrono via API duplicava
a mensagem. Troca para responseMode: responseNode + Respond to Webhook em
texto puro, remove o node de envio assincrono, e troca a memoria de sessao
de Postgres (reservado para outro fluxo) para o node Simple Memory nativo.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
O fluxo anterior encerrava sem responder quando a mensagem nao tinha imagem,
o que nao reflete um atendimento real (cliente manda texto antes/depois, ou
digita os exames em vez de mandar foto). Agora toda mensagem chega ao AI
Agent (com ou sem imagem), com memoria de conversa via Postgres, seguindo o
mesmo padrao do bot de agendamento ja usado nessa conta.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>