redPackService
更新時間:2025-09-11 15:18:09
1、查詢紅包派發數據統計
描述
分页查询频道红包派发数据统计
接口地址(仅做说明使用):https://api.polyv.net/live/v4/channel/red-pack/statistics/list
呼叫限制
1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看
單元測試
@Test
public void testGetRedPackStats() throws IOException, NoSuchAlgorithmException {
LiveGetRedPackStatsRequest liveGetRedPackStatsRequest = new LiveGetRedPackStatsRequest();
LiveGetRedPackStatsResponse liveGetRedPackStatsResponse;
try {
String channelId = super.createChannel();
liveGetRedPackStatsRequest.setChannelId(channelId);
liveGetRedPackStatsResponse = new ILiveRedPackServiceImpl().getRedPackStats(liveGetRedPackStatsRequest);
Assert.assertNotNull(liveGetRedPackStatsResponse);
if (liveGetRedPackStatsResponse != null) {
//to do something ......
log.debug("测试查询红包派发数据统计成功 {}", JSON.toJSONString(liveGetRedPackStatsResponse));
}
} 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、請求正確,回傳 LiveGetRedPackStatsResponse 物件,B 端依據此物件處理業務邏輯;
2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息見 PloyvSdkException.getMessage(),如 [ 輸入參數 [xxx.chat.LivexxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]
3、伺服器處理異常,拋出 PloyvSdkException,錯誤訊息見 PloyvSdkException.getMessage(),如 [ 保利威請求回傳資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因:invalid signature. ]
請求入參描述
| 參數名 | 必選 | 類型 | 說明 |
|---|---|---|---|
| channelId | true | String | 頻道號 |
| sessionId | false | String | 場次 ID |
| startTime | false | Date | 開始時間 |
| endTime | false | Date | 結束時間 |
| currentPage | false | Integer | 頁數,預設為 1【對應 API 文件的 pageNumber 欄位】 |
| pageSize | false | Integer | 每頁顯示的資料筆數,預設每頁顯示 20 筆資料 |
| appId | false | String | POLYV 用戶 APP_ID,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定) |
| appSecret | false | String | POLYV 用戶 APP_SECRET,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定) |
回傳物件描述
| 參數名 | 類型 | 說明 |
|---|---|---|
| contents | Array | 當前頁內容【詳見 RedPackStats 參數描述】 |
| pageSize | Integer | 每頁顯示的資料筆數,預設每頁顯示 20 筆資料 |
| currentPage | Integer | 當前頁【對應 API 文件的 pageNumber 欄位】 |
| totalItems | Integer | 記錄總筆數 |
| totalPage | Integer | 總頁數【對應 API 文件的 totalPages 欄位】 |
RedPackStats 參數描述
| 參數名 | 類型 | 說明 |
|---|---|---|
| redPackId | String | 紅包 ID |
| userId | String | 用戶微信 OPENID |
| channelId | String | 頻道號 |
| nickName | String | 暱稱 |
| amount | Float | 紅包金額 |
| balance | Float | 紅包餘額 |
| allotType | String | 分配方式名稱:隨機分配紅包、平均分配紅包 |
| createdTime | Date | 建立時間,13 位毫秒級時間戳 |
| status | String | 狀態名稱:進行中、已結束、退款中、已退款 |
| redPackType | String | 紅包類型名稱:紅包雨、口令紅包、普通紅包 |
| redPackReceiveList | Array | 領取用戶列表【詳見 ReceiveList 參數描述】 |
ReceiveList 參數描述
| 參數名 | 類型 | 說明 |
|---|---|---|
| redPackId | String | 紅包 ID |
| userId | String | 用戶微信 OPENID |
| nickName | String | 暱稱 |
| avatar | String | 頭像 |
| amount | Float | 領取金額(小數點後兩位) |
| createdTime | Date | 領取時間 |
