Biblioteca WebSocket .NET — Cliente y servidor para C#
sgcWebSockets .NET es una biblioteca completa de cliente y servidor WebSocket para C#: framing RFC 6455, TLS, compresión per-message-deflate, reconexión automática, más los sub-protocolos MQTT, AMQP, STOMP y WAMP y HTTP/2 en el mismo paquete. Instálala desde NuGet como esegece.sgcWebSockets o empieza con la Community Edition gratuita.
La misma suite de componentes que el producto Delphi, portada a C# con los mismos nombres de clase y la misma API orientada a eventos.
Una biblioteca WebSocket para .NET debería cubrir algo más que el protocolo de wire. System.Net.WebSockets te da el framing RFC 6455; sgcWebSockets .NET añade encima lo que las aplicaciones en producción necesitan: un servidor que funciona sobre TCP o HTTP.SYS (puertos compartidos con IIS), un cliente con reconexión automática por watchdog y heartbeats, colas de mensajes, soporte de proxy y autenticación, y los sub-protocolos de mensajería (MQTT, AMQP, STOMP, WAMP) que de otro modo supondrían añadir tres dependencias más.
La cobertura de target frameworks es inusualmente amplia: .NET Framework 2.0–4.8.1, .NET Core 1.0–3.1, .NET 5/6/7/8/9 y .NET Standard 1.6/2.0, en Windows, Linux y macOS. Las aplicaciones WinForms heredadas y los servicios ASP.NET Core actuales usan el mismo paquete y el mismo código.
Cliente
TsgcWebSocketClient: cliente RFC 6455 con TLS, proxy, heartbeat y watchdog
Servidor
TsgcWebSocketHTTPServer: servidor WebSocket + HTTP sobre HTTP.SYS, puertos compartidos, SSL/TLS
Descarga gratuita para Windows, Linux 64-bit y macOS 64-bit (incluye nag screen)
Funciones
Más que framing WebSocket
Las piezas que de otro modo construirías tú mismo, ya incluidas.
Cliente y servidor WebSocket
RFC 6455 en ambos lados, con compresión per-message-deflate (RFC 7692) y TLS hasta 1.3 en el transporte proporcionado.
Watchdog de reconexión automática
Las propiedades WatchDog y HeartBeat del cliente mantienen vivas las conexiones de larga duración y las restablecen tras caídas de red, sin código extra.
Protocolos de mensajería
Clientes MQTT 3.1.1 / 5.0, AMQP 0.9.1 / 1.0, STOMP y WAMP integrados. Habla con RabbitMQ, HiveMQ, Azure Service Bus o ActiveMQ desde la misma biblioteca.
HTTP/2
Un cliente HTTP/2 nativo (RFC 9113) en el mismo paquete, para APIs como Apple Push Notifications que lo requieren.
Servidor HTTP.SYS
El componente servidor se enlaza a través de HTTP.SYS, así que puede compartir los puertos 80/443 con IIS y servir tráfico HTTP y WebSocket desde un solo proceso.
Clientes wire SignalR
TsgcWSAPI_SignalR y TsgcWSAPI_SignalRCore implementan el protocolo de wire del cliente SignalR, de modo que un cliente sgcWebSockets puede hablar con un servidor SignalR de ASP.NET Core existente.
Clientes de APIs AI/LLM
Los clientes de OpenAI, Anthropic, Gemini, DeepSeek, Grok, Ollama, Mistral y MCP vienen en la misma suite, reflejando la familia de IA de Delphi.
Autenticación y seguridad
Cliente y servidor exponen los grupos de propiedades Authentication, Proxy y TLSOptions / SSLOptions; el servidor añade un evento OnAuthentication para validar credenciales.
La misma API que Delphi
Nombres de clase Tsgc* y eventos idénticos en ambas plataformas, así que los equipos que combinan Delphi y .NET mantienen un único modelo mental.
Guía Rápida
Un cliente y un servidor en C#
Configura unas pocas propiedades, conecta los eventos, activa Active. Ese es todo el patrón.
La Community Edition gratuita es una build completamente funcional para Windows, Linux 64-bit y macOS 64-bit que muestra un nag screen, la forma más rápida de evaluar la biblioteca en tu propia solución. Las ediciones .NET son Community, Professional y Enterprise, y las tres incluyen el mismo conjunto de componentes, con el cliente y también el servidor WebSocket. Las ediciones comerciales se diferencian en la licencia, no en las funciones: Professional elimina el nag screen, añade el código fuente de la interfaz pública C# y otorga una licencia de redistribución comercial, mientras que Enterprise añade el código fuente C# completo para recompilar los ensamblados más soporte prioritario.