answerRecordService
更新時間:2025-09-11 15:18:09
1、查詢頻道答題卡答題結果
描述
查询频道答题卡答题结果
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/question/answer-records
呼叫限制
1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看
單元測試
@Test
public void testGetAnswerRecord() throws Exception, NoSuchAlgorithmException {
LiveQuestionAnswerRecordRequest liveQuestionAnswerRecordRequest = new LiveQuestionAnswerRecordRequest();
List<LiveQuestionAnswerRecordResponse> liveCheckinResponse = null;
try {
String channelId = super.createChannel();
liveQuestionAnswerRecordRequest.setChannelId(channelId);
liveQuestionAnswerRecordRequest.setStartDate(getDate(2020, 10, 01)).setEndDate(getDate(2099, 10, 01));
liveCheckinResponse = new LiveAnswerRecordServiceImpl().getAnswerRecord(liveQuestionAnswerRecordRequest);
Assert.assertNotNull(liveCheckinResponse);
if (liveCheckinResponse != null) {
//to do something ......
log.debug("测试查询频道答题卡答题结果成功{}", JSON.toJSONString(liveCheckinResponse));
}
} catch (PloyvSdkException e) {
//参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
log.error(e.getMessage(), e);
// 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
throw e;
} catch (Exception e) {
log.error("SDK调用异常", e);
throw e;
}
}
單元測試說明
1、請求正確,回傳 LiveQuestionAnswerRecordResponse 物件,B 端依據此物件處理業務邏輯;
2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息見 PloyvSdkException.getMessage(),如 [ 輸入參數 [xxx.chat.LivexxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]
3、伺服器處理異常,拋出 PloyvSdkException,錯誤訊息見 PloyvSdkException.getMessage(),如 [ 保利威請求回傳資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因: invalid signature. ]
請求入參描述
| 參數名 | 必選 | 類型 | 說明 |
|---|---|---|---|
| channelId | true | String | 頻道號 |
| startDate | false | Date | 查詢的開始時間,格式要求:yyyy-MM-dd |
| endDate | false | Date | 查詢的結束時間,格式要求:yyyy-MM-dd |
| appId | false | String | POLYV 用戶 APP_ID,多帳號呼叫時該參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定) |
| appSecret | false | String | POLYV 用戶 APP_SECRET,多帳號呼叫時該參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定) |
回傳物件描述
回傳物件是 List<LiveQuestionAnswerRecordResponse>,LiveQuestionAnswerRecordResponse 具體元素內容如下:
| 參數名 | 類型 | 說明 |
|---|---|---|
| questionId | String | 題目 ID |
| questionTitle | String | 題目標題 |
| times | Integer | 第幾次發送題目,用於區分相同題目重複發送的情況 |
| answer | String | 題目的答案 |
| total | Integer | 答題人數 |
| options | Array | 題目選項資訊列表【詳見Option 參數描述】 |
| records | Array | 答題的用戶列表【詳見Record 參數描述】 |
| type | String | 題目類型:R 為單選,C 為多選,Q 為問答 |
| itemType | Integer | 答題類型:1 表示問答,0 表示答題卡 |
Option 參數描述
| 參數名 | 類型 | 說明 |
|---|---|---|
| title | String | 選項標題 |
| count | Integer | 選擇該選項的人數 |
| percent | String | 選擇該選項的人數百分比,如:100.00% |
Record 參數描述
| 參數名 | 類型 | 說明 |
|---|---|---|
| viewerId | String | 答題的用戶 ID |
| nickname | String | 答題的用戶暱稱 |
| answer | String | 答題的用戶提交的答案 |
| correct | Boolean | 答題的用戶提交的答案是否正確:false 不正確,true 正確 |
| submitTime | Date | 答題的用戶提交時間 |
