TsgcWSPClient_MQTT › Eventos › OnMQTTDisconnect
Se activa cuando el broker envía un DISCONNECT o la sesión se cierra; informa del ReasonCode y las DisconnectProperties de MQTT 5.
property OnMQTTDisconnect: TsgcWSMQTTDisconnectEvent;
// TsgcWSMQTTDisconnectEvent = procedure(Connection: TsgcWSConnection; ReasonCode: Integer; const ReasonName: String; DisconnectProperties: TsgcWSMQTTDISCONNECTProperties) of object
—
Indica que la sesión MQTT está siendo terminada. MQTT 3.1.1 no tiene un paquete DISCONNECT iniciado por el servidor, por lo que en ese caso el evento refleja un cierre detectado localmente. MQTT 5.0 introduce un paquete DISCONNECT que el broker puede enviar para explicar por qué se cierra la conexión. Parámetros:
Utilice este evento para registrar la causa, actualizar el estado de la interfaz y, si ServerReference está establecido, considere la posibilidad de reconectarse al broker sugerido.
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;