falafy
PT
Baixar grátis

API pública v1 · @falafy/bot

Gateway e intents

Um WebSocket por bot recebe os eventos dos servidores e DMs em tempo real, filtrados pelas intents que você pediu.

Conectar

  1. Pegue a URL em GET /api/v1/gateway/bot (hoje wss://falafy.com.br/gateway).
  2. Envie {"op":"IDENTIFY","token":"Bot SEU_TOKEN","intents":513} em até 10 segundos.
  3. Receba READY com o seu usuário, os servidores, canais e cargos, e o resumeId.
  4. Envie {"op":"PING"} a cada 30 segundos (o servidor fecha conexões caladas por mais de 75 s). Cada evento chega como {"op":"EVENT","event":{"t":"MESSAGE_CREATE","d":{...}},"seq":42}.

Retomar depois de uma queda

Guarde o resumeId do READY e o último seq. Ao reconectar, envie {"op":"RESUME","token":"Bot SEU_TOKEN","sessionId":"RESUME_ID","seq":42}: os eventos perdidos chegam em ordem e depois vem RESUMED. Se vier INVALID_SESSION, envie IDENTIFY de novo. As intents da sessão continuam valendo.

Intents

Some os valores das intents que o bot precisa. Sem intents, valem todas as não privilegiadas. As marcadas com ★ são privilegiadas: ative cada uma no portal antes de pedir.

IntentValorEventos
SERVERS1SERVER_CREATE/DELETE, CHANNEL_*, ROLE_*, CHANNELS_SYNC, THREAD_*
SERVER_MEMBERS ★2MEMBER_JOIN, MEMBER_LEAVE, MEMBER_UPDATE
SERVER_MODERATION4MEMBER_WARNING
SERVER_EXPRESSIONS8EXPRESSIONS_UPDATE
SERVER_VOICE_STATES128VOICE_STATE_UPDATE
SERVER_PRESENCES ★256PRESENCE_UPDATE, ACTIVITY_UPDATE
SERVER_MESSAGES512MESSAGE_CREATE/UPDATE/DELETE, PIN_*
SERVER_MESSAGE_REACTIONS1024REACTION_ADD, REACTION_REMOVE
SERVER_MESSAGE_TYPING2048TYPING
DIRECT_MESSAGES4096MESSAGE_* (DM), DM_CREATE
DIRECT_MESSAGE_REACTIONS8192REACTION_* (DM)
DIRECT_MESSAGE_TYPING16384TYPING (DM)
MESSAGE_CONTENT ★32768content / embeds / attachments / components

INTERACTION_CREATE chega sempre, sem intent. Os eventos do próprio bot entrando ou saindo de servidores também.

Códigos de fechamento

  • 4000 frame inválido · 4002 sem IDENTIFY a tempo · 4003 sem heartbeat: reconecte e use RESUME.
  • 4001 token inválido ou trocado: não reconecte com o mesmo token.
  • 4004 conexões demais para o mesmo bot.
  • 4013 intents inválidas · 4014 intent privilegiada não ativada no portal.

Escala

Hoje um bot usa uma conexão (até 10 simultâneas por bot). Sharding não é necessário; se um dia for, ele chega como opção nova no IDENTIFY, sem quebrar quem já está conectado.