using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.SignalR; namespace ZB.MOM.WW.MxGateway.Server.Dashboard.Hubs; /// /// SignalR hub that pushes alarm-feed messages from the gateway's /// central alarm monitor. Connected clients auto-join /// on connect and receive every /// AlarmFeedMessage the monitor emits. /// [Authorize(Policy = DashboardAuthenticationDefaults.HubClientsPolicy)] public sealed class AlarmsHub : Hub { public const string AllAlarmsGroup = "__alarms__"; /// Method name used to push AlarmFeedMessage values to clients. public const string AlarmMessage = "AlarmFeed"; /// public override async Task OnConnectedAsync() { await Groups.AddToGroupAsync(Context.ConnectionId, AllAlarmsGroup).ConfigureAwait(false); await base.OnConnectedAsync().ConfigureAwait(false); } }