648540858
2021-12-02 2a1f979651340fbf9b530ab2d2f9e5857cbeeb1a
src/main/java/com/genersoft/iot/vmp/gb28181/SipLayer.java
@@ -2,6 +2,7 @@
import com.genersoft.iot.vmp.conf.SipConfig;
import com.genersoft.iot.vmp.gb28181.event.SipSubscribe;
import com.genersoft.iot.vmp.gb28181.transmit.ISIPProcessorObserver;
import com.genersoft.iot.vmp.gb28181.transmit.SIPProcessorObserver;
import gov.nist.javax.sip.SipProviderImpl;
import gov.nist.javax.sip.SipStackImpl;
@@ -28,27 +29,11 @@
   private SipConfig sipConfig;
   @Autowired
   private SIPProcessorObserver sipProcessorObserver;
   @Autowired
   private SipSubscribe sipSubscribe;
   private ISIPProcessorObserver sipProcessorObserver;
   private SipStackImpl sipStack;
   private SipFactory sipFactory;
   /**
    * 消息处理器线程池
    */
   private ThreadPoolExecutor processThreadPool;
   public SipLayer() {
      int processThreadNum = Runtime.getRuntime().availableProcessors() * 10;
      LinkedBlockingQueue<Runnable> processQueue = new LinkedBlockingQueue<>(10000);
      processThreadPool = new ThreadPoolExecutor(processThreadNum,processThreadNum,
            0L,TimeUnit.MILLISECONDS,processQueue,
            new ThreadPoolExecutor.CallerRunsPolicy());
   }
   @Bean("sipFactory")
@@ -77,7 +62,7 @@
      return sipStack;
   }
   @Bean("tcpSipProvider")
   @Bean(name = "tcpSipProvider")
   @DependsOn("sipStack")
   private SipProviderImpl startTcpListener() {
      ListeningPoint tcpListeningPoint = null;
@@ -85,6 +70,7 @@
      try {
         tcpListeningPoint = sipStack.createListeningPoint(sipConfig.getMonitorIp(), sipConfig.getPort(), "TCP");
         tcpSipProvider = (SipProviderImpl)sipStack.createSipProvider(tcpListeningPoint);
         tcpSipProvider.setDialogErrorsAutomaticallyHandled();
         tcpSipProvider.addSipListener(sipProcessorObserver);
         logger.info("Sip Server TCP 启动成功 port {" + sipConfig.getMonitorIp() + ":" + sipConfig.getPort() + "}");
      } catch (TransportNotSupportedException e) {
@@ -100,7 +86,7 @@
      return tcpSipProvider;
   }
   
   @Bean("udpSipProvider")
   @Bean(name = "udpSipProvider")
   @DependsOn("sipStack")
   private SipProviderImpl startUdpListener() {
      ListeningPoint udpListeningPoint = null;