示例#1
0
        public void userKicked(string username)
        {
            ChatUser currentUser = DBSupport.GetUser(new ChatUser {
                Username = username
            });

            DBSupport.DeleteUser(currentUser.Username);
            Clients.AllExcept(currentUser.ConnectionId).userLeft(currentUser.Username);
            Clients.Client(currentUser.ConnectionId).forceDisconnect();
            Clients.All.totalUsers(DBSupport.GetUsersCount());
            Clients.All.dcUserSessions(currentUser.Username);
        }
示例#2
0
        public void DeleteReconnectingUser(string username)
        {
            ChatUser currentUser = DBSupport.GetUser(new ChatUser {
                Username = username
            });

            if (currentUser == null)
            {
                username    = HttpContext.Request.Cookies["FunkyUser"].Value.Substring(0, HttpContext.Request.Cookies["FunkyUser"].Value.IndexOf('&'));
                username    = username.Substring(username.IndexOf('=') + 1);
                currentUser = DBSupport.GetUser(new ChatUser {
                    Username = username
                });
            }
            DBSupport.DeleteUser(username);
            IHubContext hubContext = GlobalHost.ConnectionManager.GetHubContext <Chat>();

            hubContext.Clients.All.userLeft(currentUser.Username);
            hubContext.Clients.All.totalUsers(DBSupport.GetUsersCount());
            hubContext.Clients.All.dcUserSessions(currentUser.Username);
        }
示例#3
0
 public void Stop()
 {
     try
     {
         ChatUser currentUser = DBSupport.GetUser(new ChatUser {
             ConnectionId = Context.ConnectionId
         });
         if (currentUser == null)
         {
             string username = Context.RequestCookies["FunkyUser"].Value.Substring(0, Context.RequestCookies["FunkyUser"].Value.IndexOf('&'));
             username    = username.Substring(username.IndexOf('=') + 1);
             currentUser = DBSupport.GetUser(new ChatUser {
                 Username = username
             });
         }
         DBSupport.DeleteUser(currentUser.Username);
         Clients.Others.userLeft(currentUser.Username);
         Clients.All.totalUsers(DBSupport.GetUsersCount());
         Clients.All.dcUserSessions(currentUser.Username);
     }
     catch { }
 }