From e48fa711a3664bece9b3e58840a75fe7c05bc47c Mon Sep 17 00:00:00 2001
From: panlinlin <648540858@qq.com>
Date: 星期六, 08 五月 2021 17:14:05 +0800
Subject: [PATCH] 添加截图(快照)功能

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

diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/ByeRequestProcessor.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/ByeRequestProcessor.java
index ec5f921..fdb7c0b 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/ByeRequestProcessor.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/ByeRequestProcessor.java
@@ -16,6 +16,8 @@
 import com.genersoft.iot.vmp.gb28181.transmit.request.SIPRequestAbstractProcessor;
 import com.genersoft.iot.vmp.media.zlm.ZLMRTPServerFactory;
 import com.genersoft.iot.vmp.storager.IRedisCatchStorage;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import java.text.ParseException;
 import java.util.HashMap;
@@ -27,6 +29,8 @@
  * @date:   2021骞�3鏈�9鏃�     
  */
 public class ByeRequestProcessor extends SIPRequestAbstractProcessor {
+
+	private Logger logger = LoggerFactory.getLogger(ByeRequestProcessor.class);
 
 	private ISIPCommander cmder;
 
@@ -48,17 +52,19 @@
 				String platformGbId = ((SipURI) ((HeaderAddress) evt.getRequest().getHeader(FromHeader.NAME)).getAddress().getURI()).getUser();
 				String channelId = ((SipURI) ((HeaderAddress) evt.getRequest().getHeader(ToHeader.NAME)).getAddress().getURI()).getUser();
 				SendRtpItem sendRtpItem =  redisCatchStorage.querySendRTPServer(platformGbId, channelId);
+				if (sendRtpItem == null) return;
 				String streamId = sendRtpItem.getStreamId();
 				Map<String, Object> param = new HashMap<>();
 				param.put("vhost","__defaultVhost__");
 				param.put("app",sendRtpItem.getApp());
 				param.put("stream",streamId);
-				System.out.println("鍋滄鍚戜笂绾ф帹娴侊細" + streamId);
+				param.put("ssrc",sendRtpItem.getSsrc());
+				logger.info("鍋滄鍚戜笂绾ф帹娴侊細" + streamId);
 				zlmrtpServerFactory.stopSendRtpStream(param);
 				redisCatchStorage.deleteSendRTPServer(platformGbId, channelId);
 				if (zlmrtpServerFactory.totalReaderCount(sendRtpItem.getApp(), streamId) == 0) {
-					System.out.println(streamId + "鏃犲叾瀹冭鐪嬭�咃紝閫氱煡璁惧鍋滄鎺ㄦ祦");
-					cmder.streamByeCmd(streamId);
+					logger.info(streamId + "鏃犲叾瀹冭鐪嬭�咃紝閫氱煡璁惧鍋滄鎺ㄦ祦");
+					cmder.streamByeCmd(sendRtpItem.getDeviceId(), channelId);
 				}
 			}
 		} catch (SipException e) {

--
Gitblit v1.8.0