From 45969a00b74b5a240c0dc6e2c37f5381cd0cb65f Mon Sep 17 00:00:00 2001
From: lawrencehj <1934378145@qq.com>
Date: 星期四, 26 八月 2021 23:57:38 +0800
Subject: [PATCH] 修正设备注册认证时验证Response计算的错误

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

diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/SubscribeRequestProcessor.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/SubscribeRequestProcessor.java
index 47761d0..6d61763 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/SubscribeRequestProcessor.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/SubscribeRequestProcessor.java
@@ -10,45 +10,43 @@
 import javax.sip.message.Request;
 import javax.sip.message.Response;
 
-import org.springframework.stereotype.Component;
-
-import com.genersoft.iot.vmp.gb28181.SipLayer;
-import com.genersoft.iot.vmp.gb28181.transmit.request.ISIPRequestProcessor;
+import com.genersoft.iot.vmp.gb28181.transmit.request.SIPRequestAbstractProcessor;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**    
  * @Description:SUBSCRIBE璇锋眰澶勭悊鍣�
- * @author: songww
+ * @author: swwheihei
  * @date:   2020骞�5鏈�3鏃� 涓嬪崍5:31:20     
  */
-@Component
-public class SubscribeRequestProcessor implements ISIPRequestProcessor {
+public class SubscribeRequestProcessor extends SIPRequestAbstractProcessor {
+
+	private Logger logger = LoggerFactory.getLogger(SubscribeRequestProcessor.class);
 
 	/**   
 	 * 澶勭悊SUBSCRIBE璇锋眰  
 	 * 
 	 * @param evt
-	 * @param layer
-	 * @param transaction
-	 * @param config    
 	 */
 	@Override
-	public void process(RequestEvent evt, SipLayer layer, ServerTransaction transaction) {
+	public void process(RequestEvent evt) {
 		Request request = evt.getRequest();
 
 		try {
 			Response response = null;
-			response = layer.getMessageFactory().createResponse(200, request);
+			response = getMessageFactory().createResponse(200, request);
 			if (response != null) {
-				ExpiresHeader expireHeader = layer.getHeaderFactory().createExpiresHeader(30);
+				ExpiresHeader expireHeader = getHeaderFactory().createExpiresHeader(30);
 				response.setExpires(expireHeader);
 			}
-			System.out.println("response : " + response.toString());
-
+			logger.info("response : " + response.toString());
+			ServerTransaction transaction = getServerTransaction(evt);
 			if (transaction != null) {
 				transaction.sendResponse(response);
+				transaction.getDialog().delete();
 				transaction.terminate();
 			} else {
-				System.out.println("processRequest serverTransactionId is null.");
+				logger.info("processRequest serverTransactionId is null.");
 			}
 
 		} catch (ParseException e) {

--
Gitblit v1.8.0