From bfafe45b26e278d35a9f50e20178164be9c85e22 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期一, 18 三月 2024 15:39:32 +0800
Subject: [PATCH] Merge pull request #1371 from ancienter/develop
---
web_src/src/components/dialog/MediaServerEdit.vue | 147 ++++++++++++++++++++++++++----------------------
1 files changed, 79 insertions(+), 68 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..9808a1c
--- 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,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 +106,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 +170,6 @@
hookIp: "",
sdpIp: "",
streamIp: "",
- streamNoneReaderDelayMS: "",
secret: "035c73f7-bb6b-4889-a715-d9eb2d1925cc",
httpPort: "",
httpSSlPort: "",
@@ -181,18 +179,28 @@
rtpEnable: false,
rtpPortRange: "",
sendRtpPortRange: "",
- rtpPortRange1: "",
- rtpPortRange2: "",
- sendRtpPortRange1: "",
- sendRtpPortRange2: "",
rtpProxyPort: "",
rtspPort: "",
rtspSSLPort: "",
},
+ 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 +224,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 +253,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 +302,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 +330,6 @@
hookIp: "",
sdpIp: "",
streamIp: "",
- streamNoneReaderDelayMS: "",
secret: "035c73f7-bb6b-4889-a715-d9eb2d1925cc",
httpPort: "",
httpSSlPort: "",
@@ -334,14 +339,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 +354,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 +367,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