Fenix 0.1.0
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package Fenix --version 0.1.0
NuGet\Install-Package Fenix -Version 0.1.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Fenix" Version="0.1.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Fenix --version 0.1.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Fenix, 0.1.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Fenix as a Cake Addin #addin nuget:?package=Fenix&version=0.1.0 // Install Fenix as a Cake Tool #tool nuget:?package=Fenix&version=0.1.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Fenix
Thread safe .NET Standard 2 implementation of Phoenix framework websocket protocol.
Supported/Tested .NET Runtime
- NETCore 2.1.0
- Mono 5.16.0.221
- .NET Framework 4.6 and above
Dependencies:
- Newtonsoft.Json 12.0.1
Usage
Add Dependency to Fenix NuGet Package
Add Fenix nuget dependency either using your IDEs Package Manager tool or using command line:
$ dotnet add package Fenix
or amend your csproj/vbproj by adding:
<PackageReference Include="Fenix" Version="0.1.*" />
and then build your project for example:
$ dotnet build MyProject.csproj
Create Fenix Socket
use Fenix;
// some constants
const token = "dsa90disadojsaoijadoiajsodiajs";
// Defaults should be ok, but you can tweak some options, e.g. tur on logging, max retries etc..
var settings = new Settings();
var socket = new Socket(settings);
try
{
var uri = new Uri("ws://localhost:4000/socket/websocket");
// "token" is not required, but below is demo how to pass parameteters while connecting
await _socket.ConnectAsync(uri, new[] {("token", token)});
var channel = _socket.Channel("room:lobby", new {NickName = "Timotije"});
channel.Subscribe("new_msg", (ch, payload) =>
{
Console.WriteLine($@"
Got LOBBY message
{payload.Value<string>("body")}
");
});
var result = await channel.JoinAsync();
Console.WriteLine($"Lobby JOIN: status = '{result.Status}', response: {result.Response}");
await channel.SendAsync("new_msg", new {body = "Hi guys 2"});
Task.Delay(10000)
.ContinueWith(async task => { await channel.LeaveAsync(); })
.ConfigureAwait(false);
}
catch (Exception ex)
{
Console.WriteLine($"Error: [{ex.GetType().FullName}] \"{ex.Message}\"");
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.0
- Newtonsoft.Json (>= 12.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.