TsgcWSPClient_MQTT › Methods › Disconnect
Verzendt een MQTT DISCONNECT-pakket om de sessie netjes te beëindigen.
procedure Disconnect;
Voert een standaard MQTT-verbreking uit met redencode 0 (Normale verbreking) en geen extra eigenschappen. Gebruik deze overload wanneer de toepassing eenvoudigweg wil uitloggen en de aflevering van het Last Will-bericht wil onderdrukken. Het onderliggende WebSocket-transport wordt hier niet gesloten; roep de verbreking van de bovenliggende client aan om de socket af te breken.
MQTT.Disconnect;
procedure Disconnect(aReasonCode: Integer; aDisconnectProperties: TsgcWSMQTTDisconnect_Properties = nil);
| Naam | Type | Beschrijving |
|---|---|---|
aReasonCode | Integer | MQTT 5.0-redencode gerapporteerd aan de broker (bijvoorbeeld 0 = Normaal, 4 = Verbinding verbreken met Will-bericht, 129 = Misvormd pakket, 139 = Server wordt afgesloten). |
aDisconnectProperties | TsgcWSMQTTDisconnect_Properties | Optionele MQTT 5.0-eigenschappen zoals Session Expiry Interval, Reason String, Server Reference of User Properties. Geef nil door wanneer geen eigenschappen vereist zijn. |
MQTT 5.0 overload waarmee de client kan aangeven waarom hij vertrekt. Het instellen van aReasonCode op 4 vraagt de broker de geconfigureerde Last Will Testament te publiceren, terwijl elke niet-nul code ertoe leidt dat de broker de abnormale afsluiting logt. Genegeerd wanneer de sessie als MQTT 3.1.1 is onderhandeld.
oProps := TsgcWSMQTTDisconnect_Properties.Create;
try
oProps.ReasonString := 'client shutting down';
MQTT.Disconnect(0, oProps);
finally
oProps.Free;
end;