DescribeShowList - 节目单查询

查询节目单。

接口说明

请先添加节目后再调用本接口查询节目单。使用 API 添加节目,请参见添加一个节目到节目单

QPS 限制

本接口的单用户 QPS 限制为 10 次/秒。超过限制,API 调用会被限流,这可能会影响您的业务,请合理调用。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
live:DescribeShowListget
  • Domain
    acs:live:*:{#accountId}:domain/{#DomainName}

请求参数

名称类型必填描述示例值
CasterIdstring

导播台 ID。

  • 如果您通过 CreateCaster 接口创建导播台,请查看 CreateCaster 接口调用返回的参数 CasterId 值。

  • 如果您通过直播控制台创建导播台,请通过直播控制台 > 导播台 > 云导播台路径查看导播台名称。

说明 直播控制台云导播台页面导播台列表中的导播台名称即导播台 ID。
LIVEPRODUCER_POST-cn-0pp1czt****

返回参数

名称类型描述示例值
object

查询节目单。

RequestIdstring

请求 ID。

16A96B9A-F203-4EC5-8E43-CB92E68F4CD8
ShowListstring

ShowList 为播放列表的详细信息。 Show 为节目单中的节目详细信息,具体内容,请参见下表 Show

ShowList[Show1, Show2, Show3...]
ShowListInfoobject

查询节目单。

CurrentShowIdstring

当前正在播放的节目 ID。

a2b8e671-2fe5-4642-a2ec-bf93880e****
Backgroundstring

播单背景。

{\"MaterialId\":\"a2b8e671-2fe5-4642-a2ec-bf93880e****\",\"resourceType\":\"VOD\"}
HighPriorityShowIdstring

最高优先级节目。

说明 此配置只能在节目单未开始启动前设置。
a2b8e671-2fe5-4642-a2ec-bf93880e****
HighPriorityShowStartTimestring

最高优先级节目播放时间,格式为:yyyy-MM-dd'T'HH:mm:ss。

说明 此配置只能在节目单未开始启动前设置。配置完成,节目单会在最高优先级播放时间进行切播,开始播放最高优先级节目(从当前正在播放的节目切播到最高级优先节目)。
2021-11-23T12:30:00
ShowListarray<object>

播放列表的详细信息。

Showobject

播放列表的详细信息。

Durationlong

单个节目播放时间长度。单位:秒。

20
RepeatTimesinteger

单个节目播放的循环次数。

RepeatTimes 为重复次数,示例:0 表示重复 0 次(实际播放 1 次),1 表示重复 1 次(实际播放 2 次),以此类推。

5
ResourceInfoobject

资源信息。

LiveInputTypeinteger

自定义的类型标记。

1
ResourceIdstring

点播文件 ID。

a2b8e671-2fe5-4642-a2ec-bf93880e****
ResourceTypestring

资源素材类型。

vod
ResourceUrlstring

资源 URL。

http://**/atestObject**.m3u8
ShowIdstring

节目 ID。

a2b8e671-2fe5-4642-a2ec-bf93880e****
ShowNamestring

播放节目名称。

liveShow****
ShowListRepeatTimesinteger

播单默认循环次数。始终为 0。

0
TotalShowListRepeatTimesinteger

整个节目单播放的循环次数。

1

示例

正常返回示例

JSON格式

{
  "RequestId": "16A96B9A-F203-4EC5-8E43-CB92E68F4CD8",
  "ShowList": "ShowList[Show1, Show2, Show3...]",
  "ShowListInfo": {
    "CurrentShowId": "a2b8e671-2fe5-4642-a2ec-bf93880e****",
    "Background": "{\\\"MaterialId\\\":\\\"a2b8e671-2fe5-4642-a2ec-bf93880e****\\\",\\\"resourceType\\\":\\\"VOD\\\"}",
    "HighPriorityShowId": "a2b8e671-2fe5-4642-a2ec-bf93880e****",
    "HighPriorityShowStartTime": "2021-11-23T12:30:00",
    "ShowList": {
      "Show": [
        {
          "Duration": 20,
          "RepeatTimes": 5,
          "ResourceInfo": {
            "LiveInputType": 1,
            "ResourceId": "a2b8e671-2fe5-4642-a2ec-bf93880e****",
            "ResourceType": "vod",
            "ResourceUrl": "http://**/atestObject**.m3u8"
          },
          "ShowId": "a2b8e671-2fe5-4642-a2ec-bf93880e****",
          "ShowName": "liveShow****"
        }
      ]
    },
    "ShowListRepeatTimes": 0,
    "TotalShowListRepeatTimes": 1
  }
}

错误码

HTTP status code错误码错误信息
400InvalidUserId.Malformed%s
400InvalidParameter.Malformed%s
400InvalidCasterId.Malformed%s
400MissingParameter%s
401IllegalOperation%s
404InvalidCaster.NotFound%s
404InvalidShowList.NotFound%s
404InvalidShow.NotFound%s
500InternalError%s

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
2024-07-15OpenAPI 错误码发生变更、OpenAPI 返回结构发生变更查看变更详情
2024-07-11OpenAPI 错误码发生变更、OpenAPI 返回结构发生变更查看变更详情
2024-04-11OpenAPI 错误码发生变更、OpenAPI 返回结构发生变更查看变更详情
2024-01-30OpenAPI 错误码发生变更、OpenAPI 返回结构发生变更查看变更详情

代码示例

 public static DefaultAcsClient initClient(String accessKeyId, String accessKeySecret) throws ClientException {
        String regionId = "cn-shanghai";  
        DefaultProfile profile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);
        DefaultAcsClient client = new DefaultAcsClient(profile);
        return client;
    }



private static CommonResponse describeShowList(DefaultAcsClient client, String casterId) throws ClientException {

        CommonRequest describeShowListRequest = new CommonRequest();
        describeShowListRequest.setSysDomain("live.aliyuncs.com");
        describeShowListRequest.setSysVersion("2016-11-01");
        describeShowListRequest.setSysAction("DescribeShowList");
        if (casterId != null) {
            describeShowListRequest.putQueryParameter("CasterId", casterId);
        }
        CommonResponse describeShowListRequestResponse = client.getCommonResponse(describeShowListRequest);
        System.out.println("查询 showList 成功,返回值:" + JSON.toJSONString(describeShowListRequestResponse));
        return describeShowListRequestResponse;

    }

public void describeShowList() throws ClientException {
        DefaultAcsClient client = initClient(ACCESS_KEY_ID, ACCESS_KEY_SECRET);
        CommonResponse describeShowListResponse = describeShowList(client, testCasterId);
        String data = describeShowListResponse.getData();
        JSONObject jsonObject = JSON.parseObject(data);
        JSONObject showList = jsonObject.getJSONObject("ShowList");
        JSONArray shows = showList.getJSONArray("Shows");
    
        //解析节目单信息
        for (int i = 0; i < shows.size(); i++) {
            JSONObject show = (JSONObject) shows.get(i);
            String showId = show.getString("ShowId");
            String resourceType = show.getString("ResourceType");
            String resourceInfo = show.getString("ResourceInfo");
            Integer repeatTimes = show.getInteger("RepeatTimes");
            Long duration = show.getLong("Duration");
            String showInfo = String.format("show%d: showId: %s \n resourceType: %s  \n  resourceInfo: %s \n RepeatTimes: %d \n Duration: %d",
                    i + 1, showId, resourceType, resourceInfo, repeatTimes, duration);
            System.out.println(showInfo);
        }
    }