TsgcWSPClient_MQTT › Ereignisse › OnMQTTDisconnect
Wird ausgelöst, wenn der Broker ein DISCONNECT sendet oder die Sitzung geschlossen wird; meldet ReasonCode und MQTT-5-DisconnectProperties.
property OnMQTTDisconnect: TsgcWSMQTTDisconnectEvent;
// TsgcWSMQTTDisconnectEvent = procedure(Connection: TsgcWSConnection; ReasonCode: Integer; const ReasonName: String; DisconnectProperties: TsgcWSMQTTDISCONNECTProperties) of object
—
Signalisiert, dass die MQTT-Sitzung beendet wird. MQTT 3.1.1 hat kein servergesteuertes DISCONNECT-Paket, sodass das Ereignis in diesem Fall eine lokal erkannte Schließung widerspiegelt. MQTT 5.0 führt ein DISCONNECT-Paket ein, das der Broker senden kann, um zu erklären, warum die Verbindung geschlossen wird. Parameter:
Verwenden Sie dieses Ereignis, um die Ursache zu protokollieren, den UI-Zustand zu aktualisieren und, falls ServerReference gesetzt ist, eine Wiederverbindung zum vorgeschlagenen Broker in Betracht zu ziehen.
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;