via ws
Streams LipsyncFrame tokens (grapheme offset + viseme) into the session so gesture rhythm and mouth blendshapes are driven by the spoken token timeline.
via ANIM_URL
Live VRM pose-frame stream (v2 only; v1 falls back to Mixamo idle loops)
via GATEWAY_URL_VOICE
Proxy /voice/* HTTP and /ws/voice WebSocket requests to the voice backend
via NEXT_PUBLIC_VOICE_SFU_URL
WebRTC recv-only Voice SFU — streams the agent's TTS audio into the OBS Browser Source page via VoiceClient from @openalicelabs/voice-client. BGM BgmPlayer ducks volume on oa-voice-chunk events.
via INTERNAL_SECRET
anim service calls POST /v1/lease + DELETE /v1/lease/{id} to provision and release anim workers.
via VOICE_SFU_URL
Bundled SFU; social-api delegates audio/video sessions to it
via VOICE_WS_URL (wss://voice.blal.pro/ws)
P2P-mesh WebRTC signalling — join/leave rooms, relay ICE/SDP between peers.
via VOICE_SFU_WS_URL
Join SFU voice rooms as a participant; receive Opus audio frames and send TTS audio back
via NEXT_PUBLIC_VOICE_URL
WebRTC SFU for spatial voice chat in 3D world rooms via @openalicelabs/voice-client