love-bot/bot/handlers/start.py

31 lines
1.5 KiB
Python

from aiogram import Router, types, F
from aiogram.filters import CommandStart
from bot.database.models import User as DbUser
from typing import Optional
import logging
# Импортируем новую клавиатуру
from bot.keyboards.reply_keyboards import get_main_menu_keyboard
router = Router()
@router.message(CommandStart())
async def handle_start(message: types.Message, **kwargs):
"""Обработчик команды /start для аутентифицированных пользователей."""
user_db_obj: Optional[DbUser] = kwargs.get('user_db_obj')
if not user_db_obj:
logging.error(f"Error in handle_start: user_db_obj not found in kwargs for user {message.from_user.id}")
await message.answer("Произошла ошибка при получении ваших данных.")
return
username = user_db_obj.username or f"Пользователь {user_db_obj.telegram_id}"
# Отправляем приветствие и клавиатуру
await message.answer(
f"Привет, {username}! ✨\n\n"
f"Это бот 'Кто больше любит'. Используй кнопки ниже, чтобы играть или смотреть статистику! 😉",
reply_markup=get_main_menu_keyboard()
)
# TODO: Возможно, убрать подробное описание правил из /start,
# так как теперь есть кнопки для основных действий.