BOT_open_sesam/handlers/start_handler.py

37 lines
1.3 KiB
Python

from aiogram import Dispatcher, F
from aiogram.types import Message
from aiogram.filters import CommandStart
from keyboard import get_contact_keyboard, get_locks_keyboard
from auth import is_user_auth, AUTHORIZED_USERS
from config import config
def register_start_handler(dp: Dispatcher):
@dp.message(CommandStart())
async def command_start_handler(msg: Message):
user_id = msg.from_user.id
if is_user_auth(user_id):
phone = AUTHORIZED_USERS.get(user_id)
if not phone:
await msg.answer("Номер не найден")
return
user_conf = config.get("user", {}).get(phone)
if not user_conf:
await msg.answer("Пользователь не найден в конфигурации")
return
allowed_locks = user_conf.get("locks_id", [])
reply_markup = get_locks_keyboard(allowed_locks)
await msg.answer(
"Авторизация прошла успешно",
reply_markup=reply_markup,
)
else:
reply_markup = get_contact_keyboard()
await msg.answer(
"Для пользования ботом, предоставьте номер телефона",
reply_markup=reply_markup,
)