本示例介绍使用Alibaba Cloud SDK for Java调用CreateCaster接口创建导播台。

前提条件

请在pom.xml文件中增加以下依赖,准确的SDK版本号,参见 阿里云开发工具包(SDK)

<project>
    <modelVersion>4.0.0</modelVersion>
    <groupId>java.demo</groupId>
    <artifactId>test</artifactId>
    <version>1.0-SNAPSHOT</version>
    <dependencies>
        <!-- https://mvnrepository.com/artifact/com.aliyun/aliyun-java-sdk-core -->
        <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>aliyun-java-sdk-core</artifactId>
            <version>4.4.3</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.aliyun/aliyun-java-sdk-live -->
        <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>aliyun-java-sdk-live</artifactId>
            <version>3.7.5</version>
        </dependency>
    </dependencies>
</project>

示例代码

说明 付费方式目前只支持后付费(PostPaid),后付费下PurchaseTimeExpireTimeCasterTemplate参数皆不可设置。
import java.util.UUID;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.live.model.v20161101.CreateCasterRequest;
import com.aliyuncs.live.model.v20161101.CreateCasterResponse;
import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.profile.IClientProfile;
import com.google.gson.Gson;

/**
 * 创建导播台
 */
public class TestCreateCaster {
    public static void main(String[] args) {
        IClientProfile profile = DefaultProfile.getProfile(
                "<your-region-id>",            // 地域ID
                "<your-access-key-id>",        // 您的AccessKey ID
                "<your-access-key-secret>" );  // 您的AccessKey Secret

        IAcsClient client = new DefaultAcsClient(profile);
        CreateCasterRequest request = new CreateCasterRequest();
        // 默认为CasterId
        // request.setCasterName("");
        // 用于保证请求的幂等性。由客户端生成该参数值,要保证在不同请求间唯一,最大不值过 64 个 ASCII 字符。
        request.setClientToken(UUID.randomUUID().toString());
        // 导播台规格类型 0-播单型 1-通用型
        request.setNormType(1);
        // 付费方式 PrePaid-预付费 PostPaid-后付费, 目前只支持PostPaid
        request.setChargeType("PostPaid");
        // 导播台购买时间
        //request.setPurchaseTime("2019-07-16T08:00:00Z");
        // 导播台过期时间
        //request.setExpireTime("2020-07-16T08:00:00Z");
        // 导播台预设分辨率,采用预付费方式时必输
        // lp_ld-流畅,lp_sd-标清,lp_hd-高清,lp_ud-超清,lp_ld_v-竖屏流畅,lp_sd_v-竖屏标清,lp_hd_v-竖屏高清,lp_ud_v-竖屏超清
        // request.setCasterTemplate("lp_ud");
        try {
            CreateCasterResponse response = client.getAcsResponse(request);
            System.out.println(new Gson().toJson(response));
        } catch (ClientException e) {
            System.out.println("ErrCode:" + e.getErrCode());
            System.out.println("ErrMsg:" + e.getErrMsg());
            System.out.println("RequestId:" + e.getRequestId());
        }
    }
}