from aiogram import Router from aiogram.filters import Command, CommandObject, CommandStart from aiogram.types import Message from app.bot.keyboards.inline import create_lottery_keyboard, lottery_detail_keyboard, main_menu_keyboard router = Router() @router.message(CommandStart()) async def cmd_start(message: Message, command: CommandObject) -> None: # Deep-link from group announcement: /start lottery_ if command.args and command.args.startswith("lottery_"): lottery_id = command.args[len("lottery_"):] await message.answer( "🎰 Tap the button below to join the lottery:", reply_markup=lottery_detail_keyboard(lottery_id), ) return await message.answer( "👋 Welcome to TG Lottery Bot!\n\n" "Tap the button below to get started. Use /help for more information.", reply_markup=main_menu_keyboard(), parse_mode="HTML", ) @router.message(Command("newlottery")) async def cmd_new_lottery(message: Message) -> None: await message.answer("Create a new lottery 👇", reply_markup=create_lottery_keyboard()) @router.message(Command("mylotteries")) async def cmd_my_lotteries(message: Message) -> None: await message.answer("View my lotteries 👇", reply_markup=main_menu_keyboard()) @router.message(Command("help")) async def cmd_help(message: Message) -> None: await message.answer( "📖 TG Lottery Bot\n\n" "Commands\n" "/start - Open lottery manager\n" "/newlottery - Create a new lottery\n" "/mylotteries - View my lotteries\n" "/help - Show this help message\n\n" "📦 Powered by git.stdm.moe/Stardream/TGLotteryBot", parse_mode="HTML", )