diff --git a/Assets/Plugins/StreamChat/Libs/Websockets/WebsocketClient.cs b/Assets/Plugins/StreamChat/Libs/Websockets/WebsocketClient.cs index d268894a..0b30ab8d 100644 --- a/Assets/Plugins/StreamChat/Libs/Websockets/WebsocketClient.cs +++ b/Assets/Plugins/StreamChat/Libs/Websockets/WebsocketClient.cs @@ -403,6 +403,14 @@ await TryCloseAndDisposeAsync(WebSocketCloseStatus.ProtocolError, { LogExceptionIfDebugMode(exception); } + else if (exception is TimeoutException) + { + // A connection-attempt timeout (see the timeout guard in ConnectAsync) + // is an expected, transient failure that the reconnect flow recovers + // from. Log it as a warning rather than surfacing it as an exception, + // so it does not flood crash reporting with handled, non-actionable noise. + _logs.Warning(exception.ToString()); + } else { _logs.Exception(exception);