TsgcWSPClient_MQTTMétodos › Disconnect

Disconnect Método

Envía un paquete MQTT DISCONNECT para finalizar la sesión de forma limpia.

Sobrecargas

Sobrecarga 1

Sintaxis

procedure Disconnect;

Observaciones

Realiza una desconexión MQTT estándar usando el código de razón 0 (Desconexión normal) sin propiedades adicionales. Use esta sobrecarga cuando la aplicación simplemente desee cerrar sesión y suprimir la entrega del mensaje de Última Voluntad. El transporte WebSocket subyacente no se cierra aquí; llame al Disconnect del cliente padre para cerrar el socket.

Ejemplo

MQTT.Disconnect;

Sobrecarga 2

Sintaxis

procedure Disconnect(aReasonCode: Integer; aDisconnectProperties: TsgcWSMQTTDisconnect_Properties = nil);

Parámetros

NombreTipoDescripción
aReasonCodeIntegerCódigo de razón MQTT 5.0 notificado al broker (por ejemplo, 0 = Normal, 4 = Desconexión con mensaje Will, 129 = Paquete mal formado, 139 = Servidor cerrando).
aDisconnectPropertiesTsgcWSMQTTDisconnect_PropertiesPropiedades opcionales de MQTT 5.0 como Session Expiry Interval, Reason String, Server Reference o User Properties. Pase nil cuando no se requieran propiedades.

Observaciones

Sobrecarga de MQTT 5.0 que permite al cliente indicar el motivo por el que se desconecta. Al establecer aReasonCode en 4, se solicita al broker que publique el Testamento de Último Deseo configurado, mientras que cualquier código distinto de cero hace que el broker registre el cierre anormal. Se ignora cuando la sesión fue negociada como MQTT 3.1.1.

Ejemplo

oProps := TsgcWSMQTTDisconnect_Properties.Create;
try
  oProps.ReasonString := 'client shutting down';
  MQTT.Disconnect(0, oProps);
finally
  oProps.Free;
end;

Volver a Métodos