77 lines
1.7 KiB
Markdown
77 lines
1.7 KiB
Markdown
# EngineIoClientDotNet
|
|
====================
|
|
|
|
Engine.IO Client Library for .Net
|
|
|
|
This is the Engine.IO Client Library for C#, which is ported from the [JavaScript client](https://github.com/Automattic/engine.io-client).
|
|
|
|
|
|
## Installation
|
|
Nuget install:
|
|
```
|
|
Install-Package EngineIoClientDotNet
|
|
```
|
|
|
|
* NuGet Package: [](https://www.nuget.org/packages/EngineIoClientDotNet/)
|
|
|
|
|
|
## Usage
|
|
EngineIoClientDotNet has a similar api to those of the [JavaScript client](https://github.com/Automattic/engine.io-client).
|
|
|
|
You can use `Socket` to connect:
|
|
|
|
```cs
|
|
var socket = new Socket("ws://localhost");
|
|
socket.On(Socket.EVENT_OPEN, () =>
|
|
{
|
|
socket.Send("hi", () =>
|
|
{
|
|
socket.Close();
|
|
});
|
|
});
|
|
socket.Open();
|
|
```
|
|
|
|
Receiving data
|
|
```cs
|
|
var socket = new Socket("ws://localhost");
|
|
socket.On(Socket.EVENT_OPEN, () =>
|
|
{
|
|
socket.On(Socket.EVENT_MESSAGE, (data) =>
|
|
{
|
|
Console.WriteLine((string)data);
|
|
});
|
|
});
|
|
socket.Open();
|
|
```
|
|
|
|
## Features
|
|
This library supports all of the features the JS client does, including events, options and upgrading transport.
|
|
|
|
|
|
## Tests
|
|
Run tests on windows or linux:
|
|
```
|
|
git clone https://github.com/Quobject/EngineIoClientDotNet.git
|
|
cd EngineIoClientDotNet/grunt
|
|
npm install
|
|
```
|
|
Update `config.json` and add line to hosts file: `127.0.0.1 testme.quobject.com`.
|
|
```
|
|
grunt
|
|
```
|
|
This will start test server and xunit tests for windows.
|
|
|
|
In linux this will stop after starting test server. Start xunit tests within a new linux terminal:
|
|
```
|
|
grunt testClient
|
|
```
|
|
## Framework Versions
|
|
.NETFramework v3.5, .NETFramework v4.0, .NETFramework v4.4, .NETStandard v1.3,
|
|
|
|
|
|
## License
|
|
|
|
[MIT](http://opensource.org/licenses/MIT)
|
|
|