查詢頻道直播時長
更新時間:2022-09-02 18:08:07
介面URL
https://api.polyv.net/live/v3/channel/statistics/get-live-durations
介面說明
1、接口用于查询频道直播时长
2、支持多频道
3、接口支持https
回傳結果格式
JSON
請求方式
GET
請求參數
| 參數名 | 必填 | 類型 | 說明 |
|---|---|---|---|
| appId | 是 | string | 從API設定中取得,在直播系統登記的appId |
| timestamp | 是 | long | 當前13位毫秒級時間戳,3分鐘內有效 |
| sign | 是 | String | 簽名,為32位大寫的MD5值,生成簽名的appSecret金鑰作為通訊資料安全的關鍵資訊,嚴禁儲存在用戶端直接使用,所有API都必須透過客戶自己伺服器中轉呼叫POLYV伺服器取得回應資料【詳見簽名生成規則】 |
| channelIds | 是 | string | 頻道號,多個頻道可以透過英文逗號相連 |
回應成功JSON範例:
{
"code": 200,
"status": "success",
"message": "",
"data": [
{
"duration": 1000,
"channelId": 108888
},
{
"duration": 222,
"channelId": 108188
}
]
}
回應失敗JSON範例:
未輸入appId
{
"code": 400,
"status": "error",
"message": "appId is required.",
"data": ""
}
appId不正確
{
"code": 400,
"status": "error",
"message": "application not found.",
"data": ""
}
時間戳錯誤
{
"code": 400,
"status": "error",
"message": "invalid timestamp.",
"data": ""
}
簽名錯誤
{
"code": 403,
"status": "error",
"message": "invalid signature.",
"data": ""
}
非法頻道號
{
"code": 400,
"data": "",
"message": "illegal channel id: 10001",
"status": "error"
}
欄位說明
| 參數名 | 說明 |
|---|---|
| code | 回應代碼,成功為200,失敗為400,簽名錯誤為403,異常錯誤500 |
| status | 成功為success,失敗為error |
| message | 錯誤時為錯誤提示訊息 |
| data | 成功資料 |
| data[0].channelId | 頻道號 |
| data[0].duration | 直播時長, 單位是秒(s) |
Java請求範例
public static void test() {
String url = "https://api.polyv.net/live/v3/channel/statistics/get-live-durations";
// 用户对应的appId和加密串
String appId = "xxxxxxxxx";
String appSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxx";
String channelIds = "10001,10002";
Map<String, String> params = new HashMap<>();
params.put("channelIds", channelIds);
PolyvTool.setLiveSign(params, appId, appSecret);
// 调用Polyv的httpClient工具类发送请求
String content = HttpClientUtil.getInstance()
.sendHttpGet(url + "?" + PolyvTool.mapJoinNotEncode(params));
System.out.println(content);
}
