From 9b1af8ef1396de45884fe86c56844714045b82ec Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期二, 07 十二月 2021 21:13:55 +0800
Subject: [PATCH] 适配zlm的hook保活

---
 src/main/java/com/genersoft/iot/vmp/service/impl/StreamProxyServiceImpl.java |   20 ++++++++++++++++++++
 1 files changed, 20 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/service/impl/StreamProxyServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/service/impl/StreamProxyServiceImpl.java
index 0541124..907893d 100644
--- a/src/main/java/com/genersoft/iot/vmp/service/impl/StreamProxyServiceImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/service/impl/StreamProxyServiceImpl.java
@@ -5,6 +5,7 @@
 import com.genersoft.iot.vmp.gb28181.bean.GbStream;
 import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform;
 import com.genersoft.iot.vmp.media.zlm.ZLMRESTfulUtils;
+import com.genersoft.iot.vmp.media.zlm.ZLMServerConfig;
 import com.genersoft.iot.vmp.media.zlm.dto.MediaItem;
 import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem;
 import com.genersoft.iot.vmp.media.zlm.dto.StreamProxyItem;
@@ -49,6 +50,9 @@
 
     @Autowired
     private StreamProxyMapper streamProxyMapper;
+
+    @Autowired
+    private IRedisCatchStorage redisCatchStorage;
 
     @Autowired
     private GbStreamMapper gbStreamMapper;
@@ -249,4 +253,20 @@
     public StreamProxyItem getStreamProxyByAppAndStream(String app, String streamId) {
         return videoManagerStorager.getStreamProxyByAppAndStream(app, streamId);
     }
+
+    @Override
+    public void zlmServerOnline(ZLMServerConfig zlmServerConfig) {
+
+    }
+
+    @Override
+    public void zlmServerOffline(String mediaServerId) {
+        // 绉婚櫎寮�鍚簡鏃犱汉瑙傜湅鑷姩绉婚櫎鐨勬祦
+        streamProxyMapper.deleteAutoRemoveItemByMediaServerId(mediaServerId);
+        // 鍏朵粬鐨勬祦璁剧疆鏈惎鐢�
+        streamProxyMapper.updateStatus(false, mediaServerId);
+        // 绉婚櫎redis鍐呮祦鐨勪俊鎭�
+        redisCatchStorage.removeStream(mediaServerId, "PULL");
+
+    }
 }

--
Gitblit v1.8.0