TsgcWSPClient_MQTT › Events › OnMQTTBeforeConnect
Fires before the CONNECT packet is sent; lets the app override CleanSession and ClientIdentifier.
property OnMQTTBeforeConnect: TsgcWSMQTTBeforeConnectEvent;
// TsgcWSMQTTBeforeConnectEvent = procedure(Connection: TsgcWSConnection; var aCleanSession: Boolean; var aClientIdentifier: String) of object
—
Last chance to tweak the CONNECT packet just before it is written to the wire. The component raises this event after the WebSocket / TCP transport is up but before serializing CONNECT, so the handler can override:
Any other connection state (credentials, LastWillTestament, ConnectProperties) should be configured on the component itself before Activate, not inside this handler.
procedure TForm1.MQTTBeforeConnect(Connection: TsgcWSConnection;
var aCleanSession: Boolean; var aClientIdentifier: String);
begin
// resume the stored session if the broker still has it
aCleanSession := False;
aClientIdentifier := 'sensor-gateway-01';
end;