Files
agent/src/app/modules/agent_api/controllers/session_controller.py
T
2026-03-27 15:51:10 +03:00

40 lines
1.4 KiB
Python

from __future__ import annotations
from app.schemas.agent_api import (
BindRagSessionRequest,
BindRagSessionResponse,
CreateAgentSessionResponse,
ResetAgentSessionResponse,
)
from app.modules.agent_api.application.session_service import SessionService
class SessionController:
def __init__(self, service: SessionService) -> None:
self._service = service
def create_session(self) -> CreateAgentSessionResponse:
session = self._service.create()
return CreateAgentSessionResponse(
session_id=session.session_id,
active_rag_session_id=session.active_rag_session_id,
created_at=session.created_at,
)
def bind_rag_session(self, session_id: str, request: BindRagSessionRequest) -> BindRagSessionResponse:
session = self._service.bind_rag_session(session_id, request.rag_session_id)
return BindRagSessionResponse(
session_id=session.session_id,
active_rag_session_id=session.active_rag_session_id,
updated_at=session.updated_at,
)
def reset_session(self, session_id: str) -> ResetAgentSessionResponse:
session = self._service.reset(session_id)
return ResetAgentSessionResponse(
session_id=session.session_id,
active_rag_session_id=session.active_rag_session_id,
status="reset",
updated_at=session.updated_at,
)