648540858
2021-12-03 42d8fff57403500b880886e13093e1841bf47e54
src/main/java/com/genersoft/iot/vmp/storager/IRedisCatchStorage.java
@@ -1,11 +1,13 @@
package com.genersoft.iot.vmp.storager;
import com.alibaba.fastjson.JSONObject;
import com.genersoft.iot.vmp.common.StreamInfo;
import com.genersoft.iot.vmp.conf.MediaServerConfig;
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 java.util.List;
import java.util.Map;
public interface IRedisCatchStorage {
@@ -36,20 +38,7 @@
    StreamInfo queryPlaybackByStreamId(String steamId);
    StreamInfo queryPlayByDevice(String deviceId, String code);
    /**
     * 更新流媒体信息
     * @param mediaServerConfig
     * @return
     */
    boolean updateMediaInfo(MediaServerConfig mediaServerConfig);
    /**
     * 获取流媒体信息
     * @return
     */
    MediaServerConfig getMediaInfo();
    StreamInfo queryPlayByDevice(String deviceId, String channelId);
    Map<String, StreamInfo> queryPlayByDeviceId(String deviceId);
@@ -91,6 +80,8 @@
     */
    SendRtpItem querySendRTPServer(String platformGbId, String channelId);
    List<SendRtpItem> querySendRTPServer(String platformGbId);
    /**
     * 删除RTP推送信息缓存
     * @param platformGbId
@@ -104,4 +95,61 @@
     */
    boolean isChannelSendingRTP(String channelId);
    /**
     * 清空某个设备的所有缓存
     * @param deviceId 设备ID
     */
    void clearCatchByDeviceId(String deviceId);
    /**
     * 获取mediaServer节点
     * @param mediaServerId
     * @return
     */
//    MediaServerItem getMediaInfo(String mediaServerId);
    /**
     * 设置所有设备离线
     */
    void outlineForAll();
    /**
     * 获取所有在线的
     */
    List<String> getOnlineForAll();
    /**
     * 在redis添加wvp的信息
     */
    void updateWVPInfo(String id, JSONObject jsonObject, int time);
    /**
     * 发送推流生成与推流消失消息
     * @param jsonObject 消息内容
     */
    void sendStreamChangeMsg(String type, JSONObject jsonObject);
    /**
     * 添加流信息到redis
     * @param mediaServerItem
     * @param app
     * @param streamId
     */
    void addStream(MediaServerItem mediaServerItem, String type, String app, String streamId, StreamInfo streamInfo);
    /**
     * 移除流信息从redis
     * @param mediaServerItem
     * @param app
     * @param streamId
     */
    void removeStream(MediaServerItem mediaServerItem, String type, String app, String streamId);
    /**
     * 开始下载录像时存入
     * @param streamInfo
     */
    boolean startDownload(StreamInfo streamInfo);
    StreamInfo queryDownloadByStreamId(String streamId);
}