From 764d04b497356ba6bcbb75fd42b51eca750f7223 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期三, 29 五月 2024 15:02:51 +0800
Subject: [PATCH] 调整上级观看消息的发送

---
 src/main/java/com/genersoft/iot/vmp/storager/IRedisCatchStorage.java |  198 ++++++++++++++++++++++++++-----------------------
 1 files changed, 104 insertions(+), 94 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
old mode 100644
new mode 100755
index c6b7e64..2347f50
--- a/src/main/java/com/genersoft/iot/vmp/storager/IRedisCatchStorage.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/IRedisCatchStorage.java
@@ -1,15 +1,16 @@
 package com.genersoft.iot.vmp.storager;
 
-import com.alibaba.fastjson.JSONObject;
-import com.genersoft.iot.vmp.common.StreamInfo;
+import com.alibaba.fastjson2.JSONObject;
+import com.genersoft.iot.vmp.common.SystemAllInfo;
 import com.genersoft.iot.vmp.gb28181.bean.*;
-import com.genersoft.iot.vmp.media.zlm.dto.MediaItem;
-import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem;
+import com.genersoft.iot.vmp.media.bean.MediaInfo;
+import com.genersoft.iot.vmp.media.bean.MediaServer;
+import com.genersoft.iot.vmp.media.event.media.MediaArrivalEvent;
+import com.genersoft.iot.vmp.media.zlm.dto.StreamAuthorityInfo;
 import com.genersoft.iot.vmp.media.zlm.dto.StreamPushItem;
 import com.genersoft.iot.vmp.service.bean.GPSMsgInfo;
 import com.genersoft.iot.vmp.service.bean.MessageForPushChannel;
-import com.genersoft.iot.vmp.service.bean.SSRCInfo;
-import com.genersoft.iot.vmp.service.bean.ThirdPartyGB;
+import com.genersoft.iot.vmp.storager.dao.dto.PlatformRegisterInfo;
 
 import java.util.List;
 import java.util.Map;
@@ -19,44 +20,9 @@
     /**
      * 璁℃暟鍣ㄣ�備负cseq杩涜璁℃暟
      *
-     * @param method sip 鏂规硶
      * @return
      */
-    Long getCSEQ(String method);
-
-    /**
-     * 寮�濮嬫挱鏀炬椂灏嗘祦瀛樺叆
-     *
-     * @param stream 娴佷俊鎭�
-     * @return
-     */
-    boolean startPlay(StreamInfo stream);
-
-
-    /**
-     * 鍋滄鎾斁鏃跺垹闄�
-     *
-     * @return
-     */
-    boolean stopPlay(StreamInfo streamInfo);
-
-    /**
-     * 鏌ヨ鎾斁鍒楄〃
-     * @return
-     */
-    StreamInfo queryPlay(StreamInfo streamInfo);
-
-    StreamInfo queryPlayByStreamId(String steamId);
-
-    StreamInfo queryPlayByDevice(String deviceId, String channelId);
-
-    Map<String, StreamInfo> queryPlayByDeviceId(String deviceId);
-
-    boolean startPlayback(StreamInfo stream, String callId);
-
-    boolean stopPlayback(String deviceId, String channelId, String stream, String callId);
-
-    StreamInfo queryPlayback(String deviceId, String channelID, String stream, String callId);
+    Long getCSEQ();
 
     void updatePlatformCatchInfo(ParentPlatformCatch parentPlatformCatch);
 
@@ -64,23 +30,19 @@
 
     void delPlatformCatchInfo(String platformGbId);
 
-    void updatePlatformKeepalive(ParentPlatform parentPlatform);
-
     void delPlatformKeepalive(String platformGbId);
-
-    void updatePlatformRegister(ParentPlatform parentPlatform);
 
     void delPlatformRegister(String platformGbId);
 
-    void updatePlatformRegisterInfo(String callId, String platformGbId);
+    void updatePlatformRegisterInfo(String callId, PlatformRegisterInfo platformRegisterInfo);
 
-    String queryPlatformRegisterInfo(String callId);
+    PlatformRegisterInfo queryPlatformRegisterInfo(String callId);
 
     void delPlatformRegisterInfo(String callId);
 
-    void cleanPlatformRegisterInfos();
-
     void updateSendRTPSever(SendRtpItem sendRtpItem);
+
+    List<SendRtpItem> querySendRTPServer(String platformGbId, String channelId, String streamId);
 
     /**
      * 鏌ヨRTP鎺ㄩ�佷俊鎭紦瀛�
@@ -106,29 +68,6 @@
     boolean isChannelSendingRTP(String channelId);
 
     /**
-     * 娓呯┖鏌愪釜璁惧鐨勬墍鏈夌紦瀛�
-     * @param deviceId 璁惧ID
-     */
-    void clearCatchByDeviceId(String deviceId);
-
-    /**
-     * 鑾峰彇mediaServer鑺傜偣
-     * @param mediaServerId
-     * @return
-     */
-//    MediaServerItem getMediaInfo(String mediaServerId);
-
-    /**
-     * 璁剧疆鎵�鏈夎澶囩绾�
-     */
-    void outlineForAll();
-
-    /**
-     * 鑾峰彇鎵�鏈夊湪绾跨殑
-     */
-    List<String> getOnlineForAll();
-
-    /**
      * 鍦╮edis娣诲姞wvp鐨勪俊鎭�
      */
     void updateWVPInfo(JSONObject jsonObject, int time);
@@ -140,12 +79,18 @@
     void sendStreamChangeMsg(String type, JSONObject jsonObject);
 
     /**
+     * 鍙戦�佹姤璀︽秷鎭�
+     * @param msg 娑堟伅鍐呭
+     */
+    void sendAlarmMsg(AlarmChannelMessage msg);
+
+    /**
      * 娣诲姞娴佷俊鎭埌redis
      * @param mediaServerItem
      * @param app
      * @param streamId
      */
-    void addStream(MediaServerItem mediaServerItem, String type, String app, String streamId, MediaItem item);
+    void addStream(MediaServer mediaServerItem, String type, String app, String streamId, MediaInfo item);
 
     /**
      * 绉婚櫎娴佷俊鎭粠redis
@@ -162,24 +107,7 @@
      */
     void removeStream(String mediaServerId, String type);
 
-    /**
-     * 寮�濮嬩笅杞藉綍鍍忔椂瀛樺叆
-     * @param streamInfo
-     */
-    boolean startDownload(StreamInfo streamInfo, String callId);
-
-    StreamInfo queryDownload(String deviceId, String channelId, String stream, String callId);
-
-    boolean stopDownload(String deviceId, String channelId, String stream, String callId);
-
-    /**
-     * 鏌ユ壘绗笁鏂圭郴缁熺暀涓嬬殑鍥芥爣棰勮鍊�
-     * @param queryKey
-     * @return
-     */
-    ThirdPartyGB queryMemberNoGBId(String queryKey);
-
-    List<MediaItem> getStreams(String mediaServerId, String pull);
+    List<MediaInfo> getStreams(String mediaServerId, String pull);
 
     /**
      * 灏哾evice淇℃伅鍐欏叆redis
@@ -205,16 +133,98 @@
 
     void resetAllSN();
 
-    MediaItem getStreamInfo(String app, String streamId, String mediaServerId);
+    MediaInfo getStreamInfo(String app, String streamId, String mediaServerId);
 
     void addCpuInfo(double cpuInfo);
 
     void addMemInfo(double memInfo);
 
-    void addNetInfo(Map<String, String> networkInterfaces);
+    void addNetInfo(Map<String, Double> networkInterfaces);
 
     void sendMobilePositionMsg(JSONObject jsonObject);
 
     void sendStreamPushRequestedMsg(MessageForPushChannel messageForPushChannel);
 
+    /**
+     * 鍒ゆ柇璁惧鐘舵��
+     * @param deviceId 璁惧ID
+     * @return
+     */
+    public boolean deviceIsOnline(String deviceId);
+
+    /**
+     * 瀛樺偍鎺ㄦ祦鐨勯壌鏉冧俊鎭�
+     * @param app 搴旂敤鍚�
+     * @param stream 娴�
+     * @param streamAuthorityInfo 閴存潈淇℃伅
+     */
+    void updateStreamAuthorityInfo(String app, String stream, StreamAuthorityInfo streamAuthorityInfo);
+
+    /**
+     * 绉婚櫎鎺ㄦ祦鐨勯壌鏉冧俊鎭�
+     * @param app 搴旂敤鍚�
+     * @param streamId 娴�
+     */
+    void removeStreamAuthorityInfo(String app, String streamId);
+
+    /**
+     * 鑾峰彇鎺ㄦ祦鐨勯壌鏉冧俊鎭�
+     * @param app 搴旂敤鍚�
+     * @param stream 娴�
+     * @return
+     */
+    StreamAuthorityInfo getStreamAuthorityInfo(String app, String stream);
+
+    List<StreamAuthorityInfo> getAllStreamAuthorityInfo();
+
+    /**
+     * 鍙戦�乺edis娑堟伅 鏌ヨ鎵�鏈夋帹娴佽澶囩殑鐘舵��
+     */
+    void sendStreamPushRequestedMsgForStatus();
+
+    List<SendRtpItem> querySendRTPServerByChannelId(String channelId);
+
+    List<SendRtpItem> querySendRTPServerByStream(String stream);
+
+    SystemAllInfo getSystemInfo();
+
+    int getPushStreamCount(String id);
+
+    int getProxyStreamCount(String id);
+
+    int getGbSendCount(String id);
+
+    void addDiskInfo(List<Map<String, Object>> diskInfo);
+
+    void deleteSendRTPServer(SendRtpItem sendRtpItem);
+
+    List<SendRtpItem> queryAllSendRTPServer();
+
+    List<Device> getAllDevices();
+
+    void removeAllDevice();
+
+    void sendDeviceOrChannelStatus(String deviceId, String channelId, boolean online);
+
+    void sendChannelAddOrDelete(String deviceId, String channelId, boolean add);
+
+    void sendPlatformStartPlayMsg(SendRtpItem sendRtpItem, ParentPlatform platform);
+
+    void sendPlatformStopPlayMsg(SendRtpItem sendRtpItem, ParentPlatform platform);
+
+    void addPushListItem(String app, String stream, MediaArrivalEvent param);
+
+    StreamPushItem getPushListItem(String app, String stream);
+
+    void removePushListItem(String app, String stream, String mediaServerId);
+
+    void sendPushStreamClose(MessageForPushChannel messageForPushChannel);
+
+    void addWaiteSendRtpItem(SendRtpItem sendRtpItem, int platformPlayTimeout);
+
+    SendRtpItem getWaiteSendRtpItem(String app, String stream);
+
+    void sendStartSendRtp(SendRtpItem sendRtpItem);
+
+    void sendPushStreamOnline(SendRtpItem sendRtpItem);
 }

--
Gitblit v1.8.0