From 8870f5f5a182f4af527dc2b89ad75063019df14f Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期四, 10 十一月 2022 09:40:01 +0800
Subject: [PATCH] 优化使用来源ip作为流ip

---
 src/main/java/com/genersoft/iot/vmp/gb28181/transmit/SIPSender.java |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/SIPSender.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/SIPSender.java
index a240ce4..f723a6f 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/SIPSender.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/SIPSender.java
@@ -5,22 +5,19 @@
 import com.genersoft.iot.vmp.gb28181.utils.SipUtils;
 import com.genersoft.iot.vmp.utils.GitUtil;
 import gov.nist.javax.sip.SipProviderImpl;
-import gov.nist.javax.sip.message.SIPRequest;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.stereotype.Component;
+import org.springframework.util.ObjectUtils;
 
 import javax.sip.SipException;
-import javax.sip.SipFactory;
 import javax.sip.header.CallIdHeader;
 import javax.sip.header.UserAgentHeader;
 import javax.sip.header.ViaHeader;
 import javax.sip.message.Message;
 import javax.sip.message.Request;
 import javax.sip.message.Response;
-import java.net.InetAddress;
 import java.text.ParseException;
 
 /**
@@ -109,6 +106,10 @@
     }
 
     public CallIdHeader getNewCallIdHeader(String ip, String transport){
+        if (ObjectUtils.isEmpty(ip) || ObjectUtils.isEmpty(transport)) {
+            return  transport.equalsIgnoreCase("TCP") ? sipLayer.getTcpSipProvider().getNewCallId()
+                    : sipLayer.getUdpSipProvider().getNewCallId();
+        }
         return  transport.equalsIgnoreCase("TCP") ? sipLayer.getTcpSipProvider(ip).getNewCallId()
                 : sipLayer.getUdpSipProvider(ip).getNewCallId();
     }

--
Gitblit v1.8.0