feat: 增强日历功能并集成 AgentScope 代理服务

This commit is contained in:
qzl
2026-03-11 17:16:11 +08:00
parent e20e7d2a02
commit 85b314cf64
53 changed files with 3642 additions and 297 deletions
+19
View File
@@ -18,6 +18,17 @@ from core.logging import get_logger
logger = get_logger(__name__)
def _extract_user_token_from_run_input(run_input: RunAgentInput) -> str | None:
forwarded = run_input.forwarded_props
if not isinstance(forwarded, dict):
return None
for key in ("accessToken", "userToken", "token"):
value = forwarded.get(key)
if isinstance(value, str) and value.strip():
return value.strip()
return None
@dataclass(frozen=True)
class TaskAccepted:
task_id: str
@@ -65,6 +76,10 @@ def ensure_session_owner(*, owner_id: str, current_user: CurrentUser) -> None:
class AgentService:
_repository: AgentRepositoryLike
_queue: QueueClientLike
_stream: EventStreamLike
def __init__(
self,
*,
@@ -107,6 +122,8 @@ class AgentService:
task_id = await self._queue.enqueue(
command={
"command": "run",
"owner_id": str(current_user.id),
"user_token": _extract_user_token_from_run_input(run_input),
"run_input": run_input.model_dump(mode="json", by_alias=True),
},
dedup_key=None,
@@ -132,6 +149,8 @@ class AgentService:
task_id = await self._queue.enqueue(
command={
"command": "resume",
"owner_id": str(current_user.id),
"user_token": _extract_user_token_from_run_input(run_input),
"run_input": run_input.model_dump(mode="json", by_alias=True),
},
dedup_key=dedup_key,