TsgcWebSocketServer › Propiedades › HeartBeat
Envía tramas de ping periódicas para mantener activas las conexiones de clientes inactivos y detectar pares no disponibles.
property HeartBeat: TsgcWSHeartBeat_Options read GetHeartBeat write SetHeartBeat;
Enabled=False
Cuando HeartBeat.Enabled es True, el servidor envía un ping a cada cliente conectado cada Interval segundos. Use Timeout para cerrar los pares que no respondan con pong dentro del número de segundos indicado (0 deshabilita la comprobación). HeartBeatType selecciona la estrategia: hbtAlways siempre hace ping en cada intervalo, mientras que hbtOnlyIfNoMsgRcvInterval hace ping solo si no se ha recibido ningún mensaje en el último intervalo (con iohDefault, el ping se envía en el contexto del hilo de conexión en lugar de un hilo sweeper). El evento OnBeforeHeartBeat le permite reemplazar el ping estándar por un mensaje personalizado.
oServer := TsgcWebSocketServer.Create(nil);
oServer.HeartBeat.Interval := 30;
oServer.HeartBeat.Timeout := 0;
oServer.HeartBeat.Enabled := true;
oServer.Active := true;