取得頻道回放的詳細資訊
更新時間:2022-09-02 18:08:07
介面URL
https://api.polyv.net/live/v3/channel/playback/list-playback-detail
介面說明
1、接口用于获取频道回放的详细信息
2、接口支持https
支援格式
JSON
請求方式
GET
請求次數限制
TRUE
請求參數
| 參數名 | 必選 | 類型 | 說明 |
|---|---|---|---|
| appId | 是 | string | 從API設定中取得,在直播系統登記的appId |
| timestamp | 是 | long | 目前13位毫秒級時間戳,3分鐘內有效 |
| sign | 是 | String | 簽名,為32位大寫的MD5值,產生簽名的appSecret金鑰作為通訊資料安全的關鍵資訊,嚴禁儲存在用戶端直接使用,所有API都必須透過客戶自己伺服器中轉呼叫POLYV伺服器取得回應資料【詳見簽名產生規則】 |
| channelId | 是 | int | 頻道號 |
| page | 否 | int | 頁碼,預設為1 |
| pageSize | 否 | int | 頁面大小,預設為12,上限為1000 |
| startTime | 否 | string | 開始時間,格式為yyyyMMddHHmmss。篩選直播開始時間大於等於該參數的回放 |
| endTime | 否 | string | 結束時間,格式為yyyyMMddHHmmss。篩選直播開始時間小於等於該參數的回放 |
| fileId | 否 | string | 錄製id,使用該參數則為精確查詢,忽略日期區間過濾 |
回應成功JSON範例:
{
"code": 200,
"status": "success",
"message": "",
"data": {
"pageNumber": 1,
"totalPages": 1,
"pageSize": 1,
"contents": [
{
"channelId": 352078,
"sessionId": "fhbc977k1j",
"sessionIds": "[\"20191028151506,922,fhbc977k1j\"]",
"fileId": "73fe1f8f609ce315d7d8ab8a5a3c839e",
"title": "title",
"startTime": "20191028151506",
"endTime": "20191028153028",
"duration": 922,
"videoId": "eba9c64cae",
"mp4Url": "http://dl.videocc.net/23c0193d81/none_23c0193d819dcfc3e9184662f4fa56cd_1.mp4",
"recordPPTStatus": 1,
"recordPPTUrl": "http://dl.videocc.net/23c0193d81/none_23c0193d813efe97b0578b0c25ef2788_1.mp4",
"zipUrl": "http://liveimages.videocc.net/ppt/23c0193d819dcfc3e9184662f4fa56cd.zip",
"zipStatus": 1,
"origin": "auto"
}
]
}
}
回應失敗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,
"status": "error",
"message": "param is not digit: dsadasd",
"data": ""
}
日期格式錯誤
{
"code": 400,
"status": "error",
"message": "invalid date time format",
"data": ""
}
數值範圍錯誤
{
"code": 400,
"status": "error",
"message": "number range error",
"data": ""
}
欄位說明
| 參數名 | 說明 |
|---|---|
| code | 回應代碼,成功為200,失敗為400,簽名錯誤為401,異常錯誤500 |
| status | 成功為success,失敗為error |
| message | 錯誤時為錯誤提示訊息 |
| data | 成功回應時為回放詳情分頁資料 |
| pageNumber | 目前頁碼 |
| totalPages | 總頁數 |
| pageSize | 頁面大小 |
| contents | 回放詳情資料列表 |
| channelId | 所屬頻道號 |
| sessionId | 回放對應的單一場次id |
| sessionIds | 場次和時間對應的陣列字串,格式:["20190703145126,4,fdqbopvtnv","20190703145126,8,fdqbopvtnv"] ,其中:"20190703145126,4,fdqbopvtnv" 第一個欄位是開始時間,第二個欄位是直播的時長,第三個是對應的sessionId。 |
| fileId | 對應的錄製檔案id |
| title | 回放標題 |
| startTime | 直播開始時間,格式為yyyyMMddHHmmss。篩選直播開始時間大於等於該參數的回放 |
| endTime | 直播結束時間,格式為yyyyMMddHHmmss。篩選直播開始時間小於等於該參數的回放 |
| duration | 直播時長,單位秒 |
| videoId | 回放id,可用於SDK播放在線回放 |
| mp4Url | 回放轉存後的mp4下載位址 |
| recordPPTStatus | 重製狀態,1為重製已經可用,0為重製未完成 |
| recordPPTUrl | 當重製狀態為1時,該欄位為重製的mp4下載位址 |
| zipUrl | 離線包下載位址 |
| zipStatus | 離線包狀態,0代表還未打包完成,1代表已完成 |
| origin | 回放來源,manual-雲錄製,auto-自動錄製,merge-合併,clip-裁剪 |
php請求範例
<?php
//引用config.php
include 'config.php';
$params = array(
'appId' => $appId,
'timestamp' => $timestamp,
'channelId' => 206204,
'page' => 1,
'pageSize' => 5,
'startTime' => '20191001120000',
'endTime' => '20191015235959'
);
//生成sign
$sign = getSign($params); //详细查看config.php文件的getSign方法
$params['sign'] = $sign;
$url = "https://api.polyv.net/live/v3/channel/playback/list-playback-detail?".http_build_query($params);
$curl = curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_TIMEOUT, 500);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, 0);
$res = curl_exec($curl);
curl_close($curl);
echo $res;
?>
