TsgcWebSocketProxyServer › Olaylar › OnBeforeHeartBeat
Her HeartBeat ping'inden önce tetiklenir, böylece uygulama bir downstream WebSocket istemcisi için özel bir keep-alive uygulayabilir.
property OnBeforeHeartBeat: TsgcWSOnBeforeHeartBeatEvent;
// TsgcWSOnBeforeHeartBeatEvent = procedure(Sender: TObject; const Connection: TsgcWSConnection; var Handled: Boolean) of object
—
HeartBeat etkinleştirildiğinde, proxy sunucusu her HeartBeat.Interval saniyede bir bağlı her aşağı akış istemcisine standart bir WebSocket ping gönderir. OnBeforeHeartBeat, her bağlantı için o ping yazılmadan hemen önce tetiklenir, böylece uygulama, sağlanan Connection üzerinde kendi keep-alive yükünü gönderebilir. Handled'ı True olarak ayarlamak bu döngü için varsayılan ping'i bastırır; False (varsayılan) bırakmak, işleyici döndükten sonra standart ping'in gönderilmesine izin verir. Protokole özgü heartbeat'ler uygulamak veya yükü bağlantı başına değiştirmek için kullanın; burada yalnızca WebSocket ayağına ping atılır, yukarı akış TCP link'ine bu olay tarafından dokunulmaz.
procedure OnBeforeHeartBeat(Sender: TObject; const Connection: TsgcWSConnection;
var Handled: Boolean);
begin
Connection.WriteData('ping');
Handled := True;
end;