From c084d6c98af1ef4d36a61adc719df5db76589428 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期六, 07 十月 2023 18:00:08 +0800 Subject: [PATCH] 优化国标级联心跳失败判断逻辑 --- src/main/java/com/genersoft/iot/vmp/gb28181/bean/Device.java | 314 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 303 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/bean/Device.java b/src/main/java/com/genersoft/iot/vmp/gb28181/bean/Device.java index 9393106..34d624f 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/bean/Device.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/bean/Device.java @@ -1,37 +1,50 @@ package com.genersoft.iot.vmp.gb28181.bean; +import io.swagger.v3.oas.annotations.media.Schema; + +/** + * 鍥芥爣璁惧/骞冲彴 + * @author lin + */ +@Schema(description = "鍥芥爣璁惧/骞冲彴") public class Device { /** - * 璁惧Id + * 璁惧鍥芥爣缂栧彿 */ + @Schema(description = "璁惧鍥芥爣缂栧彿") private String deviceId; /** * 璁惧鍚� */ + @Schema(description = "鍚嶇О") private String name; /** * 鐢熶骇鍘傚晢 */ + @Schema(description = "鐢熶骇鍘傚晢") private String manufacturer; /** * 鍨嬪彿 */ + @Schema(description = "鍨嬪彿") private String model; /** * 鍥轰欢鐗堟湰 */ + @Schema(description = "鍥轰欢鐗堟湰") private String firmware; /** * 浼犺緭鍗忚 * UDP/TCP */ + @Schema(description = "浼犺緭鍗忚锛圲DP/TCP锛�") private String transport; /** @@ -40,38 +53,143 @@ * TCP-ACTIVE锛歵cp涓诲姩妯″紡 * TCP-PASSIVE锛歵cp琚姩妯″紡 */ + @Schema(description = "鏁版嵁娴佷紶杈撴ā寮�") private String streamMode; /** * wan鍦板潃_ip */ + @Schema(description = "IP") private String ip; /** * wan鍦板潃_port */ + @Schema(description = "绔彛") private int port; /** * wan鍦板潃 */ + @Schema(description = "wan鍦板潃") private String hostAddress; /** * 鍦ㄧ嚎 */ - private int online; + @Schema(description = "鏄惁鍦ㄧ嚎锛宼rue涓哄湪绾匡紝false涓虹绾�") + private boolean onLine; /** * 娉ㄥ唽鏃堕棿 */ - private Long registerTimeMillis; + @Schema(description = "娉ㄥ唽鏃堕棿") + private String registerTime; + + + /** + * 蹇冭烦鏃堕棿 + */ + @Schema(description = "蹇冭烦鏃堕棿") + private String keepaliveTime; + + + /** + * 蹇冭烦闂撮殧 + */ + @Schema(description = "蹇冭烦闂撮殧") + private int keepaliveIntervalTime; /** * 閫氶亾涓暟 */ + @Schema(description = "閫氶亾涓暟") private int channelCount; + + /** + * 娉ㄥ唽鏈夋晥鏈� + */ + @Schema(description = "娉ㄥ唽鏈夋晥鏈�") + private int expires; + + /** + * 鍒涘缓鏃堕棿 + */ + @Schema(description = "鍒涘缓鏃堕棿") + private String createTime; + + /** + * 鏇存柊鏃堕棿 + */ + @Schema(description = "鏇存柊鏃堕棿") + private String updateTime; + + /** + * 璁惧浣跨敤鐨勫獟浣搃d, 榛樿涓簄ull + */ + @Schema(description = "璁惧浣跨敤鐨勫獟浣搃d, 榛樿涓簄ull") + private String mediaServerId; + + /** + * 瀛楃闆�, 鏀寔 UTF-8 涓� GB2312 + */ + @Schema(description = "绗﹂泦, 鏀寔 UTF-8 涓� GB2312") + private String charset ; + + /** + * 鐩綍璁㈤槄鍛ㄦ湡锛�0涓轰笉璁㈤槄 + */ + @Schema(description = "鐩綍璁㈤槄鍛ㄦ湡锛宱涓轰笉璁㈤槄") + private int subscribeCycleForCatalog; + + /** + * 绉诲姩璁惧浣嶇疆璁㈤槄鍛ㄦ湡锛�0涓轰笉璁㈤槄 + */ + @Schema(description = "绉诲姩璁惧浣嶇疆璁㈤槄鍛ㄦ湡锛�0涓轰笉璁㈤槄") + private int subscribeCycleForMobilePosition; + + /** + * 绉诲姩璁惧浣嶇疆淇℃伅涓婃姤鏃堕棿闂撮殧,鍗曚綅:绉�,榛樿鍊�5 + */ + @Schema(description = "绉诲姩璁惧浣嶇疆淇℃伅涓婃姤鏃堕棿闂撮殧,鍗曚綅:绉�,榛樿鍊�5") + private int mobilePositionSubmissionInterval = 5; + + /** + * 鎶ヨ璁㈤槄鍛ㄦ湡锛�0涓轰笉璁㈤槄 + */ + @Schema(description = "鎶ヨ蹇冭烦鏃堕棿璁㈤槄鍛ㄦ湡锛�0涓轰笉璁㈤槄") + private int subscribeCycleForAlarm; + + /** + * 鏄惁寮�鍚痵src鏍¢獙锛岄粯璁ゅ叧闂紝寮�鍚彲浠ラ槻姝覆娴� + */ + @Schema(description = "鏄惁寮�鍚痵src鏍¢獙锛岄粯璁ゅ叧闂紝寮�鍚彲浠ラ槻姝覆娴�") + private boolean ssrcCheck = false; + + /** + * 鍦扮悊鍧愭爣绯伙紝 鐩墠鏀寔 WGS84,GCJ02 + */ + @Schema(description = "鍦扮悊鍧愭爣绯伙紝 鐩墠鏀寔 WGS84,GCJ02") + private String geoCoordSys; + + @Schema(description = "瀵嗙爜") + private String password; + + @Schema(description = "鏀舵祦IP") + private String sdpIp; + + @Schema(description = "SIP浜や簰IP锛堣澶囪闂钩鍙扮殑IP锛�") + private String localIp; + + @Schema(description = "鏄惁浣滀负娑堟伅閫氶亾") + private boolean asMessageChannel; + + @Schema(description = "璁惧娉ㄥ唽鐨勪簨鍔′俊鎭�") + private SipTransactionInfo sipTransactionInfo; + + + public String getDeviceId() { return deviceId; @@ -125,6 +243,20 @@ return streamMode; } + public Integer getStreamModeForParam() { + if (streamMode == null) { + return 0; + } + if (streamMode.equalsIgnoreCase("UDP")) { + return 0; + }else if (streamMode.equalsIgnoreCase("TCP-PASSIVE")) { + return 1; + }else if (streamMode.equalsIgnoreCase("TCP-ACTIVE")) { + return 2; + } + return 0; + } + public void setStreamMode(String streamMode) { this.streamMode = streamMode; } @@ -153,12 +285,12 @@ this.hostAddress = hostAddress; } - public int getOnline() { - return online; + public boolean isOnLine() { + return onLine; } - public void setOnline(int online) { - this.online = online; + public void setOnLine(boolean onLine) { + this.onLine = onLine; } public int getChannelCount() { @@ -169,11 +301,171 @@ this.channelCount = channelCount; } - public Long getRegisterTimeMillis() { - return registerTimeMillis; + public String getRegisterTime() { + return registerTime; } - public void setRegisterTimeMillis(Long registerTimeMillis) { - this.registerTimeMillis = registerTimeMillis; + public void setRegisterTime(String registerTime) { + this.registerTime = registerTime; } + + public String getKeepaliveTime() { + return keepaliveTime; + } + + public void setKeepaliveTime(String keepaliveTime) { + this.keepaliveTime = keepaliveTime; + } + + public int getExpires() { + return expires; + } + + public void setExpires(int expires) { + this.expires = expires; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + + public String getMediaServerId() { + return mediaServerId; + } + + public void setMediaServerId(String mediaServerId) { + this.mediaServerId = mediaServerId; + } + + public String getCharset() { + return charset; + } + + public void setCharset(String charset) { + this.charset = charset; + } + + public int getSubscribeCycleForCatalog() { + return subscribeCycleForCatalog; + } + + public void setSubscribeCycleForCatalog(int subscribeCycleForCatalog) { + this.subscribeCycleForCatalog = subscribeCycleForCatalog; + } + + public int getSubscribeCycleForMobilePosition() { + return subscribeCycleForMobilePosition; + } + + public void setSubscribeCycleForMobilePosition(int subscribeCycleForMobilePosition) { + this.subscribeCycleForMobilePosition = subscribeCycleForMobilePosition; + } + + public int getMobilePositionSubmissionInterval() { + return mobilePositionSubmissionInterval; + } + + public void setMobilePositionSubmissionInterval(int mobilePositionSubmissionInterval) { + this.mobilePositionSubmissionInterval = mobilePositionSubmissionInterval; + } + + public int getSubscribeCycleForAlarm() { + return subscribeCycleForAlarm; + } + + public void setSubscribeCycleForAlarm(int subscribeCycleForAlarm) { + this.subscribeCycleForAlarm = subscribeCycleForAlarm; + } + + public boolean isSsrcCheck() { + return ssrcCheck; + } + + public void setSsrcCheck(boolean ssrcCheck) { + this.ssrcCheck = ssrcCheck; + } + + public String getGeoCoordSys() { + return geoCoordSys; + } + + public void setGeoCoordSys(String geoCoordSys) { + this.geoCoordSys = geoCoordSys; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public String getSdpIp() { + return sdpIp; + } + + public void setSdpIp(String sdpIp) { + this.sdpIp = sdpIp; + } + + public String getLocalIp() { + return localIp; + } + + public void setLocalIp(String localIp) { + this.localIp = localIp; + } + + public int getKeepaliveIntervalTime() { + return keepaliveIntervalTime; + } + + public void setKeepaliveIntervalTime(int keepaliveIntervalTime) { + this.keepaliveIntervalTime = keepaliveIntervalTime; + } + + public boolean isAsMessageChannel() { + return asMessageChannel; + } + + public void setAsMessageChannel(boolean asMessageChannel) { + this.asMessageChannel = asMessageChannel; + } + + public SipTransactionInfo getSipTransactionInfo() { + return sipTransactionInfo; + } + + public void setSipTransactionInfo(SipTransactionInfo sipTransactionInfo) { + this.sipTransactionInfo = sipTransactionInfo; + } + + /*======================璁惧涓诲瓙鐮佹祦閫昏緫START=========================*/ + @Schema(description = "寮�鍚富瀛愮爜娴佸垏鎹㈢殑寮�鍏筹紙false-涓嶅紑鍚紝true-寮�鍚級") + private boolean switchPrimarySubStream; + + public boolean isSwitchPrimarySubStream() { + return switchPrimarySubStream; + } + + public void setSwitchPrimarySubStream(boolean switchPrimarySubStream) { + this.switchPrimarySubStream = switchPrimarySubStream; + } + + /*======================璁惧涓诲瓙鐮佹祦閫昏緫END=========================*/ + + } -- Gitblit v1.8.0