def find_channel_with_name(name: str, server, parent: int = None): channels = server.getChannels() for cid, channel in channels.items(): if parent: if channel.name == name and channel.parent == parent: return channel else: if channel.name == name: return channel return None def get_empty_channels(server, parent: int = None): empty_channels = [] channels = server.getChannels() for cid, channel in channels.items(): if parent: if channel.parent == parent and len(get_user_for_channel(cid, server)) == 0: empty_channels.append(cid) return empty_channels def get_user_for_channel(cid, server): users = server.getUsers() users_in_channel = {} for uid, user in users.items(): if user.channel == cid: users_in_channel[uid] = user return users_in_channel