/// <summary> /// Reconnect WebSocket connection in case of failures /// </summary> private void Reconnect() { if (IsConnected) { _ws.Close(true); } if (_retryCount > _retries) { _ws.Close(true); DisableReconnect(); OnNoReconnect?.Invoke(); } else { OnReconnect?.Invoke(); _retryCount += 1; _ws.Close(true); Connect(); _timerTick = (int)Math.Min(Math.Pow(2, _retryCount) * _interval, 60); if (_debug) { Console.WriteLine("New interval " + _timerTick); } _timer.Start(); } }
/// <summary> /// Reconnect WebSocket connection in case of failures /// </summary> private void Reconnect() { if (IsConnected) { _ws.Close(true); } if (_retryCount > _retries) { _ws.Close(true); DisableReconnect(); OnNoReconnect?.Invoke(); } else { OnReconnect?.Invoke(); _retryCount += 1; _ws.Close(true); Connect(); _timerTick = _interval; _timer.Start(); } }