CLI集成示例

更新时间:
复制 MD 格式

阿里云CLI(Alibaba Cloud Command Line Interface)是基于OpenAPI构建的通用命令行工具,您可以通过阿里云CLI实现自动化管理和维护视频直播 LIVE(ApsaraVideo Live)。本文以调用DescribeLiveUserDomains接口查询用户名下播流域名为例,为您介绍使用阿里云CLI调用视频直播OpenAPI的操作步骤。

前置概念

阅读本文前,若您还不了解阿里云CLI,请参见什么是阿里云 CLI

步骤一:安装阿里云CLI

使用阿里云CLI前,您需要先安装阿里云CLI。阿里云CLI为用户提供了Windows、LinuxmacOS三种操作系统下的安装服务,请根据您使用设备的操作系统选择对应的安装服务。

您也可在云命令行(Cloud Shell)中调试阿里云CLI命令。云命令行中预装了阿里云CLI,且会定期更新软件版本。更多信息,请参见什么是云命令行

步骤二:配置阿里云CLI

重要

阿里云主账号拥有所有产品OpenAPI的管理和访问权限,风险很高。强烈建议您创建RAM身份,并依据最小化权限原则授予权限,使用RAM身份访问OpenAPI。视频直播支持的权限策略,请参见视频直播系统权限策略参考视频直播自定义权限策略参考

使用阿里云CLI之前,您需要在阿里云CLI中配置身份凭证、地域ID等信息。阿里云CLI支持多种身份凭证,详情请参见配置与管理身份凭证。本文操作以AK类型凭证为例,具体操作步骤如下:

  1. 创建一个RAM用户,并创建AccessKey,以便后续配置身份凭证使用。具体操作,请参见创建RAM用户创建AccessKey

  2. RAM用户授权。本文示例需授予RAM用户只读访问视频直播的权限AliyunLiveReadOnlyAccess。具体操作,请参见管理RAM用户的权限

  3. 获取可用的地域ID,以便后续配置身份凭证使用。阿里云CLI将使用您指定的地域发起OpenAPI调用,视频直播的可用地域请参见服务接入点

    说明

    使用阿里云CLI过程中您可使用--region选项指定地域发起命令调用,该选项在使用时将忽略默认身份凭证配置及环境变量设置中的地域信息。详情请参见命令行选项

  4. 使用RAM用户的AccessKey配置AK类型凭证,配置文件命名为AkProfile。具体操作,请参见配置与管理身份凭证

步骤三:生成CLI命令示例

  1. OpenAPI门户中,访问DescribeLiveUserDomains调试地址

  2. 参数配置中输入请求参数,单击CLI示例页签,查看生成的CLI示例。

  3. 复制CLI示例或在云命令行中快速执行:

    • 单击运行命令image按钮,可唤出云命令行并快速完成命令调试。

    • 单击复制按钮image,将CLI示例复制到剪贴板中,可粘贴至本地Shell工具中运行。

    说明

    复制CLI示例到本地Shell工具中进行调试时请注意参数格式。关于阿里云CLI命令参数使用格式的详细信息,请参见理解命令行参数

    OpenAPI门户生成示例中会默认添加--region选项,复制命令到本地调用时阿里云CLI将忽略默认身份凭证配置及环境变量设置中的地域信息,优先使用指定的地域调用命令,您可根据需要对该选项进行删除或保留。

步骤四:调用视频直播OpenAPI

示例一:获取支持阿里云CLI调用的视频直播OpenAPI列表

以下示例将为您展示如何使用--help选项获取支持阿里云CLI调用的视频直播OpenAPI列表。您也可在API概览中查看支持调用的OpenAPI。

  1. 执行命令。

    aliyun live --help
  2. 输出结果。

    Product: live (视频直播)
    Version: 2016-11-01
    Available Api List:
        AddCasterComponent            调用AddCasterComponent添加导播台组件。
        AddCasterEpisode              调用AddCasterEpisode添加导播台节目。
        AddCasterEpisodeGroup         调用AddCasterEpisodeGroup添加导播台节目列表。
        AddCasterEpisodeGroupContent  调用AddCasterEpisodeGroupContent添加导播台节目列表信息。
        AddCasterLayout               调用AddCasterLayout添加导播台布局。
        AddCasterProgram              调用AddCasterProgram添加导播台节目单。
        AddCasterVideoResource        添加视频源,视频源数量受限于导播台输入路数。
        AddCustomLiveStreamTranscode  调用AddCustomLiveStreamTranscode添加自定义转码配置信息。
        AddLiveAIProduceRules
        AddLiveAISubtitle
        AddLiveAppRecordConfig        配置APP录制,输出内容保存到OSS中。
        AddLiveAppSnapshotConfig      配置截图信息。输出内容保存到OSS中,重新推流即生效。
        AddLiveAudioAuditConfig       调用AddLiveAudioAuditConfig添加直播语音审核配置信息。
        AddLiveAudioAuditNotifyConfig 调用AddLiveAudioAuditNotifyConfig添加音频审核回调信息。
        AddLiveCenterTransfer         调用AddLiveCenterTransfer添加直播中心转推配置。
        AddLiveDetectNotifyConfig     添加直播审核回调通知地址
        AddLiveDomain                 一次只能提交一个域名。
        AddLiveDomainMapping          添加直播域名播流域名和推流域名的映射关系配置。
        AddLiveDomainPlayMapping      添加主播流域名和子播流域名映射。

示例二:查询用户名下所有的播流域名

以下示例将为您展示如何使用阿里云CLI调用视频直播DescribeLiveUserDomains命令,查询用户名下所有的播流域名。

  1. 执行命令。

    aliyun live DescribeLiveUserDomains --LiveDomainType liveVideo
  2. 输出结果。

    {
      "Domains": {
        "PageData": [
          {
            "Cname": "learn.developer.aliyundoc.com",
            "Description": "test",
            "DomainName": "demo.aliyundoc.com",
            "GmtCreated": "2017-08-29T12:15:36Z",
            "GmtModified": "2017-12-29T12:15:36Z",
            "LiveDomainStatus": "online",
            "LiveDomainType": "liveVideo",
            "RegionName": "cn-beijing",
            "ResourceGroupId": ""
          }
        ]
      },
      "PageNumber": 1,
      "PageSize": 100,
      "RequestId": "E4EBD2BF-5EB0-4476-8829-9D94E1B15267",
      "TotalCount": 1
    }
    说明

    如果调用视频直播OpenAPI后返回错误,您需要根据返回的错误码提示检查传入的请求参数及其取值是否正确。

    您也可以记录下调用返回的RequestIDSDK报错信息,通过阿里云OpenAPI诊断平台进行自助诊断。