TsgcWSPClient_MQTTイベント › OnMQTTConnect

OnMQTTConnect イベント

CONNACK を受信した後に発生します。Session フラグ、ReasonCode、MQTT 5 の ConnectProperties を報告します。

構文

property OnMQTTConnect: TsgcWSMQTTConnectEvent;
// TsgcWSMQTTConnectEvent = procedure(Connection: TsgcWSConnection; const Session: Boolean; const ReasonCode: Integer; const ReasonName: String; const ConnectProperties: TsgcWSMQTTCONNACKProperties) of object

デフォルト値

解説

ブローカーが CONNACK で CONNECT を確認応答したときに発生します。これが MQTT セッションが完全に使用可能になる最初の瞬間です。このハンドラー内から Subscribe / Publish を呼び出しても安全です。パラメータ:

使用例

procedure TForm1.MQTTConnect(Connection: TsgcWSConnection;
  const Session: Boolean; const ReasonCode: Integer;
  const ReasonName: String;
  const ConnectProperties: TsgcWSMQTTCONNACKProperties);
begin
  if ReasonCode <> 0 then
  begin
    Memo1.Lines.Add('Connect rejected: ' + ReasonName);
    Exit;
  end;

  Memo1.Lines.Add(Format('Connected. Session=%s MaxQoS=%d',
    [BoolToStr(Session, True), ConnectProperties.MaximumQoS]));

  // now it is safe to subscribe and publish
  MQTT.Subscribe('sensors/#', mtqsAtLeastOnce);
end;

イベントに戻る