import logging from aiogram import F from aiogram.types import CallbackQuery from src import deps from src.controller.telegram_callback import telegram_callback_router from src.usecase.workspace.create_workspace_invite import INVITE_ACCEPT_CALLBACK_PREFIX log = logging.getLogger(__name__) @telegram_callback_router.callback_query(F.data.startswith(f'{INVITE_ACCEPT_CALLBACK_PREFIX}:')) async def callback_workspace_invite_accept(callback: CallbackQuery) -> None: if not callback.from_user or not callback.message or not callback.data: log.error('Incomplete callback data for workspace invite acceptance') return usecase = deps.get_usecase() await usecase.tg_accept_workspace_invite( telegram_id=callback.from_user.id, chat_id=callback.message.chat.id, callback_data=callback.data, message_id=callback.message.message_id, ) await callback.answer()