From b6e604f2449bb65dfaafb0f0741ba54ff0d2f9c2 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期二, 30 四月 2024 15:20:03 +0800
Subject: [PATCH] 修改云端录像详情页使用直接访问zlm的方式播放录像
---
src/main/java/com/genersoft/iot/vmp/storager/IRedisCatchStorage.java | 224 +++++++++++++++++++++++++++++++++----------------------
1 files changed, 135 insertions(+), 89 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 c9ffb35..d87c342
--- a/src/main/java/com/genersoft/iot/vmp/storager/IRedisCatchStorage.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/IRedisCatchStorage.java
@@ -1,13 +1,16 @@
package com.genersoft.iot.vmp.storager;
-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 com.alibaba.fastjson2.JSONObject;
+import com.genersoft.iot.vmp.common.SystemAllInfo;
+import com.genersoft.iot.vmp.gb28181.bean.*;
+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.storager.dao.dto.PlatformRegisterInfo;
import java.util.List;
import java.util.Map;
@@ -15,40 +18,11 @@
public interface IRedisCatchStorage {
/**
- * 寮�濮嬫挱鏀炬椂灏嗘祦瀛樺叆
- *
- * @param stream 娴佷俊鎭�
- * @return
- */
- boolean startPlay(StreamInfo stream);
-
-
- /**
- * 鍋滄鎾斁鏃跺垹闄�
+ * 璁℃暟鍣ㄣ�備负cseq杩涜璁℃暟
*
* @return
*/
- boolean stopPlay(StreamInfo streamInfo);
-
- /**
- * 鏌ヨ鎾斁鍒楄〃
- * @return
- */
- StreamInfo queryPlay(StreamInfo streamInfo);
-
- StreamInfo queryPlayByStreamId(String steamId);
-
- StreamInfo queryPlaybackByStreamId(String steamId);
-
- StreamInfo queryPlayByDevice(String deviceId, String channelId);
-
- Map<String, StreamInfo> queryPlayByDeviceId(String deviceId);
-
- boolean startPlayback(StreamInfo stream);
-
- boolean stopPlayback(StreamInfo streamInfo);
-
- StreamInfo queryPlaybackByDevice(String deviceId, String code);
+ Long getCSEQ();
void updatePlatformCatchInfo(ParentPlatformCatch parentPlatformCatch);
@@ -56,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鎺ㄩ�佷俊鎭紦瀛�
@@ -80,7 +50,7 @@
* @param channelId
* @return sendRtpItem
*/
- SendRtpItem querySendRTPServer(String platformGbId, String channelId);
+ SendRtpItem querySendRTPServer(String platformGbId, String channelId, String streamId, String callId);
List<SendRtpItem> querySendRTPServer(String platformGbId);
@@ -89,36 +59,13 @@
* @param platformGbId
* @param channelId
*/
- void deleteSendRTPServer(String platformGbId, String channelId);
+ void deleteSendRTPServer(String platformGbId, String channelId, String callId, String streamId);
/**
* 鏌ヨ鏌愪釜閫氶亾鏄惁瀛樺湪涓婄骇鐐规挱锛圧TP鎺ㄩ�侊級
* @param channelId
*/
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鐨勪俊鎭�
@@ -132,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, StreamInfo streamInfo);
+ void addStream(MediaServer mediaServerItem, String type, String app, String streamId, MediaInfo item);
/**
* 绉婚櫎娴佷俊鎭粠redis
@@ -154,22 +107,7 @@
*/
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);
+ List<MediaInfo> getStreams(String mediaServerId, String pull);
/**
* 灏哾evice淇℃伅鍐欏叆redis
@@ -177,8 +115,116 @@
*/
void updateDevice(Device device);
+ void removeDevice(String deviceId);
+
/**
* 鑾峰彇Device
*/
Device getDevice(String deviceId);
+
+ void resetAllCSEQ();
+
+ void updateGpsMsgInfo(GPSMsgInfo gpsMsgInfo);
+
+ GPSMsgInfo getGpsMsgInfo(String gbId);
+ List<GPSMsgInfo> getAllGpsMsgInfo();
+
+ Long getSN(String method);
+
+ void resetAllSN();
+
+ MediaInfo getStreamInfo(String app, String streamId, String mediaServerId);
+
+ void addCpuInfo(double cpuInfo);
+
+ void addMemInfo(double memInfo);
+
+ 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(MessageForPushChannel messageForPushChannel);
+
+ 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