TsgcWSPClient_MQTT › Événements › OnMQTTDisconnect
Se déclenche lorsque le courtier envoie un DISCONNECT ou que la session est fermée ; signale ReasonCode et les propriétés de déconnexion MQTT 5.
property OnMQTTDisconnect: TsgcWSMQTTDisconnectEvent;
// TsgcWSMQTTDisconnectEvent = procedure(Connection: TsgcWSConnection; ReasonCode: Integer; const ReasonName: String; DisconnectProperties: TsgcWSMQTTDISCONNECTProperties) of object
—
Signale que la session MQTT est en cours de résiliation. MQTT 3.1.1 n'a pas de paquet DISCONNECT initié par le serveur, donc dans ce cas l'événement reflète une fermeture détectée localement. MQTT 5.0 introduit un paquet DISCONNECT que le courtier peut envoyer pour expliquer pourquoi la connexion est fermée. Paramètres :
Utilisez cet événement pour journaliser la cause, mettre à jour l'état de l'interface utilisateur et, si ServerReference est défini, envisager une reconnexion au courtier suggéré.
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;