TsgcWebSocketClient › Events › OnBeforeHeartBeat
Fires before each HeartBeat ping so the application can send a custom keep-alive message.
property OnBeforeHeartBeat: TsgcWSOnBeforeHeartBeatEvent;
// TsgcWSOnBeforeHeartBeatEvent = procedure(Sender: TObject; const Connection: TsgcWSConnection; var Handled: Boolean) of object
—
When HeartBeat is enabled the client sends a standard WebSocket ping every HeartBeat.Interval seconds. OnBeforeHeartBeat is raised immediately before that ping is written so the application can emit its own keep-alive payload using the supplied Connection. Setting Handled to True suppresses the default ping; leaving it False (the default) lets the standard ping be sent after the handler returns.
procedure OnBeforeHeartBeat(Sender: TObject; const Connection: TsgcWSConnection; var Handled: Boolean);
begin
Connection.WriteData('ping');
Handled := True;
end;