예제 #1
0
파일: TheHub.cs 프로젝트: JhonnyLi/ZenView
        public void Connected(Guid userId, string userName)
        {
            var user = _usersThatLoggedOn.FirstOrDefault(u => u.Key.Equals(userName, StringComparison.InvariantCultureIgnoreCase));

            if (!string.IsNullOrEmpty(user.Key))
            {
                var vm = new ZenViewViewModel(user.Value);

                if (_usersThatLoggedOn.Remove(userName))
                {
                    if (!_activeUsers.Any(u => u.Key.ToString().Equals(user.Key)))
                    {
                        _activeUsers.Add(userId, user.Value);
                    }
                    else
                    {
                        _activeUsers[userId] = user.Value;
                    }
                }
                Clients.Caller.receiveState(vm.Tickets, vm.Users);
            }
            Clients.All.online($"User {user.Key} connected at: " + DateTime.Now.TimeOfDay.ToString());
        }
예제 #2
0
파일: TheHub.cs 프로젝트: JhonnyLi/ZenView
        public void GetTickets(string token)
        {
            var vm = new ZenViewViewModel(token);

            Clients.Caller.receiveTickets(vm.Tickets);
        }