双向对讲
更新时间:2026-10-29 10:05:40
语音通话
双向对讲只在直播时可用。
双向对讲接口与【通用版-双向对讲】相同,区别在于构建 IPlayInfo 通话对象时,需要设置 deviceType = 1,即专属版设备。
// 导入音视频通话头文件
import { RTCXAudiaVideoService, RTCXAudiaVideoTalk, RTCXMediaType, RTCXLogger } from 'rtcxsdk'
通话对象
const playInfo: RTCXMediaType.IPlayInfo = {
iotId: this.deviceInfo?.iotId,
productKey: this.deviceInfo?.productKey,
deviceName: this.deviceInfo?.deviceName,
lensId: 0,
streamType: 0,
deviceType: 1 // 1:专属版设备
}
调用示例
// 1. 添加监听
audiaListener: RTCXAudiaVideoService.IAudioVideoTalkListener = {
onFailToAudioVideoTalk: (error: BusinessError<void> | undefined) => {
RTCXLogger.i(this.TAG, `对讲发生错误:${error?.code}, ${error?.message}`)
}
}
// 2. 初始化通话引擎
const playInfo: RTCXMediaType.IPlayInfo = {
iotId: this.deviceInfo?.iotId!!,
productKey: this.deviceInfo?.productKey!!,
deviceName: this.deviceInfo?.deviceName!!,
lensId: 0,
streamType: 0,
deviceType: 1 // 1:专属版设备
}
this.audioTalkEngin = new RTCXAudiaVideoTalk.AudioVideoTalk(
playInfo,
RTCXAudiaVideoService.EAudioVideoTalkType.Audio,
this.audiaListener
)
// 3. 开始音频通话
this.audioTalkEngin.startTalk()
// 4. 结束音频通话
this.audioTalkEngin.endTalk()
备注:当 onFailToAudioVideoTalk 回调 error.code = -10023 时,代表当前语音对讲通道被其他端占用,应结束对讲。