| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 | package com.genersoft.iot.vmp.service;import com.genersoft.iot.vmp.gb28181.bean.GbStream;import com.genersoft.iot.vmp.media.zlm.dto.StreamPush;import com.genersoft.iot.vmp.media.zlm.dto.hook.OnStreamChangedHookParam;import com.genersoft.iot.vmp.service.bean.StreamPushItemFromRedis;import com.genersoft.iot.vmp.vmanager.bean.ResourceBaseInfo;import com.github.pagehelper.PageInfo;import java.util.List;import java.util.Map;/** * @author lin */public interface IStreamPushService {    /**     * 将应用名和流ID加入国标关联     * @param stream     * @return     */    boolean saveToGB(GbStream stream);    /**     * 将应用名和流ID移出国标关联     * @param stream     * @return     */    boolean removeFromGB(GbStream stream);    /**     * 获取     */    PageInfo<StreamPush> getPushList(Integer page, Integer count, String query, Boolean pushing, String mediaServerId);    List<StreamPush> getPushList(String mediaSererId);    StreamPush transform(OnStreamChangedHookParam item);    StreamPush getPush(String app, String streamId);    /**     * 停止一路推流     * @param app 应用名     * @param stream 流ID     */    boolean stop(String app, String stream);    /**     * 新的节点加入     */    void zlmServerOnline(String mediaServerId);    /**     * 节点离线     */    void zlmServerOffline(String mediaServerId);    /**     * 清空     */    void clean();    boolean saveToRandomGB();    /**     * 批量添加     */    void batchAdd(List<StreamPush> streamPushExcelDtoList);    /**     * 中止多个推流     */    boolean batchStop(List<GbStream> streamPushItems);    /**     * 导入时批量增加     */    void batchAddForUpload(List<StreamPush> streamPushItems, Map<String, List<String[]>> streamPushItemsForAll);    /**     * 全部离线     */    void allStreamOffline();    /**     * 推流离线     */    void offline(List<StreamPushItemFromRedis> offlineStreams);    /**     * 推流上线     */    void online(List<StreamPushItemFromRedis> onlineStreams);    /**     * 增加推流     */    boolean add(StreamPush stream);    boolean update(StreamPush stream);    /**     * 获取全部的app+Streanm 用于判断推流列表是新增还是修改     * @return     */    List<String> getAllAppAndStream();    /**     * 获取统计信息     * @return     */    ResourceBaseInfo getOverview();    Map<String, StreamPush> getAllAppAndStreamMap();    void updatePush(OnStreamChangedHookParam param);    Map<String, StreamPush> getAllGBId();    void updateStatus(StreamPush push);}
 |