TsgcWSPClient_MQTTEvents › OnMQTTPubRec

OnMQTTPubRec 이벤트

QoS 2 핸드셰이크의 두 번째 단계(PUBLISH → PUBREC → PUBREL → PUBCOMP)에서 발생합니다.

구문

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

기본값

설명

QoS 2는 4-패킷 핸드셰이크를 통해 정확히 한 번 전달을 보장합니다: PUBLISH → PUBREC → PUBREL → PUBCOMP. OnMQTTPubRec은 브로커가 PUBREC 패킷으로 원래 PUBLISH를 확인할 때 발생하며, 브로커가 정확히 한 번 흐름을 위해 메시지를 수락했음을 알립니다. 구성 요소는 자동으로 PUBREL로 응답하여 핸드셰이크를 계속합니다. 최종 PUBCOMP은 OnMQTTPubComp에 도착합니다. 매개변수:

예제

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;

이벤트로 돌아가기