__MODULE__ = "Misc" __HELP__ = """ Misc Help • Command: {0}logger [on/off] • Explanation: To find out if there are incoming messages from other users, or when you are tagged by others. - {0}logger on -> To turn on the log group. - {0}logger off -> To turn off the log group. • Command: {0}addsudo [reply/username/id] • Explanation: Add a sudo user. • Command: {0}delsudo [reply/username/id] • Explanation: Delete a sudo user. • Command: {0}sudolist • Explanation: Check sudo users. """ import asyncio from pyrogram.enums import * from pyrogram.errors import FloodWait from pyrogram.types import * from ubot import * @PY.GC() async def _(client, message): log = await get_log(client) cek = await get_log_group(client.me.id) if not cek: return user = f"[{message.from_user.first_name} {message.from_user.last_name or ''}](tg://user?id={message.from_user.id})" message_link = message.link text = f""" 📨 TAGS MESSAGELogs: {client.me.first_name}Group: {message.chat.title}From: {user}Message: {message.text}Group Link: [Here]({message_link}) """ try: await client.send_message( log.id, text, disable_web_page_preview=True, ) except FloodWait as e: await asyncio.sleep(e.value) await client.send_message( log.id, text, disable_web_page_preview=True, ) @PY.PC() async def _(client, message): log = await get_log(client) cek = await get_log_group(client.me.id) if not cek: return if message.chat.id == 777000: return async for x in client.search_messages(message.chat.id, limit=1): await x.forward(log.id) @PY.UBOT("logger", sudo=True) async def _(client, message): xx = await message.reply(f"**Processing...**") cek = get_arg(message) logs = await get_log_group(client.me.id) if cek.lower() == "on": if not logs: await set_log_group(client.me.id, logger=True) await create_botlog(client) ajg = await get_log(client) babi = await client.export_chat_invite_link(int(ajg.id)) return await xx.edit(f" Log Group Successfully Activated:\n\n{babi}") else: return await xx.edit(f" Your Log Group is Already Active.") if cek.lower() == "off": if logs: await del_log_group(client.me.id) ajg = await get_log(client) await client.delete_supergroup(int(ajg.id)) return await xx.edit(f" Log Group Successfully Deactivated.") else: return await xx.edit(f" Your Log Group is Already Deactivated.") else: return await xx.edit( f"Invalid format. Please use {message.text} on/off" ) @PY.UBOT("addsudo", sudo=True) async def _(client, message): msg = await message.reply(f"Processing...") user_id = await extract_user(message) if not user_id: return await msg.edit(f"Please reply to user message/username/user id") try: user = await client.get_users(user_id) except Exception as error: return await msg.edit(error) sudo_users = await ambil_list_var(client.me.id, "SUDO_USER", "ID_NYA") if user.id in sudo_users: return await msg.edit( f"[{user.first_name} {user.last_name or ''}](tg://user?id={user.id}) is already a sudo user." ) try: await add_var(client.me.id, "SUDO_USER", user.id, "ID_NYA") return await msg.edit( f"[{user.first_name} {user.last_name or ''}](tg://user?id={user.id}) has been added as a sudo user." ) except Exception as error: return await msg.edit(error) @PY.UBOT("delsudo", sudo=True) async def _(client, message): msg = await message.reply(f"Processing...") user_id = await extract_user(message) if not user_id: return await msg.edit(f"Please reply to user message/username/user id.") try: user = await client.get_users(user_id) except Exception as error: return await msg.edit(error) sudo_users = await ambil_list_var(client.me.id, "SUDO_USER", "ID_NYA") if user.id not in sudo_users: return await msg.edit( f"[{user.first_name} {user.last_name or ''}](tg://user?id={user.id}) is not a sudo user." ) try: await rem_var(client.me.id, "SUDO_USER", user.id, "ID_NYA") return await msg.edit( f"[{user.first_name} {user.last_name or ''}](tg://user?id={user.id}) has been removed from sudo users." ) except Exception as error: return await msg.edit(error) @PY.UBOT("sudolist", sudo=True) async def _(client, message): msg = await message.reply(f"Processing...") sudo_users = await ambil_list_var(client.me.id, "SUDO_USER", "ID_NYA") if not sudo_users: return await msg.edit(f"No sudo users found.") sudo_list = [] for user_id in sudo_users: try: user = await client.get_users(int(user_id)) sudo_list.append( f" • [{user.first_name} {user.last_name or ''}](tg://user?id={user.id}) | {user.id}" ) except: continue if sudo_list: response = ( f"User List:\n" + "\n".join(sudo_list) + f"\n {len(sudo_list)}" ) return await msg.edit(response) else: return await msg.edit("Error")