瀏覽代碼

优化日志封装文件

tangdehang 3 月之前
父節點
當前提交
274d748cf7
共有 1 個文件被更改,包括 31 次插入13 次删除
  1. 31 13
      static/rtcEngine/js/logReport.js

+ 31 - 13
static/rtcEngine/js/logReport.js

@@ -16,9 +16,9 @@ export default class LogReport {
     'clientType': '', // 客户端类型 // 目前判断出wx或h5
     'phoneModel': '', // 手机型号 // 无法获取
     'phoneSystemVersion': '', // 手机系统版本号 // 无法获取
-    'phoneNetwork': '', // 手机网络类型 // 无法获取
+    'phoneNetwork': '', // 手机网络类型
     'videoType': '', // 视频类型 H265
-    'imageQuality': '', // 推流质量 [高清 | 流畅] // 可以判断
+    'imageQuality': '', // 推流质量 [高清 | 流畅] 
     'userCardId': '', 
     'cardInfoId': '', // 无法获取
     'resourceId': '', // 资源ID
@@ -27,7 +27,7 @@ export default class LogReport {
     'linkEndTime': '', // 链接结束时间 格式 yyyy-MM-dd HH:mm:ss
     // 'linkTime': '', // 链接时间 格式 yyyy-MM-dd HH:mm:ss
     'linkScene': 1, // 链接场景
-    'linkWay': 1, // 链接方式(1:中转链接、2:打洞链接、3:安卓卡网络状态差、4:接口返回链接信息缺失)
+    'linkWay': 1, // 链接方式(0:其它原因 1:中转链接、2:打洞链接、3:安卓卡网络状态差、4:接口返回链接信息缺失)
     'plugFowStatus': '', // 推流状态 int: 1 成功 2:失败
     'logContent': '' // 日志内容
   };
@@ -44,14 +44,6 @@ export default class LogReport {
     'h5': 7,
   });
 
-  // 连接状态 枚举值
-  LINK_WAY = Object.freeze({
-    1: '中转连接',
-    2: '打洞连接',
-    3: '安卓卡网络状态差',
-    4: '接口返回链接信息缺失',
-  });
-
   // 码率 枚举值
   BITRATE = Object.freeze({
     1800: '标清',
@@ -128,10 +120,35 @@ export default class LogReport {
     // 调用 checkSwitch 方法,检查后端上报日志开关是否打开
 		await this.checkSwitch();
 
+    this.netWorkChange();
+
     // 创建定时器
     // await this.createTimer();
   }
 
+  // 获取浏览器网络类型 isDestroy 是否移除监听
+  netWorkChange(isDestroy = false) {
+    if(!isDestroy && 'connection' in navigator) {
+      const connection = navigator.connection;
+      console.log(connection)
+      // 初始化时获取一次
+      this.paramsJson.phoneNetwork = connection.effectiveType;
+
+      // 监听网络类型变化
+      const updateResourceLoad = () => {
+        this.paramsJson.phoneNetwork = connection.effectiveType;
+      }
+    
+      // 监听网络类型变化
+      connection.addEventListener('change', updateResourceLoad);
+
+      if(isDestroy) {
+        // 移除事件监听
+        connection.removeEventListener('change', updateResourceLoad);
+      }
+    }
+  }
+
 	/**
 	 * 检查后端上报日志开关是否打开
 	*/
@@ -222,8 +239,6 @@ export default class LogReport {
   
       params.imageQuality = this.enumAssignment(this.BITRATE, this.paramsJson.imageQuality);
   
-      params.linkWay = this.enumAssignment(this.BITRATE, this.paramsJson.linkWay);
-
       params.linkScene = this.enumAssignment(this.LINK_SCENE, this.paramsJson.linkScene);
 
       params.videoType = this.enumAssignment(this.VIDEO_TYPE, this.paramsJson.videoType);
@@ -288,5 +303,8 @@ export default class LogReport {
     this.reportSwitchStatus = false;
     // 清空定时器
     await this.clearTimer();
+
+    // 移除事件监听
+    this.netWorkChange(true);
   }
 }