WebSocket Client Before Connect and Before WatchDog

· Fonctionnalités

client WebSocket peut être customized avec certains des les événements available. Il y a 2 nouveau événements added to la dernière version:

OnBeforeConnect: cet événement est appelé just avant le client tries pour se connecter à server

OnBeforeWatchDog: sgcWebSocket client a un built-in méthode to reconnect après un disconnection called WatchDog, cet événement est appelé avant tries to reconnect.

OnBeforeConnect

Cet événement est appelé avant le client tries pour se connecter à server, l'événement peut être raised because l'utilisateur manually tries pour se connecter à server ou because WatchDog est enabled et automatically tries to reconnect après un disconnection.

Cette méthode peut être used to customize le client properties, example: tu peux change here le Host / port de le serveur qui est trying to access après too many retries.

procedure OnBeforeConnect(Sender: TObject);
begin
  if Retries > 10 then
    TsgcWebSocketClient(Sender).URL := 'ws://echo.websocket.org';
end; 

OnBeforeWatchDog 

Cet événement est appelé lorsque WatchDog est enabled et tries to rese connecter à server, here tu peux use l'événement to use ton own reconnection algorithm. Exemple : tu peux try première se connecter à a secure server et si ne work try to rese connecter à a non secure server.

procedure OnBeforeWatchDog(Sender: TObject; var Handled:
    Boolean);
begin
  Handled := True;
  TsgcWebSocketClient(Sender).URL := 'wss://server1';
  if not TsgcWebSocketClient(Sender).Connect() then
  begin
    TsgcWebSocketClient(Sender).URL := 'ws://server2';
        TsgcWebSocketClient(Sender).Connect(); 
  end;
end;