1、获取多个频道实时在线人数
2、接口支持https协议
http://api.polyv.net/live/v2/statistics/get-realtime-viewers
2、每个频道返回最近一段时间内(比如:10秒一个点,15条数据,这个时间段可能会做调整,调用接口请不要写死条数。)的实时在线人数信息。每个频道的结果列表按照时间降序排序。
https://api.polyv.net/live/v2/statistics/get-realtime-viewers?appId=frlr1zazn3&sign=D0B0EF94D4790B08EB6AE800A22497B8&channelIds=1965681%2C2149813&userId=1b448be323×tamp=1621842353153
强烈建议您使用直播Java SDK完成API的功能对接,直播Java SDK 对API调用逻辑、异常处理、数据签名、HTTP请求线程池进行了统一封装和优化。
private static final Logger log = LoggerFactory.getLogger(ChannelViewDataTest.class);
/**
* 查询多个频道实时并发数据
* @throws IOException
*/
@Test
public void testGetRealtimeViewers() throws IOException, NoSuchAlgorithmException {
//公共参数,填写自己的实际参数
String appId = super.appId;
String appSecret = super.appSecret;
String userId = super.userId;
String timestamp = String.valueOf(System.currentTimeMillis());
//业务参数
String url = "https://api.polyv.net/live/v2/statistics/get-realtime-viewers";
String channelIds = "1965681,2149813";
//http 调用逻辑
Map<String,String> requestMap = new HashMap<>();
requestMap.put("appId", appId);
requestMap.put("timestamp",timestamp);
requestMap.put("channelIds",channelIds);
requestMap.put("sign",LiveSignUtil.getSign(requestMap, appSecret));
String response = HttpUtil.get(url, requestMap);
log.info("测试查询多个频道实时并发数据,返回值:{}",response);
//do somethings
}
{
"code":200,
"status":"success",
"message":"",
"data":[
{
"channelId":1965681,
"time":"14:15:49",
"count":0
},
{
"channelId":1965681,
"time":"14:15:39",
"count":0
},
{
"channelId":1965681,
"time":"14:15:29",
"count":0
},
{
"channelId":1965681,
"time":"14:15:19",
"count":0
},
{
"channelId":1965681,
"time":"14:15:09",
"count":0
},
{
"channelId":1965681,
"time":"14:14:59",
"count":0
},
{
"channelId":1965681,
"time":"14:14:49",
"count":0
},
{
"channelId":1965681,
"time":"14:14:39",
"count":0
},
{
"channelId":1965681,
"time":"14:14:29",
"count":0
},
{
"channelId":1965681,
"time":"14:14:19",
"count":0
},
{
"channelId":1965681,
"time":"14:14:09",
"count":0
},
{
"channelId":1965681,
"time":"14:13:59",
"count":0
},
{
"channelId":1965681,
"time":"14:13:49",
"count":0
},
{
"channelId":1965681,
"time":"14:13:39",
"count":0
},
{
"channelId":1965681,
"time":"14:13:29",
"count":0
},
{
"channelId":2149813,
"time":"14:15:49",
"count":0
},
{
"channelId":2149813,
"time":"14:15:39",
"count":0
},
{
"channelId":2149813,
"time":"14:15:29",
"count":0
},
{
"channelId":2149813,
"time":"14:15:19",
"count":0
},
{
"channelId":2149813,
"time":"14:15:09",
"count":0
},
{
"channelId":2149813,
"time":"14:14:59",
"count":0
},
{
"channelId":2149813,
"time":"14:14:49",
"count":0
},
{
"channelId":2149813,
"time":"14:14:39",
"count":0
},
{
"channelId":2149813,
"time":"14:14:29",
"count":0
},
{
"channelId":2149813,
"time":"14:14:19",
"count":0
},
{
"channelId":2149813,
"time":"14:14:09",
"count":0
},
{
"channelId":2149813,
"time":"14:13:59",
"count":0
},
{
"channelId":2149813,
"time":"14:13:49",
"count":0
},
{
"channelId":2149813,
"time":"14:13:39",
"count":0
},
{
"channelId":2149813,
"time":"14:13:29",
"count":0
}
]
}
{
"code": 400,
"status": "error",
"message": "invalid signature.",
"data": ""
}