public async Task PushTo(HqApiUser user, IHqApiOutgoingMessage message) { if (user.Connected) { await user.Send(message.Serialize()); } }
public void Add(HqApiUser user) { lock (Users) Users.Add(user); user.OnDisconnected += (client) => { lock (Users) Users.Remove(client); }; user.OnReceive += (client, str) => { if (!ClientCanSend) { ILogManager.Log($"Client {client.Connection.ConnectionInfo.ClientIpAddress} tried to send data on handle that does not support sending [{HandleId}].", $"Handles.Holder - {user.Connection.ConnectionInfo.ClientIpAddress}", LogType.Warning); return; } OnMessage?.Invoke(client, str); }; }