类型: interface
| 方法 | 描述 |
|---|---|
| onRoomStateChanged | 房间状态改变回调,加入房间、离开房间、发生房间相关的警告或错误时会收到此回调。 |
| onStreamStateChanged | 流状态改变回调,发生流相关的警告或错误时会收到此回调。 |
| onLeaveRoom | 离开房间成功回调。 |
| onUserJoined | 可见用户加入房间,或房内隐身用户切换为可见的回调。 1.远端可见用户调用 setUserVisibility 方法将自身设为可见后加入房间时,房间内其他用户将收到该事件。2.远端可见用户断网后重新连入房间时,房间内其他用户将收到该事件。 3.房间内隐身远端用户调用 setUserVisibility 方法切换至可见时,房间内其他用户将收到该事件。4.新进房用户也会收到进房前已在房内的可见角色用户的进房回调通知。 |
| onUserLeave | 远端用户离开房间,或切至不可见时,本地用户会收到此事件 |
| onTokenWillExpire | Token 过期前 30 秒将触发该回调。 |
| onAVSyncStateChange | 发布端调用 setMultiDeviceAVSync 后音视频同步状态发生改变时,会收到此回调。 |
| onRoomStats | 房间通话统计信息回调。 用户进房开始通话后,每 2s 收到一次本回调。 |
| onLocalStreamStats | 反映通话中本地设备发送音/视频流的统计信息以及网络状况的回调。 本地用户发布音视频流成功后,每隔 2s 收到此回调。 |
| onRemoteStreamStats | 反映通话中本地设备接收订阅的远端音/视频流的统计信息以及网络状况的回调。每隔 2s 收到此回调。 |
| onUserPublishStream | 房间内新增远端麦克风采集的音频流的回调。 |
| onUserUnpublishStream | 房间内远端麦克风采集的音频流移除的回调。 |
| onUserPublishScreen | 房间内新增远端屏幕共享音视频流的回调。 |
| onUserUnpublishScreen | 房间内远端屏幕共享音视频流移除的回调。 |
| onStreamSubscribed | 关于订阅媒体流状态改变的回调 |
| onVideoStreamBanned | 通过调用服务端 BanUserStream/UnbanUserStream 方法禁用/解禁指定房间内指定用户视频流的发送时,触发此回调。 |
| onAudioStreamBanned | 通过调用服务端 BanUserStream/UnbanUserStream 方法禁用/解禁指定房间内指定用户音频流的发送时,触发此回调。 |
| onRoomMessageReceived | 接收到房间内广播消息的回调。 |
| onRoomBinaryMessageReceived | 接收到房间内广播二进制消息的回调。 |
| onUserMessageReceived | 收到来自房间中其他用户通过 sendUserMessage 发来的点对点文本消息时,会收到此回调。 |
| onUserBinaryMessageReceived | 收到来自房间中其他用户通过 sendUserBinaryMessage 发来的点对点二进制消息时,会收到此回调。 |
| onUserMessageSendResult | 向房间内单个用户发送点对点文本或点对点二进制消息后,消息发送方会收到该消息发送结果回调。 |
| onRoomMessageSendResult | 调用 sendRoomMessage 或 sendRoomBinaryMessage 向房间内群发文本或二进制消息后,消息发送方会收到该消息发送结果回调。 |
| onForwardStreamStateChanged | 跨房间媒体流转发状态和错误回调 |
| onForwardStreamEvent | 跨房间媒体流转发事件回调 |
| onNetworkQuality | 加入房间后, 以 2 秒 1 次的频率,报告用户的网络质量信息 |
| onPublishPrivilegeTokenWillExpire | Token 发布权限过期前 30 秒将触发该回调。 |
| onSubscribePrivilegeTokenWillExpire | Token 订阅权限过期前 30 秒将触发该回调。 |
| onSetRoomExtraInfoResult | 调用 setRoomExtraInfo 设置房间附加信息结果的回调。 |
| onRoomExtraInfoUpdate | 接收同一房间内,其他用户调用 setRoomExtraInfo 设置的房间附加信息的回调。 |
| onSubtitleStateChanged | 字幕状态发生改变回调。 当用户调用 startSubtitle 和 stopSubtitle 使字幕状态发生改变或字幕任务出现错误时,触发该回调。 |
| onSubtitleMessageReceived | 字幕相关内容回调。 当用户成功调用 startSubtitle 后会收到此回调,通知字幕的相关信息。 |
房间状态改变回调,加入房间、离开房间、发生房间相关的警告或错误时会收到此回调。
类型
(room_id: string, uid: string, state: number, extra_info: string) => void
ts参数
room_id
类型: string
房间 ID。
uid
类型: string
用户 ID。
state
类型: number
房间状态码。
0: 成功。
!0: 失败,参看 ErrorCode 及 WarningCode。
extra_info
类型: string
额外信息。joinType表示加入房间的类型,0为首次进房,1为重连进房。elapsed表示加入房间耗时,即本地用户从调用 joinRoom 到加入房间成功所经历的时间间隔,单位为 ms。
流状态改变回调,发生流相关的警告或错误时会收到此回调。
类型
(room_id: string, uid: string, state: number, extra_info: string) => void
ts参数
room_id
类型: string
房间 ID。
uid
类型: string
用户 ID。
state
类型: number
流状态码,参看 ErrorCode 及 WarningCode。
extra_info
类型: string
附加信息,目前为空。
离开房间成功回调。
类型
(stats: RtcRoomStats) => void
ts注意
参数
stats
类型: RtcRoomStats
本次通话的统计数据。
可见用户加入房间,或房内隐身用户切换为可见的回调。
1.远端可见用户调用 setUserVisibility 方法将自身设为可见后加入房间时,房间内其他用户将收到该事件。
2.远端可见用户断网后重新连入房间时,房间内其他用户将收到该事件。
3.房间内隐身远端用户调用 setUserVisibility 方法切换至可见时,房间内其他用户将收到该事件。
4.新进房用户也会收到进房前已在房内的可见角色用户的进房回调通知。
类型
(user_info: UserInfo, elapsed: number) => void
ts参数
远端用户离开房间,或切至不可见时,本地用户会收到此事件
类型
(uid: string, reason: UserOfflineReasonType) => void
ts参数
uid
类型: string
离开房间,或切至不可见的的远端用户 ID。
reason
用户离开房间的原因
Token 过期前 30 秒将触发该回调。
类型
() => void
ts注意
调用 updateToken 更新 Token。否则 Token 过期后,用户将被移出房间无法继续进行音视频通话。
发布端调用 setMultiDeviceAVSync 后音视频同步状态发生改变时,会收到此回调。
类型
(state: AVSyncState) => void
ts参数
state
类型: AVSyncState
音视频同步状态
房间通话统计信息回调。
用户进房开始通话后,每 2s 收到一次本回调。
类型
(stats: RtcRoomStats) => void
ts参数
stats
类型: RtcRoomStats
房间内的汇总统计数据。
反映通话中本地设备发送音/视频流的统计信息以及网络状况的回调。
本地用户发布音视频流成功后,每隔 2s 收到此回调。
类型
(stats: LocalStreamStats) => void
ts参数
stats
类型: LocalStreamStats
音视频流以及网络状况统计信息。
反映通话中本地设备接收订阅的远端音/视频流的统计信息以及网络状况的回调。每隔 2s 收到此回调。
类型
(stats: RemoteStreamStats) => void
ts参数
stats
音视频流以及网络状况统计信息。
房间内新增远端麦克风采集的音频流的回调。
类型
(uid: string, type: MediaStreamType) => void
ts注意
当房间内的远端用户调用 publishStream 成功发布由麦克风采集的音频流时,本地用户会收到该回调,此时本地用户可以自行选择是否调用 subscribeStream 订阅此流。
参数
uid
类型: string
远端流发布用户的用户 ID。
type
类型: MediaStreamType
远端媒体流的类型。
房间内远端麦克风采集的音频流移除的回调。
类型
(uid: string, type: MediaStreamType, reason: StreamRemoveReason) => void
ts注意
收到该回调通知后,你可以自行选择是否调用 unsubscribeStream 取消订阅此流。
参数
uid
类型: string
移除的远端流发布用户的用户 ID。
type
类型: MediaStreamType
远端媒体流的类型。
reason
远端流移除的原因
房间内新增远端屏幕共享音视频流的回调。
类型
(uid: string, type: MediaStreamType) => void
ts注意
当房间内的远端用户调用 publishScreen 成功发布来自屏幕共享的音视频流时,本地用户会收到该回调,此时本地用户可以自行选择是否调用 subscribeScreen 订阅此流。
参数
uid
类型: string
远端流发布用户的用户 ID。
type
类型: MediaStreamType
远端媒体流的类型
房间内远端屏幕共享音视频流移除的回调。
类型
(uid: string, type: MediaStreamType, reason: StreamRemoveReason) => void
ts注意
收到该回调通知后,你可以自行选择是否调用 unsubscribeScreen 取消订阅此流。
参数
uid
类型: string
移除的远端流发布用户的用户 ID。
type
类型: MediaStreamType
移除的远端流类型
reason
远端流移除的原因
关于订阅媒体流状态改变的回调
类型
(state_code: SubscribeState, user_id: string, info: SubscribeConfig) => void
ts注意
本地用户收到该回调的时机包括:
参数
state_code
类型: SubscribeState
订阅媒体流状态
user_id
类型: string
流发布用户的用户 ID
info
类型: SubscribeConfig
流的属性
通过调用服务端 BanUserStream/UnbanUserStream 方法禁用/解禁指定房间内指定用户视频流的发送时,触发此回调。
类型
(uid: string, banned: boolean) => void
ts注意
参数
uid
类型: string
被禁用/解禁的视频流用户 ID
banned
类型: boolean
视频流发送状态
通过调用服务端 BanUserStream/UnbanUserStream 方法禁用/解禁指定房间内指定用户音频流的发送时,触发此回调。
类型
(uid: string, banned: boolean) => void
ts注意
参数
uid
类型: string
被禁用/解禁的音频流用户 ID
banned
类型: boolean
音频流发送状态
接收到房间内广播消息的回调。
类型
(uid: string, message: string) => void
ts注意
房间内其他用户调用 sendRoomMessage 发送广播消息时,收到此回调。
参数
uid
类型: string
消息发送者 ID
message
类型: string
收到的消息内容
接收到房间内广播二进制消息的回调。
类型
(uid: string, message: string) => void
ts注意
房间内其他用户调用 sendRoomBinaryMessage 发送广播二进制消息时,收到此回调。
参数
uid
类型: string
消息发送者 ID
message
类型: string
收到的二进制消息内容
收到来自房间中其他用户通过 sendUserMessage 发来的点对点文本消息时,会收到此回调。
类型
(uid: string, message: string) => void
ts参数
uid
类型: string
消息发送者的用户 ID 。
message
类型: string
收到的文本消息内容。
收到来自房间中其他用户通过 sendUserBinaryMessage 发来的点对点二进制消息时,会收到此回调。
类型
(uid: string, message: string) => void
ts参数
uid
类型: string
消息发送者的用户 ID 。
message
类型: string
收到的二进制消息内容。
向房间内单个用户发送点对点文本或点对点二进制消息后,消息发送方会收到该消息发送结果回调。
类型
(msgid: number, error: number) => void
ts注意
调用 sendUserMessage 或 sendUserBinaryMessage 接口,才能收到此回调。
参数
msgid
类型: number
本条消息的 ID。
error
类型: number
文本或二进制消息发送结果
200: 消息发送成功100: 失败,发送方未加入房间102: 失败,没有可用的数据传输通道连接103: 失败,消息超过最大长度,当前为 64 KB1000: 失败,未知错误调用 sendRoomMessage 或 sendRoomBinaryMessage 向房间内群发文本或二进制消息后,消息发送方会收到该消息发送结果回调。
类型
(msgid: number, error: number) => void
ts参数
msgid
类型: number
本条消息的 ID。
error
类型: number
消息发送结果
200: 消息发送成功100: 失败,发送方未加入房间102: 失败,没有可用的数据传输通道连接103: 失败,消息超过最大长度,当前为 64 KB1000: 失败,未知错误跨房间媒体流转发状态和错误回调
类型
(infos: ForwardStreamStateInfo[], info_count: number) => void
ts参数
infos
类型: ForwardStreamStateInfo[]
跨房间媒体流转发目标房间信息数组
info_count
类型: number
数量
跨房间媒体流转发事件回调
类型
(infos: ForwardStreamEventInfo[], info_count: number) => void
ts参数
infos
类型: ForwardStreamEventInfo[]
跨房间媒体流转发目标房间事件数组
info_count
类型: number
数量
加入房间后, 以 2 秒 1 次的频率,报告用户的网络质量信息
类型
(localQuality: NetworkQualityStats, remoteQualities: NetworkQualityStats[]) => void
ts注意
更多通话中的监测接口,详见通话中质量监测
参数
localQuality
本地网络质量。
remoteQualities
类型: NetworkQualityStats[]
已订阅用户的网络质量。
Token 发布权限过期前 30 秒将触发该回调。
类型
() => void
ts注意
收到该回调后,你需调用 updateToken 更新 Token 发布权限。若收到该回调后未及时更新 Token,Token 发布权限过期后:
-1002 没有发布权限;-1002 没有发布权限,同时远端用户会收到 onUserUnPublishStream 回调,提示原因为 6 发流端发布权限过期。Token 订阅权限过期前 30 秒将触发该回调。
类型
() => void
ts注意
收到该回调后,你需调用 updateToken 更新 Token 订阅权限有效期。若收到该回调后未及时更新 Token,Token 订阅权限过期后,尝试新订阅流会失败,已订阅的流会取消订阅,并且会收到 onStreamStateChanged 回调,提示错误码为 -1003 没有订阅权限。
调用 setRoomExtraInfo 设置房间附加信息结果的回调。
类型
(task_id: number, err_code: SetRoomExtraInfoResult) => void
ts参数
task_id
类型: number
调用 setRoomExtraInfo 的任务编号。
err_code
errCode 设置房间附加信息的结果。
接收同一房间内,其他用户调用 setRoomExtraInfo 设置的房间附加信息的回调。
类型
(key: string, value: string, last_update_user_id: string, last_update_time_ms: number) => void
ts注意
新进房的用户会收到进房前房间内已有的全部附加信息通知。
参数
key
类型: string
房间附加信息的键值
value
类型: string
房间附加信息的内容
last_update_user_id
类型: string
最后更新本条信息的用户 ID。
last_update_time_ms
类型: number
最后更新本条信息的 Unix 时间,单位:毫秒。
字幕状态发生改变回调。
当用户调用 startSubtitle 和 stopSubtitle 使字幕状态发生改变或字幕任务出现错误时,触发该回调。
类型
(state: SubtitleState, error_code: SubtitleErrorCode, error_message: string) => void
ts参数
state
类型: SubtitleState
字幕状态。
error_code
字幕任务错误码。
error_message
类型: string
与第三方服务有关的错误信息。
字幕相关内容回调。
当用户成功调用 startSubtitle 后会收到此回调,通知字幕的相关信息。
类型
(subtitles: SubtitleMessage[], cnt: number) => void
ts参数
subtitles
类型: SubtitleMessage[]
字幕消息内容。
cnt
类型: number
类型: interface
| 方法 | 描述 |
|---|---|
| onLogReport | 端监控日志回调。当产生一个端监控事件时触发该回调。 |
| onMusicListResult | 歌曲列表回调。 |
| onSearchMusicResult | 搜索歌曲结果回调。 |
| onHotMusicResult | 热榜歌曲结果回调。 |
| onMusicDetailResult | 歌曲详细信息回调。 |
| onDownloadSuccess | 下载成功回调。 |
| onDownloadFailed | 下载失败回调。 |
| onDownloadMusicProgress | 歌曲文件下载进度回调。 |
| onPlayProgress | 音乐播放进度回调。 |
| onPlayStateChanged | 音乐播放状态改变回调。 |
| onRemoteVideoSuperResolutionModeChanged | 远端视频流的超分状态发生改变时,房间内订阅此流的用户会收到该回调。 |
| onTakeLocalSnapshotResult | 调用 takeLocalSnapshot 截取视频画面时,收到此回调。 |
| onTakeRemoteSnapshotResult | 调用 takeRemoteSnapshot 截取视频画面时,收到此回调。 |
| onCreateRoomStateChanged | 创建房间失败回调。 |
| onHttpProxyState | HTTP 代理连接状态改变时,收到该回调。 |
| onHttpsProxyState | HTTPS 代理连接状态改变时,收到该回调。 |
| onSocks5ProxyState | SOCKS5 代理状态改变时,收到该回调。 |
| onStreamSyncInfoReceived | 音频流同步信息回调。可以通过此回调,在远端用户调用 sendStreamSyncInfo 发送音频流同步消息后,收到远端发送的音频流同步信息。 |
| onScreenAudioFrameSendStateChanged | 屏幕音频首帧发送状态改变回调 |
| onScreenAudioFramePlayStateChanged | 屏幕音频首帧播放状态改变回调 |
| onCloudProxyConnected | 调用 startCloudProxy 开启云代理,SDK 首次成功连接云代理服务器时,回调此事件。 |
| onNetworkTimeSynchronized | 首次调用 getNetworkTimeInfo 后,SDK 内部启动网络时间同步,同步完成时会触发此回调。 |
| onLicenseWillExpire | license过期时间提醒 |
| onFaceDetectResult | 特效 SDK 进行人脸检测结果的回调。 调用 enableFaceDetection 注册了回调,并使用 RTC SDK 中包含的特效 SDK 进行视频特效处理时,你会收到此回调。 |
| onAudioDeviceVolumeChanged | 音频设备音量改变回调。当通过系统设置,改变音频设备音量或静音状态时,触发本回调。本回调无需手动开启。 |
| onCurrentScoringInfo | 实时评分信息回调。 |
| onAudioRecordingStateUpdate | 调用 startAudioRecording 或 stopAudioRecording 改变音频文件录制状态时,收到此回调。 |
| onExtensionAccessError | 当访问插件失败时,收到此回调。 RTC SDK 将一些功能封装成插件。当使用这些功能时,如果插件不存在,功能将无法使用。 |
| onPublicStreamDataMessageReceived | 回调公共流中包含的数据信息。 通过 startPlayPublicStream 开始播放公共流后,可以通过本回调获取发送端发送的非SEI消息。 |
| onHardwareEchoDetectionResult | 通话前回声检测结果回调。 |
| onLocalProxyStateChanged | 本地代理状态发生改变回调。调用 setLocalProxy 设置本地代理后,SDK 会触发此回调,返回代理连接的状态。 |
| onMixingEvent | 转推直播状态回调 |
| onMixingVideoFrame | 合流视频回调,运行在视频回调线程 |
| onMixingAudioFrame | 合流音频回调,运行在音频回调线程 |
| onMixingDataFrame | 视频 SEI 帧回调,运行在视频回调线程 |
| onFirstPublicStreamAudioFrame | 公共流的音频首帧解码成功 |
| onPushPublicStreamResult | 公共流发布结果回调。 调用 startPushPublicStream 接口发布公共流后,启动结果通过此回调方法通知用户。 |
| onFirstPublicStreamVideoFrameDecoded | 公共流的首帧视频解码成功 |
| onPublicStreamSEIMessageReceived | 回调公共流中包含的 SEI 信息 |
| onPlayPublicStreamResult | 订阅公共流的结果回调 通过 startPlayPublicStream 订阅公共流后,可以通过本回调获取订阅结果。 |
| onLocalScreenFrame | 获取采集成功的本地屏幕视频帧,用于自定义处理或渲染。 |
| onLocalVideoFrame | 获取采集成功的本地摄像头流视频帧,用于自定义处理或渲染。 |
| onRemoteScreenFrame | 视频管理获取采集成功的远端屏幕视频帧,用于自定义处理或渲染。 |
| onRemoteVideoFrame | 获取采集成功的远端摄像头流视频帧,用于自定义处理或渲染。 |
| onPublicStreamVideoFrame | 公共流视频数据回调,绑定公共流到自定义渲染器后,通过该回调获取公共流视频数据。 |
| onWarning | 当内部发生警告事件时触发该回调 |
| onError | 当内部发生不可逆转错误时触发该回调 |
| onAudioMixingFinished | 本地音乐文件播放已结束回调。 |
| onAudioMixingStateChanged | 音频混音文件播放状态改变时回调 |
| onAudioMixingPlayingProgress | 混音音频文件播放进度回调 |
| onConnectionStateChanged | SDK 与信令服务器连接状态改变回调。连接状态改变时触发。 |
| onNetworkTypeChanged | SDK 当前网络连接类型改变回调。当 SDK 的当前网络连接类型发生改变时回调该事件。 |
| onPerformanceAlarms | 本地未开启发布性能回退,检测到设备性能不足时,收到此回调。本地开启发布性能回退,因设备性能/网络原因,造成发布性能回退/恢复时,收到此回调。 |
| onSysStats | 周期性地发出回调,报告当前cpu与memory使用率 |
| onUserStartAudioCapture | 房间内的用户调用 startAudioCapture 开启音频采集时,房间内其他用户会收到此回调。 |
| onUserStopAudioCapture | 房间内的用户调用 stopAudioCapture 关闭音频采集时,房间内其他用户会收到此回调。 |
| onFirstLocalAudioFrame | 本地采集到第一帧音频帧时,收到该回调 |
| onFirstRemoteAudioFrame | 收到房间内每一路音频流的第一帧时,收到该回调。 |
| onSimulcastSubscribeFallback | 因发布/订阅性能回退或退出回退状态,订阅的音视频流,发生流的切换时,收到该回调。 |
| onFirstLocalVideoFrameCaptured | 第一帧本地采集的视频/屏幕共享画面在本地视图渲染完成时,收到此回调。 |
| onLocalVideoSizeChanged | 本地视频大小或旋转配置发生改变时,收到此回调。 |
| onRemoteVideoSizeChanged | 远端视频大小或旋转配置发生改变时,房间内订阅此视频流的用户会收到此回调。 |
| onFirstRemoteVideoFrameRendered | 第一帧远端视频流在视图上渲染成功后,收到此回调。 |
| onFirstRemoteVideoFrameDecoded | SDK 接收并解码远端视频流首帧后,收到此回调。 |
| onUserStartVideoCapture | 房间内的用户调用 startVideoCapture 开启视频采集时,房间内其他用户会收到此回调。 |
| onUserStopVideoCapture | 房间内的用户调用 stopVideoCapture 关闭视频采集时,房间内其他用户会收到此回调。 |
| onLocalAudioStateChanged | 本地音频的状态发生改变时,该回调通知当前的本地音频状态。 |
| onActiveSpeaker | 调用 enableAudioPropertiesReport 后,根据设置的 config.interval,你会周期性地收到此回调,获取房间内的最活跃用户信息。 |
| onLocalVideoStateChanged | 本地视频流的状态发生改变时,收到该事件。 |
| onAudioFrameSendStateChanged | 音频首帧发送状态改变回调 |
| onVideoFrameSendStateChanged | 视频首帧发送状态改变回调 |
| onScreenVideoFrameSendStateChanged | 屏幕共享流视频首帧发送状态改变回调 |
| onAudioFramePlayStateChanged | 音频首帧播放状态改变回调 |
| onVideoFramePlayStateChanged | 视频首帧播放状态改变回调 |
| onScreenVideoFramePlayStateChanged | 屏幕共享流视频首帧播放状态改变回调 |
| onUserMessageSendResult | 当调用 sendMessageToUser 函数发送消息后,回调此条消息的发送结果(反馈)。 |
| onUserBinaryMessageReceived | 单个用户接收到同一房间内其他 uid 所属用户发来二进制消息的回调(P2P)。 |
| onStreamSubscribed | 当订阅一个流成功的时候回调该事件 |
| onSEIMessageReceived | 收到通过 sendSEIMessage 发送的带有 SEI 消息的视频帧时,收到此回调 |
| onStreamPushEvent | 单流转推直播状态回调 |
| onRecordingStateUpdate | 获取本地录制状态回调。 |
| onRecordingProgressUpdate | 本地录制进度回调。 |
| onLoginResult | 调用 login 后,会收到此回调。 |
| onLogout | 登出结果回调 |
| onServerParamsSetResult | 设置业务服务器参数的返回结果 |
| onGetPeerOnlineStatus | 查询对端或本端用户登录状态的返回结果 |
| onUserMessageReceivedOutsideRoom | 收到房间外用户调用 sendUserMessageOutsideRoom 发来的文本消息时,会收到此回调 |
| onUserBinaryMessageReceivedOutsideRoom | 收到房间外用户调用 sendUserBinaryMessageOutsideRoom 发来的二进制消息时,会收到此回调 |
| onUserMessageSendResultOutsideRoom | 给房间外指定的用户发送消息的回调 |
| onServerMessageSendResult | 给业务服务器发送消息的回调 |
| onRecordAudioFrame | 返回麦克风录制的音频数据 |
| onPlaybackAudioFrame | 返回远端所有用户混音后的音频数据 |
| onMixedAudioFrame | 返回本地麦克风录制和远端所有用户混音后的音频数据 |
| onASRSuccess | 语音识别服务开启成功回调 |
| onMessage | 语音转文字成功回调,该回调返回识别后的全量消息。 |
| onASRError | 当语音识别服务内部发生错误事件时触发该回调。 |
| onNetworkDetectionResult | 成功调用 startNetworkDetection 接口开始探测后,会在 3s 内首次收到该回调,之后每 2s 收到一次该回调。 |
| onNetworkDetectionStopped | 通话前网络探测结束 |
| onLocalAudioPropertiesReport | 调用 enableAudioPropertiesReport 后,根据设置的 interval 值,你会周期性地收到此回调,了解本地音频的相关信息。 |
| onRemoteAudioPropertiesReport | 远端用户进房后,本地调用 enableAudioPropertiesReport,根据设置的 interval 值,本地会周期性地收到此回调,了解订阅的远端用户的音频信息。 |
| onEchoTestResult | 通话前网络探测结束 |
| onVideoDeviceStateChanged | 视频频设备状态回调。提示摄像头视频采集、屏幕视频采集等设备的状态。 |
| onAudioDeviceStateChanged | 音频设备状态回调。提示音频采集、音频播放等设备设备的状态。 |
| onAudioPlaybackDeviceTestVolume | 回调音频设备测试时的播放音量 |
端监控日志回调。当产生一个端监控事件时触发该回调。
类型
(log_type: string, log_content: string) => void
ts参数
log_type
类型: string
事件类型。目前类型固定为 "live_webrtc_monitor_log"。
log_content
类型: string
端监控日志内容。
歌曲列表回调。
类型
(music_infos: MusicInfo[], total_musics_size: number, error_code: KTVErrorCode) => void
ts参数
error_code
类型: MusicInfo[]
错误码,成功时返回 0。
total_musics_size
类型: number
数据条目总数。
music_infos
类型: KTVErrorCode
歌曲数据数组。
搜索歌曲结果回调。
类型
(music_infos: MusicInfo[], total_musics_size: number, error_code: KTVErrorCode) => void
ts参数
error_code
类型: MusicInfo[]
错误码,成功时返回 0。
total_musics_size
类型: number
数据条目总数。
music_infos
类型: KTVErrorCode
歌曲数据数组。
热榜歌曲结果回调。
类型
(hot_infos: HotMusicInfo[], error_code: KTVErrorCode) => void
ts参数
error_code
类型: HotMusicInfo[]
错误码,成功时返回 0。
hot_infos
类型: KTVErrorCode
热榜歌曲数据数组。
歌曲详细信息回调。
类型
(music_info: MusicInfo, error_code: KTVErrorCode) => void
ts参数
error_code
类型: MusicInfo
错误码,成功时返回 0。
music_info
类型: KTVErrorCode
歌曲数据。
下载成功回调。
类型
(download_id: number, download_info: DownloadResult) => void
ts参数
download_id
类型: number
下载任务 ID。
download_info
类型: DownloadResult
下载信息。
下载失败回调。
类型
(download_id: number, error_code: KTVErrorCode) => void
ts参数
error_code
类型: number
错误码。
download_id
类型: KTVErrorCode
下载任务 ID。
歌曲文件下载进度回调。
类型
(download_id: number, download_percentage: number) => void
ts参数
download_id
类型: number
下载任务 ID。
download_percentage
类型: number
下载进度百分比,取值范围 [0,100]。
音乐播放进度回调。
类型
(music_id: string, progress: number) => void
ts参数
music_id
类型: string
音乐 ID。
progress
类型: number
音乐播放进度,单位为毫秒。
音乐播放状态改变回调。
类型
(music_id: string, play_state: PlayState, error_code: KTVPlayerErrorCode) => void
ts注意
此回调被触发的时机汇总如下:
参数
error_code
类型: string
错误码。
music_id
类型: PlayState
音乐 ID。
play_state
音乐播放状态。
远端视频流的超分状态发生改变时,房间内订阅此流的用户会收到该回调。
类型
(stream_key: RemoteStreamKey, mode: VideoSuperResolutionMode, reason: VideoSuperResolutionModeChangedReason) => void
ts参数
streamKey
类型: RemoteStreamKey
远端流信息,包括房间 ID、用户 ID、流属性。
mode
超分模式。
reason
类型: VideoSuperResolutionModeChangedReason
超分模式改变原因。
调用 takeLocalSnapshot 截取视频画面时,收到此回调。
类型
(taskId: number, streamIndex: number, image: string, errorCode: number) => void
ts参数
taskId
类型: number
本地截图任务的编号。和 takeLocalSnapshot 的返回值一致。
streamIndex
类型: number
流属性,主流或屏幕流。
image
类型: string
截图。你可以保存为文件,或对其进行二次处理。截图失败时,为空。
errorCode
类型: number
截图错误码:
0: 成功-1: 截图错误。生成图片数据失败或 RGBA 编码失败-2: 截图错误。流无效。调用 takeRemoteSnapshot 截取视频画面时,收到此回调。
类型
(taskId: number, streamKey: RemoteStreamKey, image: string, errorCode: number) => void
ts参数
taskId
类型: number
远端截图任务的编号。和 takeRemoteSnapshot 的返回值一致。
streamKey
类型: RemoteStreamKey
截图的视频流。
image
类型: string
截图。你可以保存为文件,或对其进行二次处理。截图失败时,为空。
errorCode
类型: number
截图错误码:
0: 成功-1: 截图错误。生成图片数据失败或 RGBA 编码失败-2: 截图错误。流无效。创建房间失败回调。
类型
(room_id: string, error_code: number) => void
ts参数
room_id
类型: string
房间 ID。
error_code
类型: number
创建房间错误码。
HTTP 代理连接状态改变时,收到该回调。
类型
(state: number) => void
ts参数
state
类型: number
当前 HTTP 代理连接状态
HTTPS 代理连接状态改变时,收到该回调。
类型
(state: number) => void
ts参数
state
类型: number
当前 HTTPS 代理连接状态
SOCKS5 代理状态改变时,收到该回调。
类型
(state: number, cmd: string, proxy_address: string, local_address: string, remote_address: string) => void
ts参数
state
类型: number
SOCKS5 代理连接状态
cmd
类型: string
代理连接的每一步操作命令
proxy_address
类型: string
代理地址信息
local_address
类型: string
当前连接使用的本地地址
remote_address
类型: string
远端的连接地址
音频流同步信息回调。可以通过此回调,在远端用户调用 sendStreamSyncInfo 发送音频流同步消息后,收到远端发送的音频流同步信息。
类型
(stream_key: RemoteStreamKey, stream_type: SyncInfoStreamType, data: string) => void
ts参数
stream_key
类型: RemoteStreamKey
远端流信息
stream_type
类型: SyncInfoStreamType
媒体流类型
data
类型: string
消息内容。
屏幕音频首帧发送状态改变回调
类型
(room_id: string, user: RtcUser, state: FirstFrameSendState) => void
ts参数
room_id
类型: string
音频发布用户所在的房间 ID
user
类型: RtcUser
本地用户信息
state
首帧发送状态
屏幕音频首帧播放状态改变回调
类型
(room_id: string, user: RtcUser, state: FirstFramePlayState) => void
ts参数
room_id
类型: string
首帧播放状态发生改变的流所在的房间 ID
user
类型: RtcUser
远端用户信息
state
首帧播放状态
调用 startCloudProxy 开启云代理,SDK 首次成功连接云代理服务器时,回调此事件。
类型
(interval: number) => void
ts参数
interval
类型: number
从开启云代理到连接成功经过的时间,单位为 ms
首次调用 getNetworkTimeInfo 后,SDK 内部启动网络时间同步,同步完成时会触发此回调。
类型
() => void
tslicense过期时间提醒
类型
(days: number) => void
ts参数
days
类型: number
过期时间天数
特效 SDK 进行人脸检测结果的回调。
调用 enableFaceDetection 注册了回调,并使用 RTC SDK 中包含的特效 SDK 进行视频特效处理时,你会收到此回调。
类型
(result: FaceDetectResult) => this
ts参数
result
类型: FaceDetectResult
人脸检测结果
返回值
类型: this
音频设备音量改变回调。当通过系统设置,改变音频设备音量或静音状态时,触发本回调。本回调无需手动开启。
类型
(device_type: RTCAudioDeviceType, volume: number, muted: boolean) => void
ts参数
device_type
设备类型,包括麦克风和扬声器。
volume
类型: number
音量值,[0, 255]。当 volume 变为 0 时,muted 会变为 True。注意:在 Windows 端,当麦克风 volume 变为 0 时,muted 值不变。
muted
类型: boolean
是否禁音状态。扬声器被设置为禁音时,muted 为 True,但 volume 保持不变。
实时评分信息回调。
类型
(info: SingScoringRealtimeInfo) => void
ts注意
调用 startSingScoring 后,会收到该回调。
参数
info
实时评分信息。
调用 startAudioRecording 或 stopAudioRecording 改变音频文件录制状态时,收到此回调。
类型
(state: AudioRecordingState, error_code: AudioRecordingErrorCode) => void
ts参数
state
录制状态
errorCode
录制错误码
当访问插件失败时,收到此回调。
RTC SDK 将一些功能封装成插件。当使用这些功能时,如果插件不存在,功能将无法使用。
类型
(extensionName: string, msg: string) => void
ts参数
extensionName
类型: string
插件名字
msg
类型: string
失败说明
回调公共流中包含的数据信息。
通过 startPlayPublicStream 开始播放公共流后,可以通过本回调获取发送端发送的非SEI消息。
类型
(public_stream_id: string, message: Uint8Array, source_type: DataMessageSourceType) => void
ts注意
通过调用客户端 API 插入的 SEI 信息,应通过回调 onPublicStreamSEIMessageReceived 获取。
参数
public_stream_id
类型: string
公共流 ID
message
类型: Uint8Array
收到的数据消息内容,如下:
调用公共流 OpenAPI 发送的 SEI 消息。当公共流中的多路视频流均包含有 SEI 信息:SEI 不互相冲突时,将通过多次回调分别发送;SEI 在同一帧有冲突时,则只有一条流中的 SEI 信息被透传并融合到公共流中。
媒体流音量变化,需要通过公共流 OpenAPI 开启回调。
source_type
数据消息来源。
通话前回声检测结果回调。
类型
(hardware_echo_detection_result: HardwareEchoDetectionResult) => void
ts注意
参数
hardwareEchoDetectionResult
类型: HardwareEchoDetectionResult
通话前回声检测结果
本地代理状态发生改变回调。调用 setLocalProxy 设置本地代理后,SDK 会触发此回调,返回代理连接的状态。
类型
(local_proxy_type: LocalProxyType, local_proxy_state: LocalProxyState, local_proxy_error: LocalProxyError) => void
ts参数
localProxyType
类型: LocalProxyType
本地代理类型。
localProxyState
类型: LocalProxyState
本地代理状态。
localProxyError
类型: LocalProxyError
本地代理错误。
转推直播状态回调
类型
(event: StreamMixingEvent, task_id: string, error: StreamMixingErrorCode, mix_type: MixedStreamType) => void
ts参数
event
转推直播任务状态
task_id
类型: string
转推直播任务 ID
error
转推直播错误码
mix_type
类型: MixedStreamType
转推直播类型
合流视频回调,运行在视频回调线程
类型
(video_frame: IVideoFrame) => void
ts注意
收到该回调的周期与视频的帧间隔一致。
参数
video_frame
类型: IVideoFrame
视频帧
合流音频回调,运行在音频回调线程
类型
(task_id: string, audio_frame: IAudioFrame) => void
ts注意
收到该回调的周期为每 10 毫秒一次,并且每次的音频数据量为 10 毫秒数据量。
参数
task_id
类型: string
转推直播任务 ID
audio_frame
类型: IAudioFrame
音频帧
视频 SEI 帧回调,运行在视频回调线程
类型
(task_id: string, data_frame: IDataFrame) => void
ts参数
task_id
类型: string
转推直播任务 ID
data_frame
类型: IDataFrame
SEI 数据
公共流的音频首帧解码成功
类型
(public_stream_id: string) => void
ts注意
关于订阅公共流,详见 startPlayPublicStream。
参数
public_stream_id
类型: string
公共流 ID
公共流发布结果回调。
调用 startPushPublicStream 接口发布公共流后,启动结果通过此回调方法通知用户。
类型
(room_id: string, public_stream_id: string, error_code: PublicStreamErrorCode) => void
ts注意
关于订阅公共流,详见 startPlayPublicStream。
参数
room_id
类型: string
房间 ID
public_stream_id
类型: string
公共流 ID
error_code
公共流发布结果状态码。
200: 发布成功1191: 推流参数存在异常1192: 当前状态异常,通常为无法发起任务1193: 服务端错误,不可恢复1195: 服务端调用发布接口返回失败1196: 超时无响应。推流请求发送后 10s 没有收到服务端的结果回调。客户端将每隔 10s 重试,3 次重试失败后停止。公共流的首帧视频解码成功
类型
(public_stream_id: string, video_frame_info: VideoFrameInfo) => void
ts注意
关于订阅公共流,详见 startPlayPublicStream。
参数
public_stream_id
类型: string
公共流 ID
video_frame_info
类型: VideoFrameInfo
视频帧信息。
回调公共流中包含的 SEI 信息
类型
(public_stream_id: string, message: string, source_type: DataMessageSourceType) => void
ts注意
通过 startPlayPublicStream 开始播放公共流后,可以通过本回调获取公共流中包含的 SEI 信息。当公共流中的多路视频流均包含有 SEI 信息时:
SEI 不互相冲突时,将通过多次回调分别发送;
SEI 在同一帧有冲突时,则只有一条流中的 SEI 信息被透传并融合到公共流中。
参数
public_stream_id
类型: string
公共流 ID
message
类型: string
SEI 信息
source_type
订阅公共流的结果回调
通过 startPlayPublicStream 订阅公共流后,可以通过本回调获取订阅结果。
类型
(public_stream_id: string, error_code: PublicStreamErrorCode) => void
ts参数
public_stream_id
类型: string
公共流的 ID
error_code
公共流订阅结果状态码。
获取采集成功的本地屏幕视频帧,用于自定义处理或渲染。
类型
(frame: IVideoFrame) => void
ts参数
frame
类型: IVideoFrame
视频数据
获取采集成功的本地摄像头流视频帧,用于自定义处理或渲染。
类型
(frame: IVideoFrame) => void
ts参数
frame
类型: IVideoFrame
视频数据
视频管理获取采集成功的远端屏幕视频帧,用于自定义处理或渲染。
类型
(frame: IVideoFrame) => void
ts参数
frame
类型: IVideoFrame
视频数据
获取采集成功的远端摄像头流视频帧,用于自定义处理或渲染。
类型
(frame: IVideoFrame) => void
ts注意
不同的平台上(macOS, Windows, Linux)上获取的视频帧的 pixelFormat 可能不同。
参数
frame
类型: IVideoFrame
视频数据
公共流视频数据回调,绑定公共流到自定义渲染器后,通过该回调获取公共流视频数据。
类型
(frame: IVideoFrame) => void
ts参数
frame
类型: IVideoFrame
视频数据
当内部发生警告事件时触发该回调
类型
(warn: WarningCode) => void
ts参数
warn
类型: WarningCode
警告标识码
当内部发生不可逆转错误时触发该回调
类型
(error_code: ErrorCode, error_message: string) => void
ts参数
error_code
类型: ErrorCode
错误标识码
error_message
类型: string
错误详情
本地音乐文件播放已结束回调。
类型
() => void
ts注意
当调用 startAudioMixing 启动的混音文件播放结束后,会触发该回调。
音频混音文件播放状态改变时回调
类型
(id: number, state: AudioMixingState, error: AudioMixingError) => void
ts注意
参数
id
类型: number
混音 ID
state
类型: AudioMixingState
混音状态
error
类型: AudioMixingError
错误码
混音音频文件播放进度回调
类型
(mix_id: number, progress: number) => void
ts注意
调用 setAudioMixingProgressInterval 将时间间隔设为大于 0 的值后,或调用 startAudioMixing 将 AudioMixingConfig 中的时间间隔设为大于 0 的值后,SDK 会按照设置的时间间隔回调该事件。
参数
mix_id
类型: number
混音 ID
progress
类型: number
当前混音音频文件播放进度,单位毫秒
SDK 与信令服务器连接状态改变回调。连接状态改变时触发。
类型
(state: ConnectionState) => void
ts参数
state
类型: ConnectionState
当前 SDK 与信令服务器的连接状态
SDK 当前网络连接类型改变回调。当 SDK 的当前网络连接类型发生改变时回调该事件。
类型
(type: NetworkType) => void
ts注意
更多信息参见 连接状态提示。
参数
type
类型: NetworkType
SDK 当前的网络连接类型
本地未开启发布性能回退,检测到设备性能不足时,收到此回调。本地开启发布性能回退,因设备性能/网络原因,造成发布性能回退/恢复时,收到此回调。
类型
(mode: PerformanceAlarmMode, room_id: string, reason: PerformanceAlarmReason, data: SourceWantedData) => void
ts参数
mode
指示本地是否开启发布回退功能
room_id
类型: string
reason
告警原因
data
类型: SourceWantedData
性能回退相关数据
周期性地发出回调,报告当前cpu与memory使用率
类型
(stats: SysStats) => void
ts参数
stats
类型: SysStats
返回包含当前系统状态信息的结构体
房间内的用户调用 startAudioCapture 开启音频采集时,房间内其他用户会收到此回调。
类型
(room_id: string, user_id: string) => void
ts参数
room_id
类型: string
开启音频采集的远端用户所在的房间 ID
user_id
类型: string
开启音频采集的远端用户 ID
房间内的用户调用 stopAudioCapture 关闭音频采集时,房间内其他用户会收到此回调。
类型
(room_id: string, user_id: string) => void
ts参数
room_id
类型: string
关闭音频采集的远端用户所在的房间 ID
user_id
类型: string
关闭音频采集的远端用户 ID
本地采集到第一帧音频帧时,收到该回调
类型
(index: StreamIndex) => void
ts参数
index
类型: StreamIndex
音频流属性
收到房间内每一路音频流的第一帧时,收到该回调。
类型
(key: RemoteStreamKey) => void
ts参数
key
类型: RemoteStreamKey
远端音频流信息
因发布/订阅性能回退或退出回退状态,订阅的音视频流,发生流的切换时,收到该回调。
类型
(stream: RemoteStreamSwitch) => void
ts注意
你必须先通过 API 或控制台设置音视频流订阅回退功能时,你才能收到此回调。
参数
stream
流切换信息
第一帧本地采集的视频/屏幕共享画面在本地视图渲染完成时,收到此回调。
类型
(index: StreamIndex, info: VideoFrameInfo) => void
ts参数
index
类型: StreamIndex
流属性
info
类型: VideoFrameInfo
视频信息
本地视频大小或旋转配置发生改变时,收到此回调。
类型
(index: StreamIndex, info: VideoFrameInfo) => void
ts参数
index
类型: StreamIndex
流属性
info
类型: VideoFrameInfo
视频帧信息
远端视频大小或旋转配置发生改变时,房间内订阅此视频流的用户会收到此回调。
类型
(key: RemoteStreamKey, stream: VideoFrameInfo) => void
ts参数
key
类型: RemoteStreamKey
远端流信息
stream
类型: VideoFrameInfo
视频帧信息
第一帧远端视频流在视图上渲染成功后,收到此回调。
类型
(key: RemoteStreamKey, stream: VideoFrameInfo) => void
ts参数
key
类型: RemoteStreamKey
远端流信息
stream
类型: VideoFrameInfo
视频帧信息
SDK 接收并解码远端视频流首帧后,收到此回调。
类型
(key: RemoteStreamKey, stream: VideoFrameInfo) => void
ts参数
key
类型: RemoteStreamKey
远端流信息。
stream
类型: VideoFrameInfo
视频帧信息。
房间内的用户调用 startVideoCapture 开启视频采集时,房间内其他用户会收到此回调。
类型
(room_id: string, user_id: string) => void
ts参数
room_id
类型: string
开启视频采集的远端用户所在的房间 ID
user_id
类型: string
开启视频采集的远端用户 ID
房间内的用户调用 stopVideoCapture 关闭视频采集时,房间内其他用户会收到此回调。
类型
(room_id: string, user_id: string) => void
ts参数
room_id
类型: string
关闭视频采集的远端用户所在的房间 ID
user_id
类型: string
关闭视频采集的远端用户 ID
本地音频的状态发生改变时,该回调通知当前的本地音频状态。
已弃用
since 3.50. Use onAudioDeviceStateChanged instead.
类型
(state: LocalAudioStreamState, error: LocalAudioStreamError) => void
ts参数
state
本地音频设备的状态
error
本地音频状态改变时的错误码
调用 enableAudioPropertiesReport 后,根据设置的 config.interval,你会周期性地收到此回调,获取房间内的最活跃用户信息。
类型
(room_id: string, uid: string) => void
ts参数
room_id
类型: string
房间 ID
uid
类型: string
最活跃用户(ActiveSpeaker)的用户 ID
本地视频流的状态发生改变时,收到该事件。
已弃用
since 3.50. Use onVideoDeviceStateChanged instead.
类型
(index: StreamIndex, state: LocalVideoStreamState, error: LocalVideoStreamError) => void
ts参数
index
类型: StreamIndex
音/视频属性
state
本地视频流状态
error
本地视频状态改变时的错误码
音频首帧发送状态改变回调
类型
(room_id: string, user: RtcUser, state: FirstFrameSendState) => void
ts参数
room_id
类型: string
房间 ID
user
类型: RtcUser
本地用户信息
state
首帧发送状态
视频首帧发送状态改变回调
类型
(room_id: string, user: RtcUser, state: FirstFrameSendState) => void
ts参数
room_id
类型: string
房间 ID
user
类型: RtcUser
本地用户信息
state
首帧发送状态
屏幕共享流视频首帧发送状态改变回调
类型
(room_id: string, user: RtcUser, state: FirstFrameSendState) => void
ts参数
room_id
类型: string
房间 ID
user
类型: RtcUser
本地用户信息
state
首帧发送状态
音频首帧播放状态改变回调
类型
(room_id: string, user: RtcUser, state: FirstFramePlayState) => void
ts参数
room_id
类型: string
房间 ID
user
类型: RtcUser
远端用户信息
state
首帧播放状态
视频首帧播放状态改变回调
类型
(room_id: string, user: RtcUser, state: FirstFramePlayState) => void
ts参数
room_id
类型: string
房间 ID
user
类型: RtcUser
远端用户信息
state
首帧播放状态
屏幕共享流视频首帧播放状态改变回调
类型
(room_id: string, user: RtcUser, state: FirstFramePlayState) => void
ts参数
room_id
类型: string
房间id
user
类型: RtcUser
远端用户信息
state
首帧播放状态
当调用 sendMessageToUser 函数发送消息后,回调此条消息的发送结果(反馈)。
类型
(msgid: number, error: MessageSendResultCode) => void
ts参数
msgid
类型: number
本条消息的 ID
error
消息发送结果
单个用户接收到同一房间内其他 uid 所属用户发来二进制消息的回调(P2P)。
类型
(uid: string, message: string) => void
ts注意
同一房间内其他用户调用 sendUserBinaryMessage 发送二进制消息给本地用户时,本地用户会收到该回调。
参数
uid
类型: string
消息发送者 ID 。
message
类型: string
收到的二进制消息内容。
当订阅一个流成功的时候回调该事件
类型
(state_code: SubscribeState, user_id: string, info: SubscribeConfig) => void
ts注意
当更新流的内容时比如增加或者减少音视频流成功更新时也会回调该事件
参数
state_code
类型: SubscribeState
订阅流的结果
user_id
类型: string
用户的标识
info
类型: SubscribeConfig
流的属性
收到通过 sendSEIMessage 发送的带有 SEI 消息的视频帧时,收到此回调
类型
(stream_key: RemoteStreamKey, message: string) => void
ts参数
stream_key
类型: RemoteStreamKey
包含 SEI 发送者的用户名,所在的房间名和媒体流
message
类型: string
收到的 SEI 消息内容
单流转推直播状态回调
类型
(event: SingleStreamPushEvent, task_id: string, error: number) => void
ts参数
event
事件类型
task_id
类型: string
任务 ID
error
类型: number
错误类型
0: 推流成功。1090: 未定义的合流错误。1091: 客户端 SDK 检测到无效推流参数。1092: 状态错误,需要在状态机正常状态下发起操作。1093: 无效操作。1094: 转推直播任务处理超时,请检查网络状态并重试。1095: 服务端检测到错误的推流参数。1096: 对流的订阅超时。1097: 合流服务端内部错误。1098: 合流服务端推 CDN 失败。1099: 服务端接收信令超时,请检查网络状态并重试。1100: 图片合流失败。1101: 服务端未知错误。获取本地录制状态回调。
类型
(type: StreamIndex, state: number, error_code: number, info: RecordingInfo) => void
ts注意
该回调由 startFileRecording 或 stopFileRecording 触发。
参数
type
类型: StreamIndex
录制流的流属性
state
类型: number
录制状态
error_code
类型: number
录制错误码
info
类型: RecordingInfo
录制文件的详细信息
本地录制进度回调。
类型
(type: StreamIndex, process: RecordingProgress, info: RecordingInfo) => void
ts注意
该回调由 startFileRecording 触发,录制状态正常时,系统每秒钟都会通过该回调提示录制进度。
参数
type
类型: StreamIndex
录制流的流属性
process
录制进度
info
类型: RecordingInfo
录制文件的详细信息
调用 login 后,会收到此回调。
类型
(uid: string, error_code: number, elapsed: number) => void
ts参数
uid
类型: string
登录用户 ID
error_code
类型: number
登录结果
elapsed
类型: number
从调用 login 接口开始到返回结果所用时长,单位为 ms。
登出结果回调
类型
() => void
ts注意
调用 logout 后,会收到此回调。
设置业务服务器参数的返回结果
类型
(error: number) => void
ts注意
调用 setServerParams 后,会收到此回调。
参数
error
类型: number
设置结果
查询对端或本端用户登录状态的返回结果
类型
(peer_user_id: string, status: number) => void
ts注意
必须先调用 getPeeronlineStatus,才能收到此回调。
参数
peer_user_id
类型: string
需要查询的用户 ID
status
类型: number
查询的用户登录状态
收到房间外用户调用 sendUserMessageOutsideRoom 发来的文本消息时,会收到此回调
类型
(uid: string, message: string) => void
ts参数
uid
类型: string
消息发送者 ID
message
类型: string
收到的文本消息内容
收到房间外用户调用 sendUserBinaryMessageOutsideRoom 发来的二进制消息时,会收到此回调
类型
(uid: string, message: string) => void
ts参数
uid
类型: string
消息发送者 ID
message
类型: string
收到的二进制消息内容
给房间外指定的用户发送消息的回调
类型
(msgid: number, error: number) => void
ts注意
当调用 sendUserMessageOutsideRoom 或 sendUserBinaryMessageOutsideRoom 发送消息后,会收到此回调。
参数
msgid
类型: number
本条消息的 ID。所有的 P2P 和 P2Server 消息共用一个 ID 序列。
error
类型: number
消息发送结果
给业务服务器发送消息的回调
类型
(msgid: number, error: number, message: string) => void
ts注意
当调用 sendServerMessage 或 sendServerBinaryMessage 接口发送消息后,会收到此回调。
参数
msgid
类型: number
本条消息的 ID。所有的 P2P 和 P2Server 消息共用一个 ID 序列。
error
类型: number
消息发送结果
message
类型: string
应用服务器收到 HTTP 请求后,在 ACK 中返回的信息。
返回麦克风录制的音频数据
类型
(audio_frame: IAudioFrame) => void
ts参数
audio_frame
类型: IAudioFrame
麦克风录制的音频数据
返回远端所有用户混音后的音频数据
类型
(audio_frame: IAudioFrame) => void
ts参数
audio_frame
类型: IAudioFrame
远端所有用户混音后的音频数据
返回本地麦克风录制和远端所有用户混音后的音频数据
类型
(audio_frame: IAudioFrame) => void
ts参数
audio_frame
类型: IAudioFrame
本地麦克风录制和远端所有用户混音后的音频数据
语音识别服务开启成功回调
类型
() => void
ts语音转文字成功回调,该回调返回识别后的全量消息。
类型
(message: string) => void
ts注意
若识别过程中发生了网络连接中断,则重连后回调的信息中只包含重连后识别的文字消息,不再包含上一次连接后识别的消息。
参数
message
类型: string
识别完成后得到的文字消息
当语音识别服务内部发生错误事件时触发该回调。
类型
(error_code: number, error_message: string) => void
ts参数
error_code
类型: number
错误码 <0: 参数错误或 API 调用顺序错误
-1: 网络连接中断,服务不可用,内部会进行重连
-2: 重复调用 startASR。开启语音识别服务后,你需要先调用 stopASR 停止语音识别服务,才能二次调用 startASR 再次开启服务。
-3: 语音识别服务所需 token 为空
-4: Signature 鉴权模式下 secret_key 为空
-5: 用户 ID 为空
-6: 应用 ID 为空
-7: 语音识别服务 cluster 为空
-8: 语音识别服务连接失败,该版本没有语音识别功能,请联系 RTC 技术支持。
error_message
类型: string
错误原因说明
成功调用 startNetworkDetection 接口开始探测后,会在 3s 内首次收到该回调,之后每 2s 收到一次该回调。
类型
(type: number, quality: number, rtt: number, lost_rate: number, bit_rate: number, jitter: number) => void
ts参数
type
类型: number
探测网络类型为上行/下行
quality
类型: number
探测网络的质量
0: 网络质量未知。
1: 网络质量极好。
2: 主观感觉和 kNetworkQualityExcellent 差不多,但码率可能略低。
3: 主观感受有瑕疵但不影响沟通。
4: 勉强能沟通但不顺畅。
5: 网络质量非常差,基本不能沟通。
rtt
类型: number
探测网络的 RTT,单位:ms
lost_rate
类型: number
探测网络的丢包率
bit_rate
类型: number
探测网络的带宽,单位:kbps
jitter
类型: number
探测网络的抖动,单位:ms
通话前网络探测结束
类型
(reason: number) => void
ts注意
以下情况将停止探测并收到本一次本回调:
stopNetworkDetection 接口停止探测后,会收到一次该回调;参数
reason
类型: number
停止探测的原因类型
0: 用户主动停止1: 探测超过三分钟2: 探测网络连接断开。当超过 12s 没有收到回复,SDK 将断开网络连接,并且不再尝试重连。3: 本地开始推拉流,停止探测4: 网络探测失败,内部异常调用 enableAudioPropertiesReport 后,根据设置的 interval 值,你会周期性地收到此回调,了解本地音频的相关信息。
类型
(audio_properties_infos: LocalAudioPropertiesInfo[], audio_properties_info_number: number) => void
ts参数
audio_properties_infos
类型: LocalAudioPropertiesInfo[]
本地音频信息。本地音频包括使用 RTC SDK 内部机制采集的麦克风音频和屏幕音频。
audio_properties_info_number
类型: number
数组长度,无需关注
远端用户进房后,本地调用 enableAudioPropertiesReport,根据设置的 interval 值,本地会周期性地收到此回调,了解订阅的远端用户的音频信息。
类型
(audio_properties_infos: RemoteAudioPropertiesInfo[], audio_properties_info_number: number, total_remote_volume: number) => void
ts参数
audio_properties_infos
类型: RemoteAudioPropertiesInfo[]
远端音频信息,其中包含音频流属性、房间 ID、用户 ID。远端用户的音频包括使用 RTC SDK 采集的麦克风音频和屏幕音频。
audio_properties_info_number
类型: number
数组长度,无需关注
total_remote_volume
类型: number
订阅的所有远端流的总音量。
通话前网络探测结束
类型
(result: EchoTestResult) => void
ts注意
该回调触发的时机包括:
参数
result
类型: EchoTestResult
视频频设备状态回调。提示摄像头视频采集、屏幕视频采集等设备的状态。
类型
(device_id: string, device_type: number, device_state: number, device_error: number) => void
ts参数
device_id
类型: string
设备 ID。采集屏幕共享流时,设备 ID 为固定字符串 screen_capture_video
device_type
类型: number
设备类型
-1: 未知设备类型
0: 视频渲染设备类型
1: 视频采集设备类型
2: 屏幕流视频设备
device_state
类型: number
设备状态
1: 设备已开启
2: 设备已停止
3: 设备运行时错误。例如,当媒体设备的预期行为是正常采集,但没有收到采集数据时,将回调该状态。
4: 设备已暂停。包括:
采集过程中,目标应用窗体最小化到任务栏。
开启采集或采集过程中,目标应用窗体被隐藏。
采集过程中,目标应用窗体正在被拉伸。
采集过程中,目标应用窗体正在被拖动。
5: 设备已恢复
10: 设备已插入
11: 设备被移除
12: 用户合盖打断了视频通话。如果系统未休眠或关机,将在开盖后自动恢复视频通话。
13: 视频通话已从合盖打断中恢复
14: 设备成为系统默认
15: 设备不再是系统默认
device_error
类型: number
设备错误类型
0: 媒体设备正常
1: 没有权限启动媒体设备
2: 媒体设备已经在使用中
3: 媒体设备错误
4: 未找到指定的媒体设备
5: 媒体设备被移除,对象为采集屏幕流时,表明窗体被关闭或显示器被移除。
6: 设备没有数据回调
7: 设备采样率不支持
音频设备状态回调。提示音频采集、音频播放等设备设备的状态。
类型
(device_id: string, device_type: number, device_state: number, device_error: number) => void
ts参数
device_id
类型: string
设备 ID
device_type
类型: number
设备类型
-1: 未知设备类型
0: 音频渲染设备类型
1: 音频采集设备类型
2: 屏幕流音频设备
device_state
类型: number
设备状态
1: 设备已开启
2: 设备已停止
3: 设备运行时错误。例如,当媒体设备的预期行为是正常采集,但没有收到采集数据时,将回调该状态。
4: 设备已暂停。包括:
采集过程中,目标应用窗体最小化到任务栏。
开启采集或采集过程中,目标应用窗体被隐藏。
采集过程中,目标应用窗体正在被拉伸。
采集过程中,目标应用窗体正在被拖动。
5: 设备已恢复
10: 设备已插入
11: 设备被移除
12: 用户合盖打断了视频通话。如果系统未休眠或关机,将在开盖后自动恢复视频通话。
13: 通话已从合盖打断中恢复
14: 设备成为系统默认
15: 设备不再是系统默认
device_error
类型: number
设备错误类型
0: 媒体设备正常
1: 没有权限启动媒体设备
2: 媒体设备已经在使用中
3: 媒体设备错误
4: 未找到指定的媒体设备
5: 媒体设备被移除,对象为采集屏幕流时,表明窗体被关闭或显示器被移除。
6: 设备没有数据回调
7: 设备采样率不支持
回调音频设备测试时的播放音量
类型
(volume: number) => void
ts注意
调用 startAudioPlaybackDeviceTest 开始播放音频文件或录音时,将开启该回调。本回调为周期性回调,回调周期由上述接口的 interval 参数指定。
参数
volume
类型: number
音频设备测试播放音量。单位:毫秒。推荐设置为 200 ms。范围:[0,255]