# Moon-Userbot - telegram userbot # Copyright (C) 2020-present Moon Userbot Organization # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program. If not, see . import os from pyrogram import Client, filters from pyrogram.types import Message from utils.misc import modules_help, prefix from utils.scripts import format_exc, format_module_help, format_small_module_help @Client.on_message(filters.command(['sendmod', 'sm'], prefix) & filters.me) async def sendmod(client: Client, message: Message): if len(message.command) == 1: await message.edit('Module name to send is not provided') return await message.edit('Dispatching...') try: module_name = message.command[1].lower() if module_name in modules_help: text = format_module_help(module_name) if len(text) >= 1024: text = format_small_module_help(module_name) if os.path.isfile(f'modules/{module_name}.py'): await client.send_document(message.chat.id, f'modules/{module_name}.py', caption=text) elif os.path.isfile(f'modules/custom_modules/{module_name.lower()}.py'): await client.send_document( message.chat.id, f'modules/custom_modules/{module_name}.py', caption=text, ) await message.delete() else: await message.edit(f'Module {module_name} not found!') except Exception as e: await message.edit(format_exc(e)) modules_help['sendmod'] = { 'sendmod [module_name]': 'Send module to interlocutor', }