TsgcWSPServer_WAMP › Methoden › Event
Veröffentlicht eine EVENT-Nachricht (Typ 8) an jeden Client, der derzeit die angegebene Topic-URI abonniert hat.
procedure Event(const aTopicURI: String; const aEvent: String = '');
| Name | Typ | Beschreibung |
|---|---|---|
aTopicURI | const String | URI (oder CURIE) des PubSub-Kanals, dessen Abonnenten das Ereignis erhalten, zum Beispiel http://example.com/simple. |
aEvent | const String | Ereignis-Nutzlast, die an jeden Abonnenten übermittelt wird. Jeder serialisierte Wert ist erlaubt (reiner Text, Zahl, JSON-Objekt, JSON-Array usw.). |
Dies ist der serverseitige Broadcast-Einstiegspunkt für WAMP v1 PubSub. Der Broker durchläuft die Liste der Verbindungen, die aTopicURI abonniert haben, und schreibt einen WAMP-EVENT-Frame [8, TopicURI, Event] an jede von ihnen; Verbindungen, die das Topic nicht abonniert haben, werden übersprungen. Wenn aktuell kein Client das Topic abonniert hat, wird das Ereignis einfach verworfen. Die hier verwendete Topic-URI muss mit der übereinstimmen, die Clients an Subscribe übergeben haben (oder von einem bekannten, über OnPrefix registrierten Präfix abgedeckt sein). Verwenden Sie diese Methode, um server-originierte Benachrichtigungen zu pushen; client-originierte Veröffentlichungen treffen über die normale PUBLISH-Pipeline ein und werden vom Broker automatisch erneut versendet.
procedure TForm1.BroadcastTemperature(aValue: Double);
begin
sgcWSPServer_WAMP1.Event('http://example.com/sensors/temperature',
Format('{"value":%.2f}', [aValue]));
end;