Team Ai
Apppublic

azils3/bash

sourceHugging Faceupdated 2y agoView on Hugging Face
0likes
asstcmd.py101 linesDownload Raw Back to plugins
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