diff --git a/bwtbot.py b/bwtbot.py index 4900664..f05feae 100644 --- a/bwtbot.py +++ b/bwtbot.py @@ -2,8 +2,7 @@ import logging from os import getpid from convopyro import Conversation - -from modules.app import PyroClient +from libbot.pyrogram.classes import PyroClient logging.basicConfig( level=logging.INFO, diff --git a/modules/app.py b/modules/app.py deleted file mode 100644 index b9ac8da..0000000 --- a/modules/app.py +++ /dev/null @@ -1,104 +0,0 @@ -import logging -from os import getpid -from time import time - -import pyrogram -from libbot import config_get -from pyrogram.client import Client -from pyrogram.errors import BadRequest -from pyrogram.raw.all import layer -from pyrogram.types import BotCommand, BotCommandScopeChat -from ujson import loads - -logger = logging.getLogger(__name__) - - -class PyroClient(Client): - def __init__(self): - with open("config.json", "r", encoding="utf-8") as f: - config = loads(f.read()) - super().__init__( - name="bwtbot", - api_id=config["bot"]["api_id"], - api_hash=config["bot"]["api_hash"], - bot_token=config["bot"]["bot_token"], - workers=config["bot"]["workers"], - plugins=dict(root="plugins", exclude=config["disabled_plugins"]), - sleep_threshold=120, - ) - - async def start(self): - await super().start() - - self.start_time = time() - - logger.info( - "Bot is running with Pyrogram v%s (Layer %s) and has started as @%s on PID %s.", - pyrogram.__version__, - layer, - self.me.username, - getpid(), - ) - - try: - await self.send_message( - chat_id=await config_get("chat_id", "reports"), - text=f"Bot started PID `{getpid()}`", - ) - except BadRequest: - logger.warning("Unable to send message to report chat.") - - await self.set_bot_commands( - [ - BotCommand("help", "Меню допомоги"), - BotCommand("balance", "Баланс картки"), - BotCommand("topup", "Поповнити картку"), - BotCommand("setcard", "Прив'язати картку"), - BotCommand("resetcard", "Відв'язати картку"), - ], - language_code="uk", - ) - - await self.set_bot_commands( - [ - BotCommand("help", "Меню допомоги"), - BotCommand("balance", "Баланс картки"), - BotCommand("topup", "Поповнити картку"), - BotCommand("setcard", "Прив'язати картку"), - BotCommand("resetcard", "Відв'язати картку"), - ], - language_code="ru", - ) - - await self.set_bot_commands( - [ - BotCommand("help", "Help menu"), - BotCommand("balance", "Card's balance"), - BotCommand("topup", "Refill card"), - BotCommand("setcard", "Link card"), - BotCommand("resetcard", "Unlink card"), - ] - ) - - await self.set_bot_commands( - [ - BotCommand("help", "Help menu"), - BotCommand("balance", "Card's balance"), - BotCommand("topup", "Refill card"), - BotCommand("setcard", "Link card"), - BotCommand("resetcard", "Unlink card"), - BotCommand("shutdown", "Turn off the bot"), - ], - scope=BotCommandScopeChat(chat_id=await config_get("owner_id")), - ) - - async def stop(self): - try: - await self.send_message( - chat_id=await config_get("chat_id", "reports"), - text=f"Bot stopped with PID `{getpid()}`", - ) - except BadRequest: - logger.warning("Unable to send message to report chat.") - await super().stop() - logger.warning(f"Bot stopped with PID {getpid()}.")