Exemplo n.º 1
0
 public async Task PushTo(HqApiUser user, IHqApiOutgoingMessage message)
 {
     if (user.Connected)
     {
         await user.Send(message.Serialize());
     }
 }
Exemplo n.º 2
0
        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);
            };
        }