|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 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.MediaItem; | 
|---|
|  |  |  | import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem; | 
|---|
|  |  |  | import com.genersoft.iot.vmp.media.zlm.dto.StreamPushItem; | 
|---|
|  |  |  | import com.genersoft.iot.vmp.service.bean.GPSMsgInfo; | 
|---|
|  |  |  | import com.genersoft.iot.vmp.service.bean.SSRCInfo; | 
|---|
|  |  |  | 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); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 开始播放时将流存入 | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 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 startPlayback(StreamInfo stream, String callId); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | boolean stopPlayback(StreamInfo streamInfo); | 
|---|
|  |  |  | boolean stopPlayback(String deviceId, String channelId, String stream, String callId); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | StreamInfo queryPlaybackByDevice(String deviceId, String code); | 
|---|
|  |  |  | StreamInfo queryPlayback(String deviceId, String channelID, String stream, String callId); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | void updatePlatformCatchInfo(ParentPlatformCatch parentPlatformCatch); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | * @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); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | * @param platformGbId | 
|---|
|  |  |  | * @param channelId | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | void deleteSendRTPServer(String platformGbId, String channelId); | 
|---|
|  |  |  | void deleteSendRTPServer(String platformGbId, String channelId, String callId, String streamId); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 查询某个通道是否存在上级点播(RTP推送) | 
|---|
|  |  |  | 
|---|
|  |  |  | * @param app | 
|---|
|  |  |  | * @param streamId | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | void addStream(MediaServerItem mediaServerItem, String type, String app, String streamId, StreamInfo streamInfo); | 
|---|
|  |  |  | void addStream(MediaServerItem mediaServerItem, String type, String app, String streamId, MediaItem item); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 移除流信息从redis | 
|---|
|  |  |  | 
|---|
|  |  |  | * 开始下载录像时存入 | 
|---|
|  |  |  | * @param streamInfo | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | boolean startDownload(StreamInfo streamInfo); | 
|---|
|  |  |  | boolean startDownload(StreamInfo streamInfo, String callId); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | StreamInfo queryDownloadByStreamId(String streamId); | 
|---|
|  |  |  | StreamInfo queryDownload(String deviceId, String channelId, String stream, String callId); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 查找第三方系统留下的国标预设值 | 
|---|
|  |  |  | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | ThirdPartyGB queryMemberNoGBId(String queryKey); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | List<StreamInfo> getStreams(String mediaServerId, String pull); | 
|---|
|  |  |  | List<MediaItem> getStreams(String mediaServerId, String pull); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 将device信息写入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(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | MediaItem getStreamInfo(String app, String streamId, String mediaServerId); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | void addCpuInfo(double cpuInfo); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | void addMemInfo(double memInfo); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | void addNetInfo(Map<String, String> networkInterfaces); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|