You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 3643ee8
Browse filesBrowse the repository at this point in the historyBrowse files
feat: voice calls via LiveKit (ChattyVoiceCallView)
Adds a ready-to-render call screen — token fetch from the same
/api/widget/voice/token endpoint the web widget uses, LiveKit Room
connect, mic enable, live transcript (RoomEvent.TranscriptionReceived),
active-speaker-driven status (connecting/listening/agent-speaking),
mute/hangup, and per-design theming via CHATTY_DESIGN_TOKENS — same
states and structure as the web widget's voice-call-widget.tsx.
Opt-in, not wired into ChattyChatView automatically: render it
yourself from the existing onVoiceCallPress callback (see README).
livekit-client/@livekit/react-native/@livekit/react-native-webrtc are
optional peer dependencies — apps that never use voice don't pay for
them. iOS calls setupIOSAudioManagement(true) on mount, needed for the
mic/speaker routing a call requires (plain playback doesn't need it).
Verified: tsc --noEmit clean and `npm run build` succeeds against the
real installed livekit-client 2.22.1 / @livekit/react-native 2.12.0
type definitions, and the existing jest suite (33 tests) still passes.
NOT verified: an actual call on a real device/simulator — written
without any way to run React Native, LiveKit, or a device/simulator in
this environment. Build and test a real call end-to-end (mic
permission grant, actual audio, transcript rendering) before bumping
the package version or publishing.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
0 commit comments