From d340a37a00c8d5ea2605ca0f40a920efbeb9546f Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期四, 17 十一月 2022 11:31:30 +0800 Subject: [PATCH] Merge branch 'wvp-28181-2.0' into wvp-28181-2.0-multi-network --- web_src/src/components/dialog/MediaServerEdit.vue | 133 ++++++++++++++++++++------------------------ 1 files changed, 61 insertions(+), 72 deletions(-) diff --git a/web_src/src/components/dialog/MediaServerEdit.vue b/web_src/src/components/dialog/MediaServerEdit.vue index b67daf8..9353a81 100644 --- a/web_src/src/components/dialog/MediaServerEdit.vue +++ b/web_src/src/components/dialog/MediaServerEdit.vue @@ -12,13 +12,13 @@ <div id="formStep" style="margin-top: 1rem; margin-right: 20px;"> <el-form v-if="currentStep == 1" ref="mediaServerForm" :rules="rules" :model="mediaServerForm" label-width="140px" > <el-form-item label="IP" prop="ip"> - <el-input v-model="mediaServerForm.ip" placeholder="濯掍綋鏈嶅姟IP" clearable></el-input> + <el-input v-model="mediaServerForm.ip" placeholder="濯掍綋鏈嶅姟IP" clearable :disabled="mediaServerForm.defaultServer"></el-input> </el-form-item> - <el-form-item label="HTTP绔彛" prop="port"> - <el-input v-model="mediaServerForm.httpPort" placeholder="濯掍綋鏈嶅姟HTTP绔彛" clearable></el-input> + <el-form-item label="HTTP绔彛" prop="httpPort"> + <el-input v-model="mediaServerForm.httpPort" placeholder="濯掍綋鏈嶅姟HTTP绔彛" clearable :disabled="mediaServerForm.defaultServer"></el-input> </el-form-item> <el-form-item label="SECRET" prop="secret"> - <el-input v-model="mediaServerForm.secret" placeholder="濯掍綋鏈嶅姟SECRET" clearable></el-input> + <el-input v-model="mediaServerForm.secret" placeholder="濯掍綋鏈嶅姟SECRET" clearable :disabled="mediaServerForm.defaultServer"></el-input> </el-form-item> <el-form-item> <div style="float: right;"> @@ -34,71 +34,63 @@ <el-col :span="12"> <el-form v-if="currentStep === 2 || currentStep === 3" ref="mediaServerForm1" :rules="rules" :model="mediaServerForm" label-width="140px" > <el-form-item label="IP" prop="ip"> - <el-input v-if="currentStep === 2" v-model="mediaServerForm.ip" disabled></el-input> - <el-input v-if="currentStep === 3" v-model="mediaServerForm.ip"></el-input> + <el-input v-if="currentStep === 2" v-model="mediaServerForm.ip" disabled :disabled="mediaServerForm.defaultServer"></el-input> + <el-input v-if="currentStep === 3" v-model="mediaServerForm.ip" :disabled="mediaServerForm.defaultServer"></el-input> </el-form-item> - <el-form-item label="HTTP绔彛" prop="port"> - <el-input v-if="currentStep === 2" v-model="mediaServerForm.httpPort" disabled></el-input> - <el-input v-if="currentStep === 3" v-model="mediaServerForm.httpPort"></el-input> - </el-form-item> - <el-form-item label="SECRET" prop="secret"> - <el-input v-if="currentStep === 2" v-model="mediaServerForm.secret" disabled></el-input> - <el-input v-if="currentStep === 3" v-model="mediaServerForm.secret"></el-input> + <el-form-item label="HTTP绔彛" prop="httpPort"> + <el-input v-if="currentStep === 2" v-model="mediaServerForm.httpPort" disabled :disabled="mediaServerForm.defaultServer"></el-input> + <el-input v-if="currentStep === 3" v-model="mediaServerForm.httpPort" :disabled="mediaServerForm.defaultServer"></el-input> </el-form-item> <el-form-item label="HOOK IP" prop="ip"> - <el-input v-model="mediaServerForm.hookIp" placeholder="濯掍綋鏈嶅姟HOOK_IP" clearable></el-input> + <el-input v-model="mediaServerForm.hookIp" placeholder="濯掍綋鏈嶅姟HOOK_IP" clearable :disabled="mediaServerForm.defaultServer"></el-input> </el-form-item> <el-form-item label="SDP IP" prop="ip"> - <el-input v-model="mediaServerForm.sdpIp" placeholder="濯掍綋鏈嶅姟SDP_IP" clearable></el-input> + <el-input v-model="mediaServerForm.sdpIp" placeholder="濯掍綋鏈嶅姟SDP_IP" clearable :disabled="mediaServerForm.defaultServer"></el-input> </el-form-item> <el-form-item label="娴両P" prop="ip"> - <el-input v-model="mediaServerForm.streamIp" placeholder="濯掍綋鏈嶅姟娴両P" clearable></el-input> + <el-input v-model="mediaServerForm.streamIp" placeholder="濯掍綋鏈嶅姟娴両P" clearable :disabled="mediaServerForm.defaultServer"></el-input> </el-form-item> - <el-form-item label="HTTPS PORT" prop="port"> - <el-input v-model="mediaServerForm.httpSSlPort" placeholder="濯掍綋鏈嶅姟HTTPS_PORT" clearable></el-input> + <el-form-item label="HTTPS PORT" prop="httpSSlPort"> + <el-input v-model="mediaServerForm.httpSSlPort" placeholder="濯掍綋鏈嶅姟HTTPS_PORT" clearable :disabled="mediaServerForm.defaultServer"></el-input> </el-form-item> - <el-form-item label="RTSP PORT" prop="port"> - <el-input v-model="mediaServerForm.rtspPort" placeholder="濯掍綋鏈嶅姟RTSP_PORT" clearable></el-input> + <el-form-item label="RTSP PORT" prop="rtspPort"> + <el-input v-model="mediaServerForm.rtspPort" placeholder="濯掍綋鏈嶅姟RTSP_PORT" clearable :disabled="mediaServerForm.defaultServer"></el-input> </el-form-item> - <el-form-item label="RTSPS PORT" prop="port"> - <el-input v-model="mediaServerForm.rtspSSLPort" placeholder="濯掍綋鏈嶅姟RTSPS_PORT" clearable></el-input> + <el-form-item label="RTSPS PORT" prop="rtspSSLPort"> + <el-input v-model="mediaServerForm.rtspSSLPort" placeholder="濯掍綋鏈嶅姟RTSPS_PORT" clearable :disabled="mediaServerForm.defaultServer"></el-input> </el-form-item> </el-form> </el-col> <el-col :span="12"> <el-form v-if="currentStep === 2 || currentStep === 3" ref="mediaServerForm2" :rules="rules" :model="mediaServerForm" label-width="180px" > - <el-form-item label="RTMP PORT" prop="port"> - <el-input v-model="mediaServerForm.rtmpPort" placeholder="濯掍綋鏈嶅姟RTMP_PORT" clearable></el-input> + <el-form-item label="RTMP PORT" prop="rtmpPort"> + <el-input v-model="mediaServerForm.rtmpPort" placeholder="濯掍綋鏈嶅姟RTMP_PORT" clearable :disabled="mediaServerForm.defaultServer"></el-input> </el-form-item> - <el-form-item label="RTMPS PORT" prop="port"> - <el-input v-model="mediaServerForm.rtmpSSlPort" placeholder="濯掍綋鏈嶅姟RTMPS_PORT" clearable></el-input> + <el-form-item label="RTMPS PORT" prop="rtmpSSlPort"> + <el-input v-model="mediaServerForm.rtmpSSlPort" placeholder="濯掍綋鏈嶅姟RTMPS_PORT" clearable :disabled="mediaServerForm.defaultServer"></el-input> + </el-form-item> + <el-form-item label="SECRET" prop="secret"> + <el-input v-if="currentStep === 2" v-model="mediaServerForm.secret" disabled :disabled="mediaServerForm.defaultServer"></el-input> + <el-input v-if="currentStep === 3" v-model="mediaServerForm.secret" :disabled="mediaServerForm.defaultServer"></el-input> </el-form-item> <el-form-item label="鑷姩閰嶇疆濯掍綋鏈嶅姟" > - <el-switch v-model="mediaServerForm.autoConfig"></el-switch> + <el-switch v-model="mediaServerForm.autoConfig" :disabled="mediaServerForm.defaultServer"></el-switch> </el-form-item> <el-form-item label="鏀舵祦绔彛妯″紡" > - <el-switch active-text="澶氱鍙�" inactive-text="鍗曠鍙�" v-model="mediaServerForm.rtpEnable"></el-switch> + <el-switch active-text="澶氱鍙�" inactive-text="鍗曠鍙�" v-model="mediaServerForm.rtpEnable" :disabled="mediaServerForm.defaultServer"></el-switch> </el-form-item> - <el-form-item v-if="!mediaServerForm.rtpEnable" label="鏀舵祦绔彛" prop="port"> - <el-input v-model.number="mediaServerForm.rtpProxyPort" clearable></el-input> + <el-form-item v-if="!mediaServerForm.rtpEnable" label="鏀舵祦绔彛" prop="rtpProxyPort"> + <el-input v-model.number="mediaServerForm.rtpProxyPort" clearable :disabled="mediaServerForm.defaultServer"></el-input> </el-form-item> - <el-form-item v-if="mediaServerForm.rtpEnable" label="鏀舵祦绔彛" prop="port"> - <el-input v-model="mediaServerForm.rtpPortRange1" placeholder="璧峰" clearable style="width: 100px" prop="port"></el-input> + <el-form-item v-if="mediaServerForm.rtpEnable" label="鏀舵祦绔彛" > + <el-input v-model="rtpPortRange1" placeholder="璧峰" @change="portRangeChange" clearable style="width: 100px" prop="rtpPortRange1" :disabled="mediaServerForm.defaultServer"></el-input> - - <el-input v-model="mediaServerForm.rtpPortRange2" placeholder="缁堟" clearable style="width: 100px" prop="port"></el-input> + <el-input v-model="rtpPortRange2" placeholder="缁堟" @change="portRangeChange" clearable style="width: 100px" prop="rtpPortRange2" :disabled="mediaServerForm.defaultServer"></el-input> </el-form-item> - <el-form-item label="鎺ㄦ祦绔彛" prop="port"> - <el-input v-model="mediaServerForm.sendRtpPortRange1" placeholder="璧峰" clearable style="width: 100px" prop="port"></el-input> - - - <el-input v-model="mediaServerForm.sendRtpPortRange2" placeholder="缁堟" clearable style="width: 100px" prop="port"></el-input> - </el-form-item> - <el-form-item label="鏃犱汉瑙傜湅澶氫箙鍚庡仠姝㈡媺娴�" > - <el-input v-model.number="mediaServerForm.streamNoneReaderDelayMS" clearable></el-input> - </el-form-item> - <el-form-item label="褰曞儚绠$悊鏈嶅姟绔彛" prop="port"> - <el-input v-model.number="mediaServerForm.recordAssistPort"> + <el-form-item label="褰曞儚绠$悊鏈嶅姟绔彛" prop="recordAssistPort"> + <el-input v-model.number="mediaServerForm.recordAssistPort" :disabled="mediaServerForm.defaultServer"> <!-- <el-button v-if="mediaServerForm.recordAssistPort > 0" slot="append" type="primary" @click="checkRecordServer">娴嬭瘯</el-button>--> <el-button v-if="mediaServerForm.recordAssistPort > 0" class="el-icon-check" slot="append" type="primary" @click="checkRecordServer"></el-button> </el-input> @@ -108,8 +100,9 @@ </el-form-item> <el-form-item> <div style="float: right;"> - <el-button type="primary" @click="onSubmit" >鎻愪氦</el-button> - <el-button @click="close">鍙栨秷</el-button> + <el-button v-if="!mediaServerForm.defaultServer" type="primary" @click="onSubmit" >鎻愪氦</el-button> + <el-button v-if="!mediaServerForm.defaultServer" @click="close">鍙栨秷</el-button> + <el-button v-if="mediaServerForm.defaultServer" @click="close">鍏抽棴</el-button> </div> </el-form-item> </el-form> @@ -171,7 +164,6 @@ hookIp: "", sdpIp: "", streamIp: "", - streamNoneReaderDelayMS: "", secret: "035c73f7-bb6b-4889-a715-d9eb2d1925cc", httpPort: "", httpSSlPort: "", @@ -180,19 +172,25 @@ rtmpSSlPort: "", rtpEnable: false, rtpPortRange: "", - sendRtpPortRange: "", - rtpPortRange1: "", - rtpPortRange2: "", - sendRtpPortRange1: "", - sendRtpPortRange2: "", rtpProxyPort: "", rtspPort: "", rtspSSLPort: "", }, + rtpPortRange1:30000, + rtpPortRange2:30500, rules: { ip: [{ required: true, validator: isValidIp, message: '璇疯緭鍏ユ湁鏁堢殑IP鍦板潃', trigger: 'blur' }], - port: [{ required: true, validator: isValidPort, message: '璇疯緭鍏ユ湁鏁堢殑绔彛鍙�', trigger: 'blur' }], + httpPort: [{ required: true, validator: isValidPort, message: '璇疯緭鍏ユ湁鏁堢殑绔彛鍙�', trigger: 'blur' }], + httpSSlPort: [{ required: true, validator: isValidPort, message: '璇疯緭鍏ユ湁鏁堢殑绔彛鍙�', trigger: 'blur' }], + recordAssistPort: [{ required: true, validator: isValidPort, message: '璇疯緭鍏ユ湁鏁堢殑绔彛鍙�', trigger: 'blur' }], + rtmpPort: [{ required: true, validator: isValidPort, message: '璇疯緭鍏ユ湁鏁堢殑绔彛鍙�', trigger: 'blur' }], + rtmpSSlPort: [{ required: true, validator: isValidPort, message: '璇疯緭鍏ユ湁鏁堢殑绔彛鍙�', trigger: 'blur' }], + rtpPortRange1: [{ required: true, validator: isValidPort, message: '璇疯緭鍏ユ湁鏁堢殑绔彛鍙�', trigger: 'blur' }], + rtpPortRange2: [{ required: true, validator: isValidPort, message: '璇疯緭鍏ユ湁鏁堢殑绔彛鍙�', trigger: 'blur' }], + rtpProxyPort: [{ required: true, validator: isValidPort, message: '璇疯緭鍏ユ湁鏁堢殑绔彛鍙�', trigger: 'blur' }], + rtspPort: [{ required: true, validator: isValidPort, message: '璇疯緭鍏ユ湁鏁堢殑绔彛鍙�', trigger: 'blur' }], + rtspSSLPort: [{ required: true, validator: isValidPort, message: '璇疯緭鍏ユ湁鏁堢殑绔彛鍙�', trigger: 'blur' }], secret: [{ required: true, message: "璇疯緭鍏ecret", trigger: "blur" }], timeout_ms: [{ required: true, message: "璇疯緭鍏Fmpeg鎺ㄦ祦鎴愬姛瓒呮椂鏃堕棿", trigger: "blur" }], ffmpeg_cmd_key: [{ required: false, message: "璇疯緭鍏Fmpeg鍛戒护鍙傛暟妯℃澘锛堝彲閫夛級", trigger: "blur" }], @@ -217,13 +215,10 @@ if (param.rtpPortRange) { let rtpPortRange = this.mediaServerForm.rtpPortRange.split(","); if (rtpPortRange.length > 0) { - this.mediaServerForm["rtpPortRange1"] = rtpPortRange[0] - this.mediaServerForm["rtpPortRange2"] = rtpPortRange[1] + this.rtpPortRange1 = rtpPortRange[0] + this.rtpPortRange2 = rtpPortRange[1] } } - let sendRtpPortRange = this.mediaServerForm.sendRtpPortRange.split(","); - this.mediaServerForm["sendRtpPortRange1"] = sendRtpPortRange[0] - this.mediaServerForm["sendRtpPortRange2"] = sendRtpPortRange[1] } }, checkServer: function() { @@ -243,10 +238,8 @@ that.mediaServerForm = data.data; that.mediaServerForm.httpPort = httpPort; that.mediaServerForm.autoConfig = true; - that.mediaServerForm.sendRtpPortRange1 = 30000 - that.mediaServerForm.sendRtpPortRange2 = 30500 - that.mediaServerForm.rtpPortRange1 = 30000 - that.mediaServerForm.rtpPortRange2 = 30500 + that.rtpPortRange1 = 30000 + that.rtpPortRange2 = 30500 that.serverCheck = 1; }else { that.serverCheck = -1; @@ -292,10 +285,6 @@ onSubmit: function () { this.dialogLoading = true; let that = this; - if (this.mediaServerForm.rtpEnable) { - this.mediaServerForm.rtpPortRange = this.mediaServerForm.rtpPortRange1 + "," + this.mediaServerForm.rtpPortRange2; - } - this.mediaServerForm.sendRtpPortRange = this.mediaServerForm.sendRtpPortRange1 + "," + this.mediaServerForm.sendRtpPortRange2; that.mediaServer.addServer(this.mediaServerForm, data => { if (data.code === 0) { that.$message({ @@ -324,7 +313,6 @@ hookIp: "", sdpIp: "", streamIp: "", - streamNoneReaderDelayMS: "", secret: "035c73f7-bb6b-4889-a715-d9eb2d1925cc", httpPort: "", httpSSlPort: "", @@ -333,15 +321,12 @@ rtmpSSlPort: "", rtpEnable: false, rtpPortRange: "", - sendRtpPortRange: "", - rtpPortRange1: "", - rtpPortRange2: "", - sendRtpPortRange1: "", - sendRtpPortRange2: "", rtpProxyPort: "", rtspPort: "", rtspSSLPort: "", }; + this.rtpPortRange1 = 30500; + this.rtpPortRange2 = 30500; this.listChangeCallback = null this.currentStep = 1; }, @@ -349,7 +334,7 @@ var result = false; var that = this; await that.$axios({ - method: 'post', + method: 'get', url:`/api/platform/exit/${deviceGbId}` }).then(function (res) { result = res.data; @@ -362,6 +347,10 @@ if (this.platform.enable && this.platform.expires == "0") { this.platform.expires = "300"; } + }, + portRangeChange: function() { + this.mediaServerForm.rtpPortRange = this.rtpPortRange1 + "," + this.rtpPortRange2 + console.log(this.mediaServerForm.rtpPortRange) } }, }; -- Gitblit v1.8.0