设置 TRTCCloud 回调
Example
import TRTCCloud from 'trtc-cloud-js-sdk';
const trtcCloud = TRTCCloud.getTRTCShareInstance();
// 添加事件监听的方法,事件关键字详见下方”通用事件回调“
trtcCloud.on('onEnterRoom', (result) => {
  if (result > 0) {
    console.log(`enter room success, spend ${result}ms`);
  } else {
    console.log(`enter room failed, error code = ${result}`);
  }
});
          Events
onError
错误回调:SDK 不可恢复的错误,一定要监听,并分情况给用户适当的界面提示
Parameters:
| Name | Type | Description | 
|---|---|---|
code | 
                Number | 
                   错误码  | 
              
message | 
                String | 
                   错误信息  | 
              
onEnterRoom
进房后的回调
              调用 enterRoom() 接口执行进房操作后,会收到 onEnterRoom 回调
- 如果加入成功,result 会是一个正数(result > 0),代表加入房间的时间消耗,单位是毫秒(ms)。
 - 如果加入失败,result 会是一个负数(result < 0),代表进房失败的错误码。
 
Parameters:
| Name | Type | Description | 
|---|---|---|
result | 
                Number | 
                   进房耗时  | 
              
onExitRoom
离开房间的事件回调
              调用 exitRoom() 接口会执行退出房间的相关逻辑,例如释放音视频设备资源和编解码器资源等。待资源释放完毕,会通过 onExitRoom 回调通知到您
Note:
- 如果您要再次调用 enterRoom() 或者切换到其他的音视频 SDK, 请等待 onExitRoom 回调到来之后再执行相关操作。 否则可能会遇到音频设备被占用等各种异常问题
 
Parameters:
| Name | Type | Description | 
|---|---|---|
reason | 
                Number | 
                   离开房间原因,0:主动调用 exitRoom 退房;1:被服务器踢出当前房间;2:当前房间整个被解散  | 
              
onRemoteUserEnterRoom
有用户加入当前房间
Parameters:
| Name | Type | Description | 
|---|---|---|
userId | 
                String | 
                   用户标识 ID  | 
              
onRemoteUserLeaveRoom
有用户离开当前房间
              Note:
            
- live 模式下,不支持观众进退房通知
 
Parameters:
| Name | Type | Description | 
|---|---|---|
userId | 
                String | 
                   用户标识 ID  | 
              
reason | 
                Number | 
                   离开原因,0 表示用户主动退出房间,1 表示用户超时退出,2 表示被踢出房间  | 
              
onUserAudioAvailable
远端用户是否存在可播放的音频数据
Parameters:
| Name | Type | Description | 
|---|---|---|
userId | 
                String | 
                   用户标识 ID  | 
              
available | 
                Number | 
                   声音是否开启  | 
              
onUserVideoAvailable
远端用户是否存在可播放的主路画面(一般用于摄像头)
Parameters:
| Name | Type | Description | 
|---|---|---|
userId | 
                String | 
                   用户标识 ID  | 
              
available | 
                Number | 
                   画面是否开启  | 
              
onUserSubStreamAvailable
远端用户是否存在可播放的辅路画面(屏幕分享)
Parameters:
| Name | Type | Description | 
|---|---|---|
userId | 
                String | 
                   用户标识 ID  | 
              
available | 
                Boolean | 
                   画面是否开启  | 
              
onSwitchRole
切换角色的事件回调
Parameters:
| Name | Type | Description | 
|---|---|---|
code | 
                Number | 
                   状态码  | 
              
message | 
                String | 
                   状态码对应的信息  | 
              
onUserVoiceVolume
音量大小事件
              调用 enableAudioVolumeEvaluation() 接口开启音量大小回调后,
              SDK 会定时抛出该事件,通知每个 userId 的音量大小。
Parameters:
| Name | Type | Description | 
|---|---|---|
userVolumes | 
                Array.<TRTCVolumeInfo> | 
                   房间内所用用户的音量  | 
              
onNetworkQuality
网络质量统计数据事件,进房后开始统计,每两秒触发一次,包括上、下行的网络质量数据
- 上行网络质量(uplinkNetworkQuality)为 SDK 到腾讯云的上行连接网络质量
 - 下行网络质量(downlinkNetworkQuality)为腾讯云到 SDK 的所有下行连接的平均网络质量 其枚举值及含义如下表所示
                其枚举值及含义如下表所示:
                
数值 含义 0 网络状况未知,表示当前 client 实例还没有建立上行/下行连接 1 网络状况极佳 2 网络状况较好 3 网络状况一般 4 网络状况差 5 网络状况极差 6 网络连接已断开 
注意:若下行网络质量为此值,则表示所有下行连接都断开了 - uplinkRTT,uplinkLoss 为上行 RTT(ms) 及上行丢包率。
 - downlinkRTT,downlinkLoss 为所有下行连接的平均 RTT(ms) 及平均丢包率。
 
Parameters:
| Name | Type | Description | 
|---|---|---|
userId | 
                String | 
                   用户 ID  | 
              
uplinkNetworkQuality | 
                TRTCNetQuality | 
                   上行网络质量  | 
              
uplinkRTT | 
                Number | 
                   上行 RTT(ms)  | 
              
uplinkLoss | 
                Number | 
                   上行丢包率  | 
              
downlinkRTT | 
                Number | 
                   所有下行连接的平均 RTT(ms)  | 
              
downlinkLoss | 
                Number | 
                   所有下行连接的平均丢包率  | 
              
onDeviceChange
设备插拔事件
Parameters:
| Name | Type | Description | 
|---|---|---|
deviceId | 
                String | 
                   设备 ID  | 
              
type | 
                TRTCDeviceType | 
                   设备类型  | 
              
state | 
                TRTCDeviceState | 
                   设备状态  |