获取频道的rtmp拉流地址

接口URL

https://api.polyv.net/live/v3/channel/monitor/rtmp-pull-url

接口说明

(接口调用有频率限制,详细请查看)

1、接口用于获取频道获取频道的rtmp拉流地址
2、接口支持https

返回结果格式

JSON

请求方式

GET

请求参数

参数名 必选 类型 说明
appId string 从API设置中获取,在直播系统登记的appId
timestamp long 当前13位毫秒级时间戳,3分钟内有效
sign string 签名,为32位大写的MD5值
channelId int 频道号
day int 有效期天数,如:1表示从当前时间算起一天内有效

响应成功JSON示例:

{
    "code": 200,
    "status": "success",
    "message": "",
    "data":  "rtmp://pull-d1.videocc.net/recordf/4f57ea01de16002237826505a7b?auth_key=1602645379-0-0-5d6bc0d1ea472b161ee9e0ea3646bess"
}

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

字段说明

参数名 说明
code 响应代码,成功为200,失败为400,签名错误为403,异常错误500
status 成功为success,失败为error
message 错误时为错误提示消息
data 成功数据

Java请求示例

public static void test() {
        String url = "https://api.polyv.net/live/v3/channel/monitor/rtmp-pull-url";
        // 用户对应的appId和加密串
        String appId = "xxxxxxxxx";
        String appSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxx";
        int channelId = 10001;
        Map<String, String> params = new HashMap<>();
        params.put("channelId", channelId);
        params.put("day", 1);
        PolyvTool.setLiveSign(params, appId, appSecret);
        // 调用Polyv的httpClient工具类发送请求
        String content = HttpClientUtil.getInstance()
                .sendHttpGet(url + "?" + PolyvTool.mapJoinNotEncode(params));
        System.out.println(content);
    }

签名规则(PolyvTool.java文件代码查看)

https://dev.polyv.net/2020/liveproduct/l-api/rule/live-api-java-detail/

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