WebSocket Client can be customized with some of the events available. There are 2 new events added to the latest version:
OnBeforeConnect: this event is called just before the client tries to connect to server
OnBeforeWatchDog: sgcWebSocket client has a built-in method to reconnect after a disconnection called WatchDog, this event is called before tries to reconnect.
This event is called before the client tries to connect to server, the event can be raised because the user manually tries to connect to server or because WatchDog is enabled and automatically tries to reconnect after a disconnection.
This method can be used to customize the client properties, example: you can change here the Host / port of the server that is trying to access after too many retries.
123456procedure OnBeforeConnect(Sender: TObject);beginif Retries > 10 thenTsgcWebSocketClient(Sender).URL := 'ws://echo.websocket.org';end;
This event is called when WatchDog is enabled and tries to reconnect to server, here you can use the event to use your own reconnection algorithm. Example: you can try first connect to a secure server and if doesn't work try to reconnect to a non secure server.
12345678910111213procedure OnBeforeWatchDog(Sender: TObject; var Handled:Boolean);beginHandled := True;TsgcWebSocketClient(Sender).URL := 'wss://server1';if not TsgcWebSocketClient(Sender).Connect() thenbeginTsgcWebSocketClient(Sender).URL := 'ws://server2';TsgcWebSocketClient(Sender).Connect();end;end;
When you subscribe to the blog, we will send you an e-mail when there are new updates on the site so you wouldn't miss them.