async def add_handlers(dispatcher: Dispatcher): ## Plugins de personalidades ## Carregados primeiro para sobrescrever todos outros (comportamento aiogram) await plugin_personalidades.add_handlers(dispatcher) ## Plugins especiais if dispatcher.bot.info.get('personalidade') in [ 'default', 'metarec', 'pave', 'cryptoforex' ]: await plugin_donate.add_handlers(dispatcher) await plugin_archive.add_handlers(dispatcher) await plugin_ytdl.add_handlers(dispatcher) ## Plugins mais que especiais if dispatcher.bot.info.get('personalidade') in ['default', 'metarec']: try: await plugin_tropixel.add_handlers(dispatcher) except KeyError: logging.warning(u"plugin tropixel não configurado") if dispatcher.bot.info.get('personalidade') in ['cryptoforex']: try: await plugin_cryptoforex.add_handlers(dispatcher) except KeyError: logging.warning(u"plugin cryptoforex não configurado") ## Plugins gerais await plugin_hashes.add_handlers(dispatcher) await plugin_matematica.add_handlers(dispatcher) await plugin_qr.add_handlers(dispatcher) await plugin_feedback.add_handlers(dispatcher) await plugin_admin.add_handlers(dispatcher) try: await plugin_welcome.add_handlers(dispatcher) except KeyError: logging.warning(u"plugin welcome não configurado") await plugin_default.add_handlers(dispatcher) ## Todas updates que não forem tratadas por handlers anteriores dispatcher.register_message_handler( any_message_callback, content_types=types.message.ContentType.ANY, ) dispatcher.register_edited_message_handler(any_edited_message_callback) dispatcher.register_channel_post_handler(any_channel_post_callback) dispatcher.register_edited_channel_post_handler( any_edited_channel_post_callback, ) dispatcher.register_errors_handler(any_error_callback)
def add_handlers(dispatcher: Dispatcher): dispatcher.register_message_handler( start_callback, commands=['start', 'help'], ) dispatcher.register_message_handler( lista_callback, commands=['lista', 'ajuda'], ) dispatcher.register_message_handler(cats, regexp='(^cat[s]?$|puss)') ## Todas updates que não forem tratadas por handlers anteriores dispatcher.register_message_handler( any_message_callback, content_types=types.message.ContentType.ANY, ) dispatcher.register_edited_message_handler(any_edited_message_callback) dispatcher.register_channel_post_handler(any_channel_post_callback) dispatcher.register_edited_channel_post_handler( any_edited_channel_post_callback) dispatcher.register_edited_channel_post_handler( any_edited_channel_post_callback) dispatcher.register_errors_handler(any_error_callback)
def register_default_handlers(dp: Dispatcher): dp.register_message_handler(cmd_help, commands=['help']) dp.register_message_handler(default_handler) dp.register_channel_post_handler(channel_handler)