TsgcWebSocketServer_HTTPAPI › Eventos › OnBeforeHeartBeat
Dispara antes de cada ping de HeartBeat para que a aplicação possa implementar um keep-alive personalizado.
property OnBeforeHeartBeat: TsgcWSOnBeforeHeartBeatEvent;
// TsgcWSOnBeforeHeartBeatEvent = procedure(Sender: TObject; const Connection: TsgcWSConnection; var Handled: Boolean) of object
—
Quando o HeartBeat está habilitado, o servidor envia um ping WebSocket padrão a cada cliente conectado a cada HeartBeat.Interval segundos. OnBeforeHeartBeat é gerado imediatamente antes de esse ping ser gravado para cada conexão, de modo que a aplicação possa emitir seu próprio payload keep-alive na Connection fornecida. Definir Handled como True suprime o ping padrão para este ciclo; deixá-lo False (o padrão) permite que o ping padrão seja enviado após o retorno do manipulador. Utilize-o para implementar heartbeats específicos de protocolo ou para variar o payload por conexão.
procedure OnBeforeHeartBeat(Sender: TObject; const Connection: TsgcWSConnection;
var Handled: Boolean);
begin
Connection.WriteData('ping');
Handled := True;
end;