TsgcWSPClient_MQTT › イベント › 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;