TsgcWSPClient_MQTTEventi › OnMQTTPublish

OnMQTTPublish Evento

Generato quando il broker consegna un messaggio PUBLISH in arrivo; espone Topic, Text e le PublishProperties di MQTT 5.

Sintassi

property OnMQTTPublish: TsgcWSMQTTPublishEvent;
// TsgcWSMQTTPublishEvent = procedure(Connection: TsgcWSConnection; aTopic, aText: String; PublishProperties: TsgcWSMQTTPUBLISHProperties) of object

Valore predefinito

Note

Evento di consegna principale: generato ogni volta che il broker inoltra un PUBLISH a questo client per un argomento corrispondente a una delle sue sottoscrizioni. Indipendentemente dal QoS di pubblicazione (0, 1 o 2), l'evento si attiva dopo che la sequenza di riconoscimento a livello di trasporto è completa: QoS 0 è fire-and-forget, QoS 1 dopo PUBACK, QoS 2 dopo lo scambio PUBREC/PUBREL/PUBCOMP. Parametri:

Esempio

procedure TForm1.MQTTPublish(Connection: TsgcWSConnection;
  aTopic, aText: String;
  PublishProperties: TsgcWSMQTTPUBLISHProperties);
begin
  Memo1.Lines.Add(Format('[%s] %s', [aTopic, aText]));

  // MQTT 5: honour a ResponseTopic if the sender set one
  if PublishProperties.ResponseTopic <> '' then
    MQTT.Publish(PublishProperties.ResponseTopic, 'ack', mtqsAtMostOnce);
end;

Torna agli Eventi