from fastapi import APIRouter, HTTPException, Query from app.models.schemas import SceneAnalyzeRequest, SceneAnalyzeResponse from app.services.scene_engine import SceneEngine router = APIRouter(prefix="/api/v1/scene", tags=["scene"]) scene_engine = SceneEngine() @router.post("/analyze", response_model=SceneAnalyzeResponse) async def analyze_scene(request: SceneAnalyzeRequest) -> SceneAnalyzeResponse: result = scene_engine.analyze( device_id=request.device_id, timestamp=request.timestamp, context_hints=request.context_hints, ) return SceneAnalyzeResponse( scene=result["scene"], confidence=result["confidence"], greeting_strategy=result["greeting_strategy"], suggested_intent=result["suggested_intent"], )