获取频道文档列表

接口URL

http://api.polyv.net/live/v3/channel/document/doc-list

接口说明

1、接口用于频道文档列表接口
2、接口支持https

支持格式

JSON

请求方式

GET

请求参数

参数名 必选 类型 说明
appId string 账号应用下的appId
timestamp long 13位当前时间戳
sign string 签名值
channelId int 频道号
status String 文档状态,不传查询所有(“normal” :正常,“waitUpload”:等待上传,“failUpload”:上传失败,"waitConvert":转换PPT中,"failConvert":转换PPT失败)
page int 第几页,默认不传显示第一页
limit int 每页显示几条数据,默认不传显示10条
isShowUrl string 是否展示PPT原文件地址,该参数不传默认不展示,’Y‘:是,’N‘:否

响应成功JSON示例:

// 响应成功
{
    "code": 200,
    "status": "success",
    "message": "",
    "data": {
    "pageSize": 10,
    "pageNumber": 1,
    "totalItems": 1,
    "contents": [{
        "autoId": 111111,
        "fileId": "xxxxxxxxx",
        "fileName": "关于xxxx的通知.pdf",
        "fileUrl": "http://doc-2.polyv.net/sources/20190614/xxxxxxxxxxxxxxxxxxxx.pdf",
        "fileType": ".pdf",
        "totalPage": 1,
        "channelId": "254318",
        "status": "normal",
        "createTime": 1560476703000,
        "convertType": "common",
        "type": "new",
        "previewImage": "http://doc-2.polyv.net/images/2019/06/xxxxxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxx_0000_s.jpeg"
    }],
    "startRow": 1,
    "firstPage": true,
    "lastPage": true,
    "nextPageNumber": 1,
    "prePageNumber": 1,
    "totalPages": 1,
    "endRow": 5,
    "limit": 5,
    "offset": 0
}
}

响应失败JSON示例:

未输入appId

{
    "code": 400,
    "status": "error",
    "message": "appId is required.",
    "data": ""
}

appId不正确

{
    "code": 400,
    "status": "error",
    "message": "application not found.",
    "data": ""
}

时间戳错误

{
    "code": 400,
    "status": "error",
    "message": "invalid timestamp.",
    "data": ""
}

签名错误

{
    "code": 403,
    "status": "error",
    "message": "invalid signature.",
    "data": ""
}

字段说明

参数名 说明
code 响应代码,成功为200,失败为400,签名错误为403,异常错误500
status 成功为success,失败为error
message 错误时为错误提示消息
data 分页的文档列表
data.pageNumber 当前页码
data.totalPages 页面总数
data.pageSize 每页数据量
data.contents 当前页面内容
data.contents[0].autoId 文档ID
data.contents[0].fileId 文件ID
data.contents[0].fileName 文件名
data.contents[0].fileUrl 文件url(isShowUrl为'Y'的时候返回文件地址)
data.contents[0].fileType 文件类型
data.contents[0].totalPage PPT总页数
data.contents[0].channelId 频道ID
data.contents[0].status ppt转换状态(“normal” :正常,“waitUpload”:等待上传,“failUpload”:上传失败,"waitConvert":转换PPT中,"failConvert":转换PPT失败)
data.contents[0].createTime 创建时间
data.contents[0].convertType 转换类型("common":"普通PPT","animate": "动画PPT")
data.contents[0].type 类型,区分旧版PPT还是新版PPT,新版值为“new”,旧版值为“old”
data.contents[0].previewImage ppt预览小图地址

请求示例

<?php

//引用config.php
include 'config.php';

//接口URL上变量
$channelId = "123456";
//接口需要的参数(非sign)赋值
$params = array(
    'appId'=>$appId,
    'timestamp'=>$timestamp,
    'channelId'=>$channelId
  );

//生成sign
$sign = getSign($params); //详细查看config.php文件的getSign方法

//接口请求url
$url = "http://api.polyv.net/live/v3/channel/document/list2?appId=".$appId."&sign=".$sign."&timestamp=".$timestamp."&channelId=".$channelId;
//输出接口请求结果
echo file_get_contents($url);

?>

签名规则(config.php文件代码查看)

http://dev.polyv.net/2018/liveproduct/l-api/rule/sign/

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

分页获取问卷结果

接口URL

https://api.polyv.net/live/v3/channel/questionnaire/list-answer-records

接口说明

1、接口用于分页查询直播问卷的答题结果及统计
2、接口支持https

返回格式

JSON

请求方式

GET

请求参数

参数名 必选 类型 说明
appId string 从API设置中获取,在直播系统登记的appId
timestamp long 当前13位毫秒级时间戳,3分钟内有效
sign string 签名,为32位大写的MD5值
channelId int 频道号
page int 页号,默认为1
pageSize int 每页大小,默认为10
startDate string 开始时间,格式:2018-12-10
endDate string 结束时间,格式:2018-12-10

响应成功JSON示例:

{
    "code": 200,
    "status": "success",
    "message": "",
    "data": {
        "pageNumber": 1,
        "totalItems": 3,
        "contents": [
            {
                "questionnaireId": "f7g2gtgtsd",
                "customQuestionnaireId": "xxxd33333",
                "questionnaireTitle": "ttt",
                "lastModified": 1544147881000,
                "endTime": 1544147981000,
                "questionStats": {
                    "questions": [
                        {
                            "questionId": "f7g2gtgtt9",
                            "score": 10,
                            "totalScore": 10,
                            "total": 2,
                            "correctCount": 1,
                            "d": 0,
                            "e": 0,
                            "f": 0,
                            "h": 0,
                            "i": 0,
                            "j": 0,
                            "c": 0,
                            "a": 1,
                            "b": 1,
                            "g": 0
                        },
                        {
                            "questionId": "f7g2gtgtyg",
                            "score": 10,
                            "totalScore": 10,
                            "total": 2,
                            "correctCount": 1,
                            "d": 0,
                            "e": 0,
                            "f": 0,
                            "h": 0,
                            "i": 0,
                            "j": 0,
                            "c": 0,
                            "a": 1,
                            "b": 1,
                            "g": 0
                        }
                    ],
                    "total": 2
                },
                "users": [
                    {
                        "viewerId": "1544406042082",
                        "nickname": "广州观众/98347",
                        "totalScore": 20,
                        "answers": [
                            {
                                "questionId": "f7g2gtgtt9",
                                "questionName": "a",
                                "answer": "A",
                                "score": 10,
                                "type": "R"
                            },
                            {
                                "questionId": "f7g2gtgtyg",
                                "questionName": "b",
                                "answer": "A",
                                "score": 10,
                                "type": "R"
                            }
                        ]
                    },
                    {
                        "viewerId": "oL0En04rCbHNSNdey_rFMAkLT-Ps",
                        "nickname": "ilyq69",
                        "submitTime": 1564384274000,
                        "totalScore": 0,
                        "answers": [
                            {
                                "questionId": "f7g2gtgtt9",
                                "questionName": "a",
                                "answer": "B",
                                "score": 0,
                                "type": "R"
                            },
                            {
                                "questionId": "f7g2gtgtyg",
                                "questionName": "b",
                                "answer": "B",
                                "score": 0,
                                "type": "R"
                            }
                        ]
                    }
                ]
            }
        ],
        "endRow": 3,
        "startRow": 1,
        "firstPage": true,
        "lastPage": true,
        "nextPageNumber": 1,
        "prePageNumber": 1,
        "totalPages": 1,
        "limit": 3,
        "offset": 0
    }
}

响应失败JSON示例:

未输入appId

{
    "code": 400,
    "status": "error",
    "message": "appId is required.",
    "data": ""
}

appId不正确

{
    "code": 400,
    "status": "error",
    "message": "application not found.",
    "data": ""
}

时间戳错误

{
    "code": 400,
    "status": "error",
    "message": "invalid timestamp.",
    "data": ""
}

签名错误

{
    "code": 403,
    "status": "error",
    "message": "invalid signature.",
    "data": ""
}

频道号格式错误

{
  "code": 400, 
  "status": "error", 
  "message": "param is not digit: dsadasd", 
  "data": ""
}

字段说明

参数名 说明
code 响应代码,成功为200,失败为400,签名错误为401,异常错误500(http状态码也跟code相同)
status 成功为success,失败为error
message 错误时为错误提示消息
data 成功时,返回用户答题结果及各个题目的统计信息的分页信息
pageNumber 当前页数
totalItems 总条数
firstPage 是否为第一页,值为:true/false
lastPage 是否为最后一页,值为:true/false
nextPageNumber 下一页编号
prePageNumber 上一页编号
totalPages 总页数
limit 当前页数据条数
contents 频道的问卷信息和统计结果,是数组格式
questionnaireId 问卷ID,string
customQuestionnaireId 用户自定义问卷ID,string
questionnaireTitle 问卷名称,string
lastModified 问卷最后修改时间,13位毫秒级时间戳
endTime 问卷结束答题时间,13位毫秒级时间戳
questionStats 问卷下各个问题的答题统计
questionStats.total 题目的答题人数,int
questionStats.questions 题目的答题统计信息,数组[]
questionStats.questions[].questionId 题目ID,string
questionStats.questions[].questionName 题目名称,string
questionStats.questions[].score 题目分数,int
questionStats.questions[].totalScore 题目的总得分,int
questionStats.questions[].correctCount 题目的答对人数,int
questionStats.questions[].a-g 选择项a到g分别的答题人数,int
users 观看端提交答题的信息
users[].viewerId 提交问卷的用户ID,string
users[].nickname 提交问卷的用户昵称,string
users[].submitTime 提交问卷的用户答题时间,13位毫秒级时间戳
users[].totalScore 提交问卷的用户的总得分,int
users[].answers[] 用户每道题目的答题情况,数组 []
users[].answers[].questionId 题目ID,string
users[].answers[].questionName 题目名称,string
users[].answers[].answer 提交的题目答案,string
users[].answers[].score 用户答题的得分,string
users[].answers[].type 题目的类型,string,R 单选题 ,C 多项题 ,Q 问答题

php请求示例

<?php
//引用config.php
include 'config.php';

$params = array(
  'appId' => $appId,
  'timestamp' => $timestamp,
  'channelId' => 195770,
  'startDate' => '2018-12-08',
  'endDate' => '2018-12-10'  
);

//生成sign
$sign = getSign($params); //详细查看config.php文件的getSign方法
$params['sign'] = $sign;

$url = "http://api.polyv.net/live/v3/channel/questionnaire/list-answer-records?".http_build_query($params);

$curl = curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_TIMEOUT, 500);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, 1);
$res = curl_exec($curl);
curl_close($curl);

echo $res;
?>

签名规则(config.php文件代码查看)

http://dev.polyv.net/2018/liveproduct/l-api/rule/sign/

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

异步合并直播录制文件

接口URL

http://api.polyv.net/live/v3/channel/record/merge

接口说明

1、接口用于合并直播录制文件
2、该接口为异步处理,如果当前提交的文件如果正在处理,会返回 data: processing
3、接口支持https

请求方式

POST

请求参数

参数名 必选 类型 说明
appId string 管理员的appId
timestamp long 13位当前时间戳
sign string 签名值
channelId string 频道ID
fileIds string 要合并的录制视频文件ID,多个id用英文逗号, 分隔
fileName String 合并后的视频的文件名
callbackUrl string 合并成功或失败回调的url,可以带上自定义参数
autoConvert string 传入Y,自动转存到对应点播分类下(直播回放-频道号-场次)
mergeMp4 string 传Y合并MP4文件,传N或者不传合并m3u8文件

响应成功JSON示例:

//提交的视频正在合并处理中
{
    "code": 200,
    "status": "success",
    "message": "",
    "data": "processing."
}
//合并任务提交成功
{
    "code": 200,
    "status": "success",
    "message": "",
    "data": "submit success."
}

响应失败JSON示例:

// 未输入appId
{
    "code": 400,
    "status": "error",
    "message": "appId is required.",
    "data": ""
}
// appId不正确
{
    "code": 400,
    "status": "error",
    "message": "application not found.",
    "data": ""
}
// 时间戳错误
{
    "code": 400,
    "status": "error",
    "message": "invalid timestamp.",
    "data": ""
}
// 签名错误
{
    "code": 403,
    "status": "error",
    "message": "invalid signature.",
    "data": ""
}

字段说明

参数名 说明
code 响应代码,成功为200,失败为400,签名错误为403,异常错误500
status 成功为success,失败为error
message 错误时为错误提示消息
data 成功响应时为相关的信息 "processing." 合并任务正在处理中 "submit success." 合并任务提交成功

php请求示例

<?php
//引用config.php
include 'config.php';

$params = array(
  'appId' => "填写获取到的appId",
  'timestamp' => "填写13位时间戳",
  'channelId' => "填写频道号",
  'fileIds' => "aaaa,bbb",
  'fileName' => "合并测试",
  'callbackUrl'=> "http://demo.polyv.net/wfy/test.php"
);

//生成sign
$sign = getSign($params); //详细查看config.php文件的getSign方法


$url="http://api.polyv.net/live/v3/channel/record/merge";

function post($url, $post_data = '', $timeout = 5){
   $ch = curl_init();
   curl_setopt ($ch, CURLOPT_URL, $url);
   curl_setopt ($ch, CURLOPT_POST, 1);
   if($post_data != ''){
      curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
   }

   curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
   curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
   curl_setopt($ch, CURLOPT_HEADER, false);
   $file_contents = curl_exec($ch);
   curl_close($ch);
   return $file_contents;
}

$params["sign"] = $sign;
echo post($url, $params);
?>

签名规则(config.php文件代码查看)

http://dev.polyv.net/2018/liveproduct/l-api/rule/sign/

回调说明

该接口为异步处理,如果需要获取合并的结果,可以在请求接口时提交callbackUrl 参数,在程序合并成功后,会对callbackUrl 进行回调通知

回调参数

参数 说明
status 接口处理结果,取值:success(成功),error(出错)
fileId 合并后的文件ID,成功时返回
fileIds 合并前的文件ID
fileUrl 合并后的m3u8的地址,成功时返回
fileName 合并后的文件名称,成功时返回
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

获取问卷详情

接口URL

https://api.polyv.net/live/v3/channel/questionnaire/detail

接口说明

1、接口用于获取问卷详情
2、问卷ID 可以从获取频道问卷列表中获取
3、接口支持https

返回结果格式

JSON

请求方式

GET

请求参数

参数名 必选 类型 说明
appId string 从API设置中获取,在直播系统登记的appId
timestamp long 当前13位毫秒级时间戳,3分钟内有效
sign string 签名,为32位大写的MD5值
channelId int 频道号
questionnaireId string 问卷id

响应成功JSON示例:

{
    "code": 200,
    "status": "success",
    "message": "",
    "data": {
        "questionnaireId": "fefg598lfj",
        "customQuestionnaireId": "ddddxxx222",
        "channelId": 108888,
        "userId": "edvf2fpec9",
        "name": "测试问卷_1564105496583",
        "status": "forbidden",
        "createdTime": 1564105498000,
        "lastModified": 1564105498000,
        "endTime": 1564105580000,
        "questions": [
            {
                "questionId": "3839e04e78",
                "channelId": 108888,
                "userId": "edvf2fpec9",
                "name": "您觉得课程怎么样",
                "type": "C",
                "option1": "好",
                "option2": "很好",
                "option3": "非常好",
                "option4": "超级好",
                "option5": "以上都对",
                "createdTime": 1564105498000,
                "lastModified": 1564105498000,
                "answer": "",
                "note": null,
                "templateId": null,
                "status": "draft",
                "times": 0,
                "tips1": null,
                "tips2": null,
                "tips3": null,
                "tips4": null,
                "tips5": null,
                "required": "Y",
                "scoreEnabled": "N",
                "option6": "",
                "option7": "",
                "option8": "",
                "option9": "",
                "option10": "",
                "score": null,
                "itemType": 0
            },
            {
                "questionId": "847cd79c2f",
                "channelId": 108888,
                "userId": "edvf2fpec9",
                "name": "您从哪里获取该课程",
                "type": "C",
                "option1": "自己找到",
                "option2": "好友推荐",
                "option3": "媒体文章",
                "option4": "",
                "option5": "",
                "createdTime": 1564105498000,
                "lastModified": 1564105498000,
                "answer": "",
                "note": null,
                "templateId": null,
                "status": "draft",
                "times": 0,
                "tips1": null,
                "tips2": null,
                "tips3": null,
                "tips4": null,
                "tips5": null,
                "required": "Y",
                "scoreEnabled": "N",
                "option6": "",
                "option7": "",
                "option8": "",
                "option9": "",
                "option10": "",
                "score": null,
                "itemType": 0
            },
            {
                "questionId": "c908c81e80",
                "channelId": 108888,
                "userId": "edvf2fpec9",
                "name": "今后还会不会来",
                "type": "R",
                "option1": "会",
                "option2": "不会",
                "option3": "",
                "option4": "",
                "option5": "",
                "createdTime": 1564105498000,
                "lastModified": 1564105498000,
                "answer": "",
                "note": null,
                "templateId": null,
                "status": "draft",
                "times": 0,
                "tips1": null,
                "tips2": null,
                "tips3": null,
                "tips4": null,
                "tips5": null,
                "required": "Y",
                "scoreEnabled": "N",
                "option6": "",
                "option7": "",
                "option8": "",
                "option9": "",
                "option10": "",
                "score": null,
                "itemType": 0
            },
            {
                "questionId": "6dba1e90da",
                "channelId": 108888,
                "userId": "edvf2fpec9",
                "name": "请问您对课程有不满意的地方吗",
                "type": "Q",
                "option1": "",
                "option2": "",
                "option3": "",
                "option4": "",
                "option5": "",
                "createdTime": 1564105498000,
                "lastModified": 1564105498000,
                "answer": "",
                "note": null,
                "templateId": null,
                "status": "draft",
                "times": 0,
                "tips1": null,
                "tips2": null,
                "tips3": null,
                "tips4": null,
                "tips5": null,
                "required": "Y",
                "scoreEnabled": "N",
                "option6": "",
                "option7": "",
                "option8": "",
                "option9": "",
                "option10": "",
                "score": null,
                "itemType": 0
            }
        ]
    }
}

响应失败JSON示例:

未输入appId

{
    "code": 400,
    "status": "error",
    "message": "appId is required.",
    "data": ""
}

appId不正确

{
    "code": 400,
    "status": "error",
    "message": "application not found.",
    "data": ""
}

时间戳错误

{
    "code": 400,
    "status": "error",
    "message": "invalid timestamp.",
    "data": ""
}

签名错误

{
    "code": 403,
    "status": "error",
    "message": "invalid signature.",
    "data": ""
}

问卷ID不存在

{
    "code": 400,
    "data": "",
    "message": "questionnaire is not exist",
    "status": "error"
}

字段说明

参数名 说明
code 响应代码,成功为200,失败为400,签名错误为403,异常错误500
status 成功为success,失败为error
message 错误时为错误提示消息
questionnaireId 问卷ID
customQuestionnaireId 用户自定义问卷ID
channelId 频道ID
userId 用户ID
name 问卷名称
status 问卷状态
createdTime 问卷创建时间
endTime 停止问卷时间
questions 问卷问题列表

问卷问题模型类question

参数名 说明
questionId 问题ID
name 问题题目
type 问题类型,取值:R 单选;C 多选;S 评星题;Q 问答
option1~10 选项A~G 的内容
createdTime 创建时间
lastModified 最后修改时间
scoreEnabled 是否计分,取值Y、N
score 题目分值
required 是否必填,取值Y、N
answer 问题答案

php请求示例

<?php
//引用config.php
include 'config.php';

$params = array(
    'appId' => $appId,
    'timestamp' => $timestamp,
    'channelId' => 108888,
    'questionnaireId' =>'xxxaaa'
);

//生成sign
$sign = getSign($params); //详细查看config.php文件的getSign方法
$params['sign'] = $sign;

$url = "https://api.polyv.net/live/v3/channel/questionnaire/detail?".http_build_query($params);

$curl = curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_TIMEOUT, 500);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_URL, $url);
$res = curl_exec($curl);
curl_close($curl);

echo $res;
?>

签名规则(config.php文件代码查看)

http://dev.polyv.net/2018/liveproduct/l-api/rule/sign/

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

获取频道问卷列表

接口URL

https://api.polyv.net/live/v3/channel/questionnaire/list

接口说明

1、接口用于获取频道的问卷列表
2、接口支持https

支持格式

JSON

请求方式

GET

请求参数

参数名 必选 类型 说明
appId string 从API设置中获取,在直播系统登记的appId
timestamp long 当前13位毫秒级时间戳,3分钟内有效
sign string 签名,为32位大写的MD5值
channelId string 频道号
startTime long 查询的记录的开始时间,13位位毫秒级时间戳
endTime long 查询的记录的结束时间,13位毫秒级时间戳
page int 页号,默认为1
pageSize int 每页条数,默认为10

注意:要按时间区间查询时,startTime 和 endTime 必须同时传参才能生效

响应成功JSON示例:

{
    "code": 200,
    "status": "success",
    "message": "",
    "data": {
        "pageSize": 10,
        "pageNumber": 1,
        "totalItems": 2,
        "contents": [
            {
                "questionnaireId": "fefg598lfj",
                "channelId": 108888,
                "userId": "edvf2fpec9",
                "name": "测试问卷_1564105496583",
                "status": "forbidden",
                "createdTime": 1564105498000,
                "lastModified": 1564105498000,
                "endTime": 1564105580000,
                "customQuestionnaireId": "xxxxxx"
            },
            {
                "questionnaireId": "fefg4s724k",
                "channelId": 108888,
                "userId": "edvf2fpec9",
                "name": "测试问卷",
                "status": "forbidden",
                "createdTime": 1564105469000,
                "lastModified": 1564105469000,
                "endTime": 1564105487000,
                "customQuestionnaireId": "xxxxxx"
            }
        ],
        "startRow": 1,
        "firstPage": true,
        "lastPage": true,
        "nextPageNumber": 1,
        "prePageNumber": 1,
        "limit": 2,
        "endRow": 2,
        "totalPages": 1,
        "offset": 0
    }
}

响应失败JSON示例:

未输入appId

{
    "code": 400,
    "status": "error",
    "message": "appId is required.",
    "data": ""
}

appId不正确

{
    "code": 400,
    "status": "error",
    "message": "application not found.",
    "data": ""
}

时间戳错误

{
    "code": 400,
    "status": "error",
    "message": "invalid timestamp.",
    "data": ""
}

签名错误

{
    "code": 403,
    "status": "error",
    "message": "invalid signature.",
    "data": ""
}

字段说明

参数名 说明
code 响应的状态码,例如:200
status 响应状态
message 异常错误信息
data 响应结果集
pageNumber 当前的页数
totalItems 总的条数
contents 查询的结果列表
questionnaireId 问卷ID
channelId 频道ID
userId 用户ID
name 问卷名称
status 问卷状态,取值:saved(已保存),published (已发布),forbidden (问卷已完成填写)
createdTime 问卷创建时间
lastModified 问卷最后修改时间
endTime 停止提交问卷时间
customQuestionnaireId 用户自定义问卷ID
firstPage 是否为第一页,值为:true/false
lastPage 是否为最后一页,值为:true/false
nextPageNumber 下一页编号
prePageNumber 上一页编号
totalPages 总页数
startRow 当前页第一个视频在回放视频中的位置
endRow 当前页最后一个视频在回放视频中的位置
limit 当前页视频个数

php请求示例

<?php
//引用config.php
include 'config.php';
$params = array(
    'appId' => $appId,
    'timestamp' => $timestamp,
    'channelId' => 108888
);

//生成sign
$sign = getSign($params); //详细查看config.php文件的getSign方法
$params['sign'] = $sign;

$url = "https://api.polyv.net/live/v3/channel/questionnaire/list?".http_build_query($params);

$curl = curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_TIMEOUT, 500);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_URL, $url);
$res = curl_exec($curl);
curl_close($curl);

echo $res;
?>

签名规则(config.php文件代码查看)

http://dev.polyv.net/2018/liveproduct/l-api/rule/sign/

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

异步批量转存录制文件到点播

接口URL

http://api.polyv.net/live/v3/channel/record/convert

接口说明

1、接口用于批量转存直播录制文件到回放列表
2、该接口为异步处理,如果当前提交的文件如果正在处理,会返回 data: processing
3、接口支持https

支持格式

JSON

请求方式

POST

请求参数

参数名 必选 类型 说明
appId string 管理员的appId
timestamp long 13位当前时间戳
sign string 签名值
channelId string 频道ID
fileIds string 要转存的录制视频文件ID,多个id用英文逗号, 分隔
fileName String 转存后的文件名,目前暂不支持传多个文件名
cataId long 转存到点播的目录ID, 默认为点播的根目录ID
callbackUrl string 转存成功时候回调通知的url,通知的相关参数见附录

响应成功JSON示例:

//提交的视频正在转存处理中
{
    "code": 200,
    "status": "success",
    "message": "",
    "data": "processing."
}
//转存任务提交成功
{
    "code": 200,
    "status": "success",
    "message": "",
    "data": "submit success."
}

响应失败JSON示例:

// 未输入appId
{
    "code": 400,
    "status": "error",
    "message": "appId is required.",
    "data": ""
}
// appId不正确
{
    "code": 400,
    "status": "error",
    "message": "application not found.",
    "data": ""
}
// 时间戳错误
{
    "code": 400,
    "status": "error",
    "message": "invalid timestamp.",
    "data": ""
}
// 签名错误
{
    "code": 403,
    "status": "error",
    "message": "invalid signature.",
    "data": ""
}

字段说明

参数名 说明
code 响应代码,成功为200,失败为400,签名错误为401,异常错误500
status 成功为success,失败为error
message 错误时为错误提示消息
data 成功响应时为相关的信息 "processing." 转存任务正在处理中 "submit success." 转存任务提交成功

php请求示例

<?php
//引用config.php
include 'config.php';

$params = array(
  'appId' => "填写获取到的appId",
  'timestamp' => "填写13位时间戳",
  'channelId' => "填写频道号",
  'fileIds' => "aaaa",
  'fileName' => "转存测试",
  'callbackUrl'=> "http://demo.polyv.net/wfy/test.php"
);

//生成sign
$sign = getSign($params); //详细查看config.php文件的getSign方法


$url="http://api.polyv.net/live/v3/channel/record/convert";

function post($url, $post_data = '', $timeout = 5){
   $ch = curl_init();
   curl_setopt ($ch, CURLOPT_URL, $url);
   curl_setopt ($ch, CURLOPT_POST, 1);
   if($post_data != ''){
      curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
   }

   curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
   curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
   curl_setopt($ch, CURLOPT_HEADER, false);
   $file_contents = curl_exec($ch);
   curl_close($ch);
   return $file_contents;
}

$params["sign"] = $sign;
echo post($url, $params);
?>

签名规则(config.php文件代码查看)

http://dev.polyv.net/2018/liveproduct/l-api/rule/sign/

回调说明

该接口为异步处理,如果需要获取转存的结果,可以在请求接口时提交callbackUrl 参数,在程序转存成功后,会对callbackUrl 进行回调通知

转存成功回调参数

转存成功回调参数参照 http://dev.polyv.net/2018/liveproduct/l-manual/l-function-intro/development-settings/playback-callback-url/

转存失败回调参数

参数 说明
status 接口处理结果,取值:success(成功),error(出错)
code 错误码,userExpired-用户已过期;spaceOverSize-点播空间不足;unknown-未知异常
userId 用户id
channelId 频道号
fileId 转存的文件ID
sign 校验的加密字符串,生成的规则md5(AppSecret+timestamp),AppSecret是直播系统的用密匙
timestamp 13位时间戳
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

获取授权和连麦的token

接口URL

http://api.polyv.net/live/v3/channel/common/get-token

接口说明

1、接口用于获取授权和连麦的token
2、接口支持https

支持格式

JSON

请求方式

POST

请求数限制

TRUE

请求参数

参数名 必选 类型 说明
appId string 从API设置中获取,在直播系统登记的appId
timestamp long 13位当前时间戳
sign string 签名值
channelId int 频道Id

响应成功JSON示例:

{
    "code": 200,
    "status": "success",
    "message": "",
    "data": {
"mediaChannelKey": "e2355436235ba12d4c56493b575afed38f9f061d044f54d93c30f01463ffea852a7119c6195c6abf51b4682bc596bf5962eddc6cbf82784a1e5309ac52220ef7e66e4e7eb69a4e80081056972d5a9cb3bb723a0cb090702eef99369d479482b3bad99e5ec50eae5607b82c58da59aac3eada29fe6d753ef358d064ee308e406b3091f5256a77251001f99b6815651f18982da983b58c79d9caedd5ccec3f20ecd3dde7ba370f3c0ca0aa8c3ef088148523019f06e224d030b871da390c4a1a1c646e26684895d544dbba47751c535d07ea765fcf0cdfe8fe3de1538e4fe69eecadfd4a8b431aa4b00bc5dbccdb996ea3b7f962da2ecc21b6b14ba70c33601c53c3aa8d8e4857c111fa076e47e3a6eafc9601b87c079361f2d0f3cb4b31df2ff088ccb9428abe324ecb9e07e2fb8f48e40ab2ef3e119cfd93b15259bfa390938485a8fcd2e200dadeefe15a0516b7f61736cbe5bf48564d100e28ff64f979ebf42eadd3a0f3d58565d1ab619884d78c29",
"token": "71b961e6b2a68cde9559966b2f46d4e0"
}
}

响应字段说明

参数名 说明
code 状态码,成功为200,签名失败为403,参数错误为400,服务端错误为500
status 成功为success,错误时为error
message 成功为"",错误时为错误描述信息
data.token 链接接口需要的token值
data.mediaChannelKey 连麦需要的key

响应失败JSON示例:

参数错误

{
    "code": 400,
    "status": "error",
    "message": "param validate error",
    "data": 400
}

未输入appId

{
    "code": 400,
    "status": "error",
    "message": "appId is required.",
    "data": ""
}

appId不正确

{
    "code": 400,
    "status": "error",
    "message": "application not found.",
    "data": ""
}

时间戳错误

{
    "code": 400,
    "status": "error",
    "message": "invalid timestamp.",
    "data": ""
}

签名错误

{
    "code": 403,
    "status": "error",
    "message": "invalid signature.",
    "data": ""
}

php请求示例

<?php
//引用config.php
include 'config.php';

$params = array(
  'appId' => $appId,
  'timestamp' => $timestamp,
  'channelId' =>  195770
);

//生成sign
$sign = getSign($params); //详细查看config.php文件的getSign方法
$params['sign'] = $sign;

$url = "http://api.polyv.net/live/v3/channel/common/get-token?".http_build_query($params);

$curl = curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_TIMEOUT, 500);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, 1);
$res = curl_exec($curl);
curl_close($curl);

echo $res;
?>

签名规则(config.php文件代码查看)

http://dev.polyv.net/2018/liveproduct/l-api/rule/sign/

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

设置频道回放设置

接口URL

http://api.polyv.net/live/v3/channel/playback/set-setting

接口说明

1、接口用于设置回放设置
2、接口支持https

支持格式

JSON

请求方式

POST

请求数限制

TRUE

请求参数

参数名 必选 类型 说明
appId string 从API设置中获取,在直播系统登记的appId
timestamp long 13位当前时间戳
sign string 签名值
channelId string 频道号
playbackEnabled string 回放开关,Y-开启,N-关闭
type string 回放方式,single-单个回放,list-列表回放
origin string 回放来源,record-暂存,playback-回放列表,vod-点播列表
videoId string 单个回放的视频id

响应成功JSON示例:

{
    "code": 200,
    "status": "success",
    "message": "",
    "data": true
}

响应字段说明

参数名 说明
code 状态码,成功为200,签名失败为403,参数错误为400,服务端错误为500
status 成功为success,错误时为error
message 成功为"",错误时为错误描述信息
data 成功时为true,错误时为""

响应失败JSON示例:

参数错误

{
    "code": 400,
    "status": "error",
    "message": "param validate error",
    "data": 400
}

未输入appId

{
    "code": 400,
    "status": "error",
    "message": "appId is required.",
    "data": ""
}

appId不正确

{
    "code": 400,
    "status": "error",
    "message": "application not found.",
    "data": ""
}

时间戳错误

{
    "code": 400,
    "status": "error",
    "message": "invalid timestamp.",
    "data": ""
}

签名错误

{
    "code": 403,
    "status": "error",
    "message": "invalid signature.",
    "data": ""
}

三分屏不支持点播列表

{
    "code": 400,
    "status": "error",
    "message": "scene operation limited",
    "data": ""
}

三分屏操作点播列表

{
    "code": 400,
    "status": "error",
    "message": "scene operation limited",
    "data": ""
}

暂存不支持列表

{
    "code": 400,
    "status": "error",
    "message": "unsupported record list",
    "data": ""
}

php请求示例

<?php
//引用config.php
include 'config.php';

$params = array(
  'appId' => $appId,
  'timestamp' => $timestamp,
  'channelId' =>  195770,
  'playbackEnabled' => 'Y',
  'type' => 'list',
  'origin' => 'playback'
);

//生成sign
$sign = getSign($params); //详细查看config.php文件的getSign方法
$params['sign'] = $sign;

$url = "http://api.polyv.net/live/v3/channel/playback/set-setting?".http_build_query($params);

$curl = curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_TIMEOUT, 500);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, 1);
$res = curl_exec($curl);
curl_close($curl);

echo $res;
?>

签名规则(config.php文件代码查看)

http://dev.polyv.net/2018/liveproduct/l-api/rule/sign/

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

设置账号单点登录的token

接口URL

https://api.polyv.net/live/v3/user/set-sso-token

接口说明

1、设置账号单点登陆的token
2、接口支持https协议
3、token 参数请勿过于简单,建议使用16位随机字符串
4、token设置后需要10秒内及时使用,使用请参考:

支持格式

JSON

请求方式

POST

请求参数

参数名 必选 类型 说明
appId string 从API设置中获取,在直播系统登记的appId
timestamp string 当前13位毫秒级时间戳,3分钟内有效
token string 唯一的字符串
sign string 签名,为32位大写的MD5值

响应成功JSON示例:

{
    "code": 200,
    "status": "success",
    "message": "",
    "data": "success"
}

响应失败JSON示例:

未输入appId

{
    "code": 400,
    "status": "error",
    "message": "appId is required.",
    "data": ""
}

appId不正确

{
    "code": 400,
    "status": "error",
    "message": "application not found.",
    "data": ""
}

时间戳错误

{
    "code": 400,
    "status": "error",
    "message": "invalid timestamp.",
    "data": ""
}

签名错误

{
    "code": 403,
    "status": "error",
    "message": "invalid signature.",
    "data": ""
}

字段说明

参数名 说明
code 请求状态响应码
status 请求状态
message 错误信息
data 成功时候返回,success

php请求示例

<?php

//引用config.php
include 'config.php';

//接口需要的参数(非sign)赋值
$token = "skudjjdkkkkk";

$params = array(
    'appId'=>$appId,
    'token'=>$token,
    'timestamp'=>$timestamp
  );

//生成sign
$sign = getSign($params); //详细查看config.php文件的getSign方法

//接口请求url
$url = "https://api.polyv.net/live/v3/user/set-sso-token?appId=$appId&timestamp=$timestamp&token=$token&sign=$sign";

//输出接口请求结果
echo file_get_contents($url);

?>

签名规则(config.php文件代码查看)

http://dev.polyv.net/2018/liveproduct/l-api/rule/sign/

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

获取频道实时推流信息

接口URL

http://api.polyv.net/live/v3/channel/monitor/get-stream-info

接口说明

1、接口用于获取频道的实时推流信息
2、接口支持https
3、deployAddress、inAddress、lfr信息可能无法获取,返回值为null

支持格式

JSON

请求方式

GET

请求参数

参数名 必选 类型 说明
appId string 管理员的appId
timestamp long 13位当前时间戳
sign string 签名值
channelId int 频道号

响应成功JSON示例:

{
    "code": 200,
    "status": "success",
    "message": "",
    "data": {
        "deployAddress": "110.88.149.24",
        "inAddress": "110.43.33.126",
        "streamName": "push2.videocc.net/record/edvf2fpec920180705234706134",
        "fps": "15",
        "lfr": "0.0",
        "inBandWidth": "641829"
    }
}

// 暂时未能获取推流信息,请稍后重试
{
    "code": 200,
    "status": "success",
    "message": "",
    "data": {
        "deployAddress": null,
        "inAddress": null,
        "streamName": null
        "fps": null,
        "lfr": null,
        "inBandWidth": null
    }
}

响应失败JSON示例:

未输入appId

{
    "code": 400,
    "status": "error",
    "message": "appId is required.",
    "data": ""
}

appId不正确

{
    "code": 400,
    "status": "error",
    "message": "application not found.",
    "data": ""
}

时间戳错误

{
    "code": 400,
    "status": "error",
    "message": "invalid timestamp.",
    "data": ""
}

频道当前暂无直播

{
    "code": 400,
    "status": "error",
    "message": "channel status not live",
    "data": ""
}

签名错误

{
    "code": 403,
    "status": "error",
    "message": "invalid signature.",
    "data": ""
}

字段说明

参数名 说明
code 响应代码,成功为200,失败为400,签名错误为403,异常错误500
status 成功为success,失败为error
message 错误时为错误提示消息
data.deployAddress 推送的CDN节点IP,可能会为null
data.inAddress 推流出口ip,可能会为null
data.streamName 流名
data.fps 推流帧率
data.lfr 推流丢帧率,可能会为null
data.inBandWidth 推流码率

请求示例

<?php

//引用config.php
include 'config.php';

//接口URL上变量
$channelId = "123456";
//接口需要的参数(非sign)赋值
$params = array(
    'appId'=>$appId,
    'timestamp'=>$timestamp,
    'channelId'=>$channelId
  );

//生成sign
$sign = getSign($params); //详细查看config.php文件的getSign方法

//接口请求url
$url = "http://api.polyv.net/live/v3/channel/monitor/get-stream-info?appId=".$appId."&sign=".$sign."&timestamp=".$timestamp."&channelId=".$channelId;
//输出接口请求结果
echo file_get_contents($url);

?>

签名规则(config.php文件代码查看)

http://dev.polyv.net/2018/liveproduct/l-api/rule/sign/

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