Berichten die door de server worden verzonden, worden ontvangen in de gebeurtenis OnMQTTPublish. Deze gebeurtenis heeft de volgende parameters:
Topic: is de naam van het onderwerp dat aan dit bericht is gekoppeld.
Tekst: is de tekst van het bericht.
PublishProperties: als MQTT 5.0, zijn dit de eigenschappen van het gepubliceerde bericht.
procedure OnMQTTPublish(Connection: TsgcWSConnection; aTopic, aText: string;
PublishProperties: TsgcWSMQTTPublishProperties);
begin
WriteLn('Topic: ' + aTopic + '. Message: ' + aText);
end;
De gebeurtenis OnMQTTPublishEx biedt de gepubliceerde berichtpayload in meerdere formaten via een TsgcWSMQTTPublishData-object. Deze gebeurtenis heeft de volgende parameters:
Topic: is de naam van het onderwerp dat aan dit bericht is gekoppeld.
Data: bevat de payload van het gepubliceerde bericht. Het heeft de volgende eigenschappen:
Waarde: de payload als tekenreeks.
Bytes: de onbewerkte payload als TBytes.
Stream: de onbewerkte payload als TMemoryStream.
PublishProperties: als MQTT 5.0, zijn dit de eigenschappen van het gepubliceerde bericht.
procedure OnMQTTPublishEx(Connection: TsgcWSConnection; aTopic: string;
aData: TsgcWSMQTTPublishData; PublishProperties: TsgcWSMQTTPublishProperties);
begin
// read as string
WriteLn('Topic: ' + aTopic + '. Message: ' + aData.Value);
// read as bytes
WriteLn('Bytes Length: ' + IntToStr(Length(aData.Bytes)));
// read as stream
WriteLn('Stream Size: ' + IntToStr(aData.Stream.Size));
end;