Tutorial: 检测网络质量

检测网络质量

在会议过程中,检测用户的网络质量,可以判断用户当下的网络质量情况。若用户网络质量太差,应建议用户检查网络或尝试更换网络,以保证正常通话质量。

本文主要介绍如何基于app.data.avdSDK.Enum.RoomCallback.connection_status回调事件实现会议过程网络质量检测。

通话过程中的网络质量检测

room.addCallback(app.data.avdSDK.Enum.RoomCallback.connection_status, onConnectionStatus); 
/**
@status 房间网络状态
*/
function onConnectionStatus(status) {
	 if (status == app.data.avdSDK.Enum.ConnectionStatus.connecting) {
          wx.showLoading({
            title: '重连中...',
            mask: true
          })
        }else if (status == app.data.avdSDK.Enum.ConnectionStatus.connected || status == app.data.avdSDK.Enum.ConnectionStatus.reconnected) {
      this.startFun();
      wx.hideLoading()
    } else if (status == app.data.avdSDK.Enum.ConnectionStatus.connectFailed) {
      wx.showLoading({
        title: '重新加会中...',
        mask: true
      })
    } else if (status == app.data.avdSDK.Enum.ConnectionStatus.reJoinConnected) {
      this.startFun();
      wx.hideLoading()
    } else if (status == app.data.avdSDK.Enum.ConnectionStatus.reJoinRoomTimeOut) {

      wx.showModal({
        title: '重新加会失败',
        showCancel: false,
        success: function (res) {
          if (res.confirm) {
            var reason = 1; //退会原因
            app.data.avdSDK.room.leave(reason).then(function () {
              wx.redirectTo({
                url: "../touch/touch",
              });
            });
          } else if (res.cancel) {

          }
        }
      })
    }
}