N8N — Automações
AgentV8 Schedule — Geral

AgentV8 Schedule — Geral

Status: Ativo  |  ID: RtIHagqnGxhC0Dym  |  Nodes: 213  |  Última atualização: 18/03/2026

O que este workflow faz?

Este é o coração do atendimento automatizado da Fluity. Ele recebe mensagens de múltiplos canais (WhatsApp, Telegram, Facebook, Instagram e Webchat), processa o conteúdo com inteligência artificial e responde ao usuário pelo mesmo canal em que a mensagem chegou.

Em resumo:

Recebe → Filtra → Entende (texto, áudio ou imagem) → Pensa com IA → Responde


Canais suportados

CanalTipo de entradaEnvio de resposta
WhatsAppTexto, áudio, imagem, documentoTexto, áudio (TTS), imagem
TelegramTexto, áudio, fotoTexto, áudio, foto
Facebook MessengerTexto, imagem, áudioTexto, imagem, áudio
Instagram (via Facebook)Texto, imagemTexto
WebchatTextoTexto

Fluxo Geral

O workflow é dividido em 8 blocos funcionais que operam em sequência:

┌─────────────────────────────────────────────────────────┐
│  1. ENTRADA (Triggers / Webhooks)                        │
│     WhatsApp · Telegram · Facebook · Instagram · Webchat │
└────────────────────────┬────────────────────────────────┘


┌─────────────────────────────────────────────────────────┐
│  2. CADASTRO E VERIFICAÇÃO                               │
│     Busca instância → Cadastra contato → Cria chat       │
│     Verifica blacklist · Identifica lead de anúncio      │
└────────────────────────┬────────────────────────────────┘


┌─────────────────────────────────────────────────────────┐
│  3. FILTRO E ROTEAMENTO                                  │
│     IA ativa? · Tipo de mensagem? · Canal de origem?     │
│     Pausar IA ↔ Reativar IA (atendimento humano)         │
└────────────────────────┬────────────────────────────────┘


┌─────────────────────────────────────────────────────────┐
│  4. CONVERSÃO DE MÍDIA                                   │
│     Áudio → Transcrição (Whisper)                        │
│     Imagem → Descrição (GPT-4 Vision)                    │
│     Texto → direto                                       │
└────────────────────────┬────────────────────────────────┘


┌─────────────────────────────────────────────────────────┐
│  5. BUFFER DE MENSAGENS (Redis)                          │
│     Aguarda janela de tempo para consolidar mensagens    │
│     picotadas antes de enviar ao agente                  │
└────────────────────────┬────────────────────────────────┘


┌─────────────────────────────────────────────────────────┐
│  6. PROCESSAMENTO COM IA (2 agentes em cascata)          │
│                                                          │
│  [Agente RAG] — busca na base vetorial + site           │
│       ↓                                                  │
│  [Atendente] — GPT-4.1 + memória PostgreSQL + MCP       │
└────────────────────────┬────────────────────────────────┘


┌─────────────────────────────────────────────────────────┐
│  7. ENVIO DA RESPOSTA                                    │
│     Texto · Áudio (TTS) · Imagem                         │
│     Pelo mesmo canal que chegou a mensagem               │
└────────────────────────┬────────────────────────────────┘


┌─────────────────────────────────────────────────────────┐
│  8. PÓS-PROCESSAMENTO                                    │
│     Salva histórico no Supabase · Limpa cache Redis      │
│     Atualiza fila de atendimento                         │
└─────────────────────────────────────────────────────────┘

Detalhamento por bloco

Bloco 1 — Entrada (Triggers)

O workflow aguarda mensagens simultâneas em 7 webhooks:

WebhookCanalMétodo HTTP
Webhook EVOWhatsApp (Evolution API)POST
Webhook WebchatWebchatPOST
WB TelegramTelegramPOST
WB - FacebookFacebook MessengerPOST
WB facebook GETValidação do FacebookGET
WB facebook GET1Validação do InstagramGET
WB facebook GET2Instagram (mensagens)GET

Bloco 2 — Cadastro e Verificação

Após receber a mensagem, o workflow:

  1. Busca a instância configurada no Supabase (tabela instances)
  2. Verifica se o contato está na blacklist — se estiver, encerra sem responder
  3. Cadastra ou atualiza o contato via API REST do Supabase (contacts)
  4. Cria ou recupera o chat via função RPC no Supabase (get_or_create_chat)
  5. Identifica se a mensagem veio de um anúncio e salva o lead em prompt_ads_clientes

Bloco 3 — Filtro e Roteamento

Com o chat identificado, o sistema verifica:

  • IA está ativa? → Se pausada por um humano, ignora a mensagem
  • Tipo de mensagem → Texto, áudio, imagem ou documento
  • Canal de origem → Para rotear a resposta corretamente

Comandos especiais também são processados aqui:

  • Palavra-chave de pausa → Pausar IA (humano assume o atendimento)
  • Palavra-chave de reativação → Reativar IA

Bloco 4 — Conversão de Mídia

O agente de IA só trabalha com texto, então mídias são convertidas:

TipoProcessoModelo
Áudio (WhatsApp)Base64 → Binário → TranscriçãoOpenAI Whisper
Áudio (Telegram)Download → TranscriçãoOpenAI Whisper
Áudio (Facebook)Download → TranscriçãoOpenAI Whisper
Imagem (WhatsApp)Base64 → Binário → Análise visualGPT-4 Vision
Imagem (Telegram)Download → Análise visualGPT-4 Vision

Bloco 5 — Buffer de Mensagens (Redis)

⚠️

Este bloco resolve o problema das mensagens picotadas — quando o usuário manda várias mensagens rápidas em vez de uma só.

O sistema usa o Redis como cache temporário:

  1. Salva a mensagem no Redis com chave única por contato+canal
  2. Aguarda uma janela de tempo (Wait)
  3. Verifica se chegou alguma mensagem nova nesse intervalo
  4. Se sim, consolida tudo em uma mensagem única antes de enviar ao agente

Isso evita que o agente responda cada fragmento separadamente.

Bloco 6 — Processamento com IA

Dois agentes operam em sequência:

Agente RAG

  • Modelo: GPT-4.1-mini
  • Função: Busca informações relevantes na base de conhecimento antes de responder
  • Ferramentas:
    • buscar_documentos — consulta o Vector Store no Supabase (busca semântica com pgvector)
    • site_consultas — chama um sub-workflow para consultas externas

Agente Atendente

  • Modelo: GPT-4.1
  • Função: Agente principal que interage com o usuário
  • Características:
    • Prompt dinâmico carregado do Supabase (personalizável por instância)
    • Memória de contexto via PostgreSQL (mantém histórico da conversa)
    • Acesso a ferramentas externas via protocolo MCP

A saída do agente pode ser: texto, audio, imagem ou parser (estruturado).

Bloco 7 — Envio da Resposta

A resposta é roteada pelo canal de origem:

SaídaWhatsAppTelegramFacebook/Instagram
TextoEvolution APITelegram Bot APIGraph API v19.0
ÁudioEvolution API (TTS)Telegram Bot APIGraph API v19.0
ImagemEvolution APITelegram Bot APIGraph API v19.0

Mensagens longas são automaticamente divididas em partes com um delay de 1 segundo entre cada uma para parecer mais natural.

Bloco 8 — Pós-processamento

Após o envio:

  • Histórico da conversa salvo no Supabase (chat_messages)
  • Cache do Redis limpo para o contato
  • Fila de atendimento atualizada
  • Webhook respondido com 200 OK

Integrações e APIs

Serviços externos utilizados

ServiçoPara que serve
WhatsApp — Evolution APIReceber e enviar mensagens WhatsApp, obter mídia em base64
Telegram Bot APIReceber e enviar mensagens Telegram
Facebook Graph API v19.0Facebook Messenger + Instagram (receber e enviar)
OpenAITranscrição de áudio (Whisper), análise de imagem (Vision), geração de texto (GPT-4.1), geração de áudio TTS, embeddings
SupabaseBanco de dados principal, Vector Store para RAG, funções RPC
PostgreSQLMemória de histórico do agente de IA
RedisBuffer temporário de mensagens (anti-picotamento)
MCP FluityFerramentas externas acessadas pelo agente Atendente

Chamadas HTTP diretas

NodeMétodoEndpoint
HTTP ClientesPOSTsupabase.co/rest/v1/contacts
HTTP ChatsPOSTsupabase.co/rest/v1/rpc/get_or_create_chat
HTTP Chats - WebchatPOSTsupabase.co/rest/v1/rpc/start_webchat
Obter mídia EVOPOST{server_url}/chat/getBase64FromMediaMessage/{instance}
Send Facebook (texto)POSTgraph.facebook.com/v19.0/me/messages
Send IMG FacebookPOSTgraph.facebook.com/v19.0/me/messages
Upload Arquivo FacebookPOSTgraph.facebook.com/v19.0/{page_id}/message_attachments
Download IMG/ÁudioGETURL dinâmica do conteúdo recebido
Consulta InstagramGETgraph.facebook.com/v19.0/{IGSID}
MCP ClientSSEmcp.fluity.space/mcp/{token}

Modelos de IA utilizados

ModeloOndePara quê
gpt-4.1Agente AtendenteResposta principal ao usuário
gpt-4.1-miniAgente RAGBusca e síntese na base de conhecimento
gpt-4.1 (Vision)Análise de imagemDescrever imagens recebidas
whisper-1TranscriçãoConverter áudios em texto
tts-1Geração de áudioConverter respostas em áudio
text-embedding-3-smallEmbeddingsBusca semântica no Vector Store

Tabelas do Supabase utilizadas

Tabela / FunçãoPara quê
instancesConfigurações de cada instância do agente
contactsCadastro de contatos/clientes
flowsChats ativos e seu estado
chat_messagesHistórico de mensagens
prompt_ads_clientesLeads vindos de anúncios
instance_contact_listsBlacklist por instância
eventsEventos relacionados ao atendimento
rpc/get_or_create_chatFunção que busca ou cria um chat
rpc/start_webchatFunção para iniciar chat via webchat
documents (vector)Base de conhecimento para RAG