update ub

This commit is contained in:
Abhi
2023-10-30 13:19:13 +00:00
committed by GitHub
parent 4b9d09c8db
commit 56e03aaae6
15 changed files with 99 additions and 71 deletions

View File

@@ -29,7 +29,7 @@ from utils.scripts import format_exc
@Client.on_message(filters.command("admcount", prefix) & filters.me)
async def admcount(client: Client, message: Message):
await message.edit("<b>Retrieving information... (it'll take some time)</b>")
await message.edit("<b>Retrieving information... (it'll take some time)</b>", parse_mode=enums.ParseMode.HTML)
start = perf_counter()
try:
@@ -52,10 +52,11 @@ async def admcount(client: Client, message: Message):
except Exception as e:
if isinstance(e, FloodWait):
await message.edit(
f"<code>[{e.x}: {enums.MessageType.TEXT}] - {e.y}</code>"
f"<code>[{e.x}: {enums.MessageType.TEXT}] - {e.y}</code>",
parse_mode=enums.ParseMode.HTML
)
else:
await message.edit(format_exc(e))
await message.edit(format_exc(e), parse_mode=enums.ParseMode.HTML)
return
stop = perf_counter()
@@ -66,13 +67,14 @@ async def admcount(client: Client, message: Message):
f"<b><u>Owned chats:</u></b> {owned_chats}\n"
f"<b><u>Owned chats with username:</u></b> {owned_usernamed_chats}\n\n"
f"Done at {round(stop - start, 3)} seconds.\n\n"
f"<b>Get full list: </b><code>{prefix}admlist</code>"
f"<b>Get full list: </b><code>{prefix}admlist</code>",
parse_mode=enums.ParseMode.HTML
)
@Client.on_message(filters.command("admlist", prefix) & filters.me)
async def admlist(client: Client, message: Message):
await message.edit("<b>Retrieving information... (it'll take some time)</b>")
await message.edit("<b>Retrieving information... (it'll take some time)</b>", parse_mode=enums.ParseMode.HTML)
start = perf_counter()
try:
@@ -121,15 +123,17 @@ async def admlist(client: Client, message: Message):
f"\n<b><u>Adminned chats:</u></b> {len(adminned_chats)}\n"
f"<b><u>Owned chats:</u></b> {len(owned_chats)}\n"
f"<b><u>Owned chats with username:</u></b> {len(owned_usernamed_chats)}\n\n"
f"Done at {round(stop - start, 3)} seconds."
f"Done at {round(stop - start, 3)} seconds.",
parse_mode=enums.ParseMode.HTML
)
except Exception as e:
if isinstance(e, FloodWait):
await message.edit(
f"<code>[{e.x}: {enums.MessageType.TEXT}] - {e.y}</code>"
f"<code>[{e.x}: {enums.MessageType.TEXT}] - {e.y}</code>",
parse_mode=enums.ParseMode.HTML
)
else:
await message.edit(format_exc(e))
await message.edit(format_exc(e), parse_mode=enums.ParseMode.HTML)
return

View File

@@ -153,7 +153,7 @@ async def afk_unset(bot: Client, message: Message):
await message.edit(
f"`While you were away (for {last_seen}), you received {sum(USERS.values()) + sum(GROUPS.values())} "
f"messages from {len(USERS) + len(GROUPS)} chats`",
parse_mode=enums.ParseMode.HTML,
parse_mode=enums.ParseMode.HTML
)
AFK = False
AFK_TIME = ""

View File

@@ -32,10 +32,11 @@ from utils.misc import modules_help, prefix
@Client.on_message(filters.command("example_edit", prefix) & filters.me)
async def example_edit(client: Client, message: Message):
try:
await message.edit("<code>This is an example module</code>")
await message.edit("<code>This is an example module</code>", parse_mode=enums.ParseMode.HTML)
except Exception as e:
await message.edit(
f"<code>[{e.error_code}: {enums.MessageType.TEXT}] - {e.error_details}</code>"
f"<code>[{e.error_code}: {enums.MessageType.TEXT}] - {e.error_details}</code>",
parse_mode=enums.ParseMode.HTML
)
@@ -45,7 +46,8 @@ async def example_send(client: Client, message: Message):
await client.send_message(message.chat.id, "<b>This is an example module</b>")
except Exception as e:
await message.edit(
f"<code>[{e.error_code}: {enums.MessageType.TEXT}] - {e.error_details}</code>"
f"<code>[{e.error_code}: {enums.MessageType.TEXT}] - {e.error_details}</code>",
parse_mode=enums.ParseMode.HTML
)

View File

@@ -237,7 +237,7 @@ async def filters_handler(client: Client, message: Message):
text = text[:4096]
return await message.edit(text, parse_mode=enums.ParseMode.HTML)
except Exception as e:
return await message.edit(format_exc(e))
return await message.edit(format_exc(e), parse_mode=enums.ParseMode.HTML)
@Client.on_message(
@@ -264,7 +264,7 @@ async def filter_del_handler(client: Client, message: Message):
parse_mode=enums.ParseMode.HTML,
)
except Exception as e:
return await message.edit(format_exc(e))
return await message.edit(format_exc(e), parse_mode=enums.ParseMode.HTML)
@Client.on_message(filters.command(["fsearch"], prefix) & filters.me)
@@ -288,7 +288,7 @@ async def filter_search_handler(client: Client, message: Message):
parse_mode=enums.ParseMode.HTML,
)
except Exception as e:
return await message.edit(format_exc(e))
return await message.edit(format_exc(e), parse_mode=enums.ParseMode.HTML)
modules_help["filters"] = {

View File

@@ -129,6 +129,7 @@ async def loadmod(_, message: Message):
"<a href=https://github.com/The-MoonTg-project/custom_modules>"
"custom_modules</a> repository are supported!</b>",
disable_web_page_preview=True,
parse_mode=enums.ParseMode.HTML
)
else:
os.rename(file_name, f"./modules/custom_modules/{module_name}.py")
@@ -190,22 +191,23 @@ async def load_all_mods(_, message: Message):
continue
new_modules[module_info["name"][:-3]] = module_info["download_url"]
if not new_modules:
return await message.edit("<b>All modules already loaded</b>")
return await message.edit("<b>All modules already loaded</b>", parse_mode=enums.ParseMode.HTML)
await message.edit(f'<b>Loading new modules: {" ".join(new_modules.keys())}</b>')
await message.edit(f'<b>Loading new modules: {" ".join(new_modules.keys())}</b>', parse_mode=enums.ParseMode.HTML)
for name, url in new_modules.items():
with open(f"./modules/custom_modules/{name}.py", "wb") as f:
f.write(requests.get(url).content)
await message.edit(
f'<b>Successfully loaded new modules: {" ".join(new_modules.keys())}</b>'
f'<b>Successfully loaded new modules: {" ".join(new_modules.keys())}</b>',
parse_mode=enums.ParseMode.HTML
)
restart()
@Client.on_message(filters.command(["updateallmods"], prefix) & filters.me)
async def updateallmods(_, message: Message):
await message.edit("<b>Updating modules...</b>")
await message.edit("<b>Updating modules...</b>", parse_mode=enums.ParseMode.HTML)
if not os.path.exists(f"{BASE_PATH}/modules/custom_modules"):
os.mkdir(f"{BASE_PATH}/modules/custom_modules")
@@ -213,7 +215,7 @@ async def updateallmods(_, message: Message):
modules_installed = list(os.walk("modules/custom_modules"))[0][2]
if not modules_installed:
return await message.edit("<b>You don't have any modules installed</b>")
return await message.edit("<b>You don't have any modules installed</b>", parse_mode=enums.ParseMode.HTML)
for module_name in modules_installed:
if not module_name.endswith(".py"):
@@ -229,7 +231,7 @@ async def updateallmods(_, message: Message):
with open(f"./modules/custom_modules/{module_name}", "wb") as f:
f.write(resp.content)
await message.edit(f"<b>Successfully updated {len(modules_installed)} modules</b>")
await message.edit(f"<b>Successfully updated {len(modules_installed)} modules</b>", parse_mode=enums.ParseMode.HTML)
modules_help["loader"] = {

View File

@@ -242,13 +242,13 @@ async def save_note(client: Client, message: Message):
@Client.on_message(filters.command(["notes"], prefix) & filters.me)
async def notes(_, message: Message):
await message.edit("<b>Loading...</b>")
await message.edit("<b>Loading...</b>", parse_mode=enums.ParseMode.HTML)
text = "Available notes:\n\n"
collection = db.get_collection("core.notes")
for note in collection.keys():
if note[:4] == "note":
text += f"<code>{note[4:]}</code>\n"
await message.edit(text)
await message.edit(text, parse_mode=enums.ParseMode.HTML)
@Client.on_message(filters.command(["clear"], prefix) & filters.me)

View File

@@ -47,7 +47,7 @@ def user_exec(client: Client, message: Message):
code = message.text.split(maxsplit=1)[1]
stdout = StringIO()
message.edit("<b>Executing...</b>")
message.edit("<b>Executing...</b>", parse_mode=enums.ParseMode.HTML)
try:
with redirect_stdout(stdout):
@@ -70,7 +70,7 @@ def user_exec(client: Client, message: Message):
@Client.on_message(filters.command(["ev", "eval"], prefix) & filters.me)
def user_eval(client: Client, message: Message):
if len(message.command) == 1:
message.edit("<b>Code to eval isn't provided</b>")
message.edit("<b>Code to eval isn't provided</b>", parse_mode=enums.ParseMode.HTML)
return
reply = message.reply_to_message

View File

@@ -45,7 +45,7 @@ from utils.misc import modules_help, prefix
@Client.on_message(filters.command(["shell", "sh"], prefix) & filters.me)
async def shell(_, message: Message):
if len(message.command) < 2:
return await message.edit("<b>Specify the command in message text</b>")
return await message.edit("<b>Specify the command in message text</b>", parse_mode=enums.ParseMode.HTML)
cmd_text = message.text.split(maxsplit=1)[1]
cmd_args = shlex.split(cmd_text)
cmd_obj = subprocess.Popen(

View File

@@ -1,16 +0,0 @@
from pyrogram import Client
from pyrogram import enums as enums
from pyrogram import filters, types
from utils.misc import prefix
@Client.on_message(filters.command("sqoute", prefix) & filters.me)
async def sqoute(client: Client, message: types.Message):
if len(message.command) < 2:
return await message.edit(
"<b>No arguments provided</b>", parse_mode=enums.ParseMode.HTML
)
text = message.text.split(maxsplit=1)[1]
await message.delete()
await client.send_message(message.chat.id, text, parse_mode=enums.ParseMode.HTML)

View File

@@ -19,7 +19,7 @@ import os
from io import BytesIO
import requests
from pyrogram import Client, filters, errors, types
from pyrogram import Client, filters, errors, types, enums
from utils.misc import modules_help, prefix
from utils.scripts import with_reply, format_exc, resize_image
@@ -60,9 +60,9 @@ async def quote_cmd(client: Client, message: types.Message):
if send_for_me:
await message.delete()
message = await client.send_message("me", "<b>Generating...</b>")
message = await client.send_message("me", "<b>Generating...</b>", parse_mode=enums.ParseMode.HTML)
else:
await message.edit("<b>Generating...</b>")
await message.edit("<b>Generating...</b>", parse_mode=enums.ParseMode.HTML)
url = "https://quotes.fl1yd.su/generate"
params = {
@@ -76,20 +76,21 @@ async def quote_cmd(client: Client, message: types.Message):
response = requests.post(url, json=params)
if not response.ok:
return await message.edit(
f"<b>Quotes API error!</b>\n" f"<code>{response.text}</code>"
f"<b>Quotes API error!</b>\n" f"<code>{response.text}</code>",
parse_mode=enums.ParseMode.HTML
)
resized = resize_image(
BytesIO(response.content), img_type="PNG" if is_png else "WEBP"
)
await message.edit("<b>Sending...</b>")
await message.edit("<b>Sending...</b>", parse_mode=enums.ParseMode.HTML)
try:
func = client.send_document if is_png else client.send_sticker
chat_id = "me" if send_for_me else message.chat.id
await func(chat_id, resized)
except errors.RPCError as e: # no rights to send stickers, etc
await message.edit(format_exc(e))
await message.edit(format_exc(e), parse_mode=enums.ParseMode.HTML)
else:
await message.delete()
@@ -110,7 +111,7 @@ async def fake_quote_cmd(client: Client, message: types.Message):
)
if not fake_quote_text:
return await message.edit("<b>Fake quote text is empty</b>")
return await message.edit("<b>Fake quote text is empty</b>", parse_mode=enums.ParseMode.HTML)
q_message = await client.get_messages(
message.chat.id, message.reply_to_message.message_id
@@ -124,7 +125,7 @@ async def fake_quote_cmd(client: Client, message: types.Message):
await message.delete()
message = await client.send_message("me", "<b>Generating...</b>")
else:
await message.edit("<b>Generating...</b>")
await message.edit("<b>Generating...</b>", parse_mode=enums.ParseMode.HTML)
url = "https://quotes.fl1yd.su/generate"
params = {
@@ -136,20 +137,21 @@ async def fake_quote_cmd(client: Client, message: types.Message):
response = requests.post(url, json=params)
if not response.ok:
return await message.edit(
f"<b>Quotes API error!</b>\n" f"<code>{response.text}</code>"
f"<b>Quotes API error!</b>\n" f"<code>{response.text}</code>",
parse_mode=enums.ParseMode.HTML
)
resized = resize_image(
BytesIO(response.content), img_type="PNG" if is_png else "WEBP"
)
await message.edit("<b>Sending...</b>")
await message.edit("<b>Sending...</b>", parse_mode=enums.ParseMode.HTML)
try:
func = client.send_document if is_png else client.send_sticker
chat_id = "me" if send_for_me else message.chat.id
await func(chat_id, resized)
except errors.RPCError as e: # no rights to send stickers, etc
await message.edit(format_exc(e))
await message.edit(format_exc(e), parse_mode=enums.ParseMode.HTML)
else:
await message.delete()

View File

@@ -17,7 +17,7 @@
import os
from io import BytesIO
from pyrogram import Client, filters, types
from pyrogram import Client, filters, types, enums
from utils.misc import modules_help, prefix
from utils.scripts import (

View File

@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
from pyrogram import Client, filters
from pyrogram import Client, filters, enums
from pyrogram.types import Message
from utils.misc import modules_help, prefix
@@ -38,12 +38,12 @@ async def switch(client: Client, message: Message):
if history and history[1].from_user.is_self and history[1].text:
text = history[1].text
else:
await message.edit("<b>Text to switch not found</b>")
await message.edit("<b>Text to switch not found</b>", parse_mode=enums.ParseMode.HTML)
return
else:
text = message.text.split(maxsplit=1)[1]
await message.edit(str.translate(text, table))
await message.edit(str.translate(text, table), parse_mode=enums.ParseMode.HTML)
modules_help["switch"] = {

32
modules/uplud.py Normal file
View File

@@ -0,0 +1,32 @@
import os
from pyrogram import Client, enums, filters
from pyrogram.types import Message
from utils.misc import modules_help, prefix
from utils.scripts import format_exc
@Client.on_message(filters.command("upl", prefix) & filters.me)
async def urldl(client: Client, message: Message):
if len(message.command) > 1:
link = message.text.split(maxsplit=1)[1]
elif message.reply_to_message:
link = message.reply_to_message.text
else:
await message.edit(
f"<b>Usage: </b><code>{prefix}upl [filepath to upload]</code>",
parse_mode=enums.ParseMode.HTML,
)
return
try:
await message.edit("<b>Uploading Now...</b>", parse_mode=enums.ParseMode.HTML)
await client.send_document(message.chat.id, link)
await message.delete()
except Exception as e:
await message.edit(format_exc(e), parse_mode=enums.ParseMode.HTML)
finally:
os.remove(link)
modules_help["uplud"] = {"upl": f"[filepath]/[reply to path]*"}

View File

@@ -15,7 +15,7 @@
# along with this program. If not, see <https://www.gnu.org/licenses/>.
import os
from pyrogram import Client, filters
from pyrogram import Client, filters, enums
from pyrogram.types import Message
import requests
from utils.misc import modules_help, prefix
@@ -29,12 +29,12 @@ async def short(_, message: Message):
elif message.reply_to_message:
link = message.reply_to_message.text
else:
await message.edit(f"<b>Usage: </b><code>{prefix}short [url to short]</code>")
await message.edit(f"<b>Usage: </b><code>{prefix}short [url to short]</code>", parse_mode=enums.ParseMode.HTML)
return
shortened = requests.get("https://clck.ru/--", data={"url": link}).text
await message.edit(shortened.replace("https://", ""), disable_web_page_preview=True)
await message.edit(shortened.replace("https://", ""), disable_web_page_preview=True, parse_mode=enums.ParseMode.HTML)
@Client.on_message(filters.command("urldl", prefix) & filters.me)
@@ -45,11 +45,12 @@ async def urldl(client: Client, message: Message):
link = message.reply_to_message.text
else:
await message.edit(
f"<b>Usage: </b><code>{prefix}urldl [url to download]</code>"
f"<b>Usage: </b><code>{prefix}urldl [url to download]</code>",
parse_mode=enums.ParseMode.HTML
)
return
await message.edit("<b>Downloading...</b>")
await message.edit("<b>Downloading...</b>", parse_mode=enums.ParseMode.HTML)
file_name = "downloads/" + link.split("/")[-1]
try:
@@ -60,11 +61,11 @@ async def urldl(client: Client, message: Message):
for chunk in resp.iter_content(chunk_size=8192):
f.write(chunk)
await message.edit("<b>Uploading...</b>")
await message.edit("<b>Uploading...</b>", parse_mode=enums.ParseMode.HTML)
await client.send_document(message.chat.id, file_name)
await message.delete()
except Exception as e:
await message.edit(format_exc(e))
await message.edit(format_exc(e), parse_mode=enums.ParseMode.HTML)
finally:
os.remove(file_name)
@@ -77,7 +78,7 @@ async def upload_cmd(_, message: Message):
min_file_age = 31
max_file_age = 180
await message.edit("<b>Downloading...</b>")
await message.edit("<b>Downloading...</b>", parse_mode=enums.ParseMode.HTML)
try:
file_name = await message.download()
@@ -85,15 +86,15 @@ async def upload_cmd(_, message: Message):
try:
file_name = await message.reply_to_message.download()
except ValueError:
await message.edit("<b>File to upload not found</b>")
await message.edit("<b>File to upload not found</b>", parse_mode=enums.ParseMode.HTML)
return
if os.path.getsize(file_name) > max_size:
await message.edit(f"<b>Files longer than {max_size_mb}MB isn't supported</b>")
await message.edit(f"<b>Files longer than {max_size_mb}MB isn't supported</b>", parse_mode=enums.ParseMode.HTML)
os.remove(file_name)
return
await message.edit("<b>Uploading...</b>")
await message.edit("<b>Uploading...</b>", parse_mode=enums.ParseMode.HTML)
with open(file_name, "rb") as f:
response = requests.post(
"https://x0.at",
@@ -111,9 +112,10 @@ async def upload_cmd(_, message: Message):
await message.edit(
f"<b>Your URL: {url}\nYour file will live {file_age} days</b>",
disable_web_page_preview=True,
parse_mode=enums.ParseMode.HTML
)
else:
await message.edit(f"<b>API returned an error!\n" f"{response.text}</b>")
await message.edit(f"<b>API returned an error!\n" f"{response.text}</b>", parse_mode=enums.ParseMode.HTML)
os.remove(file_name)
@@ -126,7 +128,7 @@ async def webshot(client: Client, message: Message):
full_link = f"https://webshot.deam.io/{user_link}/?delay=2000"
await client.send_document(message.chat.id, full_link, caption=f"{user_link}")
except Exception as e:
await message.edit(format_exc(e))
await message.edit(format_exc(e), parse_mode=enums.ParseMode.HTML)
modules_help["url"] = {

View File

@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
from pyrogram import Client, filters
from pyrogram import Client, filters, enums
from pyrogram.raw import functions
from pyrogram.types import Message