查询所有云端播放器

更新时间不可用

分页查询指定项目下的云端播放器。

GET
https://api.sd-rtn.com/v1/projects/{appId}/cloud-player/players

List 方法用于分页列出该项目中所有云端播放器。

注意

  • 使用 Create 或 Delete 方法创建或销毁云端播放器,且响应状态码为 504 Gateway Timeout 时,为防止产生不受管理的云端播放器,声网建议你通过 List 方法查询该云端播放器的真实状况。
  • 使用 Create 方法创建云端播放器并收到请求成功的响应报文后,如需调用 List 方法查询云端播放器,建议你等待约 10 秒再使用 List,以防出现查询不到任何信息的情况。

鉴权

Basic Auth

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

路径参数

appIdstring
必填

声网为每个开发者提供的 App ID。在声网控制台创建一个项目后即可得到一个 App ID。一个 App ID 是一个项目的唯一标识。

查询参数

filterstring

指定过滤条件。声网服务器只列出该项目下符合过滤条件的云端播放器。目前的过滤条件为用户创建播放器时传入的 channelName。

假设用户频道名为 class32,则将 URL 示例中 filter={filter} 改写为 filter=channelName eq class32;假设用户频道名为 bigclass,则将 URL 示例中 filter={filter} 改写为 filter=channelName eq bigclass。eq 前后有空格,空格需按照 URL 规范进行编码。

pageSizenumber

指定分页大小。取值范围为 1 到 500。默认值为 200,即如果不设值,声网服务器将列出单页内至多 200 个云端播放器。

pageTokenstring

指定页码,标明该页的次序。如果不设值,声网服务器将返回第一页。

推荐用法:首次使用 List 时,不向该参数传值,得到首页的查询结果和声网服务器返回的 nextPageToken 值。下一次使用 List 时,将 nextPageToken 值传入 pageToken 查询下一页的云端播放器。使用以上字段后,声网服务器会从指定项目中过滤出符合条件的云端播放器,根据指定的分页大小进行分页并返回结果,直到 nextPageToken 为 0,表示已查到一个项目下所有云端播放器。云端播放器根据创建时间(createTs)升序排列。

请求 Header

X-Request-IDstring

UUID(通用唯一识别码),标识本次请求。传入该字段后,声网服务器会在响应 Header 中返回该字段。声网推荐你对 X-Request-ID 赋值。如果不赋值,声网服务器会自动生成一个 UUID 传入。

响应

如果状态码为 2XX,则请求成功。

响应 Header

X-Request-IDstring

UUID(通用唯一识别码),标识本次请求。该值为本次请求 Header 中 X-Request-ID。如果请求出错,请在日志中打印出该值,排查问题。如果本次请求的响应状态码为 401(Unauthorized),那么响应 Header 中无该字段。

响应 Body

字段
totalSizenumber

符合查询条件的云端播放器数量。

注意

个别 player 可能暂时只包含 id,name,createTs 三个字段,你的程序需要能够处理这种情况。

fieldsstring

JSON 编码方式的字段掩码,详见谷歌 protobuf FieldMask 文档。用于指定返回 players 数组中每个 player 中的字段子集。在使用 uid 的示例中,fields 指定声网服务器返回 players 数组中每个 player 中的 name,streamUrl,channelName,uid,id,createTs 和 status 字段子集。

nextPageTokenstring

本次查询页面的下一页页码,方便用户下一次调用 List 方法继续查询。如果返回的该字段为空字符串,则本次请求已查询到最后一页。

请求示例

Example Request
curl --request GET \
  --url "https://api.sd-rtn.com/v1/projects/:appId/cloud-player/players" \
  --header 'Authorization: Basic <credentials>' \
  --header 'X-Request-ID: <string>'

响应示例

{
  "totalSize": 10,
  "players": [
    {
      "name": "class32_101",
      "streamUrl": "rtmp://example.agora.io/live/class32/101",
      "channelName": "class32",
      "uid": 101,
      "id": "2a784467d647bb87b60b719f6fa56317",
      "createTs": 1575508644,
      "status": "running"
    },
    {
      "name": "class68_422",
      "streamUrl": "rtmp://example.agora.io/live/class68/422",
      "channelName": "class68",
      "uid": 422,
      "id": "0b719f6fa563172a784467d647bb87b6",
      "createTs": 1575588644,
      "status": "connecting"
    }
  ],
  "fields": "player.name,player.streamUrl,player.channelName,player.uid,player.id,player.createTs,player.status",
  "nextPageToken": "7b60b7***"
}