eqqon.Osmp
1.0.2
dotnet add package eqqon.Osmp --version 1.0.2
NuGet\Install-Package eqqon.Osmp -Version 1.0.2
<PackageReference Include="eqqon.Osmp" Version="1.0.2" />
paket add eqqon.Osmp --version 1.0.2
#r "nuget: eqqon.Osmp, 1.0.2"
// Install eqqon.Osmp as a Cake Addin #addin nuget:?package=eqqon.Osmp&version=1.0.2 // Install eqqon.Osmp as a Cake Tool #tool nuget:?package=eqqon.Osmp&version=1.0.2
OSMP
Open System Management Protocol is an open communication protocol designed for easy exchange of information or data and control commands between networked systems. The protocol uses the open standard JSON for data exchange over a secure WebSocket transport. It is designed to be simple, secure, ubiquitous and extensible to make it suitable for use in any domain. OSMP provides a framework for extension with minimal effort.
Protocol Design
The protocol is designed to be simple, secure, consistent and well-defined. All communication is encrypted via SSL/TLS, the WebSocket connection is regularly monitored by pings preventing half open or dead connections. A continually incremented message sequence number guarantees that either side can always consistently assign received responses to their respective sent commands. This allows commands to be asynchronous, meaning that the reply can be sent immediately or after a very long time while streamed progress messages send feedback about the long running operation and keep the client from timing out while waiting for the operation to complete. A long-running command can be cancelled by the client if necessary. The protocol allows multiple commands to be active at the same time. Server-to-client events ensure immediate state change updates without the need for polling which saves network bandwidth. Last but not least, the protocol is designed to be extensible for the use in all kinds of domains and applications by allowing to extend the standard instruction set by domain specific instruction sets.
Reference Implementation
Eqqon provides an open source reference implementation for C# that can be used for integrating the protocol into your products.
Domain Specific Instruction Sets
The Open System Management Protocol can be extended with domain specific instruction sets which allow every product that employs it to add or override its own custom commands and instructions. Anyone may create own instruction sets for their application domain.
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. |
-
.NETStandard 2.0
- Newtonsoft.Json (>= 13.0.1)
- SIPSorcery.WebSocketSharp (>= 0.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.