<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <link rel="shortcut icon" type="image/x-icon" href="" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta Property="og:image" content="http://www.ybljg.com/wiki/share-logo.png" />
    <meta name="keywords" content="5G工业路由器,4G工业路由器,4G无线路由器,4G DTU,串口服务器,边缘计算网关,数传终端,DTU,lora,lora模块,串口转以太网模块,4G模块,wifi模块,GPRS模块,蓝牙模块,nbiot模块,nbiot,串口WIFI模块,串口联网服务器,无线串口服务器,无线模块,超级网口" />
    <meta name="description" content="有人物联网定位为可信赖的智慧工业物联网伙伴。主营5G/4G工业级无线路由器、串口服务器、数传终端DTU、边缘计算网关、Cat-1模块、LoRa网关/模块、4G DTU、4G模块、蓝牙模块、串口WIFI模块、WIFI无线串口服务器、串口转以太网模块、超级网口以及云平台传输，实现软硬一体化联网解决方案。" />
    <title></title>
    <style>html {overflow-y: hidden;}</style>
    <!-- <link rel="stylesheet" href="http://smart-guide.beebox.cc/web-tracing/index.css" /> -->
    <link rel="stylesheet" href="/wiki/cdn/luckysheet/plugins/css/pluginsCss.css" />
    <link rel="stylesheet" href="/wiki/cdn/luckysheet/plugins/plugins.css" />
    <link rel="stylesheet" href="/wiki/cdn/luckysheet/css/luckysheet.css" />
    <link rel="stylesheet" href="/wiki/cdn/luckysheet/assets/iconfont/iconfont.css" />
    <script src="/wiki/cdn/luckysheet/plugins/js/plugin.js"></script>
    <script src="/wiki/cdn/luckysheet/luckysheet.umd.js"></script>
    <script src="/wiki/cdn/jsonObjFormat/json-obj-formatter-show.js"></script>
    <script src="http://res.wx.qq.com/connect/zh_CN/htmledition/js/wxLogin.js"></script>
    <script type="module" crossorigin src="/wiki/cdn/index.9a7dd8f8.js"></script>
    <link rel="modulepreload" href="/wiki/cdn/@babel.c593e1f7.js">
    <link rel="modulepreload" href="/wiki/cdn/@vue.15339fdc.js">
    <link rel="modulepreload" href="/wiki/cdn/vue.6a80a045.js">
    <link rel="modulepreload" href="/wiki/cdn/@iconify.56238cb6.js">
    <link rel="modulepreload" href="/wiki/cdn/vue-simple-uploader.5e1c377d.js">
    <link rel="modulepreload" href="/wiki/cdn/js-binary-schema-parser.8fe6ba8c.js">
    <link rel="modulepreload" href="/wiki/cdn/vue-qr.661300b8.js">
    <link rel="modulepreload" href="/wiki/cdn/decode-uri-component.2fd1012d.js">
    <link rel="modulepreload" href="/wiki/cdn/split-on-first.c740bfae.js">
    <link rel="modulepreload" href="/wiki/cdn/filter-obj.b5dbd1c5.js">
    <link rel="modulepreload" href="/wiki/cdn/query-string.4b96ab7d.js">
    <link rel="modulepreload" href="/wiki/cdn/source-map.003ff7c4.js">
    <link rel="modulepreload" href="/wiki/cdn/@intlify.93573470.js">
    <link rel="modulepreload" href="/wiki/cdn/vue-i18n.65e80b9f.js">
    <link rel="modulepreload" href="/wiki/cdn/js-cookie.1d1e563c.js">
    <link rel="modulepreload" href="/wiki/cdn/resize-observer-polyfill.725e97a4.js">
    <link rel="modulepreload" href="/wiki/cdn/compute-scroll-into-view.f61ee0a8.js">
    <link rel="modulepreload" href="/wiki/cdn/b-tween.a4067766.js">
    <link rel="modulepreload" href="/wiki/cdn/dayjs.c36c5ecf.js">
    <link rel="modulepreload" href="/wiki/cdn/number-precision.88c87e1e.js">
    <link rel="modulepreload" href="/wiki/cdn/scroll-into-view-if-needed.60530630.js">
    <link rel="modulepreload" href="/wiki/cdn/b-validate.0318a6d9.js">
    <link rel="modulepreload" href="/wiki/cdn/@arco-design.732e597a.js">
    <link rel="modulepreload" href="/wiki/cdn/uuid.cdbaf148.js">
    <link rel="modulepreload" href="/wiki/cdn/axios.a8c78644.js">
    <link rel="modulepreload" href="/wiki/cdn/dompurify.46e9c79b.js">
    <link rel="modulepreload" href="/wiki/cdn/marked.90372a40.js">
    <link rel="modulepreload" href="/wiki/cdn/highlight.js.aabba2f7.js">
    <link rel="modulepreload" href="/wiki/cdn/vue-router.2903ab98.js">
    <link rel="modulepreload" href="/wiki/cdn/lodash.ef50acf7.js">
    <link rel="modulepreload" href="/wiki/cdn/vue-demi.0aac1d56.js">
    <link rel="modulepreload" href="/wiki/cdn/pinia.41e7febb.js">
    <link rel="modulepreload" href="/wiki/cdn/pinia-plugin-persist.15e0ab69.js">
    <link rel="modulepreload" href="/wiki/cdn/mitt.fd9617fa.js">
    <link rel="modulepreload" href="/wiki/cdn/fabric.f6758808.js">
    <link rel="modulepreload" href="/wiki/cdn/nprogress.cf76bd00.js">
    <link rel="modulepreload" href="/wiki/cdn/@vueuse.e038175c.js">
    <link rel="modulepreload" href="/wiki/cdn/lottie-web.ee78171b.js">
    <link rel="modulepreload" href="/wiki/cdn/recorder-core.d9fe56ec.js">
    <link rel="stylesheet" href="/wiki/cdn/vue-simple-uploader.130ca9d0.css">
    <link rel="stylesheet" href="/wiki/cdn/@arco-design.ad7528e9.css">
    <link rel="stylesheet" href="/wiki/cdn/highlight.js.71470cc6.css">
    <link rel="stylesheet" href="/wiki/cdn/nprogress.4f85ad69.css">
    <link rel="stylesheet" href="/wiki/cdn/index.24e6534f.css">
    <link rel="stylesheet" href="/wiki/cdn/animate.css.a4059b26.css">
  </head>

  <body>
    <div id="app"></div>
    
    <!-- <script src="/web-tracing/index.js"></script> -->

    <!-- 本地环境-test-dev -->
    <!-- <script src="http://192.168.16.100/web-tracing/index.js"></script> -->

    <!-- 暂时线上环境 -->
    <!-- <script src="http://smart-guide.beebox.cc/web-tracing/index.js"></script> -->
    <!-- <script data-id="web-tracing">
      var config = {
        applicationName: '牵牛易帮',
        applicationCode: 'eman',
        domain: 'http://smart-guide.beebox.cc/service',  // 测试环境
        // domain:'http://smart-guide.beebox.cc/service', // 线上环境
        homePage: '/home/start',
        proxyPath: '/'
      }
      // http://192.168.22.55:8080
      var main = async function (){
        window.InitWebTracing({
          appName: config.applicationName,
          appCode: config.applicationCode,
          appVersion: '1.0.0',
          homePage: config.homePage,
          // 基础数据， 计算规则
          // * 会话数，统计一段时间内 事件eventId 为 page， 并且 eventType 为 performance 的数据中， sessionId 的个数 ，sessionId 会存入cookie,存活时长为30分钟,每次触发采集事件都会刷新这个ID
          // * 用户数，统计一段时间内 事件eventId 为 page， 并且 eventType 为 performance 的数据中， userId 的个数
          // * 页面访问数， 统计对应页面的pv事件的个数
          // * 页面停留时间， 统计对应页面的pv-duration事件中的durationTime
          basicData: {
            performance: {
              firstResource: false // 是否采集首次进入页面的数据
            },
            page: {
              pv: true, // 是否发送页面跳转相关数据
              triggerPageUrls: null
              // triggerPageUrls: [
              //   '/project/projectIndex', // 软件项目
              //   '/humanServices/humanServicesIndex', // 人服项目
              //   '/task/taskIndex' // 任务管理
              // ] // 需要采集哪些页面
            },
            // 错误信息， 可选择是否开启
            error: {
              core: false, // 是否采集异常数据
              server: false // 是否采集报错接口数据
            }
          },
          api: {
            domain: config.domain,
            // 参数获取
            params: () => {
              const ext = JSON.parse(localStorage.getItem(config.proxyPath) || '{}')
              return {
                applicationCode: config.applicationCode,
                // userCode: ext?.userCode,
                userCode: ext?.id,
                userName: ext?.userName,
                newUser: ext?.newUser,
              }
            }
          },
          customBeforeSendData (data) { 
            // fix: 切换文章或者点击锚就会触发上报。
            data.eventInfo = data.eventInfo.filter((item)=>{
              // return (item.action ==='navigation' && item.triggerPageUrl.indexOf("article/manual-content")>-1);
              if(item.action ==='navigation' && item.triggerPageUrl.indexOf("article/manual-content")>-1){
                 const { hash }=  new URL(item.triggerPageUrl);
                 if((hash && hash === '#top') || (!hash)){
                   return item;
                 }
              }else{
                return item;
              }
            });
            // 过滤掉第三方系统通过牵牛实现文档协同的页面
            data.eventInfo = data.eventInfo.filter((item) => {
              return !item.triggerPageUrl.includes('/attachment') || !item.referer.includes('/attachment')
            });
            // 传指定页面，过滤后的处理
            data.eventInfo = data.eventInfo.filter((item) => {
              return (item.eventType === 'pv' && item.triggerPageUrl !== item.referer) || (item.eventType !== 'pv')
            });
            const pvTriggerPageUrl = data.eventInfo.find((item) => item.eventType === 'pv')?.triggerPageUrl;
            if (pvTriggerPageUrl) {
              data.eventInfo = data.eventInfo.filter((item) => {
                return (item.eventType === 'pv-duration' && item.triggerPageUrl !== pvTriggerPageUrl) || (item.eventType !== 'pv-duration');
              })
            }
            // 不用这几个
            delete data.baseInfo.userUuid
            delete data.baseInfo.sdkVersion
            var ext = JSON.parse(localStorage.getItem(config.proxyPath) || '{}')
            // 额外增加
            data.baseInfo.userId = ext?.id
            data.baseInfo.roleCodeList = ext?.roleCodeList
            data.baseInfo.userName = ext?.userName
            if(!data.baseInfo.userId) {
              document.cookie = '_webtracing_session_id=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;';
            }
            return data
          }
        })
      }
      main()
    </script> -->
  </body>
</html>
