From 2310087e03ebc785a3e67f6d85ab4166b6f05ca0 Mon Sep 17 00:00:00 2001
From: panlinlin <648540858@qq.com>
Date: 星期三, 07 四月 2021 18:35:13 +0800
Subject: [PATCH] 规范化api, 进行中。。。

---
 src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java |   17 +++++++++++++----
 1 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java
index b2c1597..835dd9c 100644
--- a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java
+++ b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java
@@ -9,7 +9,7 @@
 import com.genersoft.iot.vmp.gb28181.bean.Device;
 import com.genersoft.iot.vmp.storager.IRedisCatchStorage;
 import com.genersoft.iot.vmp.storager.IVideoManagerStorager;
-import com.genersoft.iot.vmp.vmanager.service.IPlayService;
+import com.genersoft.iot.vmp.service.IPlayService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -116,6 +116,10 @@
 		
 		if (logger.isDebugEnabled()) {
 			logger.debug("ZLM HOOK on_play API璋冪敤锛屽弬鏁帮細" + json.toString());
+		}
+		ZLMHttpHookSubscribe.Event subscribe = this.subscribe.getSubscribe(ZLMHttpHookSubscribe.HookType.on_play, json);
+		if (subscribe != null ) {
+			subscribe.response(json);
 		}
 		JSONObject ret = new JSONObject();
 		ret.put("code", 0);
@@ -240,8 +244,9 @@
 		String streamId = json.getString("stream");
 		String schema = json.getString("schema");
 		boolean regist = json.getBoolean("regist");
-		StreamInfo streamInfo = redisCatchStorage.queryPlayByStreamId(streamId);
+
 		if ("rtp".equals(app) && !regist ) {
+			StreamInfo streamInfo = redisCatchStorage.queryPlayByStreamId(streamId);
 			if (streamInfo!=null){
 				redisCatchStorage.stopPlay(streamInfo);
 				storager.stopPlay(streamInfo.getDeviceID(), streamInfo.getChannelId());
@@ -250,8 +255,12 @@
 				redisCatchStorage.stopPlayback(streamInfo);
 			}
 		}else {
-			if (!"rtp".equals(app) && "rtsp".equals(schema)){
-				zlmMediaListManager.updateMediaList();
+			if (!"rtp".equals(app) && "rtmp".equals(schema)){
+				if (regist) {
+					zlmMediaListManager.addMedia(app, streamId);
+				}else {
+					zlmMediaListManager.removeMedia(app, streamId);
+				}
 			}
 		}
 		JSONObject ret = new JSONObject();

--
Gitblit v1.8.0