“Assistentes só são úteis quando ouvem tudo, mas falam o necessário.” — #30DiasJava Control Room

🎯 Objetivo do Day 7

Com o stack Docker endurecido, foi hora de conectar todo o ecossistema em tempo real. O Day 7 do #30DiasJava entregou uma camada de assistentes inteligentes que usa a mesma malha de eventos do Notification Service para conversar com usuários, bots e dashboards.

🛠️ Destaques da implementação

  • Nova Orchestrator: serviço central que enriquece eventos, decide rotas e aplica circuit breakers antes de chamar qualquer LLM.
  • Streams seguras: WebSockets e SSE protegidos por JWT, limites por tenant e deduplicação de mensagens.
  • Bot Bridge: integrações com Telegram/Discord expostas via API keys, com rate limiting por canal e responses preparados para múltiplos idiomas.
  • Governança de payload: payloads versionados com Avro, schema registry e trilhas de auditoria.
  • Observabilidade: métricas (assistant_latency_seconds, assistant_tokens_total, assistant_fallback_total) e painéis que mostram engajamento em tempo real.

💡 Lições do dia

  • Assistentes só funcionam com uma trilha completa: evento → enriquecimento → resposta → métrica.
  • Tratar fallbacks cedo evita “silêncios” quando a IA falha; rotas alternativas devolvem mensagens úteis.
  • Bots herdaram de imediato o mesmo nível de segurança das APIs internas graças ao gateway unificado.

🔗 Recursos


Next episodeDay 8/30 — Search Service with Vector Ops and Observability