/// <summary> /// Send an message with broadcast /// </summary> /// <param name="realtimeObject">The message to send</param> /// <param name="ignoreFor">The socket to be ignored</param> /// <returns>An async worker</returns> internal static async Task BroadcastMessage(Dto.Realtime.RealtimeDto realtimeObject, string ignoreFor) { foreach (var socket in sockets) { if (socket.Value.State != WebSocketState.Open || socket.Key == ignoreFor) { continue; } await SendRealtimeAsync(socket.Value, realtimeObject); } }
private static Task SendRealtimeAsync(WebSocket socket, Dto.Realtime.RealtimeDto realtimeObject, CancellationToken ct = default(CancellationToken)) { return(SendStringAsync(socket, realtimeObject.ToJsonString(), ct)); }