87d7ab16c2025b7a2f24ce8ea3534ca955ff555c
Web client: - After call goes "active", connects to WZP web bridge WS - Mic capture: getUserMedia → ScriptProcessor → PCM int16 frames → WS - Playback: WS → PCM int16 → Float32 → AudioContext.createBufferSource - Room name derived from peer fingerprint (deterministic) - Relay address fetched from /v1/wzp/relay-config - Audio auto-starts on accept/answer, auto-stops on hangup/reject - startAudio()/stopAudio() manage full lifecycle TUI: - /call shows "Audio: use web client for voice (TUI audio coming soon)" - Signaling works, audio requires web client for now This completes the last critical task — voice calls work end-to-end: User A calls → signaling via featherChat WS → User B accepts → both connect to WZP relay → audio flows Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Description
No description provided
Languages
Rust
84%
Python
11.7%
Shell
4.3%