Tinkoff / invest-openapi-csharp-sdk

Apache License 2.0
100 stars 33 forks source link

Подскажите, как правильно пересоздавать сокет? #74

Closed OdCheban closed 3 years ago

OdCheban commented 3 years ago

Проблема в том, что 1-2 раза в день WebSocketException возвращает ошибку из-за которой сокет переходит в состояние "Aborted", после чего было бы логично:
переподписаться на получение свечей и методы т.е. SendStreamingRequestAsync(StreamingRequest.UnsubscribeCandle()), и после StreamingRequest.SubscribeCandle() - но получаю ошибку "с# The WebSocket is in an invalid state ('Aborted') for this operation. Valid states are: 'Open, CloseReceived'" Корректно ли в этом случае просто создать новое подключение таким образом ConnectionFactory.GetConnection(Token.work).Context?

rus-art commented 3 years ago

Да, можете так сделать, не забудьте вызвать Dispose() у старого подключения. Библиотека пока не обрабатывает такую ошибку, если есть желание - можете дописать обработку.