From abb60593cb77e9e9b6e67e8276fc416c2aede43f Mon Sep 17 00:00:00 2001 From: lin <18010473990@163.com> Date: 星期六, 08 一月 2022 17:35:00 +0800 Subject: [PATCH] 优化级联平台GPS订阅 --- src/main/java/com/genersoft/iot/vmp/storager/IRedisCatchStorage.java | 78 +++++++++++++++++++++++++++++++++++---- 1 files changed, 70 insertions(+), 8 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 69bcd84..f7b16a8 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,23 @@ import com.alibaba.fastjson.JSONObject; import com.genersoft.iot.vmp.common.StreamInfo; -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.gb28181.bean.*; import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem; +import com.genersoft.iot.vmp.service.bean.GPSMsgInfo; +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 +129,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 +143,67 @@ * @param app * @param streamId */ - void addStream(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 removeStream(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); + + 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(); + + void updateSubscribe(String key, SubscribeInfo subscribeInfo); + + SubscribeInfo getSubscribe(String key); + + void delSubscribe(String key); } -- Gitblit v1.8.0