WAMP | Subscribers

Ein Abonnent empfängt Ereignisse, indem er zunächst Topics (auch Kanäle genannt) bereitstellt, an denen er interessiert ist. Anschließend empfängt der Abonnent alle Ereignisse, die für dieses Topic veröffentlicht werden.

Um Ereignisse von einem Topic zu empfangen, muss der Abonnent dieses Topic zunächst abonnieren.

 

WAMP Client

 


procedure OnMessageEvent(Connection: TsgcWSConnection; const Text: string);
begin
  ShowMessage(Text);
end;
 
oClient := TsgcWebSocketClient.Create(nil);
oClient.Host := '127.0.0.1';
oClient.Port := 80;
oClientWAMP := TsgcWSPClient_WAMP.Create(nil);
oClientWAMP.Client := oClient.
oClientWAMP.OnMessage := OnMessageEvent;
oClient.Active := True;
 
// Subscribe to topic after successful connect
oClient.Subscribe('myTopic');

 

WAMP Server

 


procedure OnSubscriptionEvent(Connection: TsgcWSConnection; const Subscription: string);
begin
  ShowMessage('Subscribed: ' + Subscription);
end;
 
oServer := TsgcWebSocketServer.Create(nil);
oServer.Port := 80;
oServerWAMP := TsgcWSPServer_WAMP.Create(nil);
oServerWAMP.OnSubscription := OnSubscriptionEvent;
oServerWAMP.Server := oServer;
oServerWAMP.Active := True;