From ef742e715b8c0a983d661aa5b5f8980dade8c790 Mon Sep 17 00:00:00 2001
From: panlinlin <648540858@qq.com>
Date: 星期四, 22 四月 2021 15:28:40 +0800
Subject: [PATCH] 优化宕机后点播中设备发送bye
---
web_src/src/components/StreamProxyList.vue | 104 +++++++++++++++++++++++++++++-----------------------
1 files changed, 58 insertions(+), 46 deletions(-)
diff --git a/web_src/src/components/StreamProxyList.vue b/web_src/src/components/StreamProxyList.vue
index 0a1e03d..ee3d43c 100644
--- a/web_src/src/components/StreamProxyList.vue
+++ b/web_src/src/components/StreamProxyList.vue
@@ -13,24 +13,25 @@
</div>
<devicePlayer ref="devicePlayer"></devicePlayer>
<el-table :data="streamProxyList" border style="width: 100%" :height="winHeight">
- <el-table-column prop="app" label="搴旂敤鍚�" align="center" show-overflow-tooltip/>
+ <el-table-column prop="name" label="鍚嶇О" align="center" show-overflow-tooltip/>
+ <el-table-column prop="app" label="娴佸簲鐢ㄥ悕" align="center" show-overflow-tooltip/>
<el-table-column prop="stream" label="娴両D" align="center" show-overflow-tooltip/>
<el-table-column label="娴佸湴鍧�" width="400" align="center" show-overflow-tooltip >
<template slot-scope="scope">
<div slot="reference" class="name-wrapper">
-
+
<el-tag size="medium" v-if="scope.row.type == 'default'">
- <i class="cpoy-btn el-icon-document-copy" title="鐐瑰嚮鎷疯礉" v-clipboard="scope.row.url" @success="$message({type:'success', message:'鎴愬姛鎷疯礉鍒扮矘璐存澘'})"></i>
+ <i class="cpoy-btn el-icon-document-copy" title="鐐瑰嚮鎷疯礉" v-clipboard="scope.row.url" @success="$message({type:'success', message:'鎴愬姛鎷疯礉鍒扮矘璐存澘'})"></i>
{{scope.row.url}}
</el-tag>
<el-tag size="medium" v-if="scope.row.type != 'default'">
- <i class="cpoy-btn el-icon-document-copy" title="鐐瑰嚮鎷疯礉" v-clipboard="scope.row.src_url" @success="$message({type:'success', message:'鎴愬姛鎷疯礉鍒扮矘璐存澘'})"></i>
+ <i class="cpoy-btn el-icon-document-copy" title="鐐瑰嚮鎷疯礉" v-clipboard="scope.row.src_url" @success="$message({type:'success', message:'鎴愬姛鎷疯礉鍒扮矘璐存澘'})"></i>
{{scope.row.src_url}}
</el-tag>
</div>
</template>
</el-table-column>
-
+ <el-table-column prop="gbId" label="鍥芥爣缂栫爜" width="180" align="center" show-overflow-tooltip/>
<el-table-column label="杞琀LS" width="120" align="center">
<template slot-scope="scope">
<div slot="reference" class="name-wrapper">
@@ -56,13 +57,12 @@
</template>
</el-table-column>
-
<el-table-column label="鎿嶄綔" width="360" align="center" fixed="right">
<template slot-scope="scope">
<el-button-group>
<el-button size="mini" icon="el-icon-video-play" v-if="scope.row.enable" @click="play(scope.row)">鎾斁</el-button>
<el-button size="mini" icon="el-icon-close" type="success" v-if="scope.row.enable" @click="stop(scope.row)">鍋滅敤</el-button>
- <el-button size="mini" icon="el-icon-check" type="primary" v-if="!scope.row.enable" @click="start(scope.row)">鍚敤</el-button>
+ <el-button size="mini" icon="el-icon-check" type="primary" :loading="startBtnLaoding" v-if="!scope.row.enable" @click="start(scope.row)">鍚敤</el-button>
<el-button size="mini" icon="el-icon-delete" type="danger" @click="deleteStreamProxy(scope.row)">鍒犻櫎</el-button>
</el-button-group>
</template>
@@ -97,7 +97,7 @@
},
data() {
return {
- streamProxyList: [],
+ streamProxyList: [],
currentPusher: {}, //褰撳墠鎿嶄綔璁惧瀵硅薄
updateLooper: 0, //鏁版嵁鍒锋柊杞鏍囧織
currentDeviceChannelsLenth:0,
@@ -105,7 +105,8 @@
currentPage:1,
count:15,
total:0,
- getListLoading: false
+ getListLoading: false,
+ startBtnLaoding: false
};
},
computed: {
@@ -133,20 +134,20 @@
getStreamProxyList: function() {
let that = this;
this.getListLoading = true;
- this.$axios.get(`/api/proxy/list`,{
+ this.$axios({
+ method: 'get',
+ url:`/api/proxy/list`,
params: {
page: that.currentPage,
count: that.count
}
- } )
- .then(function (res) {
+ }).then(function (res) {
console.log(res);
console.log(res.data.list);
that.total = res.data.total;
that.streamProxyList = res.data.list;
that.getListLoading = false;
- })
- .catch(function (error) {
+ }).catch(function (error) {
console.log(error);
that.getListLoading = false;
});
@@ -159,76 +160,87 @@
play: function(row){
let that = this;
this.getListLoading = true;
- this.$axios.get(`/api/media/getStreamInfoByAppAndStream`,{
+ this.$axios({
+ method: 'get',
+ url:`/api/media/stream_info_by_app_and_stream`,
params: {
app: row.app,
stream: row.stream
}
- })
- .then(function (res) {
+ }).then(function (res) {
that.getListLoading = false;
that.$refs.devicePlayer.openDialog("streamPlay", null, null, {
streamInfo: res.data,
hasAudio: true
});
- })
- .catch(function (error) {
+ }).catch(function (error) {
console.log(error);
that.getListLoading = false;
});
-
+
},
deleteStreamProxy: function(row){
- console.log(1111)
let that = this;
this.getListLoading = true;
- this.$axios.get(`/api/proxy/del`,{
- params: {
- app: row.app,
- stream: row.stream
- }
- })
- .then(function (res) {
+ that.$axios({
+ method:"delete",
+ url:"/api/proxy/del",
+ params:{
+ app: row.app,
+ stream: row.stream
+ }
+ }).then((res)=>{
+ that.getListLoading = false;
+ that.initData()
+ }).catch(function (error) {
+ console.log(error);
that.getListLoading = false;
- that.initData()
- })
- .catch(function (error) {
- console.log(error);
- that.getListLoading = false;
- });
+ });
},
start: function(row){
let that = this;
this.getListLoading = true;
- this.$axios.get(`/api/proxy/start`,{
+ this.startBtnLaoding = true;
+ this.$axios({
+ method: 'get',
+ url:`/api/proxy/start`,
params: {
app: row.app,
stream: row.stream
}
- })
- .then(function (res) {
- that.getListLoading = false;
- that.initData()
- })
- .catch(function (error) {
+ }).then(function (res) {
+ that.getListLoading = false;
+ that.startBtnLaoding = false;
+ if (res.data == "success"){
+ that.initData()
+ }else {
+ that.$message({
+ showClose: true,
+ message: "淇濆瓨澶辫触锛岃妫�鏌ュ湴鍧�鏄惁鍙敤锛�",
+ type: "error",
+ });
+ }
+
+ }).catch(function (error) {
console.log(error);
that.getListLoading = false;
+ that.startBtnLaoding = false;
});
},
stop: function(row){
let that = this;
this.getListLoading = true;
- this.$axios.get(`/api/proxy/stop`,{
+ this.$axios({
+ method: 'get',
+ url:`/api/proxy/stop`,
params: {
app: row.app,
stream: row.stream
}
- })
- .then(function (res) {
+ }).then(function (res) {
that.getListLoading = false;
that.initData()
- })
- .catch(function (error) {
+ }).catch(function (error) {
console.log(error);
that.getListLoading = false;
});
--
Gitblit v1.8.0