Exemple #1
0
        internal void SetUserTyping(UserViewModel user)
        {
            RoomUserViewModel userVm = _users.FirstOrDefault(x => x.User.Equals(user));

            if (userVm != null)
            {
                userVm.IsTyping = true;
            }
        }
Exemple #2
0
        internal void UserLeft(UserViewModel user)
        {
            RoomUserViewModel leftUser = _users.FirstOrDefault(x => x.User.Equals(user));

            if (leftUser != null)
            {
                _users.Remove(leftUser);
            }

            // TODO: Implement notification to the room of left user.
        }
Exemple #3
0
        internal void AddUser(UserViewModel userViewModel)
        {
            if (_users.Any(x => x.User.Equals(userViewModel)))
            {
                return;
            }

            var userVm = new RoomUserViewModel(userViewModel);

            userVm.IsOwner = _owners.Any(x => x.Equals(userVm.User.Name));

            _users.Add(userVm);

            // TODO: Implement notification to the room of the joined user
        }
Exemple #4
0
        internal void RemoveOwner(string userName)
        {
            if (!_owners.Contains(userName))
            {
                return;
            }

            _owners.Remove(userName);

            RoomUserViewModel userVm = _users.FirstOrDefault(x => x.User.Name.Equals(userName));

            if (userVm != null)
            {
                userVm.IsOwner = false;
            }
        }
Exemple #5
0
        internal void AddOwner(string userName)
        {
            if (_owners.Contains(userName))
            {
                return;
            }

            _owners.Add(userName);

            RoomUserViewModel userVm = _users.FirstOrDefault(x => x.User.Name.Equals(userName));

            if (userVm != null)
            {
                userVm.IsOwner = true;
            }
        }