Make category optional in start voice onboarding API with automatic triage
This commit is contained in:
@@ -16,6 +16,7 @@ from app.database.models import (
|
|||||||
OnboardingState,
|
OnboardingState,
|
||||||
)
|
)
|
||||||
from app.schemas.onboarding import (
|
from app.schemas.onboarding import (
|
||||||
|
CategoryContext,
|
||||||
CompleteOnboardingRequest,
|
CompleteOnboardingRequest,
|
||||||
CompleteOnboardingResponse,
|
CompleteOnboardingResponse,
|
||||||
)
|
)
|
||||||
@@ -52,15 +53,22 @@ async def start_voice_onboarding(
|
|||||||
|
|
||||||
session_id = f"VOICE-{uuid4().hex[:8].upper()}"
|
session_id = f"VOICE-{uuid4().hex[:8].upper()}"
|
||||||
|
|
||||||
|
# Default category to General Medicine / Auto-Triage if omitted by client
|
||||||
|
category = request.category or CategoryContext(
|
||||||
|
type="general",
|
||||||
|
code="general_medicine",
|
||||||
|
name="General Medicine / Primary Care (Auto-Triage)",
|
||||||
|
)
|
||||||
|
|
||||||
session = OnboardingSession(
|
session = OnboardingSession(
|
||||||
session_id=session_id,
|
session_id=session_id,
|
||||||
patient_id=request.patient.id,
|
patient_id=request.patient.id,
|
||||||
patient_name=request.patient.name,
|
patient_name=request.patient.name,
|
||||||
age=request.patient.age,
|
age=request.patient.age,
|
||||||
gender=request.patient.gender,
|
gender=request.patient.gender,
|
||||||
category_type=request.category.type,
|
category_type=category.type,
|
||||||
category_code=request.category.code,
|
category_code=category.code,
|
||||||
category_name=request.category.name,
|
category_name=category.name,
|
||||||
language=request.language,
|
language=request.language,
|
||||||
status="in_progress",
|
status="in_progress",
|
||||||
stage="greeting",
|
stage="greeting",
|
||||||
@@ -99,7 +107,7 @@ async def start_voice_onboarding(
|
|||||||
success=True,
|
success=True,
|
||||||
session_id=session.session_id,
|
session_id=session.session_id,
|
||||||
patient_id=session.patient_id,
|
patient_id=session.patient_id,
|
||||||
category=request.category,
|
category=category,
|
||||||
language=session.language,
|
language=session.language,
|
||||||
status=session.status,
|
status=session.status,
|
||||||
stage=session.stage,
|
stage=session.stage,
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ from app.schemas.onboarding import CategoryContext, PatientContext
|
|||||||
|
|
||||||
class StartVoiceOnboardingRequest(BaseModel):
|
class StartVoiceOnboardingRequest(BaseModel):
|
||||||
patient: PatientContext
|
patient: PatientContext
|
||||||
category: CategoryContext
|
category: Optional[CategoryContext] = None
|
||||||
language: str = "en-IN"
|
language: str = "en-IN"
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user