TsgcWSPClient_MQTT › 이벤트 › OnMQTTDisconnect
브로커가 DISCONNECT를 보내거나 세션이 닫힐 때 발생합니다. ReasonCode와 MQTT 5 DisconnectProperties를 보고합니다.
property OnMQTTDisconnect: TsgcWSMQTTDisconnectEvent;
// TsgcWSMQTTDisconnectEvent = procedure(Connection: TsgcWSConnection; ReasonCode: Integer; const ReasonName: String; DisconnectProperties: TsgcWSMQTTDISCONNECTProperties) of object
—
MQTT 세션이 종료되고 있음을 알립니다. MQTT 3.1.1에는 서버가 시작하는 DISCONNECT 패킷이 없으므로, 이 경우 이벤트는 로컬에서 감지된 종료를 반영합니다. MQTT 5.0은 브로커가 연결이 종료되는 이유를 설명하기 위해 보낼 수 있는 DISCONNECT 패킷을 도입합니다. 매개변수:
이 이벤트를 사용하여 원인을 기록하고, UI 상태를 업데이트하며, ServerReference가 설정된 경우 제안된 브로커에 재연결을 고려하십시오.
procedure TForm1.MQTTDisconnect(Connection: TsgcWSConnection;
ReasonCode: Integer; const ReasonName: String;
DisconnectProperties: TsgcWSMQTTDISCONNECTProperties);
begin
Memo1.Lines.Add(Format('Disconnect %d (%s)',
[ReasonCode, ReasonName]));
if DisconnectProperties.ServerReference <> '' then
Memo1.Lines.Add('Broker suggests: ' +
DisconnectProperties.ServerReference);
end;