Codabix.Web.SignalR
1.0.1-preview.1.240628
dotnet add package Codabix.Web.SignalR --version 1.0.1-preview.1.240628
NuGet\Install-Package Codabix.Web.SignalR -Version 1.0.1-preview.1.240628
<PackageReference Include="Codabix.Web.SignalR" Version="1.0.1-preview.1.240628" />
paket add Codabix.Web.SignalR --version 1.0.1-preview.1.240628
#r "nuget: Codabix.Web.SignalR, 1.0.1-preview.1.240628"
// Install Codabix.Web.SignalR as a Cake Addin #addin nuget:?package=Codabix.Web.SignalR&version=1.0.1-preview.1.240628&prerelease // Install Codabix.Web.SignalR as a Cake Tool #tool nuget:?package=Codabix.Web.SignalR&version=1.0.1-preview.1.240628&prerelease
Real-time communication framework for .NET using SignalR and the industrial IoT Middleware Codabix as backend. Using Codabix any IIoT Entity (PLCs, DBs, Files, Sockets, Ports, IOs ...) can be connected to each other just using Nodes.
This package provides the API required to implement custom client applications using SignalR on top of WebSocket as the transport layer to connect to the communication data bridge for things (Codabix).
Features:
- Authentication using JSON Web Token
- Create, Read, Update & Delete IIoT Entities
- Setup new connection channels
- Configure symbols, files, tables, ...
- Subscribe change notifications
- Read & Write Values of IIoT Entities
- Directly from the Web to a device, file, table, ...
- Using custom Human Machine Interfaces (HMI)
- Visualize processes using historical data
The whole framework is provided for free and can be used for commerical and non-commerical application development.
Getting Started
At first you need an installed and running Codabix. Just go to https://www.codabix.com/en/downloads to get a latest evaluation version for free and without registration.
The most essential snippet to dig in:
using Codabix.Web.SignalR;
...
var client = new CodabixClient("http://localhost:8181", "username", "password");
await client.ConnectAsync();
// Your code to interact with Codabix.
Let's Read a Node
var response = await client.ReadNodeValueAsync("/Nodes/TestValue");
Let's Write a Node
var response = await client.WriteNodeValueAsync("/Nodes/TestValue", "Hello World!");
Let's Subscribe to value changes of a Node
var subscriptionParameters = new NodeValueSubscriptionParameters {
Nodes = new string[] {
"/Nodes/TestValue"
}
};
var subscription = await client.SubscribeValueChangesAsync(subscriptionParameters);
while (await subscription.WaitToReadAsync()) {
while (subscription.TryRead(out var eventArgs)) {
Console.WriteLine(
$"Node: {eventArgs.Node}, " +
$"Old Value: {eventArgs.OldValue.Value}, " +
$"New Value: {eventArgs.NewValue.Value}");
}
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 is compatible. net5.0-windows was computed. net6.0 is compatible. 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 is compatible. 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. |
-
.NETStandard 2.0
- Microsoft.AspNetCore.Mvc.Core (>= 2.1.38)
- Microsoft.AspNetCore.SignalR.Client (>= 8.0.5)
- Microsoft.Bcl.HashCode (>= 1.1.1)
- Newtonsoft.Json (>= 13.0.3)
- System.ComponentModel.Annotations (>= 5.0.0)
- System.Net.Http.Json (>= 8.0.0)
- System.Text.Json (>= 8.0.3)
- System.Threading.Channels (>= 8.0.0)
-
net5.0
- Microsoft.AspNetCore.SignalR.Client (>= 5.0.17)
- Newtonsoft.Json (>= 13.0.3)
-
net6.0
- Microsoft.AspNetCore.SignalR.Client (>= 6.0.31)
- Newtonsoft.Json (>= 13.0.3)
-
net8.0
- Microsoft.AspNetCore.SignalR.Client (>= 8.0.6)
- Newtonsoft.Json (>= 13.0.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.1-preview.1.240628 | 44 | 7/1/2024 |
1.0.0-preview9-240322 | 75 | 3/22/2024 |
1.0.0-preview8-240306 | 54 | 3/6/2024 |
1.0.0-preview7-220822 | 226 | 8/22/2022 |
1.0.0-preview6-220706 | 140 | 7/6/2022 |
1.0.0-preview5-220215 | 289 | 2/15/2022 |
1.0.0-preview2-211028 | 222 | 10/28/2021 |
1.0.0-preview1-210921 | 167 | 9/21/2021 |
ADDED:
• Added support for .NET Standard 2.0.
• Added node properties "GlobalIdentifier" and "Token". Using these properties requires Codabix v1.5.22 or higher.