TsgcWebSocketClient › Ereignisse › OnBeforeHeartBeat
Wird vor jedem HeartBeat-Ping ausgelöst, sodass die Anwendung eine benutzerdefinierte Keep-Alive-Nachricht senden kann.
property OnBeforeHeartBeat: TsgcWSOnBeforeHeartBeatEvent;
// TsgcWSOnBeforeHeartBeatEvent = procedure(Sender: TObject; const Connection: TsgcWSConnection; var Handled: Boolean) of object
—
Wenn HeartBeat aktiviert ist, sendet der Client alle HeartBeat.Interval Sekunden einen Standard-WebSocket-Ping. OnBeforeHeartBeat wird unmittelbar bevor dieser Ping geschrieben wird ausgelöst, sodass die Anwendung ihre eigene Keep-Alive-Nutzlast über die bereitgestellte Connection ausgeben kann. Das Setzen von Handled auf True unterdrückt den Standard-Ping; wenn es False bleibt (der Standard), wird der Standard-Ping nach der Rückkehr des Handlers gesendet.
procedure OnBeforeHeartBeat(Sender: TObject; const Connection: TsgcWSConnection; var Handled: Boolean);
begin
Connection.WriteData('ping');
Handled := True;
end;