Overview
Port: 4003 The Realtime Audio Service handles voice cloning (ElevenLabs), speech-to-text (Whisper), LiveKit room management, and the voice conversation pipeline.Endpoints
Voice Conversations
Voice Management
Service Info
Config DB Fallback
API keys are loaded from theplatform_config table at startup (encrypted, decrypted with JWT_SECRET). Falls back to process.env if DB value not set.
Keys loaded from config:
ELEVENLABS_API_KEYLIVEKIT_API_KEYLIVEKIT_API_SECRETLIVEKIT_URLOPENAI_API_KEY
External Integrations
Voice Conversation Pipeline
Billing Hooks
The service records provider costs throughrecord_external_cost_event() using RealtimeAudioBillingRepository:
Billing writes are currently best-effort for realtime-audio paths. Errors are logged and request flow continues.
Known Issues
sendMessageToBot()calls wrong bot endpoint — should bePOST /bots/:id/chat/turnreturns mock S3 URL instead of inline base64 audio- Turn number hardcoded to 1
- LiveKit
RoomServiceClientneeds HTTPS URL (not WSS) — handled with auto-conversion

