using System.Text.Json; using RelayShared.Rtc; using WebSocketSharp.Server; namespace RelayServer.Services.Rtc; public static class RtcNotificationService { public static WebSocketServer? Server { get; set; } public static void BroadcastToChannel(RtcNotificationMessage message) { if (Server is null) return; var host = Server.WebSocketServices["/"]; if (host is null) return; var json = JsonSerializer.Serialize(message); var sessionIds = RtcChannelPresenceService.GetSessionsInChannel(message.ChannelId); foreach (var sessionId in sessionIds) { host.Sessions.SendTo(json, sessionId); } } }