Skip to content

Commit 6dc8258

Browse files
committed
v3.0.6
[skip ci]
1 parent 5a164d8 commit 6dc8258

File tree

6 files changed

+37
-101
lines changed

6 files changed

+37
-101
lines changed

CHANGELOG.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,17 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [3.0.6] - 2022-03-17
9+
10+
### Added
11+
12+
- auth handshake for socket.io server v3
13+
- support auto upgrade transport protocol
14+
15+
### Changed
16+
17+
- Fixed OnDisconnect not fired for 'io server disconnect' event #269
18+
819
## [3.0.5] - 2022-01-12
920

1021
### Changed

README.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,9 @@ var client = new SocketIO("http://localhost:11000/", new SocketIOOptions
9696
| `Query` | `IEnumerable<KeyValuePair<string, string>>` | additional query parameters that are sent when connecting a namespace (then found in `socket.handshake.query` object on the server-side) |
9797
| `EIO` | `4` | If your server is using socket.io server v2.x, please explicitly set it to 3 |
9898
| `ExtraHeaders` | `null` | Headers that will be passed for each request to the server (via xhr-polling and via websockets). These values then can be used during handshake or for special proxies. |
99-
| `Transport` | `WebSocket` | Websocket is used by default, you can change to http polling. |
99+
| `Transport` | `Polling` | Websocket is used by default, you can change to http polling. |
100+
| `AutoUpgrade` | `true` | If websocket is available, it will be automatically upgrade to use websocket |
101+
| `Auth` | `null` | Credentials that are sent when accessing a namespace |
100102

101103
## Ack
102104

@@ -347,3 +349,5 @@ SocketIOClient v2.2.0 makes `System.Text.Json` the default JSON serializer. If y
347349
- [darrachequesne](https://github.com/darrachequesne) ([socket.io team](https://github.com/socketio/socket.io)), [500 USD](https://opencollective.com/socketio/expenses/54770), October 2021
348350
- [darrachequesne](https://github.com/darrachequesne) ([socket.io team](https://github.com/socketio/socket.io)), [500 USD](https://opencollective.com/socketio/expenses/57210), November 2021
349351
- [darrachequesne](https://github.com/darrachequesne) ([socket.io team](https://github.com/socketio/socket.io)), [500 USD](https://opencollective.com/socketio/expenses/60280), December 2021
352+
- [darrachequesne](https://github.com/darrachequesne) ([socket.io team](https://github.com/socketio/socket.io)), [500 USD](https://opencollective.com/socketio/expenses/63314), January 2022
353+
- [darrachequesne](https://github.com/darrachequesne) ([socket.io team](https://github.com/socketio/socket.io)), [500 USD](https://opencollective.com/socketio/expenses/66147), February 2022

src/SocketIOClient.Sample/Program.cs

Lines changed: 1 addition & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using Newtonsoft.Json;
22
using SocketIOClient.Newtonsoft.Json;
3+
using SocketIOClient.Windows7;
34
using System;
45
using System.Collections.Generic;
56
using System.Diagnostics;
@@ -102,68 +103,4 @@ private static void Socket_OnPong(object sender, TimeSpan e)
102103
Console.WriteLine("Pong: " + e.TotalMilliseconds);
103104
}
104105
}
105-
106-
//class Program
107-
//{
108-
// public static void Main(string[] args)
109-
// => new Program().Main().GetAwaiter().GetResult();
110-
111-
// private static string GenerateToken()
112-
// {
113-
// string chars = "abcdefghi1234567890";
114-
115-
// StringBuilder token = new StringBuilder("WDN");
116-
117-
// while (token.Length < 35)
118-
// token.Append(chars.OrderBy(r => Guid.NewGuid()).FirstOrDefault());
119-
120-
// return token.ToString().Trim();
121-
// }
122-
123-
// public async Task Main()
124-
// {
125-
// var socket = new SocketIO("https://v3-rc.palringo.com:3051/",
126-
// new SocketIOOptions()
127-
// {
128-
// Transport = SocketIOClient.Transport.TransportProtocol.WebSocket,
129-
// Query = new Dictionary<string, string>()
130-
// {
131-
// ["token"] = GenerateToken(),
132-
// ["device"] = "wolfnetframework",
133-
// ["state"] = "1",// Online State = 1 (Online)
134-
// },
135-
// }
136-
// ); ;
137-
138-
// socket.JsonSerializer = new NewtonsoftJsonSerializer()
139-
// {
140-
// OptionsProvider = () => new JsonSerializerSettings()
141-
// {
142-
// NullValueHandling = NullValueHandling.Ignore,
143-
// ReferenceLoopHandling = ReferenceLoopHandling.Ignore
144-
// }
145-
// };
146-
147-
148-
// socket.OnConnected += (s, e) => Console.WriteLine("Connected To V3 Server");
149-
150-
// socket.OnDisconnected += (s, reason) => Console.WriteLine($"Disconnected From V3 Server -${reason}");
151-
152-
// socket.OnError += (s, error) => Console.WriteLine($"Connection Error Occurred - {error}");
153-
154-
// /*
155-
// socket.OnPing += (s, e) => Console.WriteLine($"Ping");
156-
// socket.OnPong += (s, timespan) => Console.WriteLine($"Pong"); // 0 Ms???
157-
// */
158-
// socket.OnAny((name, body) => Console.WriteLine($"Recieved Packet - {name}"));
159-
160-
// socket.OnReconnectAttempt += (sender, attmept) => Console.WriteLine($"Reconnecting To V3 Servers - Attempt {attmept}");
161-
162-
// socket.OnReconnectFailed += (sender, reason) => Console.WriteLine($"Failed to reconnect to V3 servers - {reason}");
163-
164-
// await socket.ConnectAsync();
165-
166-
// await Task.Delay(-1); // Prevent program from exiting
167-
// }
168-
//}
169106
}

src/SocketIOClient.Windows7/ClientWebSocketManaged.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ public ClientWebSocketManaged(int eio)
2020
BytesObservable = _bytesSubject.AsObservable();
2121
_ws = new System.Net.WebSockets.Managed.ClientWebSocket();
2222
_listenCancellation = new CancellationTokenSource();
23-
_sendLock = new SemaphoreSlim(1, 1);
2423
}
2524

2625
const int ReceiveChunkSize = 1024 * 8;
@@ -30,7 +29,6 @@ public ClientWebSocketManaged(int eio)
3029
readonly Subject<string> _textSubject;
3130
readonly Subject<byte[]> _bytesSubject;
3231
readonly CancellationTokenSource _listenCancellation;
33-
readonly SemaphoreSlim _sendLock;
3432

3533
public IObservable<string> TextObservable { get; }
3634
public IObservable<byte[]> BytesObservable { get; }
Lines changed: 19 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,21 @@
11
<Project Sdk="Microsoft.NET.Sdk">
2-
3-
<PropertyGroup>
4-
<TargetFramework>netstandard2.0</TargetFramework>
5-
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
6-
<Version>3.0.3</Version>
7-
<Description>socket.io-client implemention for .NET</Description>
8-
<PackageLicenseExpression>MIT</PackageLicenseExpression>
9-
<PackageProjectUrl>https://github.com/doghappy/socket.io-client-csharp</PackageProjectUrl>
10-
<RepositoryUrl>https://github.com/doghappy/socket.io-client-csharp</RepositoryUrl>
11-
<RepositoryType>github</RepositoryType>
12-
<PackageTags>socket.io-client</PackageTags>
13-
<SignAssembly>true</SignAssembly>
14-
<AssemblyOriginatorKeyFile>SocketIOClient.Windows7.snk</AssemblyOriginatorKeyFile>
15-
</PropertyGroup>
16-
17-
<!--
18-
<ItemGroup>
19-
<Content Include="lib\System.Net.WebSockets.Client.Managed.dll">
20-
<Pack>true</Pack>
21-
<PackagePath>lib\$(TargetFramework)</PackagePath>
22-
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
23-
</Content>
24-
</ItemGroup>
25-
-->
26-
27-
<ItemGroup>
28-
<PackageReference Include="matthid-System.Net.WebSockets.Client.Managed" Version="1.0.1" />
29-
</ItemGroup>
30-
31-
<ItemGroup>
32-
<ProjectReference Include="..\SocketIOClient\SocketIOClient.csproj" />
33-
</ItemGroup>
34-
2+
<PropertyGroup>
3+
<TargetFramework>netstandard2.0</TargetFramework>
4+
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
5+
<Version>3.0.6</Version>
6+
<Description>socket.io-client implemention for .NET</Description>
7+
<PackageLicenseExpression>MIT</PackageLicenseExpression>
8+
<PackageProjectUrl>https://github.com/doghappy/socket.io-client-csharp</PackageProjectUrl>
9+
<RepositoryUrl>https://github.com/doghappy/socket.io-client-csharp</RepositoryUrl>
10+
<RepositoryType>github</RepositoryType>
11+
<PackageTags>socket.io-client</PackageTags>
12+
<SignAssembly>true</SignAssembly>
13+
<AssemblyOriginatorKeyFile>SocketIOClient.Windows7.snk</AssemblyOriginatorKeyFile>
14+
</PropertyGroup>
15+
<ItemGroup>
16+
<PackageReference Include="matthid-System.Net.WebSockets.Client.Managed" Version="1.0.1" />
17+
</ItemGroup>
18+
<ItemGroup>
19+
<ProjectReference Include="..\SocketIOClient\SocketIOClient.csproj" />
20+
</ItemGroup>
3521
</Project>

src/SocketIOClient/SocketIOClient.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
<RepositoryType>github</RepositoryType>
1414
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
1515
<PackageLicenseFile></PackageLicenseFile>
16-
<Version>3.0.5</Version>
16+
<Version>3.0.6</Version>
1717
<PackageReleaseNotes></PackageReleaseNotes>
1818
<PackageLicenseExpression>MIT</PackageLicenseExpression>
1919
<SignAssembly>true</SignAssembly>

0 commit comments

Comments
 (0)