网络质量是影响参会体验的关键因素之一,通过平台开发者可实时获取会议网络质量数据以支持数据分析或显示。
网络质量数据通过事件回调的方式返回,根据小鱼易连产品定义规则进行了质量级别的划分,开发者可参考进行后续业务处理。
会议中实现了XYRTCEngineDelegate即可收到onNetworkIndicatorLevelChanged回调,该方法参数level代表了当前的网络质量,分别为1、2、3、4个等级,代表了差、中、良、优。此信息可在UI界面上呈现给用户,如果网络非常慢的情况下,可以通过关闭视频的方式来保证会议质量。 onVideoStatusChange回调显示了会议中视频质量状态,分别为
实现XYRTCEngineDelegate接口后, 实现onNetworkIndicatorLevelChanged函数, 并把收到的数据转发到对应的 Model:
onNetworkIndicatorLevelChanged(level: number): void {
console.log("=====onNetworkIndicatorLevelChanged level: ", level);
XYEmitter.getInstance().emmit<number>(XYEventKeys.onNetworkIndicatorLevelChangedKey, level);
}
收到变化后 UI层做出响应:
handleOnNetworkIndicatorLevelChanged(level: number) {
Logger.info("OnNetworkIndicatorLevelChanged level: " + level);
this.xyCallTooBarModel.localNetWorkLevel = level;
}
getNetWorkImage() {
let image = "icon_xinhao_4";
if (this.xyCallTooBarModel.localNetWorkLevel === 1) {
image = "icon_xinhao_1_1";
} else if (this.xyCallTooBarModel.localNetWorkLevel === 2) {
image = "icon_xinhao_2_1";
} else if (this.xyCallTooBarModel.localNetWorkLevel === 3) {
image = "icon_xinhao_3_1";
}
return XYResourceManager.getImage(image);
}