更新云端录制设置

更新时间不可用

更新进行中的云端录制任务设置。

POST
https://api.sd-rtn.com/v1/apps/{appid}/cloud_recording/resourceid/{resourceid}/sid/{sid}/mode/{mode}/update

update 方法用于更新云端录制设置。

开始录制后,你可以调用 update 方法更新如下录制配置:

  • 对单流录制和合流录制,更新订阅名单。
  • 对页面录制,设置暂停/恢复页面录制,或更新页面录制转推到 CDN 的推流地址(URL)。

注意

  • update 请求仅在会话内有效。如果录制启动错误,或录制已结束,调用 update 将返回 404。
  • 如果需要连续调用 update 方法更新录制设置,请在收到上一次 update 响应后再进行调用,否则可能导致请求结果与预期不一致。

路径参数

appidstring
必填

你的项目使用的 App ID。

  • 对于页面录制模式,只需输入开通了云端录制服务的 App ID。
  • 对于单流和合流录制模式,必须使用和待录制的频道相同的 App ID,且该 App ID 需要开通云端录制服务。
resourceidstring
必填

通过 acquire 请求获取到的 Resource ID。

sidstring
必填

通过 start 获取的录制 ID。

modestring
必填

录制模式:

请求 Header

Authorizationstring
必填

声网云端录制 RESTful API 仅支持 HTTPS 协议。发送请求时,你需要使用声网提供的客户 ID 和客户密钥生成 Base64 编码凭证,并填入请求头部的 Authorization 字段中。详见实现 HTTP 基本认证。

Content-Typestring

application/json。

请求 Body

字段
cnamestring
必填

录制服务所在频道的名称。需要和你在 acquire 请求中输入的 cname 相同。

uidstring
必填

字符串内容为录制服务在 RTC 频道内使用的 UID,用于标识该录制服务,需要和你在 acquire 请求中输入的 uid 相同。

更新订阅名单。

注意:仅需在单流录制和合流录制模式下设置。

用于更新页面录制配置项。

注意:仅需在页面录制模式下设置。

用于更新转推页面录制到 CDN 的配置项。

注意:仅需在页面录制模式下,且转推页面录制到 CDN 时设置。

更新第三方云存储的配置项。

JSON 示例
{
  "cname": "<your_channel_name>",
  "uid": "unique_user_id",
  "clientRequest": {
    "streamSubscribe": {
      "audioUidList": {
        "subscribeAudioUids": [
          "#allstream#"
        ]
      },
      "videoUidList": {
        "unSubscribeVideoUids": [
          "<uid1_to_be_unsubscribed>",
          "<uid2_to_be_unsubscribed>"
        ]
      }
    },
    "storageConfig": {
      "vendor": 2,
      "region": 3,
      "bucket": "<your_storage_bucket>",
      "accessKey": "<your_storage_access_key>",
      "secretKey": "<your_storage_secret_key>",
      "fileNamePrefix": [
        "quickstart"
      ]
    }
  }
}

响应

如果返回的 HTTP 状态码为 200,表示请求成功。

响应 Body

cnamestring

录制的频道名。

uidstring

字符串内容为云端录制服务在 RTC 频道内使用的 UID,用于标识频道内的录制服务。

resourceIdstring

云端录制使用的 Resource ID。

sidstring

录制 ID。标识每次录制周期。

请求示例

curl --request POST \
  --url "https://api.sd-rtn.com/v1/apps/:appid/cloud_recording/resourceid/:resourceid/sid/:sid/mode/:mode/update" \
  --header 'Authorization: Basic <credentials>' \
  -H 'Content-Type: application/json' \
  -d '{
  "cname": "<your_channel_name>",
  "uid": "<unique_user_id>",
  "clientRequest": {
    "streamSubscribe": {
      "audioUidList": {
        "subscribeAudioUids": [
          "#allstream#"
        ]
      },
      "videoUidList": {
        "unSubscribeVideoUids": [
          "<uid1_to_be_unsubscribed>",
          "<uid2_to_be_unsubscribed>"
        ]
      }
    }
  }
}'

响应示例

{
  "cname": "录制的频道名。",
  "uid": "字符串内容为云端录制服务在 RTC 频道内使用的 UID,用于标识频道内的录制服务。",
  "resourceId": "云端录制使用的 Resource ID。",
  "sid": "录制 ID。标识每次录制周期。"
}