获取直播分类

接口URL

http://api.polyv.net/live/v3/user/category/list

接口说明

1、获取账号下所有的直播分类信息
2、接口支持https协议

支持格式

JSON

请求方式

 GET,POST

请求数限制

TRUE

请求参数

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

响应成功JSON示例:

{
    "code": 200,
    "status": "success",
    "message": "",
    "data": [
        {
            "categoryId": 2034,
            "categoryName": "默认分类",
            "userId": "edvf2fpec9",
            "rank": 0
        },
        {
            "categoryId": 36,
            "categoryName": "测试测试测试",
            "userId": "edvf2fpec9",
            "rank": 1
        }
    ]
}

响应异常JSON示例:

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

字段说明

参数名 说明
code 请求状态响应码
status 请求状态
message 错误信息
categoryId 分类ID
categoryName 分类名称
userId 用户ID
rank 分类排序号,rank=0表示为默认排序

php请求示例

<?php

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

//接口需要的参数(非sign)赋值
$timestamp = 1528708015437;
$appId = "test";

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

//生成sign
$sign = getSign($params); //详细查看config.php文件的getSign方法
//接口请求url
$url = "http://api.polyv.net/live/v3/user/category/list?appId=$appId&timestamp=$timestamp&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/v2/channels/{channelId}/delete

接口说明

1、作用:删除直播频道
2、接口支持https协议
3、接口URL中的{channelId}为 频道ID

支持格式

JSON

请求方式

POST

请求数限制

TRUE

请求参数

参数名 必选 类型 说明
appId string 从API设置中获取,在直播系统登记的appId
timestamp string 当前13位毫秒级(兼容10位秒级)时间戳,3分钟内有效
userId string 直播账号ID
sign string 签名,为32位大写的MD5值

响应成功JSON示例:

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

响应失败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,
    "status": "error",
    "message": "userId is blank.",
    "data": ""
}

最大在线人数错误

{
    "code": 400,
    "status": "error",
    "message": "maxViewer is less than or equal to 0.",
    "data": ""
}

操作失败

{
    "code": 400,
    "status": "error",
    "message": "failed operation.",
    "data": ""
}

字段说明

参数名 说明
code 请求状态响应码
status 请求状态
message 错误信息
data 请求结果

php请求示例

<?php

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

//接口需要的参数(非sign)赋值
$channelId = "165936";
$userId = "XXXXXXXX";

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

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

//接口请求url
$url = "http://api.polyv.net/live/v2/channels/".$channelId."/delete?appId=".$appId."&timestamp=".$timestamp."&userId=".$userId."&sign=".$sign;

$ch = curl_init() or die ( curl_error() );
curl_setopt( $ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, 360);
$response = curl_exec ( $ch );
curl_close ( $ch );
echo $response;

?>

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

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

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

设置直播状态修改回调通知

接口URL

http://api.polyv.net/live/v2/user/{userId}/set-stream-callback

接口说明

1、设置账号下频道直播状态改变通知回调地址的接口
2、不提交地址参数url,则回调地址为空,表示关闭回调功能,如果要提交的地址参数url,必须以 http:// 或者 https:// 开头
3、接口支持https
4、接口URL中的{userId}为 直播账号ID

具体功能可参考:直播状态修改回调通知接口

支持格式

JSON

请求方式

POST

请求数限制

TRUE

请求参数

参数名 必选 类型 说明
appId string 从API设置中获取,在直播系统登记的appId
timestamp string 当前13位毫秒级时间戳,3分钟内有效
sign string 签名,32位大写MD5值
url string 回调地址url,不提交表示关闭回调功能,如果提交,必须以 http:// 或者 https:// 开头

响应成功JSON示例:

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

响应失败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": ""
}

userId错误

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

回调地址给是错误(需带协议头)

{
    "code": 400,
    "status": "error",
    "message": "url format error.",
    "data": ""
}

字段说明

参数名 说明
code 请求状态响应码
status 请求状态
message 错误信息
data 暂无作用

php请求示例

<?php

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

//接口需要的参数(非sign)赋值
$userId = "XXXXXXXX";
$url = "http://demo.polyv.net/wfy/postDemo1.php";

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

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

//接口请求url
$url = "http://api.polyv.net/live/v2/user/$userId/set-stream-callback?appId=$appId&timestamp=$timestamp&sign=$sign&url=$url";

$ch = curl_init() or die ( curl_error() );
curl_setopt( $ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, 360);
$response = curl_exec ( $ch );
curl_close ( $ch );
echo $response;

?>

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

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

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

修改子频道信息

接口URL

https://api.polyv.net/live/v2/channelAccount/{channelId}/update

接口说明

1、通过接口可以修改子频道的昵称、密码、角色、头像、翻页权限、公告权限等
2、接口支持https协议
3、接口URL中的{channelId}为 频道ID

支持格式

JSON

请求方式

POST

请求数限制

TRUE

请求参数

参数名 必选 类型 说明
appId string 从API设置中获取,在直播系统登记的appId
timestamp string 当前13位毫秒级时间戳,3分钟内有效
sign string 签名,32位大写MD5值
account string 子频道ID(不能以数字类型提交,否则可能去掉ID前的00)
nickname string 昵称
password string 子频道密码
actor string 子频道头衔
pageTurnEnabled string 子频道翻页权限
notifyEnabled string 子频道公告权限

响应成功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)赋值
$channelId = "127075";
$nickname = "测试助教";
$actor = "老大";
$account = "002127075";

$params = array(
    'appId'=>$appId,
    'nickname'=>$nickname,
    'actor'=>$actor,
    'account'=>$account,
    'timestamp'=>$timestamp
  );

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

$url = "http://api.polyv.net/live/v2/channelAccount/$channelId/update?appId=$appId&timestamp=$timestamp&sign=$sign&account=$account&nickname=$nickname&actor=$actor";

$ch = curl_init() or die ( curl_error() );
curl_setopt( $ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, 360);
$response = curl_exec ( $ch );
curl_close ( $ch );
echo $response;

?>

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

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

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

删除某个子频道号

接口URL

http://api.polyv.net/live/v2/channelAccount/{channelId}/delete

接口说明

1、删除某个子频道
2、接口支持https协议
3、接口URL中的{channelId}为 频道ID

支持格式

JSON

请求方式

POST

请求数限制

TRUE

请求参数

参数名 必选 类型 说明
appId string 从API设置中获取,在直播系统登记的appId
timestamp string 当前13位毫秒级时间戳,3分钟内有效
sign string 签名,32位大写MD5值
account string 子频道ID(不能以数字类型提交,否则可能去掉ID前的00)

响应成功JSON示例:

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

响应失败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 正确请求时为删除结果,删除成功为true,频道已经删除为false

php请求示例

<?php

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

//接口需要的参数(非sign)赋值
$channelId = "127075";
$account = "001127075";

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

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

//接口请求url
$url = "http://api.polyv.net/live/v2/channelAccount/$channelId/delete?appId=$appId&timestamp=$timestamp&sign=$sign&account=$account";

$ch = curl_init() or die ( curl_error() );
curl_setopt( $ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, 360);
$response = curl_exec ( $ch );
curl_close ( $ch );
echo $response;

?>

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

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

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

获取频道号下所有的子频道

接口URL

https://api.polyv.net/live/v2/channelAccount/{channelId}/accounts

接口说明

1、获取频道下所有子频道的具体信息
2、接口支持https协议
3、接口URL中的{channelId}为 频道ID

支持格式

JSON

请求方式

GET

请求数限制

TRUE

请求参数

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

响应成功JSON示例:

{
    "code": 200,
    "status": "success",
    "message": "",
    "data": [
        {
            "account": "003104400",
            "userId": "edvf2fpec9",
            "channelId": 104400,
            "passwd": "991730",
            "nickname": "王老师",
            "stream": "jdchwdsf",
            "status": "Y",
            "createdTime": 1517972947000,
            "lastModified": 1517972947000,
            "channelSessionId": null,
            "sort": 3,
            "avatar": null,
            "actor": null,
            "pageTurnEnabled": "N",
            "notifyEnabled": "Y",
            "checkinEnabled": "Y",
            "voteEnabled": "Y",
            "lotteryEnabled": "Y",
            "role": "Assistant"
        },
        {
            "account": "002104400",
            "userId": "edvf2fpec9",
            "channelId": 104400,
            "passwd": "123",
            "nickname": "测试",
            "stream": "jdbjbjcw",
            "status": "Y",
            "createdTime": 1517914867000,
            "lastModified": 1517914970000,
            "channelSessionId": null,
            "sort": 2,
            "avatar": null,
            "actor": "老大",
            "pageTurnEnabled": "N",
            "notifyEnabled": "Y",
            "checkinEnabled": "Y",
            "voteEnabled": "Y",
            "lotteryEnabled": "Y",
            "role": "Assistant"
        }
    ]
}

响应失败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 用户的分钟数相关信息
account 助教ID
userId 用户ID
channelId 频道ID
passwd 助教密码
nickname 助教名称
stream 助教流名(单独使用无效)
status 助教状态
createdTime 创建助教时间
lastModified 助教最后修改时间
sort 频道中所有助教序号
avatar 助教头像
pageTurnEnabled 助教翻页权限(只能一个助教有)
notifyEnabled 发布公告权限
checkinEnabled 开启签到权限
voteEnabled 发起投票
role 子频道角色

php请求示例

<?php

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

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

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

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

//接口请求url
$url = "http://api.polyv.net/live/v2/channelAccount/$channelId/accounts?appId=$appId&timestamp=$timestamp&sign=$sign";

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

?>

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

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

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

新增子频道

接口URL

https://api.polyv.net/live/v2/channelAccount/{channelId}/add

接口说明

1、新增子频道
2、接口支持https协议
3、接口URL中的{channelId}为 频道ID

支持格式

JSON

请求方式

POST

请求数限制

TRUE

请求参数

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

响应成功JSON示例:

{
    "code": 200,
    "status": "success",
    "message": "",
    "data": {
        "account": "004104400",
        "userId": "edvf2fpec9",
        "channelId": 104400,
        "passwd": "150751",
        "nickname": "张老师",
        "stream": "jdci3mre",
        "status": "Y",
        "createdTime": 1517973284858,
        "lastModified": 1517973284858,
        "channelSessionId": null,
        "sort": 4,
        "avatar": null,
        "actor": null,
        "pageTurnEnabled": "N",
        "notifyEnabled": "Y",
        "checkinEnabled": null,
        "voteEnabled": null,
        "lotteryEnabled": null,
        "role": 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": 403,
    "status": "error",
    "message": "invalid signature.",
    "data": ""
}

字段说明

参数名 说明
code 请求状态响应码
status 请求状态
message 错误信息
account 助教ID
userId 用户ID
channelId 频道ID
passwd 助教密码
nickname 助教名称
stream 助教流名(单独使用无效)
status 助教状态
createdTime 创建助教时间
lastModified 助教最后修改时间
sort 频道中所有助教序号
avatar 助教头像
pageTurnEnabled 助教翻页权限(只能一个助教有)
notifyEnabled 发布公告权限
checkinEnabled 开启签到权限
voteEnabled 发起投票
role 子频道角色

php请求示例

<?php

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

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

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

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

$url = "http://api.polyv.net/live/v2/channelAccount/$channelId/add?appId=$appId&timestamp=$timestamp&sign=$sign";

$ch = curl_init() or die ( curl_error() );
curl_setopt( $ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, 360);
$response = curl_exec ( $ch );
curl_close ( $ch );
echo $response;

?>

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

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

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

获取某个子频道的信息

接口URL

https://api.polyv.net/live/v2/channelAccount/{channelId}/account

接口说明

1、获取某个子频道的具体信息
2、接口支持https协议
3、接口URL中的{channelId}为 频道ID

支持格式

JSON

请求方式

GET

请求数限制

TRUE

请求参数

参数名 必选 类型 说明
appId string 从API设置中获取,在直播系统登记的appId
timestamp string 当前13位毫秒级时间戳,3分钟内有效
sign string 签名,32位大写MD5值
account string 子频道ID(不能以数字类型提交,否则可能去掉ID前的00)

响应成功JSON示例:

{
    code: 200,
    status: "success",
    message: "",
    data: {
        account: "0039108888",
        userId: "edvf2fpec9",
        channelId: 108888,
        passwd: "508621",
        nickname: "彭老师",
        stream: "jdbh0dv7",
        status: "Y",
        createdTime: 1517910988000,
        lastModified: 1517910988000,
        channelSessionId: null,
        sort: 39,
        avatar: null,
        actor: null,
        pageTurnEnabled: "N",
        notifyEnabled: "Y",
        checkinEnabled: "Y",
        voteEnabled: "Y",
        lotteryEnabled: "Y",
        role: "Assistant"
    }
}

响应失败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 错误信息
account 子频道ID
userId 用户ID
channelId 频道ID
passwd 子频道密码
nickname 子频道名称
stream 子频道流名(单独使用无效)
status 子频道状态
createdTime 创建子频道时间
lastModified 子频道最后修改时间
sort 频道中所有子频道序号
avatar 子频道头像
pageTurnEnabled 子频道翻页权限(只能一个子频道有)
notifyEnabled 发布公告权限
checkinEnabled 开启签到权限
voteEnabled 发起投票
role 子频道角色

php请求示例

<?php

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

//接口需要的参数(非sign)赋值
$channelId = "127075";
$account = "0039108888";

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

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

//接口请求url
$url = "http://api.polyv.net/live/v2/channelAccount/$channelId/account?appId=$appId&timestamp=$timestamp&sign=$sign&account=$account";

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

?>

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

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

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

恢复直播频道推流

接口URL

http://api.polyv.net/live/v2/stream/{channelId}/resume

接口说明

1、作用:恢复频道号推流
2、接口支持https协议
3、接口URL中的{channelId}为 频道ID

支持格式

JSON

请求方式

POST

请求数限制

TRUE

请求参数

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

响应成功JSON示例:

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

响应异常JSON示例:

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

字段说明

参数名 类型 说明
code int http code值
status string 状态值
message string 提示的信息
data string 相应的结果

php请求示例

<?php
//接口需要的参数(非sign)赋值
$userId = "XXXXXXXX";
$channelId = "127075";

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

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

$url = "http://api.polyv.net/live/v2/stream/$channelId/resume?appId=$appId&timestamp=$timestamp&userId=$userId&sign=$sign";

$ch = curl_init() or die ( curl_error() );
curl_setopt( $ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, 360);
$response = curl_exec ( $ch );
curl_close ( $ch );
echo $response;

?>

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

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

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

创建直播频道

点击这里查看旧版

接口URL

http://api.polyv.net/live/v2/channels/

接口说明

1、作用:创建直播频道
2、接口支持https协议

支持格式

JSON

请求方式

POST

请求数限制

TRUE

请求参数

参数名 必选 类型 说明
appId string 从API设置中获取,在直播系统登记的appId
timestamp string 当前时间的秒级时间戳(13位)
sign string 签名,为32位大写的MD5值
userId string 直播账号ID
name string 频道名称
channelPasswd string 频道密码
courseId string 课程号
autoPlay int 是否自动播放,0/1,默认1
playerColor string 播放器控制栏颜色,默认:#666666
scene string 直播场景:
alone 活动拍摄
ppt 三分屏
topclass 大班课
categoryId int 新建频道的所属分类,如果不提交,则为默认分类(分类ID可通过“获取直播分类”接口得到)

响应成功JSON示例:

{
"code": 200,
"status": "success",
"message": "",
"data":{
"channelId": 100348,
 "userId": "e668hzrydq",
 "name": "myLive3",
 "description": "",
 "url": "rtmp://push2.videocc.net/recordf/",
 "stream": "e668hzrydq20151119102446328",
 "logoImage": "",
 "logoOpacity": 1,
 "logoPosition": "tr",
 "logoHref": "",
 "coverImage": "",
 "coverHref": "",
 "waitImage": "",
 "waitHref": "",
 "cutoffImage": "",
 "cutoffHref": "",
 "advertType": "NONE",
 "advertDuration": 0,
 "advertWidth": 0,
 "advertHeight": 0,
 "advertImage": "",
 "advertHref": "",
 "advertFlvVid": "",
 "advertFlvUrl": "",
 "playerColor": "#00ff0f",
 "autoPlay": true,
 "warmUpFlv": "",
 "passwdRestrict": false,
 "passwdEncrypted": "",
 "isOnlyAudio": "N",
 "isLowLatency": "N",
 "m3u8Url": "http://push2.videocc.net/record/e668hzrydq20151119102446328/playlist.m3u8",
 "m3u8Url1": "",
 "m3u8Url2": "",
 "m3u8Url3": "",
 "currentTimeMillis": 1447981498946
}
}

字段说明

参数名 类型 说明
status string 状态值
result object 响应的结果
channelId string 直播频道ID
userId string 直播用户ID
name string 直播频道名称
description string 直播频道描述
url string 直播推流地址
stream string 直播流名称
logoImage string 播放器logo
logoOpacity float Logo不透明度,1表示完全不透明
logoPosition string Logo位置
logoHref string Logo的跳转链接
coverImage string 播放前显示的封面图
coverHref string 封面图的跳转链接
waitImage string 等待推流时的显示图片
waitHref string 等待推流时显示图片的跳转链接
cutoffImage string 切断流时的显示图片
cutoffHref string 切断流时显示图片的跳转链接
advertType string 广告类型
advertDuration string 广告时长
advertWidth string 广告区域宽度
advertHeight string 广告区域高度
advertImage string 图片广告
advertHref string 广告的跳转链接
advertFlvVid string 视频广告ID
advertFlvUrl string 视频广告链接
playerColor string 播放器控制栏颜色
autoPlay boolean 自动播放
warmUpFlv string 一开始的暖场视频
passwdRestrict boolean 观看密码限制,需要输入观看密码才能播放流
passwdEncrypted string 观看密码加密后的密文
isOnlyAudio string 仅推音频流
isLowLatency string 低延迟
m3u8Url string 直播拉流(播放)m3u8地址
m3u8Url1 string 直播拉流(播放)m3u8地址1
m3u8Url2 string 直播拉流(播放)m3u8地址2
m3u8Url3 string 直播拉流(播放)m3u8地址3
currentTimeMillis timestamp 服务器返回的时间戳(毫秒)

php请求示例

<?php

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

//接口需要的参数(非sign)赋值
$userId = "XXXXXXXX";
$autoPlay = 1;
$name = "内部测试";
$playerColor = "#00ffff";
$channelPasswd = "123456";
$courseId = "123456";
$scene = "alone";

$params = array(
    'appId'=>$appId,
    'autoPlay'=>$autoPlay,
    'name'=>$name,
    'courseId'=>$courseId,
    'playerColor'=>$playerColor,
    'userId'=>$userId,
    'channelPasswd'=>$channelPasswd,
    'scene'=>$scene,
    'timestamp'=>$timestamp
  );

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


$data = array(
'appId' => $appId,
'autoPlay'=>$autoPlay,
'name'=>$name,
'courseId'=>$courseId,
'playerColor'=>$playerColor,
'timestamp'=>$timestamp,
'userId'=>$userId,
'channelPasswd'=>$channelPasswd,
'scene'=>$scene,
'sign'=>$sign
);

$url = "http://api.polyv.net/live/v2/channels";
$ch = curl_init() or die ( curl_error() );
curl_setopt( $ch, CURLOPT_URL, $url);
curl_setopt( $ch, CURLOPT_POSTFIELDS, $data);
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, 360);
$response = curl_exec ( $ch );
curl_close ( $ch );

echo $response;

?>

java请求示例

public class createChanelTest {
    private RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(15000).setConnectTimeout(15000)
            .setConnectionRequestTimeout(15000).build();
    /**
     * http://live.polyv.net/secure/user/detail.htm
     * http://live.polyv.net/secure/user/app.htm
     */
    private static final String APP_USER_ID = "xxx";
    private static final String APP_ID = "xxx";
    private static final String APP_SECRET = "xxx";
    private static final String CREATE_CHANNEL_URL = "http://api.live.polyv.net/web/v2/channels/";

    public static void main(String[] args) {
        createChanelTest demo = new createChanelTest();
        demo.createChannelDemo();
    }

    private void createChannelDemo() {
        Map<String, String> params = new HashMap<>();
        params.put("appId", APP_ID);
        params.put("channelPasswd", "12345");
        params.put("name", "创建直播频道测试");
        params.put("scene", "ppt");
        params.put("timestamp", System.currentTimeMillis()+"");
        params.put("userId", APP_USER_ID);
        String sign = this.generateSign(params, APP_SECRET);
        params.put("sign", sign);

        String result = sendHttpPost(CREATE_CHANNEL_URL, params);
        System.out.println("create channel result=" + result);
    }

    public String sendHttpPost(String httpUrl, Map<String, String> maps) {
        HttpPost httpPost = new HttpPost(httpUrl);
        List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
        for (String key : maps.keySet()) {
            nameValuePairs.add(new BasicNameValuePair(key, maps.get(key)));
        }
        try {
            httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs, "UTF-8"));
        } catch (Exception e) {
            e.printStackTrace();
        }
        return sendHttpPost(httpPost);
    }

    private String sendHttpPost(HttpPost httpPost) {
        CloseableHttpClient httpClient = null;
        CloseableHttpResponse response = null;
        HttpEntity entity = null;
        String responseContent = null;
        try {
            httpClient = HttpClients.createDefault();
            httpPost.setConfig(requestConfig);
            response = httpClient.execute(httpPost);
            entity = response.getEntity();
            responseContent = EntityUtils.toString(entity, "UTF-8");
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                if (response != null) {
                    response.close();
                }
                if (httpClient != null) {
                    httpClient.close();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        return responseContent;
    }

    protected String generateSign(Map<String, String> parray, String secretKey) {
        Map<String, String> params = this.paraFilter(parray);
        String concatedStr = this.concatParams(params);
        String plain = secretKey + concatedStr + secretKey;
        String encrypted = MD5Utils.getMD5String(plain);
        String upperCase = encrypted.toUpperCase();
        return upperCase;
    }

    private Map<String, String> paraFilter(Map<String, String> sArray) {
        Map<String, String> result = new HashMap<String, String>();
        if (sArray == null || sArray.size() <= 0) {
            return result;
        }
        for (String key : sArray.keySet()) {
            String value = sArray.get(key);
            if (value == null || value.equals("") || key.equalsIgnoreCase("sign")
                    || key.equalsIgnoreCase("sign_type")) {
                continue;
            }
            result.put(key, value);
        }
        return result;
    }

    private String concatParams(Map<String, String> params) {
        List<String> keys = new ArrayList<String>(params.keySet());
        Collections.sort(keys);
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < keys.size(); i++) {
            String key = keys.get(i);
            String value = params.get(key);
            sb.append(key).append(value);
        }
        return sb.toString();
    }
}

java可运行项目下载

点击这里

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

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

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