Третья часть: сделаны обработчики команд
This commit is contained in:
@@ -2,12 +2,14 @@
|
||||
# # Работа с командой /start, для запуска бота
|
||||
|
||||
from .user_cmd_class import CommandHandler
|
||||
from BotCode.keyboards import get_start_kb
|
||||
|
||||
# Создание команды /start с нужными параметрами
|
||||
start_cmd = CommandHandler(
|
||||
name="start",
|
||||
description="Запустить бота",
|
||||
description="Добро пожаловать!",
|
||||
keywords=["start", "старт", "запуск", "пуск", "on", "вкл", "с", "s", "ы",
|
||||
"ыефке", "cnfhn", "pfgecr", "gecr", "щт", "drk", "restart", "куыефке"],
|
||||
text_msg="Старт!",
|
||||
keyboard=get_start_kb,
|
||||
)
|
||||
|
||||
@@ -7,10 +7,11 @@ from BotLibrary import *
|
||||
|
||||
# Класс-шаблон для команд
|
||||
class CommandHandler:
|
||||
def __init__(self, name: str, description: str,
|
||||
keywords: list, text_msg: str,
|
||||
keyboard=None, prefix = BotVar.prefix,
|
||||
ignore_case = True,
|
||||
def __init__(self, name: str, keywords : list,
|
||||
description: str = "Описание команды", text_msg : str = "Сообщение",
|
||||
keyboard = None, prefix = BotVar.prefix,
|
||||
ignore_case : bool = True, activate_keywoards : bool = True,
|
||||
activate_commands : bool = True,
|
||||
):
|
||||
"""
|
||||
Универсальный обработчик команд для бота.
|
||||
@@ -30,10 +31,10 @@ class CommandHandler:
|
||||
self.keyboard = keyboard
|
||||
|
||||
# Привязываем хэндлер к роутеру
|
||||
self.router.message(
|
||||
Command(*keywords, prefix=prefix, ignore_case=ignore_case)
|
||||
)(self.handler)
|
||||
self.router.message(F.text.lower().in_(keywords))(self.handler)
|
||||
if activate_commands:
|
||||
self.router.message(Command(*keywords, prefix=prefix, ignore_case=ignore_case))(self.handler)
|
||||
if activate_keywoards:
|
||||
self.router.message(F.text.lower().in_(keywords))(self.handler)
|
||||
|
||||
|
||||
async def handler(self, message: types.Message):
|
||||
|
||||
Reference in New Issue
Block a user