TsgcWSPClient_MQTTÉvénements › OnMQTTPubRec

OnMQTTPubRec Événement

Se déclenche lors du deuxième échange du handshake QoS 2 (PUBLISH → PUBREC → PUBREL → PUBCOMP).

Syntaxe

property OnMQTTPubRec: TsgcWSMQTTPubRecEvent;
// TsgcWSMQTTPubRecEvent = procedure(Connection: TsgcWSConnection; aPacketIdentifier: Word; ReasonCode: Integer; const ReasonName: String; PubRecProperties: TsgcWSMQTTPUBRECProperties) of object

Valeur par défaut

Remarques

QoS 2 garantit une livraison exactement-une-fois via une négociation à quatre paquets : PUBLISH → PUBREC → PUBREL → PUBCOMP. OnMQTTPubRec se déclenche lorsque le broker acquitte le PUBLISH original avec un paquet PUBREC, signalant que le broker a accepté le message pour le flux exactement-une-fois. Le composant répond automatiquement avec PUBREL pour continuer la négociation ; le PUBCOMP final arrivera via OnMQTTPubComp. Paramètres :

Exemple

procedure TForm1.MQTTPubRec(Connection: TsgcWSConnection;
  aPacketIdentifier: Word; ReasonCode: Integer;
  const ReasonName: String;
  PubRecProperties: TsgcWSMQTTPUBRECProperties);
begin
  // second leg of QoS 2: broker has the message, PUBREL is sent automatically
  Memo1.Lines.Add(Format('PUBREC id=%d (%s)',
    [aPacketIdentifier, ReasonName]));
end;

Retour aux événements