← story.propek
STORY 3.5
Bot Phase 5: Analytics & Metrics
Epic: Bot WhatsApp Propek
DONE
2026-03-12
Implementar servico de analytics agregado para metricas de performance do bot, incluindo conversas, mensagens, clientes, handoffs, NPS, lead scoring, tempo de resposta e produtos mais mencionados. Expor via endpoints REST protegidos.
ACCEPTANCE CRITERIA (18/18)
AnalyticsService criado com interface BotAnalytics completa
getAnalytics(from, to) agrega todas as metricas em paralelo (Promise.all)
getDailySummary (ultimas 24h) e getWeeklySummary (ultimos 7 dias)
Metricas de conversas: total, active, completed, waitingHuman
Metricas de mensagens: inbound, outbound, media por conversa
Metricas de clientes: novos, retornantes, ativos
Metricas de handoff: total e taxa (percentual)
Metricas de NPS: media, score NPS, total respostas
Metricas de lead scoring: hot, warm, cold
Tempo medio de primeira resposta (ms)
Top 10 produtos mais mencionados nas mensagens inbound
GET /api/analytics/daily (protegido por X-Cron-Token)
GET /api/analytics/weekly (protegido por X-Cron-Token)
GET /api/analytics/custom?from=YYYY-MM-DD&to=YYYY-MM-DD (protegido)
Validacao de parametros from/to no endpoint custom
Migration 017 cria views: v_conversation_stats, v_message_volume, v_handoff_daily, v_nps_daily
Todos os endpoints registrados em index.ts
Compilacao TypeScript limpa (npx tsc --noEmit)
ARQUIVOS (4)
src/services/analytics.service.ts Created
src/handlers/analytics.handler.ts Created
src/migrations/017_create_handoff_locks_and_analytics_views.sql Created (shared with Story 3.4)
src/index.ts Modified (new endpoint registration)
RETROSPECTIVA
Qualidade: ★★★☆☆
Incluir @qa no proximo ciclo
Rodar @cyber-chief antes do push