Files
Home_assistant/telegram-bot/bot/handlers/commands.py
T
2026-06-13 20:20:56 +00:00

34 lines
1.3 KiB
Python

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
from bot.ha_client import HaClient
from bot.storage import Storage
router = Router()
@router.message(Command("newchat"))
async def cmd_newchat(message: Message, settings: Settings, storage: Storage) -> None:
if not is_allowed(message, settings):
await message.answer(access_denied_text())
return
if not message.from_user:
return
linked = await storage.get_user(message.from_user.id)
if not linked:
await message.answer("Сначала привяжи API-токен (/start).")
return
client = HaClient(settings.ha_api_base_url, linked.api_token)
try:
session = await client.create_session("Telegram")
session_id = int(session["id"])
await storage.set_session_id(message.from_user.id, session_id)
await message.answer(f"Новая сессия создана: #{session_id}. История с прошлой сессии здесь не продолжается.")
except Exception as exc:
await message.answer(f"Не удалось создать сессию: {exc}")