from aiogram import Router from aiogram.filters import Command from aiogram.types import Message from bot.access import access_denied_text, is_allowed from bot.config import Settings router = Router() HELP_TEXT = """Команды: /start — приветствие и привязка /help — эта справка /whoami — текущий пользователь Home Assistant /logout — отвязать API-токен /newchat — новая сессия чата в Telegram Обычный текст — сообщение домашнему ассистенту. Чтобы привязать аккаунт, отправь API-токен одним сообщением (из Settings → Пользователи на домашнем сервере). После привязки лучше удалить сообщение с токеном.""" @router.message(Command("start")) async def cmd_start(message: Message, settings: Settings) -> None: if not is_allowed(message, settings): await message.answer(access_denied_text()) return await message.answer( "Привет! Я мост к домашнему ассистенту Home Assistant.\n\n" "Отправь API-токен одним сообщением, чтобы привязать аккаунт. " "Токен можно создать в веб-интерфейсе (Settings → Пользователи) " "или через create_user.py на сервере.\n\n" "После привязки все оповещения (напоминания, помидоро и т.д.) " "будут дублироваться сюда.\n\n" "Справка: /help" ) @router.message(Command("help")) async def cmd_help(message: Message, settings: Settings) -> None: if not is_allowed(message, settings): await message.answer(access_denied_text()) return await message.answer(HELP_TEXT)