Pular para conteúdo

Atualizado: 2026-06-30 · por: arquitetos-ia-atendimento (sessão agendada) · rev: 2

Referência Técnica — IA Chatwoot Bepex


Workflows

Nome ID n8n Nodes Status Webhook Path
IA ROUTER V2 iT5a8VV2vPF6ZpYL 22+ ATIVO /v2/router (POST)
IA losand DiOL7QWomFFc9LY8 87 ATIVO ${WEBHOOK_IA_LOSAND_UUID}
IA Prospecção 4wLT4ni6udXSnVS9 20 ATIVO ${WEBHOOK_IA_PROSPECCAO_UUID}
IA Atendimento Arquitetos OC6so0JJTp5YseW7 20 INATIVO ${WEBHOOK_ARQ_ATENDIMENTO_UUID}

Sub-workflows

Nome ID n8n Usado por
Debounce VahE4IePbduQNU9t IA losand, IA Prospecção
Split msg Chatwoot Drj76ljZtSPIXj2x IA losand, IA Prospecção
Error workflow GEyXmIklTx6i3QBC IA losand (settings.errorWorkflow)

Chatwoot

Instância: chat.bepex.com.br (account 2)

Inboxes

ID Nome Workflow de IA
41 Losand IA losand
59 Chapas Expandidas IA losand
60 Chapas Perfuradas IA losand
62 Prospecção Slot A IA Prospecção
63 Prospecção Slot B IA Prospecção
64 Prospecção Slot C IA Prospecção
56 BPEX (handoff destino)
70 Arquitetos Slot A (placeholder) IA Atendimento Arquitetos
71 Arquitetos Slot B (placeholder) IA Atendimento Arquitetos
72 Arquitetos Slot C (placeholder) IA Atendimento Arquitetos

Labels

Nome ID Cor Usado por
bot-losand IA losand
bot-prospeccao 64 #6366F1 IA Prospecção
bot-arquitetos 65 #10B981 IA Atendimento Arquitetos

Custom Attributes

  • ia_responsavel_conversa — usado pelo ROUTER para decidir qual IA responde (quando já há uma IA atribuída à conversa)

Webhook URLs (n8n-hook.bepex.com.br)

Workflow URL Completa
IA ROUTER V2 https://n8n-hook.bepex.com.br/webhook/v2/router
IA losand https://n8n-hook.bepex.com.br/webhook/${WEBHOOK_IA_LOSAND_UUID}
IA Prospecção https://n8n-hook.bepex.com.br/webhook/${WEBHOOK_IA_PROSPECCAO_UUID}
DIFY DEV (legado) https://n8n-hook.bepex.com.br/webhook/${WEBHOOK_DIFY_LEGADO_UUID}

PostgreSQL — Tabelas de Memória

Tabela Usado por Session Key
n8n_chat_histories IA losand conversation_id
n8n_chat_histories_prospeccao IA Prospecção conversation_id
n8n_chat_histories_arquitetos IA Atendimento Arquitetos conversation_id

Nodes do IA Prospecção (20 nodes)

  1. BOT — Webhook trigger
  2. FORMAT-MAIN — Formata payload (URL: chat.bepex.com.br)
  3. LOG — Console log
  4. INPUTS IA — Prepara inputs para AI Agent
  5. INBOX PERMITIDOS — Verifica se inbox está em [62, 63, 64]
  6. Switch — Lógica de etiqueta
  7. SEM ETIQUETA? — IF: verifica se conversa não tem label do bot
  8. ADD LABEL bot-prospeccao — Adiciona label via API Chatwoot
  9. labels|etiquetas — Extrai labels da conversa
  10. msg sem content — IF: verifica se mensagem tem conteúdo
  11. data-create — Formata dados para debounce
  12. se menor de 2s — IF: janela de debounce
  13. SEM ETIQUETA?2 — Segunda verificação de etiqueta
  14. sub-debounce-dify v3 testes — Call sub-workflow debounce
  15. existe msg concatenada? — IF: verifica se debounce concatenou mensagens
  16. AI Agent Prospecção — LangChain AI Agent com prompt comercial
  17. OpenRouter Chat Model — Modelo LLM via OpenRouter
  18. Postgres Chat Memory — Memória de conversa (tabela: n8n_chat_histories_prospeccao)
  19. Call split msg Chatwoot — Call sub-workflow split msg
  20. No Operation do nothing1 — Noop para branches que não processam

IA ROUTER V2 — Nodes e Conexões (20 nodes)

Nodes: 1. Webhook — POST /v2/router 2. TIPO EVENTO — Switch por event type 3. status conversa aberta? — IF status == open 4. TIPO MSG — Switch incoming/outgoing 5. INBOX — Switch por inbox_id 6. IAS — Switch por ia_responsavel_conversa 7. PADRAO / BE — Outputs do switch IAS 8. losand|chapasExpandidas|chapasPerfuradas — Switch final por inbox 9. HTTP Request nodes — Enviam POST para webhooks dos workflows alvo 10. No Operation nodes — Noop para branches não processadas

Lógica de roteamento no switch final:

// Node: losand|chapasExpandidas|chapasPerfuradas
// Condição: ![41,59,60].includes(Number(inbox_id))
// Se TRUE → fallback (DIFY DEV)
// Se FALSE → losand endpoint


Operação

Configuração do webhook no Chatwoot:

O webhook do Chatwoot (account 2) aponta para https://n8n-hook.bepex.com.br/webhook/v2/router. O ROUTER se encarrega de direcionar para o workflow correto.

Configs críticas do ROUTER (aprendidas com bugs):

  • Switch nodes: opção "Convert Types Where Required" DEVE estar habilitada (inbox_id vem como string do Chatwoot)
  • IA Prospecção é outbound: todas as conversas de prospecção começam com a Bepex enviando a primeira mensagem, então a tag "IA atendendo" é necessária para ativar a IA

Automações Chatwoot relevantes:

ID Nome Evento Ação
35 Abre Conversa Pendente conversation_created (status == pending) open_conversation
36 Rebre Conversa Pendente message_created (incoming + status == pending) open_conversation

Ambas são globais (todas as inboxes, sem filtro).