本示例介绍使用Alibaba Cloud SDK for Java调用AddCasterProgram接口添加导播台节目单。

前提条件

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

阿里云2000元代金券免费领,最新优惠1折抢购,2核4G云服务器仅799元/3年,新老用户同享,立即抢购>>>

<dependency>     <groupId&gt;com.aliyun</groupId>     <artifactId>aliyun-java-sdk-live</artifactId>     <version>3.7.5</version>  </dependency>

示例代码

说明

  • 如果节点类型EpisodeTypeResource时,ComponentIds为必选参数,且SwitchType只允许使用TimeFirst
  • 如果节点类型EpisodeTypeComponent时,设置ComponentIds参数表示组件与视频源绑定并同步切换。

import java.util.ArrayList; import java.util.List; import com.aliyuncs.DefaultAcsClient; import com.aliyuncs.IAcsClient; import com.aliyuncs.exceptions.ClientException; import com.aliyuncs.exceptions.ServerException; import com.aliyuncs.live.model.v20161101.AddCasterProgramRequest; import com.aliyuncs.live.model.v20161101.AddCasterProgramResponse; import com.aliyuncs.profile.DefaultProfile; import com.google.gson.Gson;  /**  * 添加导播台节目单。  */ public class TestAddCasterprogram {     public static void main(String[] args) {         DefaultProfile profile = DefaultProfile.getProfile(             "<your-region-id>", // 地域ID,可以通过接口 DescribeRegions 查看可用的地域ID。             "<your-access-key-id>", // 您的AccessKey ID             "<your-access-key-secret>"); // 您的AccessKey Secret         IAcsClient client = new DefaultAcsClient(profile);          AddCasterProgramRequest request = new AddCasterProgramRequest();         // 导播台Id         request.setCasterId("LIVEPRODUCER_POST-cn-v6418070n0x");          // 节目列表         List<AddCasterProgramRequest.Episode> episodeList = new ArrayList<AddCasterProgramRequest.Episode>();          AddCasterProgramRequest.Episode episode1 = new AddCasterProgramRequest.Episode();         // 节点类型。 Resource-视频源, Component-组件         episode1.setEpisodeType("Resource");         // 节目名称         episode1.setEpisodeName("yourEposodeName");         // 视频源Id。         episode1.setResourceId("yourResourceId");         // 起始时间         episode1.setStartTime("2019-07-23T16:00:00Z");         // 结束时间         episode1.setEndTime("2019-07-24T16:00:00Z");         // 切换策略。节点类型为Resource-视频源时有效         // TimeFirst-时间优先,ContentFirst-内容优先。         episode1.setSwitchType("TimeFirst");         episodeList.add(episode1);         request.setEpisodes(episodeList);          try {             // 发起请求并获取返回值             AddCasterProgramResponse response = client.getAcsResponse(request);             // 处理业务逻辑             System.out.println(new Gson().toJson(response));         } catch (ServerException e) {             e.printStackTrace();         } catch (ClientException e) {             System.out.println("ErrCode:" + e.getErrCode());             System.out.println("ErrMsg:" + e.getErrMsg());             System.out.println("RequestId:" + e.getRequestId());         }     } }