azils3/bash
0
1# Ultroid - UserBot2# Copyright (C) 2021-2025 TeamUltroid3#4# This file is a part of < https://github.com/TeamUltroid/Ultroid/ >5# PLease read the GNU Affero General Public License in6# <https://www.github.com/TeamUltroid/Ultroid/blob/main/LICENSE/>.7 8from . import get_help9 10__doc__ = get_help("help_asstcmd")11 12import os13 14from pyUltroid.dB.asstcmd_db import add_cmd, cmd_reply, list_cmds, rem_cmd15from pyUltroid.fns.tools import create_tl_btn, format_btn, get_msg_button16from telethon import events, utils17 18from . import asst, get_string, mediainfo, udB, ultroid_cmd, upload_file19 20 21@ultroid_cmd(pattern="addcmd( (.*)|$)")22async def ac(e):23 wrd = (e.pattern_match.group(1).strip()).lower()24 wt = await e.get_reply_message()25 if not (wt and wrd):26 return await e.eor(get_string("asstcmd_1"), time=5)27 if "/" in wrd:28 wrd = wrd.replace("/", "")29 btn = format_btn(wt.buttons) if wt.buttons else None30 if wt and wt.media:31 wut = mediainfo(wt.media)32 if wut.startswith(("pic", "gif")):33 dl = await e.client.download_media(wt.media)34 m = upload_file(dl)35 os.remove(dl)36 elif wut == "video":37 if wt.media.document.size > 8 * 1000 * 1000:38 return await e.eor(get_string("com_4"), time=5)39 dl = await e.client.download_media(wt.media)40 m = upload_file(dl)41 os.remove(dl)42 else:43 m = utils.pack_bot_file_id(wt.media)44 if wt.text:45 txt = wt.text46 if not btn:47 txt, btn = get_msg_button(wt.text)48 add_cmd(wrd, txt, m, btn)49 else:50 add_cmd(wrd, None, m, btn)51 else:52 txt = wt.text53 if not btn:54 txt, btn = get_msg_button(wt.text)55 add_cmd(wrd, txt, None, btn)56 asst.add_handler(57 astcmds,58 events.NewMessage(59 func=lambda x: x.text.startswith("/") and x.text[1:] in list(list_cmds())60 ),61 )62 await e.eor(get_string("asstcmd_4").format(wrd))63 64 65@ultroid_cmd(pattern="remcmd( (.*)|$)")66async def rc(e):67 wrd = (e.pattern_match.group(1).strip()).lower()68 if not wrd:69 return await e.eor(get_string("asstcmd_2"), time=5)70 wrd = wrd.replace("/", "")71 rem_cmd(wrd)72 await e.eor(get_string("asstcmd_3").format(wrd))73 74 75@ultroid_cmd(pattern="listcmd$")76async def lscmd(e):77 if list_cmds():78 ok = get_string("asstcmd_6")79 for x in list_cmds():80 ok += f"/{x}" + "\n"81 return await e.eor(ok)82 return await e.eor(get_string("asstcmd_5"))83 84 85async def astcmds(e):86 xx = (e.text.replace("/", "")).lower().split()[0]87 if cmd_reply(xx):88 msg, media, bt = cmd_reply(xx)89 if bt:90 bt = create_tl_btn(bt)91 await e.reply(msg, file=media, buttons=bt)92 93 94if udB.get_key("ASST_CMDS"):95 asst.add_handler(96 astcmds,97 events.NewMessage(98 func=lambda x: x.text.startswith("/") and x.text[1:] in list(list_cmds())99 ),100 )101 