648540858
2024-05-29 764d04b497356ba6bcbb75fd42b51eca750f7223
src/main/java/com/genersoft/iot/vmp/storager/IRedisCatchStorage.java
old mode 100644 new mode 100755
@@ -1,13 +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.*;
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;
@@ -21,63 +24,25 @@
     */
    Long getCSEQ();
    /**
     * 开始播放时将流存入
     *
     * @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);
    void updatePlatformCatchInfo(ParentPlatformCatch parentPlatformCatch);
    ParentPlatformCatch queryPlatformCatchInfo(String platformGbId);
    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推送信息缓存
@@ -103,12 +68,6 @@
    boolean isChannelSendingRTP(String channelId);
    /**
     * 清空某个设备的所有缓存
     * @param deviceId 设备ID
     */
    void clearCatchByDeviceId(String deviceId);
    /**
     * 在redis添加wvp的信息
     */
    void updateWVPInfo(JSONObject jsonObject, int time);
@@ -131,7 +90,7 @@
     * @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
@@ -148,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);
    /**
     * 将device信息写入redis
@@ -191,13 +133,13 @@
    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);
@@ -233,8 +175,56 @@
     */
    StreamAuthorityInfo getStreamAuthorityInfo(String app, String stream);
    List<StreamAuthorityInfo> getAllStreamAuthorityInfo();
    /**
     * 发送redis消息 查询所有推流设备的状态
     */
    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);
}