package com.yutou.bili.api;
import com.yutou.bili.bean.live.*;
import com.yutou.okhttp.BaseBean;
import com.yutou.okhttp.FileBody;
import com.yutou.okhttp.HttpBody;
import retrofit2.Call;
import retrofit2.http.GET;
import retrofit2.http.Query;
import retrofit2.http.Streaming;
import retrofit2.http.Url;
/**
* 直播间相关API
* 文档地址
*/
public interface LiveApi {
/**
* 获取直播间信息
* @param roomId 直播间号 必要 可以为短号
*/
@GET("/room/v1/Room/get_info")
Call> getRoomInfo(@Query("room_id")String roomId);
@GET("/room/v1/Room/getRoomInfoOld")
Call> getRoomStatus(@Query("mid")String mid);
/**
* 获取主播信息
*/
@GET("/live_user/v1/Master/info")
Call> getMasterInfo(@Query("uid")String uid);
/**
* 获取直播间信息
* @param id 直播间id
* @param protocol 直播协议 {@link com.yutou.bili.enums.LiveProtocol}
* @param format 格式 {@link com.yutou.bili.enums.LiveVideoFormat}
* @param codec 编码 {@link com.yutou.bili.enums.LiveVideoCodec}
* @param qn 清晰度 {@link com.yutou.bili.enums.LiveVideoDefinition}
* @return
*/
@GET("/xlive/web-room/v2/index/getRoomPlayInfo")
Call> getLiveRoomPlayInfo(
@Query("room_id")String id,
@Query("protocol")String protocol,
@Query("format")String format,
@Query("codec")String codec,
@Query("qn")int qn
);
@Streaming
@GET()
Call> downloadLive(@Url String url);
@GET("/xlive/web-room/v1/index/getDanmuInfo")
Call> getLiveRoomDanmuInfo(@Query("id")String id);
}