Socket.IO-client

Verbind vanuit Delphi/C++Builder met Socket.IO-servers. Spreekt het Engine.IO-transport plus de Socket.IO-event/namespace-laag met ACK's en rooms.

TsgcWSAPI_SocketIO

Client voor het Socket.IO v3/v4-protocol — Engine.IO-transport, namespaces, event emit/receive, ACK-callbacks en binaire attachments.

Componentklasse

TsgcWSAPI_SocketIO

Platforms

Windows, macOS, Linux, iOS, Android

Editie

Standard / Professional / Enterprise

Plaats, verbind, emit, luister

Combineer met TsgcWebSocketClient gericht op /socket.io/ met EIO=4&transport=websocket — het component verzorgt de Engine.IO-handshake en je kunt Emit / Subscribe-events gebruiken.

uses
  sgcWebSocket, sgcWebSocket_API_SocketIO;

var
  WSClient: TsgcWebSocketClient;
  SIO: TsgcWSAPI_SocketIO;
begin
  WSClient := TsgcWebSocketClient.Create(nil);
  WSClient.URL := 'wss://server.example.com/socket.io/?EIO=4&transport=websocket';

  SIO := TsgcWSAPI_SocketIO.Create(nil);
  SIO.Client := WSClient;

  WSClient.Active := True;

  SIO.Emit('/', 'chat:message',
    '{"user":"alice","text":"hello"}');
end;
// uses: sgcWebSocket, sgcWebSocket_API_SocketIO
TsgcWebSocketClient *WSClient = new TsgcWebSocketClient(this);
WSClient->URL = "wss://server.example.com/socket.io/?EIO=4&transport=websocket";

TsgcWSAPI_SocketIO *SIO = new TsgcWSAPI_SocketIO(this);
SIO->Client = WSClient;

WSClient->Active = true;
SIO->Emit("/", "chat:message",
  "{\"user\":\"alice\",\"text\":\"hello\"}");

Wat zit erin

Implementeert zowel de Engine.IO-transportlaag (ping/pong, upgrade) als de Socket.IO-berichtenlaag (CONNECT, EVENT, ACK, DISCONNECT) over één enkele TsgcWebSocketClient.

Engine.IO-transport

Verzorgt de EIO=4-handshake, de 25-seconden-ping/pong-cadans en het protocol-upgrade-pad. Het component onderhandelt automatisch over payload-codering (text of binary).

Namespaces

Connect(namespace) opent extra namespaces over hetzelfde transport. Emit(namespace, event, args) richt zich op de gekozen namespace; OnSocketIOEvent meldt per event de oorspronkelijke namespace.

Event-ACK's

Geef een callback door aan Emit met een ACK-identifier — wanneer de server antwoordt, vuurt het component OnSocketIOAck af met de bijbehorende id en de JSON-argumenten.

Binaire attachments

Socket.IO v4 ondersteunt verweven binaire payloads. Het component behoudt de placeholders en levert elke attachment als een stream naast de JSON-envelope.

Reconnect

Bind de WatchDog van de onderliggende TsgcWebSocketClient voor auto-reconnect — bij heropening verstuurt het component de CONNECT-pakketten opnieuw voor elke actieve namespace.

Rooms (server-side)

Socket.IO-rooms zijn een serverconcept; het component neemt deel door join / leave-events te emitten volgens het room-contract dat jouw server definieert.

Specificaties & referenties

Officiële bronnen voor het protocol dat dit component implementeert.

Documentatie & demo's

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

Online help — API_SocketIO Volledige referentie van eigenschappen, methodes en events voor dit component.
Gratis proefversie — sgcWebSockets Download het proefpakket en verbind vanuit Delphi met Socket.IO-servers.
Technisch document (PDF) Functies, snelstart, codevoorbeelden voor Delphi & C++ Builder en primaire bronverwijzingen — alleen voor dit component.
Gebruikershandleiding (PDF) Uitgebreide handleiding die elk component in de bibliotheek behandelt.

Klaar om met een Socket.IO-server te praten?

Download de gratis proefversie en integreer Socket.IO in je Delphi-toepassingen.