获取视频分类目录

接口URL

http://api.polyv.net/v2/video/{userid}/cataJson

接口说明

作用:获取视频分类目录

支持格式

JSON

HTTP请求方式

POST,GET

请求数限制

TRUE

请求参数

参数名 必选 类型 说明
ptime string 当前时间的毫秒级时间戳(13位),3分钟内有效
userid string POLYV用户ID, http://api.polyv.net/v2/user/{userid}/main中的{userid}需要替换为POLYV用户ID的值
cataid int 分类id,默认为根目录,获取该分类下的树结构json
sign string 签名,为40位大写的SHA1值

返回结果

{
    "code": 200, 
    "status": "success", 
    "message": "success", 
    "data": [
        {
            "text": "默认分类 (39) ", 
            "cataname": "默认分类", 
            "catatree": "1", 
            "cataid": 1, 
            "parentid": 0, 
            "videos": 39, 
            "nodes": [
                {
                    "text": "第一个分类 (5) ", 
                    "cataname": "第一个分类", 
                    "catatree": "1,1466071267861", 
                    "cataid": 1466071267861, 
                    "parentid": 1, 
                    "videos": 5, 
                    "nodes": [
                        {
                            "text": "1.1 (3) ", 
                            "cataname": "1.1", 
                            "catatree": "1,1466071267861,1474873773161", 
                            "cataid": 1474873773161, 
                            "parentid": 1466071267861, 
                            "videos": 3
                        }, 
                        {
                            "text": "1.2 (2) ", 
                            "cataname": "1.2", 
                            "catatree": "1,1466071267861,1474873783646", 
                            "cataid": 1474873783646, 
                            "parentid": 1466071267861, 
                            "videos": 2
                        }
                    ]
                }, 
                {
                    "text": "第二个分类 (2) ", 
                    "cataname": "第二个分类", 
                    "catatree": "1,1474873733364", 
                    "cataid": 1474873733364, 
                    "parentid": 1, 
                    "videos": 2
                }, 
                {
                    "text": "第三个分类 (9) ", 
                    "cataname": "第三个分类", 
                    "catatree": "1,1474873744871", 
                    "cataid": 1474873744871, 
                    "parentid": 1, 
                    "videos": 9, 
                    "nodes": [
                        {
                            "text": "3.1 (2) ", 
                            "cataname": "3.1", 
                            "catatree": "1,1474873744871,1474873792718", 
                            "cataid": 1474873792718, 
                            "parentid": 1474873744871, 
                            "videos": 2
                        }, 
                        {
                            "text": "3.2 (6) ", 
                            "cataname": "3.2", 
                            "catatree": "1,1474873744871,1474873800254", 
                            "cataid": 1474873800254, 
                            "parentid": 1474873744871, 
                            "videos": 6
                        }
                    ]
                }, 
                {
                    "text": "第四个分类 (4) ", 
                    "cataname": "第四个分类", 
                    "catatree": "1,1474873756622", 
                    "cataid": 1474873756622, 
                    "parentid": 1, 
                    "videos": 4
                }
            ]
        }
    ]
}

字段 说明
code 成功/失败代码
status 成功/失败代码
message 成功/失败信息
text 分类名和该分类下视频总数的组合
cataname 分类名
cataree 分类树,显示从根目录到该目录每一层的分类id
cataid 分类id,如果为1则是根目录
parentid 上一级分类id,根目录的上一级分类为0
videos 此分类及其子分类视频总数
nodes 该分类的子分类

php请求示例

<?php
  $userid = "4802b9bb81";
  $ptime = time()*1000;
  $secretkey = "fRJiHrsZzw";
  $cataid = "1499328808069";
  $str = "ptime=$ptime"."&userid=$userid".$secretkey;
  $sign = strtoupper(sha1($str));
  $url = "http://api.polyv.net/v2/video/$userid/cataJson?ptime=".$ptime."&cataid=".$cataid."&sign=".$sign;
  $content = file_get_contents($url);
  echo $content;
?>

示例Demo

下面“获取视频分类Demo.zip”提供了两种方法解析jsontree得到目录的demo
一种是使用bootstrap插件treeview
另一种是使用jquery插件treeview(这个方法中通过解析json然后拼凑页面的元素的方法,可以应用于不同插件,方便外部开发者参考调用)

获取视频分类Demo.zip

 

签名规则

将请求参数(sign和cataid除外)按照参数名字典顺序排列,用“&”连接参数名与参数值,并在最后加上secretkey的值,生成40位大写SHA1值,作为sign。

以下是示例过程:

1. 将请求参数按照参数名字典顺序排列为:

ptime="1470969330000";
userid="4802b9bb81";

2. 连接字符串
用“&”连接参数名与参数值,并在最后加上secretkey的值,生成40位大写SHA1值,作为sign(本示例的值为fRJiHrsZzw),如下:

ptime=1474882994000&userid=4802b9bb81fRJiHrsZzw

3. 生成签名sign

sign为40位大写SHA1值:

A69C257A3BCA69C75B8695ADE6F86876EC8D7D4E
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

获取用户空间及流量情况

接口URL

http://api.polyv.net/v2/user/{userid}/main

接口说明

获取用户空间及流量情况

支持格式

JSON

请求方式

POST,GET

请求数限制

TRUE

请求参数

参数名 必选 类型 说明
userid tring POLYV用户ID, http://api.polyv.net/v2/user/{userid}/main中的{userid}需要替换为POLYV用户ID的值
ptime string 当前时间的毫秒级时间戳(13位),3分钟内有效
date string 要查询的日期,格式 :yyyy-MM-dd
sign string 签名,为40位大写的SHA1值

返回结果

{
code: 200,
status: "success",
message: "",
data: {
    totalFlow: 12884901888,
    usedSpace: 12506060996,
    usedFlow: 5773484280,
    totalSpace: 15032385536,
    userId: "8205ac89d3",
    email: "429525836@qq.com"
   }
}
字段 说明
code 成功/失败代码
status 成功/失败状态
message 成功/失败信息
totalFlow 用户总流量
usedSpace 已用空间
usedFlow 已用流量
totalSpace 用户总空间
userId POLYV用户ID
email POLYV用户邮箱

php请求示例

<?php
$userid = "8205ac89d3";
$ptime = time()*1000;
$date = "2017-08-28";
$secretkey = "kXmHMLeX6M";
$str = "date=$date"."&ptime=$ptime".$secretkey;
$sign = strtoupper(sha1($str));
$url = "http://api.polyv.net/v2/user/$userid/main?ptime=$ptime&sign=$sign&date=$date";
$content = file_get_contents($url);
echo $content;
?>

签名规则

将请求参数(sign除外)按照参数名字典顺序排列,用“&”连接参数名与参数值,并在最后加上secretkey的值,生成40位大写SHA1值,作为sign。

以下是示例过程:

1. 将请求参数按照参数名字典顺序排列为:

date="2017-08-28";
ptime="1470969330000";

2. 连接字符串

用“&”连接参数名与参数值,并在最后加上secretkey的值,生成40位大写SHA1值,作为sign(本示例的值为kXmHMLeX6M),如下:

date=2017-08-28&ptime=1470969330000kXmHMLeX6M

3. 生成签名sign

sign为40位大写SHA1值:DAFD320EC4E2D54E093CBA497ECD30EFB828BFB2

以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

获取某一天视频日志

接口URL

http://api.polyv.net/v2/data/{userid}/viewlog

接口说明

获取某一天视频日志

支持格式

JSON

请求方式

POST,GET

请求数限制

TRUE

请求参数

参数名 必选 类型 说明
userid string POLYV用户ID,http://api.polyv.net/v2/data/{userid}/viewlog中的{userid}需要替换为POLYV用户ID的值
day string 查询某天的日志时间
ptime string 当前时间的毫秒级时间戳(13位),3分钟内有效
sign string 签名,为40位大写的SHA1值
type string 返回的数据格式为:json/xml
vid string 视频ID
cataid string 分类ID,注意视频ID(vid)和分类ID(cataid)为空时,获取账号当天所有视频日志;当vid为空、cataid不为空时,查询对应cataid下的日志;当vid不为空时查询对应vid的日志

JSON示例

{
  code: 200,
  status: "success",
  message: "",
  data: [
  {
    playId: "1468389486891X1363716",
    userId: "3828390191",
    videoId: "3828390191ed924fbb387395ae6f3af5_3",
    playDuration: 13,
    stayDuration: 17,
    currentTimes: 14,
    duration: 1551,
    flowSize: 13638592,
    sessionId: "",
    param1: "",
    param2: "",
    param3: "",
    param4: "",
    param5: "160712",
    ipAddress: "120.197.57.62",
    country: "中国",
    province: "广东",
    city: "广州",
    isp: "",
    referer: "http://apollo.polyv.net/front/video/preview?vid=3828390191ed924fbb387395ae6f3af5_3",
    userAgent: "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2767.5 Safari/537.36",
    operatingSystem: "Windows",
    browser: "Chrome",
    isMobile: "N",
    currentDay: "2016-07-13",
    currentHour: 13,
    createdTime: 1468389527000,
    lastModified: 1468389563000
  }
  ]
}

字段说明

字段 说明
playId 表示此次播放动作的ID
userId 用户ID
videoId 视频ID
playDuration 播放时长 (用户观看的总时间 ,例如:18:00开始看一个视频,看到了18:30,这30分钟就是播放时长)
stayDuration 缓存时长
currentTimes 播放时间 (用户观看的最后时间,例如:停止观看视频的时候,进度条最后的分钟数为35分钟,播放时间就是35分钟)
duration 视频总时长
flowSize 流量大小
sessionId 用户自定义参数,如学员ID等
param1/2/3/4/5 POLYV系统参数
ipAddress IP地址
country 国家
province 省份
city 城市
isp ISP运营商
referer 播放视频页面地址
userAgent 用户设备
operatingSystem 操作系统
browser 浏览器
isMobile 是否为移动端
currentDay 日志查询日期 (格式为:yyyy-MM-dd)
currentHour 日志查看时间
createdTime 播放开始时间 (格式为13位的时间戳)
lastModified 日志更新日期 (格式为13位的时间戳)

php请求示例

<?php
    $userid="e2e84a7383";
    $day="20160711";
    $readtoken="JZmdsRB4sD-OdmDKN2Rnm-bsFGj3Fi93";
    $secretkey="7UagtQOq2A";
    $ptime=time()*1000;
    $str="day=$day&ptime=$ptime&userid=$userid".$secretkey;
    $sign=strtoupper(sha1($str));
    $vid="e2e84a73839a7070861257c3612309e1_e";
    $url="http://api.polyv.net/v2/data/$userid/viewlog?day=$day&ptime=$ptime&sign=$sign&type=json&vid=$vid";
    $content = file_get_contents($url);
    echo $content;
?>

签名规则

将请求参数(sign除外)按照参数名字典顺序排列,用“&”连接参数名与参数值,并在最后加上secretkey的值,生成40位大写的SHA1值,作为sign。

以下是示例过程:

1. 将请求参数按照参数名字典顺序排列为:

day="20160711";
ptime="1468982782000";
userid="e2e84a7383";

2. 连接字符串 用“&”连接参数名与参数值,并在最后加上secretkey的值,生成40位大写的SHA1值,作为sign(本示例的值为7UagtQOq2A),如下:

day=20160711&ptime=1468982782000&userid=e2e84a73837UagtQOq2A

3. 生成签名sign

sign为40位大写的SHA1值:

2EFCDB11156CB211445819FE3A0DA8E249D64707
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

查询播放域名限制

getHostUrl

    作用:查询播放域名限制

URL

    http://v.polyv.net/uc/services/rest?method=getHostUrl

支持格式

    JSON

HTTP请求方式

    POST,GET

请求数限制

    TRUE

请求参数

参数名必选类型及范围说明
readtokentruestring用户的读钥匙
jsonpfalsestring 例如,正常情况{error:0,data:""},加jsonp=a后返回a({error:0,data:""})

注意事项

    返回错误列表

返回说明
0无错误
1找不到writetoken关联的user
2文件为空或者writetoken为空
3提交的json名字JSONRPC为null
4提交文件格式不正确
5readtoken为空
6分页输入出错
7vid不能为空
8找不到方法名

JSON示例

{
error: "0",
Host_setting: {
disable_host: "www.baidu.com,",
enable_host: "www.google.com",
setting_type: 3,
userid: "e2e84a7383"
}
}

字段说明

字段说明
disable_host禁止播放的域名
enable_host允许播放域名
setting_type域名设置类型
0:无域名限制
1:播放器启动禁止域名黑名单
2:播放器启动允许域名白名单
3:启动允许以及禁止播放域 (注:先判断允许播放域,再判断禁止播放域)

以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

预览购买

场景

需要在网站上放一个视频教程,用户只允许观看3分钟,完了之后显示需要注册购买视频才能继续观看。点击之后跳到登录购买链接。

原理
利用预览代码和播放器的播放结束事件,预览播放结束时触发到s2j_onPlayOver,把播放器隐藏,显示一张图片,引导用户注册或购买。

实现方法

从保利威视视频管理后台拷贝预览代码,
1

<script src='https://player.polyv.net/script/polyvplayer.min.js'></script>
<div id='previewArea'></div>
<script>
var player = polyvObject('#previewArea').previewPlayer({
    'width':'640',
    'height':'340',
    'vid' : 'bk51l599cnl1k8c1l5nn79kk26p458943_k'
});
</script>

制作一张640x340的图片(跟视频播放器大小一致),播放器预览时间完成之后用来显示在播放器上方,提示用户应该购买。
这里用了这张图:

播放之前还不到它出场,先用隐藏的图层,链接用购买或者注册的

<span id="buylink" style="display:none"><a href="http://www.polyv.net/pricing.html" target="_blank"><img alt="" src="http://www.polyv.net/uploads/allimg/130911/1-13091110350RR.png" /></a></span>

最后只需两行javascript就搞定了:

function s2j_onPlayOver()
{
    //alert("播放结束");
        document.getElementById("buylink").style.display = "block";
    document.getElementById("previewArea").style.display = "none";
}
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

三分屏课件播放器

一、调用方法

 <div id="polyvPptPlayerContainer" ></div>
<script src="http://static.polyv.net/file/polyv_ppt_player.js"></script>
<script type="text/javascript">
    var polyvPptPlayerData={
        mainWidth:680,     //主屏宽度
        mainHeight:600,    //主屏高度
        subWidth:280,      //副屏宽度
        subHeight:200,     //副屏高度
        main:"ppt",        //默认主屏画面: ppt/player
        dir:"mainLeft",    //主屏位置: mainLeft/mainRight
        containerId:"polyvPptPlayerContainer",
        ppt:{                                          
            src:"http://player.polyv.net/ppt.swf",
            vars:"ban_title=on"
        },
        player:{
            src:"http://player.polyv.net/videos/player.swf",           vars:"vid=02bfeb00e29f59346f349ea3069d8032_0"
        },
        list:{
            src:"http://player.polyv.net/ppt_list.swf",
            vars:"list_type=txt"
        }
    };
    polyvPptPlayer(polyvPptPlayerData);
</script>

二、参数说明

序号 参数名 参数值 意义
1 mainWidth 680,单位(px) 主屏宽度
2 mainHeight 600,单位(px) 主屏高度
3 subWidth 280,单位(px) 副屏宽度
4 subHeight 200,单位(px) 副屏高度
5 main player/ppt 默认主屏画面
6 dir mainLeft/mainRight 主屏位置
7 containerId 父级div元素的ID 三分屏父容器ID
8 ppt 可设参数vars: "ban_title=on",屏蔽显示ppt标题 三分屏ppt播放器
9 player 可设参数vars: "vid=xxx......",播放对应视频 三分屏视频播放器list
10 list 默认显示图片列表,可设参数vars: "list_type=txt",显示文字列表 三分屏列表播放器

三、接口示例

POLYV点播平台播放器接口均可按以下方式调用

示例:暂停播放

<button onclick="pause()">暂停</button>
<script>
    function pause(){
        polyvPptPlayerData.player.j2s_pauseVideo();
    }
</script>
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...