Add voice analytics filters and metrics

This commit is contained in:
2026-04-26 22:00:34 +08:00
parent 3805c18622
commit 55ca0985eb
25 changed files with 710 additions and 39 deletions

View File

@@ -116,11 +116,21 @@ async def get_latest_active_voice_session(
@router.get("/voice-sessions/analytics", response_model=VoiceSessionAnalyticsResponse)
async def get_voice_session_analytics(
days: int | None = Query(default=30, ge=1, le=365),
provider: str | None = Query(default=None, min_length=1, max_length=64),
session_status: (
Literal["draft", "active", "waiting_user", "completed", "abandoned"] | None
) = Query(default=None),
user: User = Depends(require_user),
db: AsyncSession = Depends(get_db),
):
"""Get aggregate voice co-creation analytics for the current user."""
return await get_voice_session_analytics_service(user.id, db, days=days)
return await get_voice_session_analytics_service(
user.id,
db,
days=days,
provider=provider,
session_status=session_status,
)
@router.get("/voice-sessions/{session_id}", response_model=VoiceSessionDetailResponse)