diff --git a/BotCode/routers/callback_handlers/randnum_kb_cb.py b/BotCode/routers/callback_handlers/randnum_kb_cb.py new file mode 100644 index 0000000..cad88b2 --- /dev/null +++ b/BotCode/routers/callback_handlers/randnum_kb_cb.py @@ -0,0 +1,26 @@ +from random import randint + +from aiogram import Router, F +from aiogram.types import CallbackQuery +from keyboards.inline_kb.randnum_kb import ButtonInl, get_randnum_kb + +router = Router(name="randnum_kb_cb_router") + +@router.callback_query(F.data == ButtonInl.mark_cbd) +async def random_site_cb(callback_query: CallbackQuery): + await callback_query.answer() + + # Новый текст и клавиатура + new_text = f"Какая оценка у тебя будет сегодня: {randint(1, 5)}" + new_reply_markup = get_randnum_kb("Получить ответ от Таро") + + # Текущий текст и клавиатура + current_text = callback_query.message.text + current_reply_markup = callback_query.message.reply_markup + + # Проверяем, отличаются ли текст и клавиатура + if current_text != new_text or current_reply_markup != new_reply_markup: + await callback_query.message.edit_text( + text=new_text, + reply_markup=new_reply_markup, + ) diff --git a/BotCode/routers/commands/user_cmd/randnum_cmd.py b/BotCode/routers/commands/user_cmd/randnum_cmd.py new file mode 100644 index 0000000..ec10b68 --- /dev/null +++ b/BotCode/routers/commands/user_cmd/randnum_cmd.py @@ -0,0 +1,30 @@ +# BotCode/routers/commands/user_cmd/randnum_cmd.py +# Работа с командой /randnum, для рандомного числа с редактированием сообщения + +from aiogram import Router, types, F +from aiogram.filters import Command +from BotLibrary import * +from keyboards.inline_kb.randnum_kb import get_randnum_kb + +# Создание роутера и экспорта модулей +__all__ = ("router", "cmd_randnum", "log_type",) +router = Router(name="randnum_router") +log_type = "Randnum" + +# Список ключевых слов для команды +keywords = ["кфтвтгь", "randnum",] + + +# Хэндлер на команду /randnum +@router.message(Command(*keywords, prefix=BotEdit.prefixs, ignore_case=True)) +@router.message(F.text.lower().in_(keywords)) +async def cmd_randnum(message: types.Message): + text = "Работа с рандомом оценок!" + await message.reply( + text="Вы хотите узнать вашу оценку на сегодня?!", + reply_markup=get_randnum_kb("Хочу: ТЫК"), + ) + + # Активация логгера + await cmd_logginger(message, log_type, text) + return text