Files
GorichBot/bot/handlers/start.py
T
2026-05-12 23:37:04 +03:00

59 lines
1.5 KiB
Python

# Aiogram
import aiogram.types as types
from aiogram.fsm.context import FSMContext
from aiogram.filters import CommandStart, StateFilter
from aiogram import Router, F
# Utils
from utils.text_tools import to_html
# Const
from create_bot import orm
# Keyboards
from keyboards.reply_keyboards import get_client_main_kb
# States
from states.client_states import MainStates
# Another
from datetime import datetime, timezone
# Init
start_router = Router()
@start_router.message(CommandStart(), StateFilter("*"))
async def cmd_start(message: types.Message, state: FSMContext):
if message.chat.type != "private":
return
user_id = message.from_user.id
username = (
"@" + message.from_user.username
if message.from_user.username is not None
else None
)
fullname = to_html(message.from_user.full_name)
await orm.create_user(
user_id=user_id,
username=username,
fullname=fullname,
register_date=datetime.now(timezone.utc),
)
msg_text = (
f"👋 Привет, {fullname}!\n\n"
"Я бот шаурмечной <b>Горыч</b>.\n"
"Подскажу по меню, доставке, режиму работы и помогу подобрать блюдо.\n\n"
"✨ Выберите популярный вопрос ниже или просто напишите свой."
)
await message.answer(text=msg_text, reply_markup=get_client_main_kb())
await state.update_data(rag_history=[])
await state.set_state(MainStates.main)