def start(self): self.bot.add_handler(MessageHandler(self.handle_start, Filters.command('start') & Filters.private)) self.bot.add_handler(MessageHandler(self.handle_create, Filters.command('create',) & Filters.private)) self.bot.add_handler(MessageHandler(self.handle_cancel, Filters.command('cancel') & Filters.private)) self.bot.add_handler(MessageHandler(self.handle_list, Filters.command('list') & Filters.private)) self.bot.add_handler(MessageHandler(self.handle_close, Filters.command('close') & Filters.private)) self.bot.add_handler(MessageHandler(self.handle_reply, Filters.reply & Filters.text & Filters.private)) self.bot.add_handler(MessageHandler(self.handle_msg, Filters.text & Filters.private)) self.bot.add_handler(MessageHandler(self.call_superuser_function, Filters.chat(self.help_group) & Filters.reply & Filters.command('m'))) self.bot.add_handler(MessageHandler(self.handle_group, Filters.reply & Filters.chat(self.help_group))) self.bot.add_handler(MessageHandler(self.handle_manual_add_blacklist, Filters.command('a') & Filters.chat(self.help_group))) self.bot.add_handler(MessageHandler(self.handle_other, Filters.private)) self.bot.add_handler(CallbackQueryHandler(self.answer)) return self.bot.start()
def start(self): self.app.add_handler( MessageHandler( self.handle_edit, Filters.chat(self.target_group) & ~Filters.user(self.bot_id) & Filters.edited)) self.app.add_handler( MessageHandler( self.handle_new_member, Filters.chat(self.target_group) & Filters.new_chat_members)) self.app.add_handler( MessageHandler( self.handle_document, Filters.chat(self.target_group) & ~Filters.user(self.bot_id) & Filters.document)) self.app.add_handler( MessageHandler( self.handle_photo, Filters.chat(self.target_group) & ~Filters.user(self.bot_id) & Filters.photo)) self.app.add_handler( MessageHandler( self.handle_sticker, Filters.chat(self.target_group) & ~Filters.user(self.bot_id) & Filters.sticker)) self.app.add_handler( MessageHandler( self.handle_gif, Filters.chat(self.target_group) & ~Filters.user(self.bot_id) & Filters.animation)) self.app.add_handler( MessageHandler( self.handle_video, Filters.chat(self.target_group) & ~Filters.user(self.bot_id) & Filters.video)) self.app.add_handler( MessageHandler( self.handle_speak, Filters.chat(self.target_group) & ~Filters.user(self.bot_id) & Filters.text)) self.app.add_handler( MessageHandler(self.handle_incoming, Filters.incoming & Filters.chat(self.fudu_group))) self.botapp.add_handler(CallbackQueryHandler(self.handle_callback)) self.join_group_verify.init() self.app.start() self.botapp.start() self.init() self.custom_service.start()
help_text_handler = MessageHandler( help_message_f, filters=Filters.command(["help@Threetorrentbot"]) & Filters.chat(chats=AUTH_CHANNEL)) app.add_handler(help_text_handler) # new_join_handler = MessageHandler( new_join_f, filters=~Filters.chat(chats=AUTH_CHANNEL)) app.add_handler(new_join_handler) # group_new_join_handler = MessageHandler( help_message_f, filters=Filters.chat(chats=AUTH_CHANNEL) & Filters.new_chat_members) app.add_handler(group_new_join_handler) # call_back_button_handler = CallbackQueryHandler(button) app.add_handler(call_back_button_handler) # save_thumb_nail_handler = MessageHandler( save_thumb_nail, filters=Filters.command(["savethumbnail@Threetorrentbot"]) & Filters.chat(chats=AUTH_CHANNEL)) app.add_handler(save_thumb_nail_handler) # clear_thumb_nail_handler = MessageHandler( clear_thumb_nail, filters=Filters.command(["clearthumbnail@Threetorrentbot"]) & Filters.chat(chats=AUTH_CHANNEL)) app.add_handler(clear_thumb_nail_handler) # app.run()
# register /leech handler app.add_handler( MessageHandler(leech_handler.func, filters=Filters.command("leech"))) # register /cancel handler app.add_handler( MessageHandler(cancel_leech_handler.func, filters=Filters.command("cancel"))) # register /list handler app.add_handler( MessageHandler(leech_list_handler.func, filters=Filters.command(COMMAND.LEECH_LIST))) # cancel button handler app.add_handler( CallbackQueryHandler( cancel_leech_handler.func, filters=lambda query: query.data.startswith(COMMAND.CANCEL_LEECH))) # forward any message to leech handler @app.on_message(filters=Filters.private) async def default_message_handler(client: Client, message: Message): message.text = "/" + "leech@Leech2vid_bot" + " " + message.text return await leech_handler.func(client, message) if __name__ == '__main__': app.run()
def delete_callback(bot, callbackquery): data = callbackquery.data user = bot.get_chat_member(chat_id=callbackquery.message.chat.id, user_id=callbackquery.from_user.id) if int(data.split(':')[1]) == callbackquery.from_user.id or\ user.status == 'administrator' or\ user.status == 'creator': try: bot.delete_messages(chat_id=callbackquery.message.chat.id, message_ids=callbackquery.message.message_id) except Exception as e: print(e) pass else: bot.answer_callback_query(callback_query_id=callbackquery.id, text=delete_message_fail_phrase) delete_handler = CallbackQueryHandler(filters=Filters.callback_data, callback=delete_callback) def delete_message(bot, message): try: bot.delete_messages(chat_id=message.chat.id, message_ids=message.message_id) except Exception as e: print(e) pass
from pyrogram import Client, CallbackQueryHandler, Filters from pyromod import listen # noqa from plugins.start_handler import start_handler app = Client( 'rateChannels', api_id=1, api_hash="b6b154c3707471f5339bd661645ed3d6", bot_token="", plugins={'root': 'plugins'} ) app.add_handler(CallbackQueryHandler(start_handler, Filters.callback_data('home'))) app.run()
import logging from pyrogram import Client, CallbackQueryHandler from pyrogram.session import Session import importlib if __name__ == "__main__": MODULE_NAME = "BotBase" # Change this to match the FOLDER name that contains the config.py file conf = importlib.import_module(f"{MODULE_NAME}.config") antiflood = importlib.import_module(f"{MODULE_NAME}.modules.antiflood") dbmodule = importlib.import_module(f"{MODULE_NAME}.database.query") logging.basicConfig(format=conf.LOGGING_FORMAT, datefmt=conf.DATE_FORMAT, level=conf.LOGGING_LEVEL) bot = Client(api_id=conf.API_ID, api_hash=conf.API_HASH, bot_token=conf.BOT_TOKEN, plugins=conf.PLUGINS_ROOT, session_name=conf.SESSION_NAME, workers=conf.WORKERS_NUM) bot.add_handler(CallbackQueryHandler(antiflood.anti_flood, ~antiflood.BYPASS_USERS), group=-1) Session.notice_displayed = True try: logging.warning("Running create_database()") dbmodule.create_database(conf.DB_PATH, conf.DB_CREATE) logging.warning("Database interaction complete") logging.warning("Starting bot") bot.start() logging.warning("Bot started") except Exception as e: logging.warning(f"Stopping bot due to a {type(e).__name__}: {e}") bot.stop()
def init_handle(self): self.botapp.add_handler( MessageHandler(self.handle_status, self._basic_filter)) self.botapp.add_handler( CallbackQueryHandler(self.handle_callback_query))