From 22efd0f56c20e1aedb18fa7b9bcdc48007fcc954 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期一, 20 十二月 2021 09:51:51 +0800
Subject: [PATCH] 添加心跳到期时验证zlm是否真的离线。

---
 src/main/java/com/genersoft/iot/vmp/storager/IRedisCatchStorage.java |   57 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 52 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/storager/IRedisCatchStorage.java b/src/main/java/com/genersoft/iot/vmp/storager/IRedisCatchStorage.java
index 25743e1..68a772e 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/IRedisCatchStorage.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/IRedisCatchStorage.java
@@ -2,15 +2,25 @@
 
 import com.alibaba.fastjson.JSONObject;
 import com.genersoft.iot.vmp.common.StreamInfo;
+import com.genersoft.iot.vmp.gb28181.bean.Device;
 import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform;
 import com.genersoft.iot.vmp.gb28181.bean.ParentPlatformCatch;
 import com.genersoft.iot.vmp.gb28181.bean.SendRtpItem;
 import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem;
+import com.genersoft.iot.vmp.service.bean.ThirdPartyGB;
 
 import java.util.List;
 import java.util.Map;
 
 public interface IRedisCatchStorage {
+
+    /**
+     * 璁℃暟鍣ㄣ�備负cseq杩涜璁℃暟
+     *
+     * @param method sip 鏂规硶
+     * @return
+     */
+    Long getCSEQ(String method);
 
     /**
      * 寮�濮嬫挱鏀炬椂灏嗘祦瀛樺叆
@@ -121,13 +131,13 @@
     /**
      * 鍦╮edis娣诲姞wvp鐨勪俊鎭�
      */
-    void updateWVPInfo(String id, JSONObject jsonObject, int time);
+    void updateWVPInfo(JSONObject jsonObject, int time);
 
     /**
      * 鍙戦�佹帹娴佺敓鎴愪笌鎺ㄦ祦娑堝け娑堟伅
      * @param jsonObject 娑堟伅鍐呭
      */
-    void sendStreamChangeMsg(JSONObject jsonObject);
+    void sendStreamChangeMsg(String type, JSONObject jsonObject);
 
     /**
      * 娣诲姞娴佷俊鎭埌redis
@@ -135,13 +145,50 @@
      * @param app
      * @param streamId
      */
-    void addPushStream(MediaServerItem mediaServerItem, String app, String streamId, StreamInfo streamInfo);
+    void addStream(MediaServerItem mediaServerItem, String type, String app, String streamId, StreamInfo streamInfo);
 
     /**
      * 绉婚櫎娴佷俊鎭粠redis
-     * @param mediaServerItem
+     * @param mediaServerId
      * @param app
      * @param streamId
      */
-    void removePushStream(MediaServerItem mediaServerItem, String app, String streamId);
+    void removeStream(String mediaServerId, String type, String app, String streamId);
+
+
+    /**
+     * 绉婚櫎娴佷俊鎭粠redis
+     * @param mediaServerId
+     */
+    void removeStream(String mediaServerId, String type);
+
+    /**
+     * 寮�濮嬩笅杞藉綍鍍忔椂瀛樺叆
+     * @param streamInfo
+     */
+    boolean startDownload(StreamInfo streamInfo);
+
+    StreamInfo queryDownloadByStreamId(String streamId);
+
+    /**
+     * 鏌ユ壘绗笁鏂圭郴缁熺暀涓嬬殑鍥芥爣棰勮鍊�
+     * @param queryKey
+     * @return
+     */
+    ThirdPartyGB queryMemberNoGBId(String queryKey);
+
+    List<StreamInfo> getStreams(String mediaServerId, String pull);
+
+    /**
+     * 灏哾evice淇℃伅鍐欏叆redis
+     * @param device
+     */
+    void updateDevice(Device device);
+
+    /**
+     * 鑾峰彇Device
+     */
+    Device getDevice(String deviceId);
+
+    void resetAllCSEQ();
 }

--
Gitblit v1.8.0