TsgcWSPClient_MQTTEventos › OnMQTTDisconnect

OnMQTTDisconnect Event

Disparado quando o broker envia um DISCONNECT ou a sessão é fechada; reporta o ReasonCode e as DisconnectProperties do MQTT 5.

Sintaxe

property OnMQTTDisconnect: TsgcWSMQTTDisconnectEvent;
// TsgcWSMQTTDisconnectEvent = procedure(Connection: TsgcWSConnection; ReasonCode: Integer; const ReasonName: String; DisconnectProperties: TsgcWSMQTTDISCONNECTProperties) of object

Valor Padrão

Observações

Sinaliza que a sessão MQTT está sendo encerrada. O MQTT 3.1.1 não tem um pacote DISCONNECT iniciado pelo servidor, portanto, nesse caso, o evento reflete um fechamento detectado localmente. O MQTT 5.0 introduz um pacote DISCONNECT que o broker pode enviar para explicar por que a conexão está sendo fechada. Parâmetros:

Utilize este evento para registrar a causa, atualizar o estado da interface e, se ServerReference estiver definido, considere reconectar ao broker sugerido.

Exemplo

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;

Voltar para Eventos