TsgcWSPClient_MQTT › Events › OnMQTTPubRec
Wordt geactiveerd bij de tweede stap van de QoS 2-handshake (PUBLISH → PUBREC → PUBREL → PUBCOMP).
property OnMQTTPubRec: TsgcWSMQTTPubRecEvent;
// TsgcWSMQTTPubRecEvent = procedure(Connection: TsgcWSConnection; aPacketIdentifier: Word; ReasonCode: Integer; const ReasonName: String; PubRecProperties: TsgcWSMQTTPUBRECProperties) of object
—
QoS 2 garandeert exacte eenmalige levering via een vierpakkethandshake: PUBLISH → PUBREC → PUBREL → PUBCOMP. OnMQTTPubRec wordt geactiveerd wanneer de broker de oorspronkelijke PUBLISH bevestigt met een PUBREC-pakket, wat aangeeft dat de broker het bericht heeft geaccepteerd voor de exacte eenmalige stroom. De component antwoordt automatisch met PUBREL om de handshake voort te zetten; het uiteindelijke PUBCOMP arriveert via OnMQTTPubComp. Parameters:
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;