SGC Protocol

A JSON-RPC 2.0 based custom protocol providing remote procedure calls, publish-subscribe messaging, transactional operations, QoS, and message acknowledgment.

TsgcWSPClient_sgc / TsgcWSPServer_sgc

The native eSeGeCe Pub/Sub + RPC subprotocol — channels, queue levels, session resumption, transactions. Wire-compatible Delphi / C++ Builder / .NET.

Component class

TsgcWSPClient_sgc

Protocol

sgcWebSockets native subprotocol (over WebSocket)

Platforms

Windows, macOS, Linux, iOS, Android

Edition

Standard / Professional / Enterprise

Drop the component, set a few properties, go

Drop a server + client subprotocol pair on top of a TsgcWebSocketServer and TsgcWebSocketClient.

uses
  sgcWebSocket, sgcWebSocket_Server, sgcWebSocket_Protocol_sgc_Server,
  sgcWebSocket_Protocol_sgc_Client, sgcWebSocket_Types;

var
  WSServer: TsgcWebSocketServer;
  ServerProto: TsgcWSPServer_sgc;
  WSClient: TsgcWebSocketClient;
  ClientProto: TsgcWSPClient_sgc;
begin
  // --- server side -----
  WSServer := TsgcWebSocketServer.Create(nil);
  WSServer.Port := 80;
  ServerProto := TsgcWSPServer_sgc.Create(nil);
  ServerProto.Server := WSServer;
  WSServer.Active := True;

  // --- client side -----
  WSClient := TsgcWebSocketClient.Create(nil);
  WSClient.Host := '127.0.0.1';
  WSClient.Port := 80;
  ClientProto := TsgcWSPClient_sgc.Create(nil);
  ClientProto.Client := WSClient;
  WSClient.Active := True;

  // publish / subscribe through a named channel
  ClientProto.Subscribe('orders');
  ClientProto.Publish('{"id":42}', 'orders', '', queueLevel0);
  ClientProto.RPC('call-1', 'getQuote', 'AAPL');
end;

What's inside

5 published properties, 11 methods, 15 events — pulled from the component reference.

Connection

Published properties: Client, Broker, Guid.

Messaging

Published properties: QoS.

Lifecycle

Events: OnConnect, OnDisconnect, OnError.

Advanced

Methods: WriteData.

Diagnostics

Published properties: Version.

PubSub

Methods: Subscribe, UnSubscribe, UnSubscribeAll.

Specifications & references

Authoritative sources for the protocols this component implements.

Documentation & Demos

Deep-link to the component reference, grab the ready-to-run demo project, and download the trial.

Demo Project — Demos\Protocols\sgc Ready-to-run example project. Ships inside the sgcWebSockets package — download the trial below.
Technical Document (PDF) Features, quick start, code samples for Delphi & C++ Builder and primary-source references — this component only.
User Manual (PDF) Comprehensive manual covering every component in the library.

Ready to Use the SGC Protocol?

Download the free trial and start building with JSON-RPC messaging.