T
@dp.message_handler(..)
def h():...
Против
def h():...
def register(dp):
dp.add_message_handler(h, ...)
...
register(dp)
Size: a a a
T
@dp.message_handler(..)
def h():...
T
B
@dp.message_handler(..)
def h():...
B
T
B
B
T
T
T
B
T
T
T
ЕП
# Список хэндлеров с указанием корутин, которыми они реализуются,
# а также описаний команд
handlers = {
"help": {
"coro": cmd_help,
"description": "Справка"
},
"add_group": {
"coro": cmd_add_group,
"description": "Добавить группу"
},
"del_group": {
"coro": cmd_del_group,
"description": "Удалить группу"
},
"groups": {
"coro": cmd_show_groups,
"description": "Просмотр сохранённых групп"
}
}
# Устанавливаем команды в интерфейсе бота Telegram
commands = []
for key in handlers:
# chat_id -- бот будет реагировать на команды только в указанной супергруппе
dp.register_message_handler(handlers[key]["coro"], commands=key, chat_id=config.notifications_group)
commands.append(types.BotCommand(command=key, description=handlers[key]["description"]))
# Сохраняем команды в интерфейсе бота Telegram
await bot.set_my_commands(commands)
ЕП
cmd_help
— обычные async def cmd_help()
корутиныF
# Список хэндлеров с указанием корутин, которыми они реализуются,
# а также описаний команд
handlers = {
"help": {
"coro": cmd_help,
"description": "Справка"
},
"add_group": {
"coro": cmd_add_group,
"description": "Добавить группу"
},
"del_group": {
"coro": cmd_del_group,
"description": "Удалить группу"
},
"groups": {
"coro": cmd_show_groups,
"description": "Просмотр сохранённых групп"
}
}
# Устанавливаем команды в интерфейсе бота Telegram
commands = []
for key in handlers:
# chat_id -- бот будет реагировать на команды только в указанной супергруппе
dp.register_message_handler(handlers[key]["coro"], commands=key, chat_id=config.notifications_group)
commands.append(types.BotCommand(command=key, description=handlers[key]["description"]))
# Сохраняем команды в интерфейсе бота Telegram
await bot.set_my_commands(commands)
ЕП
ЕП
F