SuperAPI AI 工具集

telnyx-webrtc-client-react-native

前端与建站

查看项目

更新于 10-16 08:41

技能介绍

用途:在 React Native(Android 与 iOS)应用中集成实时语音通话,使用 @telnyx/react-voice-commons-sdk 库。前置条件:需先用 Telnyx 服务端 SDK 创建 WebRTC 凭据并生成登录令牌,可参考对应服务端语言插件中的 telnyx-webrtc-* 技能。

主要能力:基于 RxJS 的响应式状态管理;自动处理前后台生命周期;原生通话界面 CallKit(iOS)与 ConnectionService(Android);推送通知 FCM(Android)与 APNs/PushKit(iOS);完整 TypeScript 类型定义。

安装:npm install @telnyx/react-voice-commons-sdk

基本用法:用 createTelnyxVoipClient 创建客户端,并用 TelnyxVoiceApp 包裹应用。认证支持凭据登录(createCredentialConfig)与 JWT 令牌登录(createTokenConfig),也可用 loginFromStoredConfig 自动重连。通过 voipClient.connectionState$ 与 voipClient.calls$ 订阅状态,用 newCall 发起呼叫,来电由推送与 TelnyxVoiceApp 自动处理。通话控制包括 answer、mute/unmute、hold/unhold、hangup、dtmf。

推送配置:Android 需放置 google-services.json,MainActivity 继承 TelnyxMainActivity,并设置后台消息处理;iOS 需在 AppDelegate 实现 PKPushRegistryDelegate 并调用 TelnyxVoipPushHandler。CallKit 由内部 CallBridge 自动处理。库会自动管理 AsyncStorage 中的凭据与推送令牌键。

限制与注意:使用 TelnyxVoiceApp 自动重连时不要手动调用 login(),避免重复登录;需在 useEffect 清理中取消订阅 RxJS 可观察对象以防内存泄漏;音频问题在 iOS 由 CallBridge 处理,Android 需检查 ConnectionService。设置认证或推送通知时必须阅读 references/webrtc-server-api.md。具体收费、价格与平台细节资料未提供。