From 9f16b5c553b479ea12fe368a7ecc748872ea8b98 Mon Sep 17 00:00:00 2001 From: zxl <763096477@qq.com> Date: 星期四, 12 六月 2025 11:11:27 +0800 Subject: [PATCH] 修改配置文件 --- web_src/src/components/dialog/MediaServerEdit.vue | 158 +++++++++++++++++++++++++++++----------------------- 1 files changed, 88 insertions(+), 70 deletions(-) diff --git a/web_src/src/components/dialog/MediaServerEdit.vue b/web_src/src/components/dialog/MediaServerEdit.vue old mode 100644 new mode 100755 index b67daf8..9d8491e --- a/web_src/src/components/dialog/MediaServerEdit.vue +++ b/web_src/src/components/dialog/MediaServerEdit.vue @@ -12,13 +12,19 @@ <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 label="绫诲瀷" prop="type"> + <el-select v-model="mediaServerForm.type" style="float: left; width: 100%" > + <el-option key="zlm" label="ZLMediaKit" value="zlm"></el-option> + <el-option key="abl" label="ABLMediaServer" value="abl"></el-option> + </el-select> </el-form-item> <el-form-item> <div style="float: right;"> @@ -34,71 +40,69 @@ <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="鍗曠鍙�" @change="portRangeChange" 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-form-item v-if="mediaServerForm.sendRtpEnable" label="鍙戞祦绔彛" > + <el-input v-model="sendRtpPortRange1" placeholder="璧峰" @change="portRangeChange" clearable style="width: 100px" prop="rtpPortRange1" :disabled="mediaServerForm.defaultServer"></el-input> - - <el-input v-model="mediaServerForm.sendRtpPortRange2" placeholder="缁堟" clearable style="width: 100px" prop="port"></el-input> + <el-input v-model="sendRtpPortRange2" placeholder="缁堟" @change="portRangeChange" clearable style="width: 100px" prop="rtpPortRange2" :disabled="mediaServerForm.defaultServer"></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 +112,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,8 +176,7 @@ hookIp: "", sdpIp: "", streamIp: "", - streamNoneReaderDelayMS: "", - secret: "035c73f7-bb6b-4889-a715-d9eb2d1925cc", + secret: "", httpPort: "", httpSSlPort: "", recordAssistPort: "", @@ -181,18 +185,29 @@ rtpEnable: false, rtpPortRange: "", sendRtpPortRange: "", - rtpPortRange1: "", - rtpPortRange2: "", - sendRtpPortRange1: "", - sendRtpPortRange2: "", rtpProxyPort: "", rtspPort: "", rtspSSLPort: "", + type: "zlm", }, + rtpPortRange1:30000, + rtpPortRange2:30500, + + sendRtpPortRange1:50000, + sendRtpPortRange2:60000, 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" }], @@ -216,14 +231,16 @@ this.currentStep = 3; if (param.rtpPortRange) { let rtpPortRange = this.mediaServerForm.rtpPortRange.split(","); + let sendRtpPortRange = this.mediaServerForm.sendRtpPortRange.split(","); if (rtpPortRange.length > 0) { - this.mediaServerForm["rtpPortRange1"] = rtpPortRange[0] - this.mediaServerForm["rtpPortRange2"] = rtpPortRange[1] + this.rtpPortRange1 = rtpPortRange[0] + this.rtpPortRange2 = rtpPortRange[1] + } + if (sendRtpPortRange.length > 0) { + this.sendRtpPortRange1 = sendRtpPortRange[0] + this.sendRtpPortRange2 = sendRtpPortRange[1] } } - let sendRtpPortRange = this.mediaServerForm.sendRtpPortRange.split(","); - this.mediaServerForm["sendRtpPortRange1"] = sendRtpPortRange[0] - this.mediaServerForm["sendRtpPortRange2"] = sendRtpPortRange[1] } }, checkServer: function() { @@ -243,10 +260,10 @@ 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.sendRtpPortRange1 = 50000 + that.sendRtpPortRange2 = 60000 that.serverCheck = 1; }else { that.serverCheck = -1; @@ -292,10 +309,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,8 +337,7 @@ hookIp: "", sdpIp: "", streamIp: "", - streamNoneReaderDelayMS: "", - secret: "035c73f7-bb6b-4889-a715-d9eb2d1925cc", + secret: "", httpPort: "", httpSSlPort: "", recordAssistPort: "", @@ -334,14 +346,14 @@ rtpEnable: false, rtpPortRange: "", sendRtpPortRange: "", - rtpPortRange1: "", - rtpPortRange2: "", - sendRtpPortRange1: "", - sendRtpPortRange2: "", rtpProxyPort: "", rtspPort: "", rtspSSLPort: "", }; + this.rtpPortRange1 = 30500; + this.rtpPortRange2 = 30500; + this.sendRtpPortRange1 = 50000; + this.sendRtpPortRange2 = 60000; this.listChangeCallback = null this.currentStep = 1; }, @@ -349,7 +361,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 +374,12 @@ if (this.platform.enable && this.platform.expires == "0") { this.platform.expires = "300"; } + }, + portRangeChange: function() { + if (this.mediaServerForm.rtpEnable) { + this.mediaServerForm.rtpPortRange = this.rtpPortRange1 + "," + this.rtpPortRange2 + this.mediaServerForm.sendRtpPortRange = this.sendRtpPortRange1 + "," + this.sendRtpPortRange2 + } } }, }; -- Gitblit v1.8.0