取得每場直播的答題卡發送記錄列表
更新時間:2022-09-02 18:08:07
介面URL
https://api.polyv.net/live/v3/channel/question/list-interact-record
介面說明
1、接口用于获取每场直播的答题卡发送记录列表
2、接口支持https
請求方式
GET
請求參數
| 參數名 | 必選 | 類型 | 說明 |
|---|---|---|---|
| appId | 是 | string | 從API設定中取得,在直播系統登記的appId |
| timestamp | 是 | long | 當前13位毫秒級時間戳,3分鐘內有效 |
| sign | 是 | String | 簽名,為32位大寫的MD5值,產生簽名的appSecret金鑰作為通訊資料安全的關鍵資訊,嚴禁儲存在用戶端直接使用,所有API都必須透過客戶自己伺服器中轉呼叫POLYV伺服器取得回應資料【詳見簽名產生規則】 |
| channelId | 是 | string | 頻道號 |
| startTime | 否 | long | 查詢開始時間時間戳,13位毫秒級, 不傳預設查最近七天資料 |
| endTime | 否 | long | 查詢的結束時間時間戳,13位毫秒級, 和startTime一起不傳預設查七天資料 |
| sessionId | 否 | string | 查詢的場次ID |
| page | 否 | int | 頁號,預設為1 |
| pageSize | 否 | int | 每頁筆數,預設為20 |
回應成功JSON範例:
// 成功
{
"code": 200,
"status": "success",
"message": null,
"data": {
"endRow": 8,
"contents": [
{
"status": 11,
"questionId": "asdfg12311",
"sessionId": "zxcvbasdfg",
"name": "今天天气怎么样",
"createdTime": 1589007127629,
"type": "R",
"channelId": 100000,
"userId": "poiu12wsde,
"times": 1
}
],
"firstPage": true,
"lastPage": false,
"limit": 10,
"nextPageNumber": 8,
"offset": 10,
"pageNumber": 10,
"pageSize": 9,
"prePageNumber": 10,
"startRow": 5,
"totalItems": 8,
"totalPages": 3,
"occaecate": 62485716
}
}
回應失敗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 | 回應的狀態碼,例如:200 |
| status | 回應狀態 |
| message | 異常錯誤資訊 |
| data | 回應結果集 |
| data.pageNumber | 頁數 |
| data.limit | 每頁記錄數 |
| data.totalItems | 記錄總數 |
| data.firstPage | 是否為第一頁,值為:true/false |
| data.lastPage | 是否為最後一頁,值為:true/false |
| data.nextPageNumber | 下一頁編號 |
| data.prePageNumber | 上一頁編號 |
| data.totalPages | 總頁數 |
| data.startRow | 當前頁第一條記錄所在列表中的位置 |
| data.endRow | 當前頁最後一條記錄所在列表中的位置 |
| data.contents[0].questionId | 題目ID |
| data.contents[0].name | 題目名稱 |
| data.contents[0].type | 題目類型("R":單選,"C":多選, "S": 評分, "Q": 問答, "V": 投票) |
| data.contents[0].channelId | 頻道ID |
| data.contents[0].userId | 使用者ID |
| data.contents[0].sessionId | 直播場次ID |
| data.contents[0].times | 第幾次發題 |
| data.contents[0].status | 發題狀態(11 : 答題中, 12:結束答題,13:將答題結果發送給學員) |
| data.contents[0].createdTime | 建立時間 |
php請求範例
<?php
//引用config.php
include 'config.php';
$params = array(
'appId' => $appId,
'timestamp' => $timestamp,
'channelId' => 108888
);
//生成sign
$sign = getSign($params); //详细查看config.php文件的getSign方法
$params['sign'] = $sign;
$url = "https://api.polyv.net/live/v3/channel/question/list-interact-record?".http_build_query($params);
$curl = curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_TIMEOUT, 500);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_URL, $url);
$res = curl_exec($curl);
curl_close($curl);
echo $res;
?>
