Po nawiązaniu połączenia klienta z serwerem połączenie może zostać zerwane z powodu słabego sygnału, błędów połączenia itp. Należy użyć funkcji HeartBeat, aby utrzymać połączenie aktywne.
Właściwość HeartBeat umożliwia wysyłanie Ping co X sekund w celu podtrzymania aktywnego połączenia. Niektóre klienty zamykają połączenia TCP, gdy między węzłami nie jest wymieniana żadna komunikacja. HeartBeat rozwiązuje ten problem, wysyłając ping w określonym interwale. Zazwyczaj jest to wystarczające do utrzymania aktywnego połączenia, jednak można ustawić interwał TimeOut, aby zamknąć połączenie, gdy odpowiedź od klienta nie zostanie odebrana po X sekundach.
Przykład: wysyłanie polecenia ping do wszystkich połączonych klientów co 30 sekund
oServer := TsgcWebSocketServer.Create(nil);
oServer.HeartBeat.Interval := 30;
oServer.HeartBeat.Timeout := 0;
oServer.HeartBeat.Enabled := true;
oServer.Active := true;