From b5fb82934e01f78921e465ba0ac88b4daa97327d Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期四, 08 九月 2022 21:22:49 +0800
Subject: [PATCH] 修复发送目录信息是状态错误

---
 src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/SubscribeRequestProcessor.java |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/SubscribeRequestProcessor.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/SubscribeRequestProcessor.java
index 4d618d1..8c04368 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/SubscribeRequestProcessor.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/SubscribeRequestProcessor.java
@@ -82,9 +82,12 @@
 	@Override
 	public void process(RequestEvent evt) {
 		Request request = evt.getRequest();
-		System.out.println("鏀跺埌璁㈤槄");
 		try {
 			Element rootElement = getRootElement(evt);
+			if (rootElement == null) {
+				logger.error("澶勭悊SUBSCRIBE璇锋眰  鏈幏鍙栧埌娑堟伅浣搟}", evt.getRequest());
+				return;
+			}
 			String cmd = XmlUtil.getText(rootElement, "CmdType");
 			if (CmdType.MOBILE_POSITION.equals(cmd)) {
 				processNotifyMobilePosition(evt, rootElement);
@@ -129,7 +132,7 @@
 			return;
 		}
 		if (evt.getServerTransaction() == null) {
-			ServerTransaction serverTransaction = "TCP".equals(platform.getTransport()) ? tcpSipProvider.getNewServerTransaction(evt.getRequest())
+			ServerTransaction serverTransaction = "TCP".equalsIgnoreCase(platform.getTransport()) ? tcpSipProvider.getNewServerTransaction(evt.getRequest())
 					: udpSipProvider.getNewServerTransaction(evt.getRequest());
 			subscribeInfo.setTransaction(serverTransaction);
 			Dialog dialog = serverTransaction.getDialog();
@@ -177,7 +180,6 @@
 
 	private void processNotifyCatalogList(RequestEvent evt, Element rootElement) throws SipException {
 
-		System.out.println(evt.getRequest().toString());
 		String platformId = SipUtils.getUserIdFromFromHeader(evt.getRequest());
 		String deviceId = XmlUtil.getText(rootElement, "DeviceID");
 		ParentPlatform platform = storager.queryParentPlatByServerGBId(platformId);
@@ -186,7 +188,7 @@
 		}
 		SubscribeInfo subscribeInfo = new SubscribeInfo(evt, platformId);
 		if (evt.getServerTransaction() == null) {
-			ServerTransaction serverTransaction = "TCP".equals(platform.getTransport()) ? tcpSipProvider.getNewServerTransaction(evt.getRequest())
+			ServerTransaction serverTransaction = "TCP".equalsIgnoreCase(platform.getTransport()) ? tcpSipProvider.getNewServerTransaction(evt.getRequest())
 					: udpSipProvider.getNewServerTransaction(evt.getRequest());
 			subscribeInfo.setTransaction(serverTransaction);
 			Dialog dialog = serverTransaction.getDialog();
@@ -209,7 +211,6 @@
 		}else if (subscribeInfo.getExpires() == 0) {
 			subscribeHolder.removeCatalogSubscribe(platformId);
 		}
-
 		try {
 			ParentPlatform parentPlatform = storager.queryParentPlatByServerGBId(platformId);
 			responseXmlAck(evt, resultXml.toString(), parentPlatform);
@@ -217,5 +218,4 @@
 			e.printStackTrace();
 		}
 	}
-
 }

--
Gitblit v1.8.0