WSStomp 1.1.0
dotnet add package WSStomp --version 1.1.0
NuGet\Install-Package WSStomp -Version 1.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="WSStomp" Version="1.1.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="WSStomp" Version="1.1.0" />
<PackageReference Include="WSStomp" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add WSStomp --version 1.1.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: WSStomp, 1.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.
#:package WSStomp@1.1.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=WSStomp&version=1.1.0
#tool nuget:?package=WSStomp&version=1.1.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
WSStomp
STOMP over WebSockets in C#
Intention
WSStomp was originally developed as a library for using STOMP over WebSockets in C#.
The main intent was to be used with the SpringBoot SimpleBroker, but STOMP 1.2 functionality was further enhanced.
Installation
Install WSStomp via NuGet.
Usage
static async Task Main(string[] args)
{
var uri = new Uri("wss://....");
Console.WriteLine("Connecting to " + uri);
var stomp = new WsStomp();
stomp.StompOnConnected += OnConnected;
stomp.StompOnConnectFailed += OnDisconnected;
stomp.StompOnDisconnected += OnDisconnected;
stomp.StompOnError += OnError;
stomp.SetStompHeader("Authorization", "..."); // if needed
await stomp.ConnectAsync(uri);
Console.WriteLine("Connected");
await stomp.SubscribeAsync("/topic/topic1", TestCallback);
var serviceSubscription = await stomp.SubscribeAsync("/topic/topic2", TestCallback2);
await stomp.SubscribeAsync("/topic/topic3", PhoneCallback);
Console.WriteLine("Subscribed");
Console.ReadLine();
Console.WriteLine("Sending...");
await stomp.SendAsync("/app/path", "");
Console.ReadLine();
await serviceSubscription.Unsubscribe();
Console.ReadLine();
}
static void OnConnected(object sender, StompConnected e)
{
Console.WriteLine($"Connected from OnConnected with session {e.Session}");
}
static void OnDisconnected(object sender)
{
var stomp = (WsStomp) sender;
Console.WriteLine("Disconnected from OnDisconnected");
while (stomp.Connected == false)
{
Console.WriteLine("Reconnecting...");
Task.Delay(1000).Wait();
stomp.ReconnectAsync().Wait();
}
}
static void OnError(object sender, StompError e)
{
Console.WriteLine("Error from OnError");
}
static Task TestCallback(StompMessage message)
{
Console.WriteLine($"Message received on subscription {message.Subscription.GetId()} / {message.Subscription.GetDestination()}:");
Console.WriteLine(message.Body);
return Task.CompletedTask;
}
static Task TestCallback2(StompMessage message)
{
Console.WriteLine($"Just another callback function on subscription {message.Subscription.GetId()} / {message.Subscription.GetDestination()}:");
Console.WriteLine(message.Body);
return Task.CompletedTask;
}
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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.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
- JetBrains.Annotations (>= 2024.3.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.