Delphi WebSocket Cliente

TsgcWebSocketClient — componente cliente WebSocket con todas las prestaciones para Delphi y C++ Builder: SSL/TLS, soporte de proxy, compresión de mensajes y reconexión automática.

TsgcWebSocketClient

Componente WebSocket cliente — conecta con cualquier servidor WebSocket RFC 6455 e intercambia mensajes de texto y binarios.

Clase del componente

TsgcWebSocketClient

Protocolo

WebSocket — RFC 6455

Plataformas

Windows, macOS, Linux, iOS, Android

Edición

Standard / Professional / Enterprise

Coloca el componente, ajusta unas propiedades y listo

Configura Host, Port y TLS, gestiona OnMessage y activa la conexión. El handshake, el framing y el ping/pong se gestionan por ti.

uses
  sgcWebSocket_Client, sgcWebSocket_Classes;

var
  oClient: TsgcWebSocketClient;
begin
  oClient := TsgcWebSocketClient.Create(nil);
  oClient.Host := '127.0.0.1';
  oClient.Port := 80;
  oClient.TLS := True;
  oClient.Options.Parameters := '/ws/';

  oClient.OnConnect := OnConnect;
  oClient.OnMessage := OnMessage;
  oClient.OnDisconnect := OnDisconnect;

  oClient.Active := True;
end;

procedure TForm1.OnMessage(Connection: TsgcWSConnection;
  const Text: string);
begin
  Memo1.Lines.Add(Text);
end;

// Send a text frame
oClient.WriteData('hello');
// uses: sgcWebSocket_Client, sgcWebSocket_Classes
TsgcWebSocketClient *oClient = new TsgcWebSocketClient(this);
oClient->Host = "127.0.0.1";
oClient->Port = 80;
oClient->TLS = true;
oClient->Options->Parameters = "/ws/";

oClient->OnConnect = OnConnect;
oClient->OnMessage = OnMessage;
oClient->OnDisconnect = OnDisconnect;

oClient->Active = true;

void __fastcall TForm1::OnMessage(TsgcWSConnection *Connection,
    const UnicodeString Text)
{
  Memo1->Lines->Add(Text);
}

// Send a text frame
oClient->WriteData("hello");
using esegece.sgcWebSockets;

var client = new TsgcWebSocketClient();
client.Host = "127.0.0.1";
client.Port = 80;
client.TLS = true;
client.Options.Parameters = "/ws/";

client.OnConnect    += (conn) => Console.WriteLine("#connected: " + conn.IP);
client.OnDisconnect += (conn, code) => Console.WriteLine("#disconnected: " + code);
client.OnMessage    += (conn, text) => Console.WriteLine(text);

client.Active = true;

// Send a text frame
client.WriteData("hello");

Qué hay dentro

23 propiedades publicadas, 22 métodos y 16 eventos — tomados directamente de la referencia del componente.

Control de conexión

Host, Port, URL, TLS, IPVersion y Active abren una conexión síncrona o asíncrona. Connect/Disconnect bloquean al llamador; Start/Stop se ejecutan en un hilo de trabajo.

Keep-alive y reconexión

HeartBeat envía tramas ping de WebSocket en un temporizador; WatchDog reconecta automáticamente tras una caída inesperada. OnBeforeHeartBeat y OnBeforeWatchDog permiten personalizar cada ciclo.

TLS y proxy

TLSOptions selecciona el IOHandler (OpenSSL o SChannel), versión TLS (1.0–1.3) y ALPN; Proxy enruta el handshake a través de HTTP o SOCKS; Authentication gestiona esquemas Basic / Bearer / personalizados.

API de mensajería

WriteData envía una trama de texto con fragmentación opcional; WriteAndWaitData bloquea hasta que el par responde; Ping envía una trama ping. OnMessage, OnBinary y OnFragmented entregan los datos entrantes.

Compresión y throttling

Extensions.PerMessage_Deflate negocia compresión RFC 7692; Throttle limita los bits por segundo en cualquier dirección; QueueOptions serializa las escrituras Text / Binary / Ping en el hilo de la conexión.

Diagnóstico

LogFile vuelca a disco el tráfico entrante y saliente en crudo; NotifyEvents selecciona cómo se despachan los eventos al hilo principal; OnException, OnError y OnHandshake exponen los detalles a nivel de protocolo.

Especificaciones y referencias

Fuentes autorizadas para los protocolos que implementa este componente.

Documentación y demos

Accede directamente a la referencia del componente, descarga el proyecto demo listo para ejecutar y descarga la prueba.

Ayuda en línea — TsgcWebSocketClient Referencia completa de propiedades, métodos y eventos de este componente.
Proyecto demo — 01.WebSocket\01.Client Proyecto de ejemplo listo para ejecutar. Se incluye en el paquete sgcWebSockets — descarga la prueba más abajo.
Documento técnico (PDF) Características, inicio rápido, ejemplos de código para Delphi, C++ Builder y .NET y referencias de fuentes primarias — solo este componente.
Manual de usuario (PDF) Manual completo que cubre todos los componentes de la librería.

¿Listo para empezar?

Descarga la prueba gratuita y añade soporte WebSocket cliente a tu aplicación Delphi.