From b7ad0a907f59a2bc0455565e76c12bf152016469 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期五, 27 十月 2023 18:06:46 +0800 Subject: [PATCH] 合并pr 优化sql --- src/main/java/com/genersoft/iot/vmp/conf/MediaConfig.java | 68 ++++++++++++++++++++++----------- 1 files changed, 45 insertions(+), 23 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/conf/MediaConfig.java b/src/main/java/com/genersoft/iot/vmp/conf/MediaConfig.java index 85f4684..20ed8cb 100644 --- a/src/main/java/com/genersoft/iot/vmp/conf/MediaConfig.java +++ b/src/main/java/com/genersoft/iot/vmp/conf/MediaConfig.java @@ -2,13 +2,23 @@ import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem; import com.genersoft.iot.vmp.utils.DateUtil; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Configuration; -import org.springframework.util.StringUtils; +import org.springframework.core.annotation.Order; +import org.springframework.util.ObjectUtils; + +import java.net.InetAddress; +import java.net.UnknownHostException; +import java.util.regex.Pattern; @Configuration("mediaConfig") +@Order(0) public class MediaConfig{ + + private final static Logger logger = LoggerFactory.getLogger(MediaConfig.class); // 淇敼蹇呴』閰嶇疆锛屼笉鍐嶆敮鎸佽嚜鍔ㄨ幏鍙� @Value("${media.id}") @@ -17,7 +27,7 @@ @Value("${media.ip}") private String ip; - @Value("${media.hook-ip:${sip.ip}}") + @Value("${media.hook-ip:}") private String hookIp; @Value("${sip.ip}") @@ -59,18 +69,14 @@ @Value("${media.secret}") private String secret; - @Value("${media.stream-none-reader-delay-ms:10000}") - private int streamNoneReaderDelayMS = 10000; - @Value("${media.rtp.enable}") private boolean rtpEnable; @Value("${media.rtp.port-range}") private String rtpPortRange; - @Value("${media.rtp.send-port-range}") - private String sendRtpPortRange; + private String rtpSendPortRange; @Value("${media.record-assist-port:0}") private Integer recordAssistPort = 0; @@ -84,8 +90,8 @@ } public String getHookIp() { - if (StringUtils.isEmpty(hookIp)){ - return sipIp; + if (ObjectUtils.isEmpty(hookIp)){ + return sipIp.split(",")[0]; }else { return hookIp; } @@ -141,10 +147,6 @@ return secret; } - public int getStreamNoneReaderDelayMS() { - return streamNoneReaderDelayMS; - } - public boolean isRtpEnable() { return rtpEnable; } @@ -158,15 +160,26 @@ } public String getSdpIp() { - if (StringUtils.isEmpty(sdpIp)){ + if (ObjectUtils.isEmpty(sdpIp)){ return ip; }else { - return sdpIp; + if (isValidIPAddress(sdpIp)) { + return sdpIp; + }else { + // 鎸夌収鍩熷悕瑙f瀽 + String hostAddress = null; + try { + hostAddress = InetAddress.getByName(sdpIp).getHostAddress(); + } catch (UnknownHostException e) { + logger.error("[鑾峰彇SDP IP]: 鍩熷悕瑙f瀽澶辫触"); + } + return hostAddress; + } } } public String getStreamIp() { - if (StringUtils.isEmpty(streamIp)){ + if (ObjectUtils.isEmpty(streamIp)){ return ip; }else { return streamIp; @@ -175,10 +188,6 @@ public String getSipDomain() { return sipDomain; - } - - public String getSendRtpPortRange() { - return sendRtpPortRange; } public MediaServerItem getMediaSerItem(){ @@ -198,12 +207,11 @@ mediaServerItem.setRtspSSLPort(rtspSSLPort); mediaServerItem.setAutoConfig(autoConfig); mediaServerItem.setSecret(secret); - mediaServerItem.setStreamNoneReaderDelayMS(streamNoneReaderDelayMS); mediaServerItem.setRtpEnable(rtpEnable); mediaServerItem.setRtpPortRange(rtpPortRange); - mediaServerItem.setSendRtpPortRange(sendRtpPortRange); + mediaServerItem.setSendRtpPortRange(rtpSendPortRange); mediaServerItem.setRecordAssistPort(recordAssistPort); - mediaServerItem.setHookAliveInterval(120); + mediaServerItem.setHookAliveInterval(30.00f); mediaServerItem.setCreateTime(DateUtil.getNow()); mediaServerItem.setUpdateTime(DateUtil.getNow()); @@ -211,4 +219,18 @@ return mediaServerItem; } + public String getRtpSendPortRange() { + return rtpSendPortRange; + } + + public void setRtpSendPortRange(String rtpSendPortRange) { + this.rtpSendPortRange = rtpSendPortRange; + } + + private boolean isValidIPAddress(String ipAddress) { + if ((ipAddress != null) && (!ipAddress.isEmpty())) { + return Pattern.matches("^([1-9]|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3}$", ipAddress); + } + return false; + } } -- Gitblit v1.8.0