From 89a9ab4534f10a224f70e546db838423e84a1965 Mon Sep 17 00:00:00 2001 From: 64850858 <648540858@qq.com> Date: 星期五, 16 七月 2021 16:34:51 +0800 Subject: [PATCH] 添加zlm集群支持 --- web_src/src/components/dialog/StreamProxyEdit.vue | 93 +++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 86 insertions(+), 7 deletions(-) diff --git a/web_src/src/components/dialog/StreamProxyEdit.vue b/web_src/src/components/dialog/StreamProxyEdit.vue index 696379e..3310d9c 100644 --- a/web_src/src/components/dialog/StreamProxyEdit.vue +++ b/web_src/src/components/dialog/StreamProxyEdit.vue @@ -36,11 +36,39 @@ <el-form-item label="鎷夋祦鍦板潃" prop="src_url" v-if="proxyParam.type=='ffmpeg'"> <el-input v-model="proxyParam.src_url" clearable></el-input> </el-form-item> - <el-form-item label="瓒呮椂鏃堕棿" prop="timeout_ms" v-if="proxyParam.type=='ffmpeg'"> + <el-form-item label="瓒呮椂鏃堕棿:姣" prop="timeout_ms" v-if="proxyParam.type=='ffmpeg'"> <el-input v-model="proxyParam.timeout_ms" clearable></el-input> </el-form-item> + <el-form-item label="鑺傜偣閫夋嫨" prop="rtp_type"> + <el-select + v-model="proxyParam.mediaServerId" + @change="mediaServerIdChange" + style="width: 100%" + placeholder="璇烽�夋嫨鎷夋祦鑺傜偣" + > + <el-option label="鑷姩閫夋嫨" value="auto"></el-option> + <el-option + v-for="item in mediaServerList" + :key="item.id" + :label="item.id" + :value="item.id"> + </el-option> + </el-select> + </el-form-item> <el-form-item label="FFmpeg鍛戒护妯℃澘" prop="ffmpeg_cmd_key" v-if="proxyParam.type=='ffmpeg'"> - <el-input v-model="proxyParam.ffmpeg_cmd_key" clearable></el-input> +<!-- <el-input v-model="proxyParam.ffmpeg_cmd_key" clearable></el-input>--> + <el-select + v-model="proxyParam.ffmpeg_cmd_key" + style="width: 100%" + placeholder="璇烽�夋嫨FFmpeg鍛戒护妯℃澘" + > + <el-option + v-for="item in Object.keys(ffmpegCmdList)" + :key="item" + :label="ffmpegCmdList[item]" + :value="item"> + </el-option> + </el-select> </el-form-item> <el-form-item label="鍥芥爣缂栫爜" prop="gbId"> <el-input v-model="proxyParam.gbId" placeholder="璁剧疆鍥芥爣缂栫爜鍙帹閫佸埌鍥芥爣" clearable></el-input> @@ -54,6 +82,23 @@ <el-option label="TCP" value="0"></el-option> <el-option label="UDP" value="1"></el-option> <el-option label="缁勬挱" value="2"></el-option> + </el-select> + </el-form-item> + + <el-form-item label="鍥芥爣骞冲彴"> + <el-select + v-model="proxyParam.platformGbId" + style="width: 100%" + placeholder="璇烽�夋嫨鍥芥爣骞冲彴" + > + <el-option + v-for="item in platformList" + :key="item.name" + :label="item.name" + :value="item.serverGBId"> + <span style="float: left">{{ item.name }}</span> + <span style="float: right; color: #8492a6; font-size: 13px">{{ item.serverGBId }}</span> + </el-option> </el-select> </el-form-item> <el-form-item label="鍏朵粬閫夐」"> @@ -78,6 +123,8 @@ </template> <script> +import MediaServer from './../service/MediaServer' + export default { name: "streamProxyEdit", props: {}, @@ -106,6 +153,8 @@ isLoging: false, dialogLoading: false, onSubmit_text: "绔嬪嵆鍒涘缓", + platformList: [], + mediaServer: new MediaServer(), proxyParam: { name: null, type: "default", @@ -120,7 +169,11 @@ enable: true, enable_hls: true, enable_mp4: false, + platformGbId: null, + mediaServerId: "auto", }, + mediaServerList:{}, + ffmpegCmdList:{}, rules: { name: [{ required: true, message: "璇疯緭鍏ュ悕绉�", trigger: "blur" }], @@ -139,13 +192,39 @@ this.listChangeCallback = callback; if (proxyParam != null) { this.proxyParam = proxyParam; - this.onSubmit_text = "淇濆瓨"; - } else { - this.onSubmit_text = "绔嬪嵆鍒涘缓"; } + + let that = this; + this.$axios({ + method: 'get', + url:`/api/platform/query/10000/0` + }).then(function (res) { + that.platformList = res.data.list; + }).catch(function (error) { + console.log(error); + }); + this.mediaServer.getMediaServerList((data)=>{ + this.mediaServerList = data; + }) + }, + mediaServerIdChange:function (){ + let that = this; + if (that.proxyParam.mediaServerId !== "auto"){ + that.$axios({ + method: 'get', + url:`/api/proxy/ffmpeg_cmd/list`, + params: { + mediaServerId: that.proxyParam.mediaServerId + } + }).then(function (res) { + that.ffmpegCmdList = res.data.data; + }).catch(function (error) { + console.log(error); + }); + } + }, onSubmit: function () { - console.log("onSubmit"); this.dialogLoading = true; var that = this; that.$axios({ @@ -163,6 +242,7 @@ that.showDialog = false; if (that.listChangeCallback != null) { that.listChangeCallback(); + that.dialogLoading = false; } } }).catch(function (error) { @@ -171,7 +251,6 @@ }); }, close: function () { - console.log("鍏抽棴娣诲姞瑙嗛骞冲彴"); this.showDialog = false; this.dialogLoading = false; this.$refs.streamProxy.resetFields(); -- Gitblit v1.8.0