From c83a540e111524fb65ae0527864cded8024ff37d Mon Sep 17 00:00:00 2001 From: "Dr.Caduceus" Date: Mon, 13 Nov 2023 11:53:06 +0530 Subject: [PATCH] Bump to v1.5 --- bot/plugins/commands.py | 55 ++++++++++++++--------------------------- 1 file changed, 19 insertions(+), 36 deletions(-) diff --git a/bot/plugins/commands.py b/bot/plugins/commands.py index 0eaf037..d00e648 100644 --- a/bot/plugins/commands.py +++ b/bot/plugins/commands.py @@ -1,45 +1,28 @@ -from pyrogram import filters -from pyrogram.types import Message, InlineKeyboardMarkup, InlineKeyboardButton -from aiofiles import open as async_open -from aiofiles.os import remove as async_rm -from bot import TelegramBot, logger +from telethon import Button +from telethon.events import NewMessage +from telethon.tl.custom.message import Message +from bot import TelegramBot from bot.config import Telegram from bot.modules.static import * -from .deeplinks import deeplinks from bot.modules.decorators import verify_user -@TelegramBot.on_message(filters.command('start') & filters.private) -@verify_user -async def start(_, msg: Message): - if len(msg.command) != 1: - return await deeplinks(msg, msg.command[1]) - - await msg.reply( - text=WelcomeText % {'first_name': msg.from_user.first_name}, - quote=True, - reply_markup=InlineKeyboardMarkup( +@TelegramBot.on(NewMessage(incoming=True, pattern=r'^/start$')) +@verify_user(private=True) +async def welcome(event: NewMessage.Event | Message): + await event.reply( + message=WelcomeText % {'first_name': event.sender.first_name}, + buttons=[ [ - [ - InlineKeyboardButton('Add to Channel', url=f'https://t.me/{Telegram.BOT_USERNAME}?startchannel&admin=post_messages+edit_messages+delete_messages') - ] + Button.url('Add to Channel', f'https://t.me/{Telegram.BOT_USERNAME}?startchannel&admin=post_messages+edit_messages+delete_messages') ] - ) + ] ) -@TelegramBot.on_message(filters.command('info') & filters.private) -@verify_user -async def user_info(_, msg: Message): - await msg.reply(text=f'`{msg.from_user}`', quote=True) +@TelegramBot.on(NewMessage(incoming=True, pattern=r'^/info$')) +@verify_user(private=True) +async def user_info(event: Message): + await event.reply(UserInfoText.format(sender=event.sender)) - filename = f'{msg.from_user.id}.json' - async with async_open(filename, "w") as file: - await file.write(f'{msg.from_user}') - - await msg.reply_document(filename) - await async_rm(filename) - -@TelegramBot.on_message(filters.private & filters.command('log') & filters.user(Telegram.OWNER_ID)) -async def send_log(_, msg: Message): - await msg.reply_document('event-log.txt', quote=True) - -logger.info('Bot is now started!') \ No newline at end of file +@TelegramBot.on(NewMessage(chats=Telegram.OWNER_ID, incoming=True, pattern=r'^/log$')) +async def send_log(event: NewMessage.Event | Message): + await event.reply(file='event-log.txt')