Socket.IO Client Library for Unity (mono / .NET 2.0), which is ported from the JavaScript client version 1.1.0.
SocketIoClientDotNet by Quobject is a very good project, but it does not support Unity. So I spent a few overnights to port it to mono/.NET 2.0.
Now game developers can:
Downlaod socket.io.unitypackage and then import into Unity.
Or, only download the following files in Lib and put to Unity project:
It's available on Unity Asset Store for $10, but you can also download it for FREE here.
If you are interested to dig into the source code, welcome to fork the SocketIoClientDotNet for .NET 2.0.
socket.io client for Unity has a similar api to those of the JavaScript client.
using Quobject.SocketIoClientDotNet.Client;
var socket = IO.Socket("http://localhost:3000");
socket.On(Socket.EVENT_CONNECT, () =>
{
socket.Emit("hi");
});
socket.On("hi", (data) =>
{
Debug.Log(data);
socket.Disconnect();
});
And, with Newtonsoft.Json.dll, we can easliy serialize / deserialize json object. Read more about Newtonsoft.Json.
This library supports all of the features the JS client does, including events, options and upgrading transport.
Mono, .NET 2.0
Project | Author | Popularity | Status |
---|---|---|---|
socket.io-unity | floatinghotpot | new | ACTIVE, support .NET 2.0 and Unity |
SocketIoClientDotNet | Quobject | 323 stars | ACTIVE, support .NET 3.5 and higher, but not compatible with .NET 2.0 and Unity |
UnitySocketIO | NetEase | 547 stars | no longer maintained, not compatible with socket.io 1.x and later |
unity-socket.io-DEPRECATED | fpanettieri | 189 stars | no longer maintained |
UnitySocketIO-WebSocketSharp | kaistseo | 108 stars | no longer maintained |
Thanks to the authors of following projects: