直播按流维度统计在线人数

最近更新时间:2021-04-10 09:42:35

查看PDF

GetLiveOnlineUserDataByStream

描述

本接口用于获取按流维度的直播在线人数数据,单位:个

  • 支持按指定的起止时间查询,两者需要同时指定
  • 支持批量流名过滤查询,多个流名用逗号(半角)分隔
  • 最多可获取最近62天内,7天跨度的数据。
  • 统计粒度:1分钟粒度;5分钟粒度;10分钟粒度;20分钟粒度;1小时粒度;4小时粒度;8小时粒度;1天粒度;以上粒度的在线人数均取该粒度时间段的在线人数的峰值
  • 时效性:3-8分钟延迟
  • 接口性能:接口最大吞吐量为10000,即Region个数*StreamUrl个数*(EndTime-StartTime) /统计粒度 <= 10000。注:在获取多个流名多个区域合并值时,Region个数和StreamUrl个数按照1计算
  • 只支持直播业务
  • 使用场景:
    • 客户查询一个或多个流名的在线人数汇总,绘制在线人数曲线

请求语法

本接口请求需要包含指定目录 /2016-09-01/statistics/GetLiveOnlineUserDataByStream和公共请求header和该接口所特有的请求参数,具体请求语句参照下文请求示例。

请求参数

参数名 必选 类型及范围 说明
StartTime String 获取数据起始时间点,日期格式按ISO8601表示法,北京时间,格式为:YYYY-MM-DDThh:mm+0800,例如: 2016-08-01T21:14+0800
EndTime String 结束时间需大于起始时间;获取日期格式按照ISO8601表示法,北京时间,格式为:YYYY-MM-DDThh:mm+0800,例如: 2016-08-01T21:14+0800
StreamUrls String 拉流URL(参数除外),支持批量查询,多个URL用逗号(半角)分隔。注:对于HLS格式,查询时需删除/index.m3u8后缀,即为http://domain/app/stream格式
Regions String 计费区域名称, 取值为CN:中国大陆,HK:中国香港,AS:亚洲其他,NA:北美洲,SA:南美洲,EU:欧洲,AU:大洋洲,AF:非洲,支持多计费区域查询,多个区域用逗号(半角)分隔,缺省为 CN
ResultType Int 取值为0:多流名多区域数据做合并;1:每个流名每个区域的数据分别返回
Granularity Int 统计粒度,取值为 5(默认):5分钟粒度;10:10分钟粒度;20:20分钟粒度;60:1小时粒度;240:4小时粒度;480:8小时粒度;1440:1天粒度;以上粒度的在线人数均取该粒度时间段的在线人数峰值

返回参数

参数名 类型及范围 说明
StartTime String 开始时间
EndTime String 结束时间
Regions String 区域,逗号(半角)间隔
ResultType Int 0:多域名多计费区域数据做合并返回;1:每个域名每个计费区域的数据分别返回
Granularity Int 统计粒度, 1: 1分钟颗粒度;取值为 5:5分钟粒度;10:10分钟粒度;20:20分钟粒度;60:1小时粒度;240:4小时粒度;480:8小时粒度;1440:1天粒度;以上粒度的在线人数均取该粒度时间段的在线人数峰值
Datas OnlineUserDataByTime[] 每个时间粒度的在线人数数据

OnlineUserDataByTime

参数名 类型及范围 说明
Time String 时间点
OnlineUser Long 在线人数总和
Streams OnlineUserDataByStream[] 每个流名的详细请求数数据 (仅当ResultType取值为1时返回此数据)

OnlineUserDataByStream

参数名 类型及范围 说明
StreamUrl String 拉流URL;对于HLS格式,返回参数无后缀,即只返回http://domain/app/stream格式
OnlineUser Long 在线人数
Regions OnlineUserDataByByRegion[] 该域名在每个区域的详细数据

OnlineUserDataByByRegion

参数名 类型及范围 说明
Region String 区域
OnlineUser Long 在线人数

示例

请求示例

POST方式:

POST  /2016-09-01/statistics/GetLiveOnlineUserDataByStream 1.1
Host: cdn.api.ksyun.com
X-Amz-Date: date
Authorization:authorization string
x-action: GetLiveOnlineUserDataByStream
x-version: 2016-09-01
Content-Type: application/x-www-form-urlencoded

StartTime=2016-09-18T09:14+0800&EndTime=2016-09-19T10:20+0800&ResultType=1&Granularity=1440&CdnType=live&StreamUrl=rtmp://test.cn/live/ffea40ea2f8e4a5e95096e0f89227092&Regions=CN

返回示例

JSON格式:

{
  "StartTime": "2016-09-18T09:14+0800",
  "EndTime": "2016-09-19T10:20+0800",
  "Regions": "CN",
  "ResultType": 1,
  "Granularity": 1440,
  "Datas": [
    {
      "Time": "2016-09-18T00:00+0800",
      "OnlineUser": 2033,
      "Streams": [
        {
          "StreamUrl": "rtmp://test.cn/live/ffea40ea2f8e4a5e95096e0f89227092",
          "OnlineUser": 2033,
          "Regions": [
            {
              "Region": "CN",
              "OnlineUser": 2033
            }
          ]
        }
      ]
    },
    {
      "Time": "2016-09-19T00:00+0800",
      "OnlineUser": 1,
      "Streams": [
        {
          "StreamUrl": "rtmp://test.cn/live/ffea40ea2f8e4a5e95096e0f89227092",
          "OnlineUser": 1,
          "Regions": [
            {
              "Region": "CN",
              "OnlineUser": 1
            }
          ]
        }
      ]
    }
  ]
}

错误码

下方为接口业务逻辑相关的错误码,其他错误码详见公共错误码

错误代码(Code) 错误消息(Message) HTTP 状态码 中文描述(语义)
InvalidStartTime.Malformed Specified start time is malformed.StartTime:%s 400 StartTime格式错误
NoDataProvided We do not provide data more than 1 year. 400 所查询的时间范围超过限制
InvalidEndTime.Malformed Specified end time is malformed.%s 400 EndTime格式错误
InvalidEndTime.Mismatch Specified end time should not be earlier than start time.StartTime:%s, EndTime:%s 400 EndTime不应早于StartTime
InvalidTime Start time with the time difference is not more than 62 days. 400 不支持查询62天前的数据
InvalidTime The start time and the end time difference is not more than 7 days. 400 所查询的时间跨度不能超过7天
InvalidRegion Invalid region.Expected:AF/AS/AU/CN/EU/NA/SA/HK/TW, but receive:%s 400 无效的区域名称
InvalidResultType Invalid result type.Expected:0/1, but receive:%s 400 无效的数据类型,应该为0/1
InvalidGranularity Invalid granularity.Option for granularity is 5, 10, 20, 60, 240, 480, 1440 (min), received:%s 400 无效的统计粒度
RequiresInputValue Requires no input value.Expected:This value is required, but no found value from:StreamUrls 400 缺少必填参数
InvalidDomain.NotFound The domain provided does not belong to you or does not match the cdntype.Invalid domains:%s 400 直播业务不存在此域名
AccessDenied Access Denied.You are not authorized to perform:DomainIds:%s 403 权限不够,访问被拒绝
TooManyDataPoints Too many data points in this request.%s 400 所查询的数据超过接口最大吞吐量

文档内容是否对您有帮助?

根本没帮助
文档较差
文档一般
文档不错
文档很好

在文档使用中是否遇到以下问题

内容不全,不深入
内容更新不及时
描述不清晰,比较混乱
系统或功能太复杂,缺乏足够的引导
内容冗长

更多建议

0/200

评价建议不能为空

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

问题反馈