帮你快速理解、总结文档立即下载

TXIoTCallSession

最近更新时间:2026-07-30 12:00:38

我的收藏

概述

TXIoTCallSession 负责与设备之间的音视频通话,包括发起呼叫、挂断、远端画面渲染、麦克风/摄像头控制及音频输出设备选择。TXIoTCallSession 通过 TXIoTEngine.getCallSession 获取实例,需在 TXIoTEngine 登录成功后调用。
说明:
回调模型:通话事件通过 TXIoTCallDelegate 协议回调,所有 Delegate 回调在主线程触发。公共类型与错误码定义见 TXIoTEngineDef。

方法列表

方法签名
描述
添加通话事件代理。
移除通话事件代理。
向设备发起音视频通话。
hangup
挂断当前通话。
开始远端画面渲染。
停止远端画面渲染。
打开麦克风。
关闭麦克风。
打开摄像头。
关闭摄像头。
切换摄像头。
选择音频播放设备。

addDelegate:

addDelegate:
void addDelegate:
(id<TXIoTCallDelegate> delegate)
添加通话事件代理
参数
描述
delegate
id<TXIoTCallDelegate>;通话事件代理对象。

removeDelegate:

removeDelegate:
void removeDelegate:
(id<TXIoTCallDelegate> delegate)
移除通话事件代理
参数
描述
delegate
id<TXIoTCallDelegate>;要移除的通话事件代理对象。

callDevice:callType:

callDevice:callType:
void callDevice:callType:
(TXIoTDeviceId* deviceId, TXIoTCallMediaType callType)
向设备发起音视频通话
参数
描述
deviceId
TXIoTDeviceId*;目标设备 ID。
callType
TXIoTCallMediaType;通话类型:音频或视频。

hangup

hangup
void hangup
()
挂断当前通话

startRemoteView:view:

startRemoteView:view:
void startRemoteView:view:
(TXIoTCallUser* callUser, TXView* view)
开始渲染远端画面
参数
描述
callUser
TXIoTCallUser*;通话用户对象。
view
TXView*;用于渲染远端画面的视图。

stopRemoteView:

stopRemoteView:
void stopRemoteView:
(TXIoTCallUser* callUser)
停止远端画面渲染
参数
描述
callUser
TXIoTCallUser*;参与本次通话的用户对象。

openMicrophone

openMicrophone
void openMicrophone
()
打开麦克风

closeMicrophone

closeMicrophone
void closeMicrophone
()
关闭麦克风

openCamera:view:

openCamera:view:
void openCamera:view:
(TXIoTCamera camera, TXView* view)
打开摄像头
参数
描述
camera
TXIoTCamera;摄像头类型:前置或后置。
view
TXView*;用于渲染本地画面的视图。

closeCamera

closeCamera
void closeCamera
()
关闭摄像头

switchCamera:

switchCamera:
void switchCamera:
(TXIoTCamera camera)
切换摄像头
参数
描述
camera
TXIoTCamera;目标摄像头类型:前置或后置。

selectAudioPlaybackDevice:

selectAudioPlaybackDevice:
void selectAudioPlaybackDevice:
(TXIoTAudioPlaybackDevice device)
选择音频播放设备
参数
描述
device
TXIoTAudioPlaybackDevice;音频播放设备:扬声器或听筒。

通话事件回调

TXIoTCallDelegate 协议定义通话事件回调,所有方法均为 @optional
TXIoTCallDelegate
回调
说明
onError:errorMessage:
通话过程中发生错误,错误码见 TXIoTErrorCode
onCallBegin:
通话开始,返回通话类型(音频/视频)。
onCallEnd:reason:
通话结束,返回挂断原因。
onCallRejected:
对方拒绝接听。
onCallNoResponse:
对方无响应。
onCallLineBusy:
对方线路忙。
onCallUserOffline:
对方不在线。
onCallUserAudioAvailable:available:
远端音频可用性变化。
onCallUserVideoAvailable:available:
远端视频可用性变化。
onCallNetworkQualityChanged:remoteQualityList:
网络质量变化通知。

通话相关数据结构与枚举

TXIoTCallUser

TXIoTCallUser
参与通话的用户信息,用于标识通话对端。
字段
说明
deviceId
通话对端的设备 ID。

TXIoTQuality

TXIoTQuality
网络质量信息。
字段
说明
callUser
网络质量对应的通话用户。
quality
网络质量等级。

TXIoTCallMediaType

TXIoTCallMediaType
通话类型枚举。
枚举
取值
说明
TXIoTCallMediaTypeAudio
0
音频通话。
TXIoTCallMediaTypeVideo
1
视频通话。

TXIoTCallEndReason

TXIoTCallEndReason
通话结束原因枚举。
枚举
取值
说明
TXIoTCallEndReasonUnknown
0
未知原因。
TXIoTCallEndReasonLocalHangup
1
本地挂断。
TXIoTCallEndReasonRemoteHangup
2
远端挂断。
TXIoTCallEndReasonCallPermissionDenied
3
呼叫权限被拒绝。
TXIoTCallEndReasonNetworkError
4
网络错误。


TXIoTAudioPlaybackDevice

TXIoTAudioPlaybackDevice
枚举
取值
说明
TXIoTAudioPlaybackDeviceSpeakerphone
0
扬声器(外放)。
TXIoTAudioPlaybackDeviceEarpiece
1
听筒。

TXIoTCamera

TXIoTCamera
枚举
取值
说明
TXIoTCameraFront
0
前置摄像头。
TXIoTCameraBack
1
后置摄像头。

TXIoTNetworkQuality

TXIoTNetworkQuality
枚举
取值
说明
TXIoTNetworkQualityExcellent
0
极佳
TXIoTNetworkQualityGood
1
良好
TXIoTNetworkQualityPoor
2
较差
TXIoTNetworkQualityBad
3
TXIoTNetworkQualityVeryBad
4
很差
TXIoTNetworkQualityDown
5
网络不可用