支持sdp ip 配置为域名

This commit is contained in:
648540858 2022-05-19 17:00:47 +08:00
parent d1c15ad520
commit 998b8323f3

View File

@ -6,6 +6,10 @@ import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
import org.springframework.util.StringUtils;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.regex.Pattern;
@Configuration("mediaConfig")
public class MediaConfig{
@ -161,7 +165,18 @@ public class MediaConfig{
if (StringUtils.isEmpty(sdpIp)){
return ip;
}else {
return sdpIp;
if (isValidIPAddress(sdpIp)) {
return sdpIp;
}else {
// 按照域名解析
String hostAddress = null;
try {
hostAddress = InetAddress.getByName(sdpIp).getHostAddress();
} catch (UnknownHostException e) {
throw new RuntimeException(e);
}
return hostAddress;
}
}
}
@ -211,4 +226,11 @@ public class MediaConfig{
return mediaServerItem;
}
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;
}
}