全部产品
Search
文档中心

视频直播:InitializeAutoShowListTask - 创建一个定时任务

更新时间:Dec 05, 2024

创建一个定时任务。

接口说明

本接口支持配置定时启停一个播单定时任务,调用时请保证参数设置符合要求。

QPS 限制

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

调试

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

授权信息

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

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

请求参数

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

播单中的点播媒资文件 ID 列表(目前仅支持点播视频文件)。 最多支持三个节目,每个节目会按照列表顺序进行播放直到 EndTime 会自动结束。

说明
  • 您可以通过控制台或 API 接口返回参数获取视频文件 ID。详情请参见媒资管理获取音视频上传地址和凭证。- 在 EndTime 前节目如已经播完,默认会持续播放最后一个节目的最后一帧,直到播放结束。
  • ["89e02xxxxfb349axxxxa0c350d**** ","6ae0xxxxxb349axxxxa0c350a****"]
    StartTimelong

    开始时间戳,单位:毫秒。

    1645688994000
    EndTimelong

    结束时间戳,单位:毫秒。

    1645688994000
    CasterConfigstring

    导播台配置。包含:

    • (必填)CasterTemplate:导播台输出分辨率。

    • (非必填)LiveTemplate:输出转码任务列表。

    说明 JSON 格式字符串,结构体内部字段请按首字母大写,驼峰格式输入。
    {"CasterTemplate": "lp_ld","LiveTemplates":["lhd", "lsd","lud"]}
    DomainNamestring

    输出的播流域名。

    example.aliyundoc.com
    CallBackUrlstring

    用户回调地址。

    http://***.com/callback

    返回参数

    名称类型描述示例值
    object
    CasterIdstring

    导播台 ID。

    说明 可作为查询导播台流地址、启动导播台、添加导播台视频资源、添加导播台布局、查询导播台布局列表、添加导播台组件和添加导播台节目单的请求参数。
    b4810848-bcf9-4aef-bd4a-e6bba2d9****
    RequestIdstring

    请求 ID。

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

    导播台输出地址列表。

    • videoFormat:播流地址格式。

    • outputStreamUrl:拉流地址。

    • transcodeConfig:拉流地址的转码分辨率说明。

    [{"videoFormat":"flv","outputStreamUrl":"http://example.aliyundoc.com","transcodeConfig":"original"}]

    示例

    正常返回示例

    JSON格式

    {
      "CasterId": "b4810848-bcf9-4aef-bd4a-e6bba2d9****",
      "RequestId": "16A96B9A-F203-4EC5-8E43-CB92E68F4CD8",
      "StreamList": "[{\"videoFormat\":\"flv\",\"outputStreamUrl\":\"http://example.aliyundoc.com\",\"transcodeConfig\":\"original\"}]"
    }

    错误码

    HTTP status code错误码错误信息
    400InvalidParameter.PurchaseTime%s
    400InvalidParameter.ExpireTime%s
    400MissingParameter%s
    400InvalidChargeType.Malformed%s
    400InvalidChargeType.PostSupport%s
    400InvalidCasterTemplate.Malformed%s
    400InvalidParameter.Malformed%s
    400InvalidParameter.ChargeType%s
    400InvalidPeriod.Malformed%s
    400InvalidClientToken.Malformed%s
    400IncorrectCasterStatus%s
    400InvalidCasterId.Malformed%s
    400InvalidUserId.Malformed%s
    400IncorrectCasterStatus.EnableChannel%s
    400InvalidParameter.StartTime%s
    401CasterNumberExceed%s
    401IllegalOperation%s
    404InvalidParameter.NormType%s
    404InvalidConfiguration.NotFound%s
    404InvalidCaster.NotFound%s
    404InvalidDomainName.NotFound%s
    408CreateCaster.Timeout%s
    500InternalError%s

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

    变更历史

    变更时间变更内容概要操作
    暂无变更历史

    示例代码

        public void InitializeAutoShowListTask() throws ClientException {
            CommonRequest initializeAutoShowListTaskRequest = new CommonRequest()
            initializeAutoShowListTaskRequest.setAction("InitializeAutoShowListTask");
            initializeAutoShowListTaskRequest.setDomain("live.aliyuncs.com");
            initializeAutoShowListTaskRequest.setVersion("2016-11-01");
            JSONArray resourceIds = new JSONArray();
            resourceIds.add("xxx1");
            initializeAutoShowListTaskRequest.putQueryParameter("ResourceIds", resourceIds.toJSONString());
            long currentTimeMillis = System.currentTimeMillis();
            //播放一分钟时长,在 30 秒后启动
            long startTime = currentTimeMillis + 30 * 1000;
            long endTime = startTime + 1 * 60 * 1000;
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            // 时间戳转换成时间
            String start = sdf.format(new Date(Long.parseLong(String.valueOf(startTime)))); 
            // 时间戳转换成时间
            String end = sdf.format(new Date(Long.parseLong(String.valueOf(endTime)))); 
            System.out.printf("格式化结果:start %s end %s\n", start, end);
            initializeAutoShowListTaskRequest.putQueryParameter("StartTime", String.valueOf(startTime));
            initializeAutoShowListTaskRequest.putQueryParameter("EndTime", String.valueOf(endTime));
            JSONObject casterConfig = new JSONObject();
            casterConfig.put("CasterTemplate", "lp_hd");
            JSONArray liveTemplate = new JSONArray();
            liveTemplate.add("lhd");
            liveTemplate.add("lsd");
            casterConfig.put("LiveTemplate", liveTemplate);
            initializeAutoShowListTaskRequest.putQueryParameter("CasterConfig", casterConfig.toJSONString());
            initializeAutoShowListTaskRequest.putQueryParameter("DomainName", "testdomainplay.alivecdn.com");
            DefaultAcsClient client = initClient(ACCESS_KEY_ID, ACCESS_KEY_SECRET);
            CommonResponse commonResponse = client.getCommonResponse(initializeAutoShowListTaskRequest);
            System.out.printf("Status is %s and Response is:\n", commonResponse.getHttpStatus());
            JSONObject jsonObject = JSON.parseObject(commonResponse.getData());
            System.out.println(JSON.toJSONString(jsonObject, true));
        }
    

    JSON 格式返回示例

    {
      "RequestId": "9F6448C9-6F92-1BAC-AFDD-C308782A6573",
      "StreamList": [
        {
          "videoFormat": "flv",
          "outputStreamUrl": "http://example.aliyundoc.com/caster/2967b3b2b52242019c277de2a11a****.flv",
          "transcodeConfig": "original"
        },
        {
          "videoFormat": "rtmp",
          "outputStreamUrl": "rtmp://example.aliyundoc.com/caster/2967b3b2b52242019c277de2a11a****",
          "transcodeConfig": "original"
        },
        {
          "videoFormat": "m3u8",
          "outputStreamUrl": "http://example.aliyundoc.com/caster/2967b3b2b52242019c277de2a11a****.m3u8",
          "transcodeConfig": "original"
        },
        {
          "videoFormat": "flv",
          "outputStreamUrl": "http://example.aliyundoc.com/caster/2967b3b2b52242019c277de2a11a****_lhd.flv",
          "transcodeConfig": "lhd"
        },
        {
          "videoFormat": "rtmp",
          "outputStreamUrl": "rtmp://example.aliyundoc.com/caster/2967b3b2b52242019c277de2a11a****_lhd",
          "transcodeConfig": "lhd"
        },
        {
          "videoFormat": "m3u8",
          "outputStreamUrl": "http://example.aliyundoc.com/caster/2967b3b2b52242019c277de2a11a****_lhd.m3u8",
          "transcodeConfig": "lhd"
        },
        {
          "videoFormat": "flv",
          "outputStreamUrl": "http://example.aliyundoc.com/caster/2967b3b2b52242019c277de2a11a****_lsd.flv",
          "transcodeConfig": "lsd"
        },
        {
          "videoFormat": "rtmp",
          "outputStreamUrl": "rtmp://example.aliyundoc.com/caster/2967b3b2b52242019c277de2a11a****_lsd",
          "transcodeConfig": "lsd"
        },
        {
          "videoFormat": "m3u8",
          "outputStreamUrl": "http://example.aliyundoc.com/caster/2967b3b2b52242019c277de2a11a****_lsd.m3u8",
          "transcodeConfig": "lsd"
        }
      ],
      "CasterId": "6277b6a3-1a40-4063-85f7-145666e3****"
    }