package com.zd.iot.vmp.service;

import com.alibaba.fastjson.JSONObject;
import com.zd.iot.vmp.gb28181.bean.Device;
import com.zd.iot.vmp.gb28181.bean.DeviceChannel;
import com.zd.iot.vmp.gb28181.event.SipSubscribe;
import com.zd.iot.vmp.media.zlm.ZLMHttpHookSubscribe;
import com.zd.iot.vmp.media.zlm.dto.MediaServerItem;
import com.zd.iot.vmp.vmanager.gb28181.play.bean.PlayResult;

import java.util.List;

/**
 * 点播处理
 */
public interface IPlayService {

    void onPublishHandlerForPlayBack(MediaServerItem mediaServerItem, JSONObject resonse, String deviceId, String channelId, String uuid);
    void onPublishHandlerForPlay(MediaServerItem mediaServerItem, JSONObject resonse, String deviceId, String channelId, String uuid);

    PlayResult play(MediaServerItem mediaServerItem, String deviceId, String channelId, ZLMHttpHookSubscribe.Event event, SipSubscribe.Event errorEvent);

    MediaServerItem getNewMediaServerItem(Device device);

    List<DeviceChannel> queryChannelByDeviceId(List<String> devices, int page, int count);
}
