diff --git a/BotCode/keyboards/inline_kb/randnum_kb.py b/BotCode/keyboards/inline_kb/randnum_kb.py new file mode 100644 index 0000000..fc21754 --- /dev/null +++ b/BotCode/keyboards/inline_kb/randnum_kb.py @@ -0,0 +1,27 @@ +# BotCode/keyboards/start_kb.py +# Создания клавиатуры на команду: /start + +from aiogram import Router +from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton +from aiogram.utils.keyboard import InlineKeyboardBuilder + +# Создание роутера и настройка экспорта +__all__ = ("router", "get_randnum_kb", "kb_text", "ButtonInl",) +kb_text = "RandNumKb" +router = Router(name="actor_kb_router") + + +# Класс с параметрами кнопок +class ButtonInl: + mark_cbd = "mark_cbd" + + +# Функция создания клавиатуры на команду: /actor +def get_randnum_kb(text_msg="Получить ответ") -> InlineKeyboardMarkup: + # Создаем билдер клавиатуры + builder = InlineKeyboardBuilder() + + # Добавляем кнопки, группируя их по строкам + builder.button(text=text_msg, callback_data=ButtonInl.mark_cbd) + + return builder.as_markup() diff --git a/BotCode/routers/callback_handlers/actor_kb_cb.py b/BotCode/routers/callback_handlers/actor_kb_cb.py new file mode 100644 index 0000000..6011d7a --- /dev/null +++ b/BotCode/routers/callback_handlers/actor_kb_cb.py @@ -0,0 +1,30 @@ +from random import randint + +from aiogram import Router, F +from aiogram.types import CallbackQuery +from keyboards.inline_kb.actor_kb import ButtonInl + +router = Router(name="actor_kb_cb_router") + +@router.callback_query(F.data == ButtonInl.random_site_cbd) +async def random_site_cb(callback_query: CallbackQuery): + bot_me = await callback_query.bot.me() + await callback_query.answer( + url=f"t.me/{bot_me.username}?start={randint(1, 500)}" + ) + + +@router.callback_query(F.data == ButtonInl.random_num_dice_cbd) +async def random_num_dice_cb(callback_query: CallbackQuery): + await callback_query.answer( + text = f"Твое рандомное число: {randint(1, 21)}", + cache_time=1, + ) + + +@router.callback_query(F.data == ButtonInl.random_num_modal_cdb) +async def random_num_dice_modal_cb(callback_query: CallbackQuery): + await callback_query.answer( + text = f"Членов в жопе у Степана: {randint(1, 2200)}", + show_alert=True, + ) \ No newline at end of file