Integração WhatsApp (Evolution API)

Skillment fala WhatsApp via Evolution API self-hosted. Notificações orgânicas (não comerciais) chegam direto na conversa pessoal do learner — sem precisar do WABA pago da Meta nem do Twilio cobrando per-message.

Quando usar WhatsApp vs e-mail

  • WhatsApp: lembretes time-sensitive (evento em 1h, prazo de desafio amanhã), feedback de AI Tutor recém-gerado, notificação de conquista importante.
  • E-mail: magic link de login, certificado emitido com PDF anexo, resumo semanal, comunicação corporativa formal.

Setup

Em /admin/integrations/whatsapp, conecte sua instância do Evolution API:

  1. URL da instância (default usa a do Skillment Cloud)
  2. API key da instância
  3. Número de telefone autorizado (formato 55DDXXXXXXXXX)
  4. Escaneie QR code do WhatsApp pra autenticar
  5. Teste com mensagem pra seu próprio número

Opt-in obrigatório

Aluno só recebe WhatsApp após ele aceitar em /perfil/notifications. Default off. Opt-in granular:

  • Lembretes de evento (1h antes, ao vivo agora)
  • Prazos de desafio (dia anterior)
  • Feedback de AI Tutor (ao gerar)
  • Conquistas raras (legendary/epic)

Aluno pode revogar a qualquer momento. Skillment NUNCA envia WhatsApp marketing sem opt-in explícito — LGPD + WhatsApp Business policy.

Templates default

Todos editáveis em /admin/notifications/whatsapp:

  • Lembrete de evento: “Oi, {name}! O evento {event_title} começa em 1h. Link: {event_url}”
  • Feedback de desafio: “{name}, recebemos sua entrega de {challenge_title}. Feedback: {feedback_preview}... Ver completo: {url}”
  • Conquista rara: “Que orgulho, {name}! Você desbloqueou {achievement_name} 🏆”

Custos

Evolution API é open-source self-hosted (zero per-message cost). A única infra é o servidor onde roda. No plano Skillment Cloud, isso é amortizado entre tenants.

Atenção: WhatsApp Business policy proíbe mensagens em massa não solicitadas. Mantenha opt-in granular, respeite revogações, e use WhatsApp pra valor real (lembretes úteis), não broadcast de marketing.

Fallback automático

Se WhatsApp não entregar (número inválido, opt-out, instância offline), a notificação cai pra e-mail. Learner sempre recebe — só muda o canal.