保利威文档中心

幫助中心

查詢頻道簽到成功記錄

更新時間:2022-09-14 18:04:27

介面描述

1、查询频道号下,某天或某场直播的签到记录(仅返回已签到记录)
2、接口支持https协议

介面URL

http://api.polyv.net/live/v3/channel/checkin/list

線上API呼叫

請求方式

GET

介面限制

1、介面同時支援HTTP、HTTPS,建議使用HTTPS確保介面安全,介面呼叫有頻率限制,詳細請查看

請求參數描述

參數名 必選 類型 說明
appId true String 帳號appId【詳見取得金鑰
timestamp true Long 當前13位毫秒級時間戳,3分鐘內有效
sign true String 簽名,為32位大寫的MD5值,產生簽名的appSecret金鑰作為通訊資料安全的關鍵資訊,嚴禁儲存在用戶端直接使用,所有API都必須透過客戶自己伺服器中轉呼叫POLYV伺服器取得回應資料【詳見簽名產生規則
channelId true String 頻道號
page false Integer 頁碼,預設為1
pageSize false Integer 每一頁的大小,預設為20
date false String 查詢的指定日期,格式為yyyy-MM-dd,預設查詢當天簽到記錄
sessionId false String 場次id
如果傳sessionId,date無效
如果不傳sessionId,date有效

範例

http://api.polyv.net/live/v3/channel/checkin/list?date=2021-03-10&appId=frlr1zazn3&sign=97E7B161075A9E52ABEBC202DD25E2E5&pageSize=20&page=1&sessionId=&channelId=2191569&timestamp=1621845152183

回應參數描述

參數名 類型 說明
code Integer 回應狀態碼,200為成功返回,非200為失敗【詳見全域錯誤說明
status String 回應狀態文字資訊
message String 回應描述資訊,當code為400或500時,輔助描述錯誤原因
data Object 簽到記錄的分頁資料 【詳見data欄位說明

data欄位說明

參數名 類型 說明
pageNumber Integer 頁碼
totalPages Integer 總頁數
pageSize Integer 每一頁大小
contents Array 簽到記錄的資料 【詳見content欄位說明

content欄位說明

參數名 類型 說明
id Integer 自增主鍵
indate String 簽到日期,yyyy-MM-dd格式
nickname String 暱稱
userid String 使用者id
channelId String 頻道號
time Long 簽到的具體時間戳
timeFormat String 簽到的格式化詳細日期,yyyy-MM-dd HH:mm 格式
sessionId String 場次號
startTime String 該場次直播開始時間
如果不傳sessionId,startTime為空
如果傳sessionId,startTime顯示
checkinid String 簽到id,一場簽到一個id
param4 String 在外部授權、直接(獨立)授權情況下傳過來的自訂參數
param5 String 在外部授權、直接(獨立)授權情況下傳過來的自訂參數

Java請求範例

快速接入基礎程式碼請下載相關依賴原始碼點擊下載原始碼 ,下載後加入到自己的原始碼工程中即可。測試案例中的HttpUtil.java 和 LiveSignUtil.java 都包含在下載檔案中。

強烈建議您使用直播Java SDK完成API的功能對接,直播Java SDK 對API呼叫邏輯、異常處理、資料簽名、HTTP請求執行緒池進行了統一封裝和最佳化。

private static final Logger log = LoggerFactory.getLogger(InteractionCheckinTest.class);
/**
 * 查询频道签到结果
 * @throws IOException
 */
@Test
public void testGetCheckinList() throws IOException, NoSuchAlgorithmException {
        //公共参数,填写自己的实际参数
        String appId = super.appId;
        String appSecret = super.appSecret;
        String timestamp = String.valueOf(System.currentTimeMillis());

        //业务参数
        String url = "https://api.polyv.net/live/v3/channel/checkin/list";
        Integer channelId = 2191569;
        Integer page = 1;
        Integer pageSize = 20;
        String date = "2021-03-10";
        String sessionId = "";

        //http 调用逻辑
        Map<String,String> requestMap = new HashMap<>();
        requestMap.put("appId", appId);
        requestMap.put("timestamp",timestamp);
        requestMap.put("channelId",channelId.toString());
        requestMap.put("page",page.toString());
        requestMap.put("pageSize",pageSize.toString());
        requestMap.put("date",date);
        requestMap.put("sessionId",sessionId);
        requestMap.put("sign",LiveSignUtil.getSign(requestMap, appSecret));
        String response = HttpUtil.get(url, requestMap);
        log.info("测试查询频道签到结果接口返回值:{}",response);
        //do somethings

}

回應範例

系統全域錯誤說明詳見全域錯誤說明

成功範例

{
  "code": 200,
  "status": "success",
  "message": "",
  "data": {
    "pageNumber": 1,
    "totalPages": 1,
    "pageSize": 20,
    "contents": [
      {
        "id": 48010860,
        "indate": "2021-03-10",
        "userid": "ovtl9t_RxnrTdqkXqkT5Q5lnxp2A",
        "channelId": 2191569,
        "sessionId": "",
        "time": 1615391652916,
        "timeFormat": "2021-03-10 23:54",
        "startTime": "",
        "param4": "oi_ubswUnFt8QQFAAEJbKmd8W9BE",
        "param5": "",
        "nickname": "卉",
        "checkinid": "db14ef80-81b8-11eb-b114-e7477b"
      }
    ]
  }
}

異常範例

{
  "code": 400,
  "status": "error",
  "message": "invalid signature.",
  "data": ""
}
联系客服,在线咨询