Developer Guide · 10

Realtime Voice (S2S WebSocket)

10.1 Module

app/voice/router.py provides WebSocket endpoint /api/voice/ws as a proxy for OpenAI Realtime API.

10.2 Workflow

text
Browser ──WebSocket──→ FastAPI ──WebSocket──→ wss://api.openai.com/v1/realtime

                       └── injects tool config on session.update
                       └── transparent tool calls + backend tool execution
  • Tool injection: session.update event includes Admin's configured toolset
  • Authentication: JWT in query parameter
  • API Key: override via S2S_API_KEY / S2S_BASE_URL (falls back to OPENAI_API_KEY)