TsgcWebSocketClientÉvénements › OnBeforeWatchDog

OnBeforeWatchDog Événement

Se déclenche avant chaque tentative de reconnexion WatchDog afin que l'application puisse ajuster le serveur cible ou supprimer la tentative.

Syntaxe

property OnBeforeWatchDog: TsgcWSOnBeforeWatchDogEvent;
// TsgcWSOnBeforeWatchDogEvent = procedure(Sender: TObject; var Handled: Boolean) of object

Valeur par défaut

Remarques

Lorsque WatchDog est activé et qu'une déconnexion inattendue est détectée, le client attend WatchDog.Interval secondes puis tente de se reconnecter. OnBeforeWatchDog est déclenché juste avant chaque tentative, ce qui permet à l'application de modifier les propriétés de connexion au serveur (Host, Port, URL, TLS...) pour implémenter une logique de basculement telle que le passage à un serveur secondaire après plusieurs tentatives infructueuses. Définir Handled à True annule la tentative de reconnexion pour ce cycle ; laisser False (la valeur par défaut) permet au WatchDog de procéder à la reconnexion.

Exemple


procedure OnBeforeWatchDog(Sender: TObject; var Handled: Boolean);
var
  oClient: TsgcWebSocketClient;
begin
  oClient := TsgcWebSocketClient(Sender);
  if oClient.WatchDog.AttemptsCount > 3 then
    oClient.Host := 'fallback.example.com';
  Handled := False;
end;

Retour aux événements