public void AddUser(NewUser user, bool InviteUser = true) { if (!Users.Contains(user)) { Users.Add(user); } if (Users.Count > 2 || IsGroupChat) { if (!IsGroupChat) { IsGroupChat = true; var rname = Randomness.RandomRoomName(); GroupUser = new NewUser(rname + "@conference." + Skylabs.Lobby.Client.Host); _client.MucManager.JoinRoom(GroupUser.User, _client.Me.User.User); _client.RosterManager.AddRosterItem(GroupUser.User, GroupUser.User.User); } if (InviteUser) { foreach (var u in Users) { if (u != _client.Me) { _client.MucManager.Invite(u.User, GroupUser.User); } } } } if (OnUserListChange != null) { OnUserListChange.Invoke(this, Users); } }
public void UserLeft(NewUser user) { Users.Remove(user); if (OnUserListChange != null) { OnUserListChange.Invoke(this, Users); } }