AutomaçãoIA aplicadaProduto interno

Painel Arena

Painel interno que junta o atendimento de 8 bots de suporte e o conteúdo de 8 canais de Telegram num lugar só. Webhooks, fila com SLA em tempo real e categorização de posts por IA.

8 → 1
canais de suporte numa fila única
1h · 3h
limiares de SLA: atenção e crítico
2
módulos: atendimento e inteligência de conteúdo

Contexto

Uma ação que escalou mais rápido que a operação

No Arena Afiliados, cada influenciador tem um canal de dicas no Telegram e um bot dedicado de suporte. Uma das mecânicas de conversão mais fortes da operação é o reembolso: o lead segue a dica e, se a aposta não bater e a conta for nova, recebe o valor de volta. Funciona muito bem como incentivo de primeiro depósito.

Em um grande torneio, a ação escalou além do que o atendimento aguentava. Os pedidos chegavam espalhados por 8 bots diferentes, parte deles ficou sem resposta, e lead frustrado vira afiliado frustrado. O problema estava na visibilidade: ninguém enxergava a fila inteira.

Problema

Oito caixas de entrada e nenhum dono da fila

Atendimento fragmentado
Cada afiliado com seu bot, cada bot com sua caixa de entrada. Saber quem estava esperando exigia abrir oito telas.
Sem noção de tempo
Nada indicava há quanto tempo cada pessoa aguardava. Pedido antigo e pedido novo tinham a mesma cara.
Incentivo desalinhado
O time de suporte é comissionado por conversão. Atender reembolso parecia tempo perdido, então a fila precisava ser impossível de ignorar.
Conteúdo sem leitura
Centenas de posts por semana nos canais, e nenhuma forma de comparar o que cada afiliado publicava, quando e com qual objetivo.

A pergunta que o painel responde em um olhar: quem está esperando, há quanto tempo e em qual canal.

O que construí

Dois módulos sobre a mesma arquitetura

O padrão é o mesmo nos dois módulos: um evento dispara um webhook, uma função serverless normaliza e grava no banco, e a tela atualiza sozinha. Simples de manter e barato de rodar.

Módulo 1

Central de atendimento com SLA

  1. 1
    Mensagem entra ou sai em qualquer um dos 8 bots
    SendPulse
    O webhook da plataforma de chatbot dispara nos dois sentidos, o que permite medir tempo de espera e tempo de resposta.
  2. 2
    Rota serverless recebe, normaliza e grava
    Next.js
    Cada evento é normalizado e gravado separado por bot, o que permite enxergar os oito canais no mesmo lugar.
  3. 3
    Mensagens agrupadas por contato viram conversas
    Supabase
    Uma conversa está esperando quando a última mensagem é do lead. O banco guarda o histórico completo de cada thread.
  4. 4
    Fila única ordenada por tempo de espera
    Painel
    Cronômetro ao vivo em cada card, cor fixa por afiliado, selo de atenção a partir de 1h e crítico a partir de 3h, sempre no topo.
  5. 5
    Operador abre a thread, resolve e tira da fila
    Painel
    Filtros por canal, tag, nível de SLA e busca por texto. Conversa resolvida sai da fila e continua no histórico.

Módulo 2

Inteligência de conteúdo

  1. 1
    Um bot único entra como admin nos canais
    Telegram Bot API
    Um bot pra todos os canais em vez de um por afiliado: mesmo trabalho de instalar, muito menos manutenção. O painel separa por canal.
  2. 2
    Cada post é ingerido no momento da publicação
    Next.js
    Texto, tipo de mídia (inclusive vídeo bolinha), horário e presença de link. Link é detectado por regra, sem IA, porque regra não erra e não custa.
  3. 3
    Um modelo de linguagem classifica o post
    Claude Haiku
    Taxonomia por objetivo: dica, análise, green, red, reembolso, cadastro, promo, enquete, interação. Também marca casa, modalidade e gatilho.
  4. 4
    Volume por categoria ao longo do tempo
    Painel
    Barras empilhadas por dia ou semana, filtro por canal e comparativo lado a lado entre afiliados, na mesma escala.
  5. 5
    Do gráfico até a mensagem, sob demanda
    Painel
    Clicar numa categoria abre as postagens reais daquele afiliado já filtradas. Gráfico como padrão, detalhe quando precisa.

Decisões

As escolhas que fizeram o painel funcionar

  • →Crítico é só tempo de espera. Dava pra misturar tipo de caso, valor e humor do lead. Ficou só o relógio, porque uma regra que todo mundo entende é uma regra que todo mundo segue.
  • →Rastreador de pendências em vez de mais uma caixa de entrada. A visão padrão mostra só quem está esperando. O que já foi respondido sai da frente.
  • →IA onde ela agrega, regra onde regra basta. Classificar a intenção de um post pede modelo de linguagem. Saber se tem link pede uma expressão regular.
  • →O humano interpreta, o painel organiza. O sistema mapeia e categoriza tudo. A leitura de qual conteúdo puxa conversão continua com quem conhece a operação.

Meu papel

Do problema ao deploy

Identifiquei o problema dentro da operação, desenhei o produto e construí. Programei com IA como par de programação (Claude Code), o que me permitiu sair de designer que especifica pra pessoa que entrega a ferramenta rodando.

  • →Definição do produto: escopo dos dois módulos, regra de SLA e taxonomia de conteúdo
  • →Arquitetura: webhooks, funções serverless e atualização em tempo real
  • →Integração com a plataforma de chatbot e com a API de bots do Telegram
  • →Classificação de posts com modelo de linguagem, com backfill em lote e custo controlado
  • →Interface: fila, thread de conversa, filtros, gráficos e comparativo entre afiliados
  • →Deploy, autenticação e diagnóstico com dado real de produção

Stack

Next.js, TypeScript, Tailwind, Supabase (Postgres e Realtime), webhooks do SendPulse, Telegram Bot API, API da Anthropic (Claude Haiku) e Vercel.

Aprendizados

O que esse projeto me ensinou

  • →Automação sem observabilidade é um risco. Um fluxo que roda sozinho também erra sozinho. Todo fluxo que construo hoje nasce com registro do que entrou, do que saiu e de um alerta pra quando algo foge do esperado.
  • →Ferramenta interna também é produto. Se o time não abre, não existe. A fila precisa ser mais fácil de usar do que de ignorar.
  • →Documentação é hipótese, payload real é fato. Testar com dado de produção desde o primeiro dia evitou muito retrabalho.
  • →Growth que constrói decide melhor. Saber o que custa meia hora e o que custa um mês muda completamente o que eu proponho numa reunião.
← Arena AfiliadosKlicka Prospect →