Discord Gateway-API

Maak verbinding met de Discord Gateway over WebSocket om bots te bouwen die in realtime reageren op berichten, presence-, guild- en voice-state-events.

TsgcWSAPI_Discord

Getypeerde Delphi/C++ Builder-client voor de Discord Gateway WebSocket-API — verzorgt de heartbeat, identify, intents, sharding en event-dispatch.

Componentklasse

TsgcWSAPI_Discord

Protocol

Discord Gateway

Platforms

Windows, macOS, Linux, iOS, Android

Editie

Standard / Professional / Enterprise

Plaats het component, stel het token in en luister naar events

Combineer met TsgcWebSocketClient, stel Discord.Token en Discord.Intents in en hang OnDiscordMessageCreate / OnDiscordReady eraan om gateway-events af te handelen.

uses
  sgcWebSocket, sgcWebSocket_API_Discord;

var
  WSClient: TsgcWebSocketClient;
  Discord: TsgcWSAPI_Discord;
begin
  WSClient := TsgcWebSocketClient.Create(nil);

  Discord := TsgcWSAPI_Discord.Create(nil);
  Discord.Client := WSClient;
  Discord.Discord.Token := 'your-bot-token';

  Discord.OnDiscordReady := procedure(Connection: TsgcWSConnection;
    const aPayload: string)
  begin
    Memo1.Lines.Add('Discord klaar');
  end;

  Discord.OnDiscordMessageCreate := procedure(Connection: TsgcWSConnection;
    const aMessage: string)
  begin
    Memo1.Lines.Add(aMessage);
  end;

  WSClient.Active := True;
end;
// uses: sgcWebSocket, sgcWebSocket_API_Discord
TsgcWebSocketClient *WSClient = new TsgcWebSocketClient(this);
TsgcWSAPI_Discord *Discord = new TsgcWSAPI_Discord(this);
Discord->Client = WSClient;
Discord->Discord->Token = "your-bot-token";

WSClient->Active = true;

Wat zit erin

Implementeert het Discord Gateway-protocol bovenop TsgcWebSocketClient: IDENTIFY, RESUME, HEARTBEAT, dispatch-routing.

Gateway-handshake

Bij verbinden verstuurt het component IDENTIFY met token, intents en eigenschappen; bij disconnect verstuurt het RESUME met het laatste sequentienummer zodat geen events verloren gaan.

Heartbeat

Discord vereist opcode-1 HEARTBEAT-berichten op het interval dat de gateway in HELLO teruggeeft. Het component plant ze in en bewaakt HEARTBEAT_ACK om zombie-verbindingen te detecteren.

Intents

Discord.Intents selecteert welke event-categorieën de gateway levert (GUILD_MESSAGES, GUILD_MEMBERS, MESSAGE_CONTENT, VOICE_STATES — volledige intent-bitmask).

Event-dispatch

Elk gateway-dispatch-event verschijnt als een getypeerde eigenschap: OnDiscordReady, OnDiscordMessageCreate, OnDiscordGuildCreate, OnDiscordPresenceUpdate en nog veel meer.

Voice-gateway-hooks

Ontvang VOICE_STATE_UPDATE- en VOICE_SERVER_UPDATE-events — combineer met het voice-WebSocket-endpoint voor voicekanaal-automatisering.

Klaar voor sharding

Stel Discord.Shard en Discord.ShardCount in om deel te nemen aan Discord's geshardde gateway wanneer je bot de aanbevolen guild-drempel overschrijdt.

Specificaties & referenties

Gezaghebbende bronnen voor de API's die dit component implementeert.

Documentatie & demo's

Diepe link naar de componentreferentie, pak het kant-en-klare demoproject en download de proefversie.

Online help — API_Discord Volledige referentie van eigenschappen, methoden en events voor dit component.
Gratis proefversie — sgcWebSockets Bouw je Discord-bot bovenop het sgcWebSockets-proefpackage.
Technisch document (PDF) Functies, snelstart, codevoorbeelden voor Delphi & C++ Builder en primaire bronreferenties — alleen dit component.
Gebruikershandleiding (PDF) Uitgebreide handleiding die alle componenten in de bibliotheek behandelt.

Klaar om een Discord-bot te bouwen?

Download de gratis proefversie en maak vanuit je Delphi-toepassingen verbinding met de Discord Gateway.