Commit Graph

28 Commits

Author SHA1 Message Date
Salman Ahmed 5fbd4ad3b4 Update usages of `SupportsJIT` in line with framework changes 2022-12-16 00:22:11 +03:00
Salman Ahmed 660cc72f2a Avoid configuring web proxies on iOS for now 2022-12-16 00:22:11 +03:00
Dan Balasescu f12ada9d92 Fix chat connecting too early 2022-11-04 19:36:24 +09:00
Dan Balasescu 46d1713e28 Rename Socket* -> PersistentEndpoint* 2022-11-02 11:43:22 +09:00
Dan Balasescu 4127aaa988 Extract general elements from HubClientConnector into SocketClientConnector 2022-10-27 14:37:10 +09:00
Dean Herbert da7edd5d49 Perform actions after server reconnection 2022-07-17 21:09:48 +09:00
Dean Herbert f500d5ade6 Simplify error output when hub cannot connect
Full call stack is useless in these cases.

Before:

```csharp

[network] 2022-07-07 16:05:31 [verbose]: OnlineMetadataClient connection error: System.Net.Http.HttpRequestException: Response status code does not indicate success: 403 (Forbidden).
[network] 2022-07-07 16:05:31 [verbose]: at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
[network] 2022-07-07 16:05:31 [verbose]: at Microsoft.AspNetCore.Http.Connections.Client.HttpConnection.NegotiateAsync(Uri url, HttpClient httpClient, ILogger logger, CancellationToken cancellationToken)
[network] 2022-07-07 16:05:31 [verbose]: at Microsoft.AspNetCore.Http.Connections.Client.HttpConnection.GetNegotiationResponseAsync(Uri uri, CancellationToken cancellationToken)
[network] 2022-07-07 16:05:31 [verbose]: at Microsoft.AspNetCore.Http.Connections.Client.HttpConnection.SelectAndStartTransport(TransferFormat transferFormat, CancellationToken cancellationToken)
[network] 2022-07-07 16:05:31 [verbose]: at Microsoft.AspNetCore.Http.Connections.Client.HttpConnection.StartAsyncCore(TransferFormat transferFormat, CancellationToken cancellationToken)
[network] 2022-07-07 16:05:31 [verbose]: at Microsoft.AspNetCore.Http.Connections.Client.HttpConnection.StartAsync(TransferFormat transferFormat, CancellationToken cancellationToken)
[network] 2022-07-07 16:05:31 [verbose]: at Microsoft.AspNetCore.Http.Connections.Client.HttpConnectionFactory.ConnectAsync(EndPoint endPoint, CancellationToken cancellationToken)
[network] 2022-07-07 16:05:31 [verbose]: at Microsoft.AspNetCore.Http.Connections.Client.HttpConnectionFactory.ConnectAsync(EndPoint endPoint, CancellationToken cancellationToken)
[network] 2022-07-07 16:05:31 [verbose]: at Microsoft.AspNetCore.SignalR.Client.HubConnection.StartAsyncCore(CancellationToken cancellationToken)
[network] 2022-07-07 16:05:31 [verbose]: at Microsoft.AspNetCore.SignalR.Client.HubConnection.StartAsyncInner(CancellationToken cancellationToken)
[network] 2022-07-07 16:05:31 [verbose]: at Microsoft.AspNetCore.SignalR.Client.HubConnection.StartAsync(CancellationToken cancellationToken)
[network] 2022-07-07 16:05:31 [verbose]: at osu.Game.Online.HubClientConnector.connect() in /Users/dean/Projects/osu/osu.Game/Online/HubClientConnector.cs:line 119

```

After:

```csharp

[network] 2022-07-07 16:06:59 [verbose]: OnlineMetadataClient connecting...
[network] 2022-07-07 16:06:59 [verbose]: OnlineMetadataClient connect attempt failed: Response status code does not indicate success: 403 (Forbidden).

```
2022-07-08 01:06:40 +09:00
Dean Herbert 31a447fda0 Update parameter discards 2022-06-24 21:26:19 +09:00
Dan Balasescu f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Dean Herbert abb69a49b0 Handle server shutdown messages in room creation and spectator initialisation 2022-05-26 18:03:41 +09:00
Dean Herbert 63dd9bd493 Expose `Reconnect` logic in `HubClientConnector` 2022-05-26 18:02:50 +09:00
Dean Herbert e54d3702a6 Specify web proxy in SignalR connection building
Might solve https://github.com/ppy/osu/discussions/17897 (depends on how
adeptly signalr falls back to long polling if/when is fails to websocket
via the proxy, or maybe succeed).

As with the framework side change, I've tested this to not break a
zero-proxy flow. Intending to have the user test this after next
release.

Reference:
https://stackoverflow.com/questions/59343807/get-system-default-web-proxy-in-net-core
/
https://stackoverflow.com/questions/13515058/using-signalr-client-through-a-web-proxy
2022-04-21 15:16:41 +09:00
Dean Herbert 98fa253e1e Replace usage of `TypeNameHandling.All` with custom type converter 2021-11-11 14:04:19 +09:00
Dean Herbert fa01e4fad2 Add workaround for SignalR union serialisation 2021-08-19 17:41:50 +09:00
Dean Herbert ee102e3755 Fix incorrectly overwritten `ReferenceLoopHandling` setting 2021-08-03 14:55:20 +09:00
Dean Herbert 617ff40de7 Add the ability to not use MessagePack when creating a `HubConnector` 2021-08-02 18:50:22 +09:00
Dean Herbert 1cd967b351 Add signalr json type handling specification 2021-08-02 18:50:22 +09:00
Dean Herbert cd2a1af6de Fix `HubClientConnector` reconnecting with no delay on server-triggered error 2021-07-28 20:46:02 +09:00
Dean Herbert b1cd01ceb8 Apply ConfigureAwait changes to game side 2021-03-08 14:36:35 +09:00
Dean Herbert 55d5d8d5be Send version hash on hub connection 2021-02-15 16:51:40 +09:00
Dean Herbert 9ad38ab20e Move HubClientConnector retrieval to IAPIProvider 2021-02-15 16:43:56 +09:00
Salman Ahmed f4a7ec57e9 Remove unused using 2021-02-11 13:00:18 +03:00
Salman Ahmed 37e3d95c35 Slight reword in `ConfigureConnection`'s xmldoc 2021-02-11 12:39:06 +03:00
Salman Ahmed d3c1b47592 Replace nullable API with null connector instead 2021-02-11 12:34:39 +03:00
Salman Ahmed 18acd7f080
Apply documentation suggestions
Co-authored-by: Dean Herbert <pe@ppy.sh>
2021-02-11 10:51:04 +03:00
Salman Ahmed 5fb99fdc52 Rename some members and extract connection closure to separate method 2021-02-11 10:49:16 +03:00
Salman Ahmed 848b81e952 Remove necessity of making hub client connector a component 2021-02-09 07:53:22 +03:00
Salman Ahmed af345ea5db Add a SignalR hub client connector component 2021-02-09 01:52:35 +03:00