From a45fab423bab8e0ce6f1d2a270dfa19a6130193f Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期一, 05 六月 2023 15:01:20 +0800 Subject: [PATCH] 修复国标级联语音对讲 --- src/main/java/com/genersoft/iot/vmp/gb28181/utils/SipUtils.java | 15 ++++++++------- 1 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/utils/SipUtils.java b/src/main/java/com/genersoft/iot/vmp/gb28181/utils/SipUtils.java index 98d7dd3..e01107f 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/utils/SipUtils.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/utils/SipUtils.java @@ -54,7 +54,7 @@ return "z9hG4bK" + System.currentTimeMillis(); } - public static UserAgentHeader createUserAgentHeader(SipFactory sipFactory, GitUtil gitUtil) throws PeerUnavailableException, ParseException { + public static UserAgentHeader createUserAgentHeader(GitUtil gitUtil) throws PeerUnavailableException, ParseException { List<String> agentParam = new ArrayList<>(); agentParam.add("WVP-Pro "); if (gitUtil != null ) { @@ -66,7 +66,7 @@ agentParam.add(gitUtil.getCommitTime()); } } - return sipFactory.createHeaderFactory().createUserAgentHeader(agentParam); + return SipFactory.getInstance().createHeaderFactory().createUserAgentHeader(agentParam); } public static String getNewFromTag(){ @@ -123,7 +123,7 @@ } public static String getNewCallId() { - return (int) Math.floor(Math.random() * 10000) + ""; + return (int) Math.floor(Math.random() * 1000000000) + ""; } public static int getTypeCodeFromGbCode(String deviceId) { @@ -153,8 +153,9 @@ String remoteAddress; int remotePort; if (sipUseSourceIpAsRemoteAddress) { - remoteAddress = request.getRemoteAddress().getHostAddress(); - remotePort = request.getRemotePort(); + remoteAddress = request.getPeerPacketSourceAddress().getHostAddress(); + remotePort = request.getPeerPacketSourcePort(); + }else { // 鍒ゆ柇RPort鏄惁鏀瑰彉锛屾敼鍙樺垯璇存槑璺敱nat淇℃伅鍙樺寲锛屼慨鏀硅澶囦俊鎭� // 鑾峰彇鍒伴�氫俊鍦板潃绛変俊鎭� @@ -162,8 +163,8 @@ remotePort = request.getTopmostViaHeader().getRPort(); // 瑙f瀽鏈湴鍦板潃鏇夸唬 if (ObjectUtils.isEmpty(remoteAddress) || remotePort == -1) { - remoteAddress = request.getTopmostViaHeader().getHost(); - remotePort = request.getTopmostViaHeader().getPort(); + remoteAddress = request.getPeerPacketSourceAddress().getHostAddress(); + remotePort = request.getPeerPacketSourcePort(); } } -- Gitblit v1.8.0