using Microsoft.AspNetCore.SignalR.Client; using Microsoft.Extensions.Logging; using System.Reflection; using System.Text.Json.Serialization; var url = "wss://api.dev.gastrojames.ch/hubs/internal"; var accessToken = url; // or your actual token var connection = new HubConnectionBuilder() .WithUrl(url, options => { options.AccessTokenProvider = () => Task.FromResult(accessToken); options.SkipNegotiation = true; options.Transports = Microsoft.AspNetCore.Http.Connections.HttpTransportType.WebSockets; }) .WithAutomaticReconnect() .Build(); connection.On("PrintJob", (args) => { Console.WriteLine($"Received print job for working area: {args.WorkingAreaId}"); }); await connection.StartAsync(); Console.ReadLine(); public class PrintJob { [JsonPropertyName("workingAreaId")] public string WorkingAreaId { get; set; } [JsonPropertyName("content")] public string Content { get; set; } }