Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  constants.ts

  Sprache: JAVA
 

Spracherkennung für: .ts vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]

/**
 * QQ Bot WebSocket Gateway protocol constants.
 *
 * Extracted from `gateway.ts` to share between both plugin versions.
 * Zero external dependencies.
 */

/** QQ Bot WebSocket intents grouped by permission level. */
const INTENTS = {
  GUILDS: 1 << 0,
  GUILD_MEMBERS: 1 << 1,
  PUBLIC_GUILD_MESSAGES: 1 << 30,
  DIRECT_MESSAGE: 1 << 12,
  GROUP_AND_C2C: 1 << 25,
  INTERACTION: 1 << 26,
} as const;

/** Full intent mask: groups + DMs + channels + interaction. */
export const FULL_INTENTS =
  INTENTS.PUBLIC_GUILD_MESSAGES |
  INTENTS.DIRECT_MESSAGE |
  INTENTS.GROUP_AND_C2C |
  INTENTS.INTERACTION;

/** Exponential backoff delays for reconnection attempts (ms). */
export const RECONNECT_DELAYS = [1000, 2000, 5000, 10000, 30000, 60000] as const;

/** Delay after receiving a rate-limit close code (ms). */
export const RATE_LIMIT_DELAY = 60000;

/** Maximum reconnection attempts before giving up. */
export const MAX_RECONNECT_ATTEMPTS = 100;

/** How many quick disconnects before warning about permissions. */
export const MAX_QUICK_DISCONNECT_COUNT = 3;

/** A disconnect within this window (ms) counts as "quick". */
export const QUICK_DISCONNECT_THRESHOLD = 5000;

// ============ Opcode Constants ============

/** Gateway opcodes used by the QQ Bot WebSocket protocol. */
export const GatewayOp = {
  /** Server → Client: Dispatch event (type + data). */
  DISPATCH: 0,
  /** Client → Server: Heartbeat. */
  HEARTBEAT: 1,
  /** Client → Server: Identify (initial auth). */
  IDENTIFY: 2,
  /** Client → Server: Resume a dropped session. */
  RESUME: 6,
  /** Server → Client: Request client to reconnect. */
  RECONNECT: 7,
  /** Server → Client: Invalid session. */
  INVALID_SESSION: 9,
  /** Server → Client: Hello (heartbeat interval). */
  HELLO: 10,
  /** Server → Client: Heartbeat ACK. */
  HEARTBEAT_ACK: 11,
} as const;

// ============ Close Codes ============

/** WebSocket close codes used by the QQ Gateway. */
export const GatewayCloseCode = {
  /** Normal closure — do not reconnect. */
  NORMAL: 1000,
  /** Authentication failed — refresh token then reconnect. */
  AUTH_FAILED: 4004,
  /** Session invalid — clear session, refresh token, reconnect. */
  INVALID_SESSION: 4006,
  /** Sequence number out of range — clear session, refresh token, reconnect. */
  SEQ_OUT_OF_RANGE: 4007,
  /** Rate limited — wait before reconnecting. */
  RATE_LIMITED: 4008,
  /** Session timed out — clear session, refresh token, reconnect. */
  SESSION_TIMEOUT: 4009,
  /** Server internal error (range start) — clear session, refresh token, reconnect. */
  SERVER_ERROR_START: 4900,
  /** Server internal error (range end). */
  SERVER_ERROR_END: 4913,
  /** Insufficient intents — fatal, do not reconnect. */
  INSUFFICIENT_INTENTS: 4914,
  /** Disallowed intents — fatal, do not reconnect. */
  DISALLOWED_INTENTS: 4915,
} as const;

// ============ Dispatch Event Types ============

/** Event type strings dispatched under opcode 0 (DISPATCH). */
export const GatewayEvent = {
  READY: "READY",
  RESUMED: "RESUMED",
  C2C_MESSAGE_CREATE: "C2C_MESSAGE_CREATE",
  AT_MESSAGE_CREATE: "AT_MESSAGE_CREATE",
  DIRECT_MESSAGE_CREATE: "DIRECT_MESSAGE_CREATE",
  GROUP_AT_MESSAGE_CREATE: "GROUP_AT_MESSAGE_CREATE",
  INTERACTION_CREATE: "INTERACTION_CREATE",
} as const;

¤ Dauer der Verarbeitung: 0.23 Sekunden  (vorverarbeitet am  2026-04-27) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge