from Powers.bot_class import Gojo from pyrogram.types import Message from pyrogram.errors import RPCError from Powers.utils.parser import mention_html from Powers.utils.custom_filters import command from Powers import LOGGER, OWNER_ID, DEV_USERS, SUDO_USERS, WHITELIST_USERS @Gojo.on_message(command("botstaff", dev_cmd=True)) async def botstaff(c: Gojo, m: Message): try: owner = await c.get_users(OWNER_ID) reply = f"🌟 Owner: {(await mention_html(owner.first_name, OWNER_ID))} ({OWNER_ID})\n" except RPCError: pass true_dev = list(set(DEV_USERS) - {OWNER_ID}) reply += "\nDevelopers ⚡️:\n" if not true_dev: reply += "No Dev Users\n" else: for each_user in true_dev: user_id = int(each_user) try: user = await c.get_users(user_id) reply += f"• {(await mention_html(user.first_name, user_id))} ({user_id})\n" except RPCError: pass true_sudo = list(set(SUDO_USERS) - set(DEV_USERS)) reply += "\nSudo Users 🐉:\n" if true_sudo == []: reply += "No Sudo Users\n" else: for each_user in true_sudo: user_id = int(each_user) try: user = await c.get_users(user_id) reply += f"• {(await mention_html(user.first_name, user_id))} ({user_id})\n" except RPCError: pass reply += "\nWhitelisted Users 🐺:\n" if WHITELIST_USERS == []: reply += "No additional whitelisted users\n" else: for each_user in WHITELIST_USERS: user_id = int(each_user) try: user = await c.get_users(user_id) reply += f"• {(await mention_html(user.first_name, user_id))} ({user_id})\n" except RPCError: pass await m.reply_text(reply) LOGGER.info(f"{m.from_user.id} fetched botstaff in {m.chat.id}") return