648540858
2022-10-18 3c52a16e5fcf9a1f20b3ef06220e021b712337b6
web_src/src/components/control.vue
@@ -235,10 +235,8 @@
      <el-table-column prop="local_ip" label="本地"></el-table-column>
      <el-table-column prop="typeid" label="类型"></el-table-column>
      <el-table-column align="right">
        <template slot="header" slot-scope="scope">
          <el-button icon="el-icon-refresh-right" circle @click="getAllSession()"></el-button>
        </template>
        <template slot-scope="scope">
        <template v-slot:default="scope">
          <el-button size="mini" icon="el-icon-refresh-right" circle @click="getAllSession()"></el-button>
          <el-button @click.native.prevent="deleteRow(scope.$index, allSessionData)" type="text" size="small">移除
          </el-button>
        </template>
@@ -326,12 +324,12 @@
     */
    getThreadsLoad: function () {
      let that = this;
      if (that.mediaServerChoose != null) {
      if (!!that.mediaServerChoose) {
        this.$axios({
          method: 'get',
          url: '/zlm/' + that.mediaServerChoose + '/index/api/getThreadsLoad'
        }).then(function (res) {
          if (res.data.code == 0) {
          if (res.data.code === 0) {
            that.tableOption.xAxis.data.push(new Date().toLocaleTimeString('chinese', {
              hour12: false
            }));
@@ -377,7 +375,7 @@
    },
    getLoadCount: function () {
      let that = this;
      if (that.mediaServerChoose != null) {
      if (!!that.mediaServerChoose) {
        that.mediaServer.getMediaServer(that.mediaServerChoose, (data) => {
          if (data.code == 0) {
            that.loadCount = data.data.count
@@ -475,42 +473,46 @@
    },
    getAllSession: function () {
      let that = this;
      that.allSessionData = [];
      this.$axios({
        method: 'get',
        url: '/zlm/' + that.mediaServerChoose + '/index/api/getAllSession'
      }).then(function (res) {
        res.data.data.forEach(item => {
          let data = {
            peer_ip: item.peer_ip,
            local_ip: item.local_ip,
            typeid: item.typeid,
            id: item.id
          };
          that.allSessionData.push(data);
      this.allSessionData = [];
      if (!!this.mediaServerChoose) {
        this.$axios({
          method: 'get',
          url: '/zlm/' + this.mediaServerChoose + '/index/api/getAllSession'
        }).then((res)=> {
          res.data.data.forEach(item => {
            let data = {
              peer_ip: item.peer_ip,
              local_ip: item.local_ip,
              typeid: item.typeid,
              id: item.id
            };
            this.allSessionData.push(data);
          });
        });
      });
      }
    },
    getServerConfig: function () {
      let that = this;
      this.$axios({
        method: 'get',
        url: '/zlm/' + that.mediaServerChoose + '/index/api/getServerConfig'
      }).then(function (res) {
        let info = res.data.data[0];
        let serverInfo = {}
        for (let i = 0; i < Object.keys(info).length; i++) {
          let key = Object.keys(info)[i];
          let group = key.substring(0, key.indexOf("."))
          let itemKey = key.substring(key.indexOf(".") + 1)
          if (!serverInfo[group]) serverInfo[group] = {}
          serverInfo[group][itemKey] = info[key]
        }
      if (!!this.mediaServerChoose) {
        this.$axios({
          method: 'get',
          url: '/zlm/' + this.mediaServerChoose + '/index/api/getServerConfig'
        }).then((res)=> {
          let info = res.data.data[0];
          let serverInfo = {}
          for (let i = 0; i < Object.keys(info).length; i++) {
            let key = Object.keys(info)[i];
            let group = key.substring(0, key.indexOf("."))
            let itemKey = key.substring(key.indexOf(".") + 1)
            if (!serverInfo[group]) serverInfo[group] = {}
            serverInfo[group][itemKey] = info[key]
          }
        that.serverConfig = serverInfo;
        that.visible = true;
      });
          this.serverConfig = serverInfo;
          this.visible = true;
        });
      }
    },
    getWVPServerConfig: function () {
      let that = this;
@@ -533,6 +535,14 @@
    },
    reStartServer: function () {
      let that = this;
      if (!!!this.mediaServerChoose) {
        this.$message({
          type: 'info',
          message: '未选择节点'
        });
        return;
      }
      this.$confirm('此操作将重启媒体服务器, 是否继续?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
@@ -544,7 +554,7 @@
          url: '/zlm/' + that.mediaServerChoose + '/index/api/restartServer'
        }).then(function (res) {
          that.getAllSession();
          if (res.data.code == 0) {
          if (res.data.code === 0) {
            that.$message({
              type: 'success',
              message: '操作完成'
@@ -573,17 +583,19 @@
      console.log(JSON.stringify(tabledata[index]));
    },
    deleteSession: function (id) {
      let that = this;
      this.$axios({
        method: 'get',
        url: '/zlm/' + that.mediaServerChoose + '/index/api/kick_session?id=' + id
      }).then(function (res) {
        that.getAllSession();
        that.$message({
          type: 'success',
          message: '删除成功!'
      if (!!this.mediaServerChoose) {
        this.$axios({
          method: 'get',
          url: '/zlm/' + this.mediaServerChoose + '/index/api/kick_session?id=' + id
        }).then((res)=>{
          this.getAllSession();
          this.$message({
            type: 'success',
            message: '删除成功!'
          });
        });
      });
      }
    },
    getNameFromKey: function (key) {
      let nameData = {