保利威文档中心

幫助中心

查詢觀看行為分析

更新時間:2025-01-14 16:23:01

介面描述

1、通过时间区间分页查询观看行为分析数据
2、接口URL中的{userid}为点播账号userid,具体参考菜单【使用须知】->【获取密钥】
3、观看完成度=用户观看有效时长/视频时长,例如:视频A时长为50分钟,用户观看了第0~20分钟,拖拽进度条后观看了第10~30分钟,此时用户有效观看时长为30分钟,则完成度为 30/50=60%
4、接口支持https协议

介面URL

http://api.polyv.net/v2/advance/play/{userid}

線上API呼叫

請求方式

GET

介面限制

1、介面同時支援HTTP、HTTPS,建議使用HTTPS以確保介面安全,介面呼叫有頻率限制,詳細請查看
2、進階分析功能介紹詳見:影片進階分析
3、由於資料量和計算量大,資料分析結果次日才可查詢
4、查詢的時間跨度不超過31天;當start有值而end為空時,回傳開始日期後31天後的資料;當start為空而end不為空時,回傳結束日期前31天內的資料;當start、end參數均為空時,回傳最近31天的資料。

請求參數描述

參數名 必選 類型 說明
ptime true Long 當前時間的毫秒級時間戳,3分鐘內有效
sign true String 簽名,為40位大寫的SHA1值,產生簽名的secretkey金鑰作為通訊資料安全的關鍵資訊,嚴禁儲存在用戶端直接使用,所有API都必須透過客戶自己伺服器中轉呼叫POLYV伺服器取得回應資料【詳見簽名產生規則
start false String 開始時間,格式:yyyy-MM-dd 或 yyyy-MM-dd HH:mm:ss,查詢範圍不超過31天
end false String 結束時間,格式:yyyy-MM-dd 或 yyyy-MM-dd HH:mm:ss,查詢範圍不超過31天
pageSize false Integer 每頁取多少條資料(最大為20,超過則預設取20條資料)
viewerId false String 自訂觀看者id
viewerName false String 觀看者暱稱
vid false String 影片id,不傳查詢目前帳號下所有影片的觀看行為分析資料
token false String 下一頁的憑證,從目前頁的回傳資料中取得,第一頁不需要傳

範例

http://api.polyv.net/v2/advance/play/1b448be323?vid=1b448be323ae991b1dfc5136597618d1_1&start=2021-03-10+15%3A21%3A01&sign=12BD21B68CE506562F6C79B7615254EB668B2DFB&pageSize=5&end=2021-04-07+15%3A21%3A01&ptime=1617786046170

回應參數描述

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

data欄位說明

參數名 類型 說明
pageSize Integer 每頁顯示的資料筆數
contents Array 觀看的詳細資料【詳見contents欄位說明
token String 查詢下一頁時傳送的憑證
hasNextPage Boolean 是否有下一頁

contents欄位說明

參數名 類型 說明
startTime String 首次觀看日期,格式:yyyy-MM-dd HH:mm:ss
videoId String 影片id
videoName String 影片名稱
videoImage String 影片首圖連結位址(沒有新增協定頭)
videoDuration Integer 影片時長,單位:秒
deviceClass String 裝置名稱
osName String 作業系統
osVersion String 作業系統版本
agentName String 終端名稱
agentVersion String 終端版本
referer String 來源
ip String ip位址
country String 國家
province String 省份
city String 地區
isp String 電信營運商
viewerid String 觀看者id
viewerNickName String 觀看者暱稱
viewerAvatar String 觀看者頭像
totalVideoCount Long 觀看者觀看的影片總量
heatmap String 熱力圖(["0-1:1","3-4:2"]表示影片的0到1秒有1次觀看,3到4秒有2次觀看)
completionRate Double 觀看完成度
status String 影片狀態
60/61:已發布
10:等待編碼
20:正在編碼
50:等待審核
51:審核不通過
-1:已刪除
playId String 表示此次播放動作的id
回傳錯誤代碼列表
錯誤代碼 message 說明
400 sign can not be empty. 加密串為空
400 ptime is too old. 時間戳過期
400 ptime is illegal. ptime超出目前時間3分鐘
400 Could not find user by userid. userid不存在
400 the sign is not right. 加密串錯誤
401 start date or end date is illegal. start或end參數格式有問題
402 date range exceeds 31 days. start和end參數相差超過31天
403 get play list error. 後台取得資料失敗
500 get play list failed. please check the backend log. 後台拋異常

Java請求範例

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

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

private static final Logger log = LoggerFactory.getLogger(VodBigdataTest.class);

/**
 * 查询观看行为分析
 */
@Test
public void testGetPlayAnalysis() throws Exception, NoSuchAlgorithmException {
    //公共参数,填写自己的实际参数
    String secretKey = super.secretKey;
    String userId = super.userId;
    String ptime = String.valueOf(System.currentTimeMillis());
    //业务参数
    String url = String.format("http://api.polyv.net/v2/advance/play/%s", userId);
    String start = "2021-03-10 15:21:01";
    String end = "2021-04-07 15:21:01";
    String pageSize = "5";
    String vid = "1b448be323ae991b1dfc5136597618d1_1";

    Map<String, String> requestMap = new HashMap<>();
    requestMap.put("ptime", ptime);
    requestMap.put("start", start);
    requestMap.put("end", end);
    requestMap.put("pageSize", pageSize);
    requestMap.put("vid", vid);

    requestMap.put("sign", VodSignUtil.getSign(requestMap, secretKey));
    
    String response = HttpUtil.get(url, requestMap);
    log.debug("测试查询观看行为分析,{}", response);
    //do somethings
}

回應範例

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

成功範例

{
    "code": 200,
    "status": "success",
    "message": "success",
    "data": {
        "pageSize": 5,
        "contents": [{
            "startTime": "2021-04-06 16:29:06",
            "videoId": "1b448be323ae991b1dfc5136597618d1_1",
            "videoName": "小猫2",
            "videoImage": "//img.videocc.net/uimage/1/1b448be323/first_image/cd09cde7-acb0-4662-b24d-fee4b4e3f885_s.jpg",
            "videoDuration": 15,
            "deviceClass": "Desktop",
            "osName": "Windows NT",
            "osVersion": "10.0",
            "agentName": "Edge",
            "agentVersion": "89.0.774.68",
            "referer": "https://share.plvideo.cn/front/video/preview?vid=1b448be323ae991b1dfc5136597618d1_1",
            "ip": "xxxxxxx",
            "country": "中国",
            "province": "湖南",
            "city": "长沙",
            "isp": "中国电信",
            "viewerId": "N/A",
            "viewerNickName": "N/A",
            "viewerAvatar": "N/A",
            "totalVideoCount": 0,
            "heatmap": "[\"0-15:1\"]",
            "completionRate": 1.0,
            "status": 61,
            "playId": "1617697736110X1071695"
        }, {
            "startTime": "2021-04-02 17:11:48",
            "videoId": "1b448be323ae991b1dfc5136597618d1_1",
            "videoName": "小猫2",
            "videoImage": "//img.videocc.net/uimage/1/1b448be323/first_image/cd09cde7-acb0-4662-b24d-fee4b4e3f885_s.jpg",
            "videoDuration": 15,
            "deviceClass": "Desktop",
            "osName": "Windows NT",
            "osVersion": "10.0",
            "agentName": "Edge",
            "agentVersion": "89.0.774.63",
            "referer": "https://share.plvideo.cn/front/video/preview?vid=1b448be323ae991b1dfc5136597618d1_1",
            "ip": "xxxxxxx",
            "country": "中国",
            "province": "湖南",
            "city": "长沙",
            "isp": "中国电信",
            "viewerId": "N/A",
            "viewerNickName": "N/A",
            "viewerAvatar": "N/A",
            "totalVideoCount": 0,
            "heatmap": "[\"0-15:1\"]",
            "completionRate": 1.0,
            "status": 61,
            "playId": "1617354698104X1597608"
        }, {
            "startTime": "2021-03-31 16:28:14",
            "videoId": "1b448be323ae991b1dfc5136597618d1_1",
            "videoName": "小猫2",
            "videoImage": "//img.videocc.net/uimage/1/1b448be323/first_image/cd09cde7-acb0-4662-b24d-fee4b4e3f885_s.jpg",
            "videoDuration": 15,
            "deviceClass": "Desktop",
            "osName": "Windows NT",
            "osVersion": "10.0",
            "agentName": "Edge",
            "agentVersion": "89.0.774.63",
            "referer": "https://share.plvideo.cn/front/video/preview?vid=1b448be323ae991b1dfc5136597618d1_1",
            "ip": "xxxxxxx",
            "country": "中国",
            "province": "湖南",
            "city": "长沙",
            "isp": "中国电信",
            "viewerId": "N/A",
            "viewerNickName": "N/A",
            "viewerAvatar": "N/A",
            "totalVideoCount": 0,
            "heatmap": "[\"0-15:1\"]",
            "completionRate": 1.0,
            "status": 61,
            "playId": "1617179283819X1803923"
        }, {
            "startTime": "2021-03-31 16:26:10",
            "videoId": "1b448be323ae991b1dfc5136597618d1_1",
            "videoName": "小猫2",
            "videoImage": "//img.videocc.net/uimage/1/1b448be323/first_image/cd09cde7-acb0-4662-b24d-fee4b4e3f885_s.jpg",
            "videoDuration": 15,
            "deviceClass": "Phone",
            "osName": "Android",
            "osVersion": "6.0",
            "agentName": "WeChat",
            "agentVersion": "8.0.2.1860",
            "referer": "https://share.plvideo.cn/front/video/view?vid=1b448be323ae991b1dfc5136597618d1_1",
            "ip": "xxxxxxx",
            "country": "中国",
            "province": "湖南",
            "city": "长沙",
            "isp": "中国电信",
            "viewerId": "N/A",
            "viewerNickName": "N/A",
            "viewerAvatar": "N/A",
            "totalVideoCount": 0,
            "heatmap": "[\"0-15:1\"]",
            "completionRate": 1.0,
            "status": 61,
            "playId": "1617179158342X1197943"
        }, {
            "startTime": "2021-03-31 16:25:20",
            "videoId": "1b448be323ae991b1dfc5136597618d1_1",
            "videoName": "小猫2",
            "videoImage": "//img.videocc.net/uimage/1/1b448be323/first_image/cd09cde7-acb0-4662-b24d-fee4b4e3f885_s.jpg",
            "videoDuration": 15,
            "deviceClass": "Desktop",
            "osName": "Windows NT",
            "osVersion": "10.0",
            "agentName": "Edge",
            "agentVersion": "89.0.774.63",
            "referer": "https://share.plvideo.cn/front/video/preview?vid=1b448be323ae991b1dfc5136597618d1_1",
            "ip": "xxxxxxx",
            "country": "中国",
            "province": "湖南",
            "city": "长沙",
            "isp": "中国电信",
            "viewerId": "N/A",
            "viewerNickName": "N/A",
            "viewerAvatar": "N/A",
            "totalVideoCount": 0,
            "heatmap": "[\"0-15:1\"]",
            "completionRate": 1.0,
            "status": 61,
            "playId": "1617179110026X1812455"
        }],
        "token": "2daa82aabd892f661e967ed365536c05ad832deccda9d0a66f380c6987d838b8e248525ef721439b95a56f9d2027734e5b0d72bbb3022c88a2ef50e2604de902",
        "hasNextPage": true
    }
}

異常範例

{
  "code": 400,
  "status": "error",
  "message": "ptime is too old.",
  "data": ""
}
联系客服,在线咨询