Hello,
The WatchDog property tries to reconnect using blocking mode if NotifyEvents <> neNoSync or the connection has started using blocking mode.
You can override this behaviour using the event OnBeforeWatchDog. Do the following:
procedure OnBeforeWatchDog(Sender: TObject; var Handled: Boolean);
begin
TsgcWebSocketClient1.Start;
Handled := True;
end;
This event is called before the Watchdog is trying to reconnect. You can call here the async method "Start" to reconnect, and avoid the WatchDog automatically reconnect setting the parameter Handled := true, this means the reconnection is handled by you, not by the component.
Kind regards,
Sergio