Account

1、创建账号下直播分类

描述

创建账号下直播分类
接口地址(仅做说明使用):https://api.polyv.net/live/v3/user/category/create

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testCreateCategory() throws Exception {
        LiveCreateCategoryRequest liveCreateCategoryRequest = new LiveCreateCategoryRequest();
        LiveCreateCategoryResponse liveCreateCategoryResponse;
        try {
            liveCreateCategoryRequest.setCategoryName("分类1");
            liveCreateCategoryResponse = new LiveAccountServiceImpl().createCategory(liveCreateCategoryRequest);
            Assert.assertNotNull(liveCreateCategoryResponse);
            log.debug("测试创建账号下直播分类成功,{}", JSON.toJSONString(liveCreateCategoryResponse));
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveCreateCategoryResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

categoryName

true

String

频道分类名称

返回对象描述

参数名类型说明

categoryId

Integer

分类id

categoryName

String

分类名称

userId

String

POLYV用户ID,和保利威官网一致,获取路径:官网->登录->直播(开发设置)

rank

Integer

分类排序(从小到大排序)


2、查询账号下直播分类

描述

查询账号下直播分类
接口地址(仅做说明使用):https://api.polyv.net/live/v3/user/category/list

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testListCategory() throws Exception {
        LiveListCategoryRequest liveListCategoryRequest = new LiveListCategoryRequest();
        LiveListCategoryResponse liveListCategoryResponse;
        try {
            liveListCategoryResponse = new LiveAccountServiceImpl().listCategory(liveListCategoryRequest);
            Assert.assertNotNull(liveListCategoryResponse);
            log.debug("测试查询账号下直播分类成功,{}", JSON.toJSONString(liveListCategoryResponse));
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveListCategoryResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

此方法采用系统全局配置,不需要显式传递参数

返回对象描述

参数名类型说明

liveCategories

Array

频道分类列表【详见LiveCategory参数描述

LiveCategory参数描述

参数名类型说明

categoryId

Integer

分类ID

categoryName

String

分类名称

userId

String

POLYV用户ID,和保利威官网一致,获取路径:官网->登录->直播(开发设置)

rank

Integer

分类排序号,rank=0表示为默认排序


3、修改直播频道分类名称

描述

修改直播频道分类名称
接口地址(仅做说明使用):https://api.polyv.net/live/v3/user/category/update-name

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testUpdateCategory() throws Exception {
        LiveUpdateCategoryRequest liveUpdateCategoryRequest = new LiveUpdateCategoryRequest();
        Boolean liveUpdateCategoryResponse;
        try {
            liveUpdateCategoryRequest.setCategoryId(391976).setCategoryName("勿删分类-" + super.getRandomString(4));
            liveUpdateCategoryResponse = new LiveAccountServiceImpl().updateCategory(liveUpdateCategoryRequest);
            Assert.assertTrue(liveUpdateCategoryResponse);
            log.debug("测试修改直播频道分类名称成功");
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

categoryId

true

Integer

分类id

categoryName

true

String

分类名称

返回对象描述

true为修改成功,false为修改失败


4、修改直播频道分类顺序

描述

修改直播频道分类顺序
接口地址(仅做说明使用):https://api.polyv.net/live/v3/user/category/update-rank

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testUpdateCategorySort() throws Exception {
        LiveUpdateCategorySortRequest liveUpdateCategorySortRequest = new LiveUpdateCategorySortRequest();
        Boolean liveUpdateCategorySortResponse;
        try {
            liveUpdateCategorySortRequest.setCategoryId(388964).setAfterCategoryId(340019);
            liveUpdateCategorySortResponse = new LiveAccountServiceImpl().updateCategorySort(
                    liveUpdateCategorySortRequest);
            Assert.assertTrue(liveUpdateCategorySortResponse);
            log.debug("测试修改直播频道分类顺序成功");
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

categoryId

true

Integer

分类id

afterCategoryId

true

Integer

移动到该id对应的分类之后

返回对象描述

true为修改排序成功,false为修改排序失败


5、删除直播频道分类

描述

删除直播频道分类
接口地址(仅做说明使用):https://api.polyv.net/live/v3/user/category/delete

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testDeleteCategory() throws Exception {
        LiveDeleteCategoryRequest liveDeleteCategoryRequest = new LiveDeleteCategoryRequest();
        Boolean liveDeleteCategoryResponse;
        try {
            liveDeleteCategoryRequest.setCategoryId(345128);
            liveDeleteCategoryResponse = new LiveAccountServiceImpl().deleteCategory(liveDeleteCategoryRequest);
            Assert.assertTrue(liveDeleteCategoryResponse);
            log.debug("测试删除直播频道分类成功");
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

categoryId

true

Integer

分类id

返回对象描述

true为删除成功,false为删除失败


6、获取直播用户账号信息接口

描述

获取直播用户账号信息接口
接口地址(仅做说明使用):https://api.polyv.net/live/v3/user/get-info

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testGetAccountInfo() throws Exception {
        LiveAccountInfoRequest liveAccountInfoRequest = new LiveAccountInfoRequest();
        LiveAccountInfoResponse liveAccountInfoResponse;
        try {
            liveAccountInfoResponse = new LiveAccountServiceImpl().getAccountInfo(liveAccountInfoRequest);
            Assert.assertNotNull(liveAccountInfoResponse);
            log.debug("测试获取直播用户账号信息接口成功,{}", JSON.toJSONString(liveAccountInfoResponse));
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveAccountInfoResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

此方法采用系统全局配置,不需要显式传递参数

返回对象描述

参数名类型说明

userId

String

POLYV用户ID,和保利威官网一致,获取路径:官网->登录->直播(开发设置)

email

String

邮箱账号

maxChannels

Integer

最大可创建频道数

totalChannels

Integer

当前已创建频道总数

availableChannels

Integer

当前剩余可创建频道数

linkMicLimit

Integer

账号连麦人数上限


7、查询账号下所有频道详细信息

描述

查询账号下所有频道详细信息
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/management/list-detail

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testListAccountDetail() throws Exception, NoSuchAlgorithmException {
        LiveListAccountDetailRequest liveListAccountDetailRequest = new LiveListAccountDetailRequest();
        LiveListAccountDetailResponse liveListAccountDetailResponse;
        try {
            liveListAccountDetailRequest.setCurrentPage(1);
            liveListAccountDetailResponse = new LiveAccountServiceImpl().listAccountDetail(
                    liveListAccountDetailRequest);
            Assert.assertNotNull(liveListAccountDetailResponse);
            if (liveListAccountDetailResponse != null) {
                //to do something ......
                log.debug("分页查询账号下所有频道详细信息成功,{}", JSON.toJSONString(liveListAccountDetailResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveListAccountDetailResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

categoryId

false

Integer

所属分类id

watchStatus

false

String

观看页状态筛选,live-直播中,playback-回放中,end-已结束,waiting-未开始

keyword

false

String

频道名称,模糊查询

currentPage

false

Integer

页数,默认为1【对应api文档的page字段】

pageSize

false

Integer

每页显示的数据条数,默认每页显示20条数据

返回对象描述

参数名类型说明

contents

Array

频道详细信息列表【详见LiveChannelDetail参数描述

pageSize

Integer

每页显示的数据条数,默认每页显示20条数据

currentPage

Integer

当前页【对应api文档的pageNumber字段】

totalItems

Integer

记录总条数

totalPage

Integer

总页数【对应api文档的totalPages字段】

LiveChannelDetail参数描述

参数名类型说明

channelId

String

频道号

name

String

频道名称

channelPasswd

String

频道密码

categoryId

String

频道分类ID

scene

String

场景,alone-活动直播,ppt-三分屏,topclass-大班课,seminar:研讨会

sceneText

String

场景描述,如:大班课

watchStatus

String

观看页状态,live-直播中,playback-回放中,end-已结束,waiting-未开始

watchStatusText

String

观看页状态描述,直播中,回放中,已结束,未开始

watchUrl

String

观看页链接

content

String

直播介绍

startTime

Date

直播开始时间

authSetting

Array

直播权限设置数据传输对象【详见LiveAuthSetting参数描述

LiveAuthSetting参数描述

参数名类型说明

channelId

String

频道号

rank

Integer

用于实现一个频道设置两个观看条件,为1或2(1为主要条件,2为次要条件)

userId

String

POLYV用户ID,和保利威官网一致,获取路径:官网->登录->直播(开发设置)

globalSettingEnabled

String

是否开启全局设置(Y/N)

enabled

String

是否开启观看条件(Y/N)

authType

String

观看条件类型(1. 无限制 none 2. 验证码观看 code 3. 付费观看 pay 4. 白名单观看 phone 5. 登记观看 info 6. 分享观看 wxshare 7. 自定义授权观看 custom 8. 外部授权观看 external)

codeAuthTips

String

验证码观看提示信息

authCode

String

验证码观看方式的验证码

qcodeTips

String

验证码观看方式的二维码提示

qcodeImg

String

验证码观看方式的二维码图片

payAuthTips

String

付费观看提示信息

price

Float

付费观看的价格

validTimePeriod

String

付费观看的截止时长 (天)

watchEndTime

Date

付费观看,截止时间,为null表示:一次付费,永久有效

authTips

String

白名单观看提示信息

infoAuthTips

String

登记观看提示信息

customKey

String

自定义授权观看的key

customUri

String

自定义授权观看的接口地址

externalKey

String

自定义授权观看的接口地址

externalUri

String

外部授权观看的接口地址

externalRedirectUri

String

外部授权观看,用户直接访问观看页时的跳转地址

directKey

String

独立授权key

trialWatchEnabled

String

试看开关,Y:开启试看,N:关闭试看

trialWatchTime

Integer

试看时间,单位为分钟

trialWatchEndTime

Date

试看截止日期,为null 表示对该频道永久有效


8、查询账号下的频道列表

描述

查询账号下的频道列表
接口地址(仅做说明使用):https://api.polyv.net/live/v3/user/channels

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testListAccount() throws Exception, NoSuchAlgorithmException {
        LiveListAccountRequest liveListAccountRequest = new LiveListAccountRequest();
        LiveListAccountResponse liveListAccountResponse;
        try {
            liveListAccountRequest.setCategoryId(null).setKeyword(null);
            liveListAccountResponse = new LiveAccountServiceImpl().listAccount(liveListAccountRequest);
            Assert.assertNotNull(liveListAccountResponse);
            if (liveListAccountResponse != null) {
                //to do something ......
                log.debug("测试查询账号下的频道列表成功,{}", JSON.toJSONString(liveListAccountResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveListAccountResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

categoryId

false

Integer

所属分类id,不传则查询所有分类下的频道号

keyword

false

String

频道名称,模糊查询

返回对象描述

参数名类型说明

channels

Array

频道号列表


9、获取账号连麦分钟数使用量与剩余量

描述

获取账号连麦分钟数使用量与剩余量
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/statistics/mic/get-duration

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testGetMicDuration() throws Exception, NoSuchAlgorithmException {
        LiveAccountMicDurationRequest liveAccountMicDurationRequest = new LiveAccountMicDurationRequest();
        LiveAccountMicDurationResponse liveAccountMicDurationResponse;
        try {
            liveAccountMicDurationResponse = new LiveAccountServiceImpl().getMicDuration(liveAccountMicDurationRequest);
            Assert.assertNotNull(liveAccountMicDurationResponse);
            if (liveAccountMicDurationResponse != null) {
                //to do something ......
                log.debug("测试获取账号连麦分钟数使用量与剩余量成功,{}", JSON.toJSONString(liveAccountMicDurationResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveAccountMicDurationResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

此方法采用系统全局配置,不需要显式传递参数

返回对象描述

参数名类型说明

available

Integer

可用连麦分钟数,单位分钟

history

Integer

历史已使用连麦分钟数,单位分钟


10、设置账号单点登录的token

描述

设置账号单点登录的token
接口地址(仅做说明使用):https://api.polyv.net/live/v3/user/set-sso-token

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

2、token 参数请勿过于简单,建议使用16位随机字符串

单元测试

	@Test
	public void testCreateAccountToken() throws Exception, NoSuchAlgorithmException {
        LiveCreateAccountTokenRequest liveCreateAccountTokenRequest = new LiveCreateAccountTokenRequest();
        Boolean liveCreateAccountTokenResponse;
        try {
            liveCreateAccountTokenRequest.setToken(LiveSignUtil.generateUUID());
            liveCreateAccountTokenResponse = new LiveAccountServiceImpl().createAccountToken(
                    liveCreateAccountTokenRequest);
            Assert.assertNotNull(liveCreateAccountTokenResponse);
            if (liveCreateAccountTokenResponse) {
                //to do something ......
                log.debug("测试设置账号单点登录的token成功");
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

token

true

String

唯一的字符串,请勿过于简单,建议使用16位随机字符串

返回对象描述

true为设置成功,false为设置失败


11、设置直播状态回调通知url

描述

设置直播状态回调通知url
接口地址(仅做说明使用):https://api.polyv.net/live/v2/user/%s/set-stream-callback

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

2、不提交地址参数url,则回调地址为空,表示关闭回调功能,如果要提交的地址参数url,必须以 http:// 或者 https:// 开头

单元测试

	@Test
	public void testUpdateStreamCallbackUrl() throws Exception, NoSuchAlgorithmException {
        LiveAccountStreamCallbackRequest liveAccountStreamCallbackRequest = new LiveAccountStreamCallbackRequest();
        Boolean liveAccountStreamCallbackResponse;
        try {
            liveAccountStreamCallbackRequest.setUrl("http://www.abc.com/callback");
            liveAccountStreamCallbackResponse = new LiveAccountServiceImpl().updateStreamCallbackUrl(
                    liveAccountStreamCallbackRequest);
            Assert.assertNotNull(liveAccountStreamCallbackResponse);
            if (liveAccountStreamCallbackResponse) {
                //to do something ......
                log.debug("测试设置直播状态回调通知url成功");
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

url

false

String

回调地址url,不提交表示关闭回调功能,如果提交,必须以http://或者https://开头

返回对象描述

true为设置回调成功,false为设置回调失败

回调说明

  设置接口地址后,如果账号下频道有进行推流、断流操作导致频道直播状态改变,直播系统会将以下参数channelId(频道号)和status(直播状态:live表示开始直播,end表示直播结束)以GET方式提交到给用户自定义的回调接口进行通知,如:http://abc.com/test.do?channelId=123456&status=live&timestamp=1557976774000&sign=xxdxxxxx&sessionId=xxxxxddd&startTime=1557976777111&endTime=1557976777111

参数名类型说明

channelId

String

频道号

status

String

直播频道的状态:live正在直播,end直播结束

timestamp

Long

13位的时间戳

sign

String

校验的加密字符串,生成的规则md5(AppSecret+timestamp),AppSecret是直播系统的用密匙

sessionId

String

直播的场次ID

startTime

Date

直播的开始时间

endTime

Date

直播的结束时间(当status=end的时候有值,status=live的时候为空值)


12、设置转存成功回调通知url

描述

设置转存成功回调通知url
接口地址(仅做说明使用):https://api.polyv.net/live/v2/user/%s/set-playback-callback

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

2、不提交地址参数url,则回调地址为空,表示关闭回调功能,如果要提交的地址参数url,必须以 http:// 或者 https:// 开头

单元测试

	@Test
	public void testUpdatePlaybackCallbackUrl() throws Exception, NoSuchAlgorithmException {
        LiveAccountPlaybackCallbackRequest liveAccountPlaybackCallbackRequest =
                new LiveAccountPlaybackCallbackRequest();
        Boolean liveAccountPlaybackCallbackResponse;
        try {
            liveAccountPlaybackCallbackRequest.setUrl("http://www.abc.com/callback");
            liveAccountPlaybackCallbackResponse = new LiveAccountServiceImpl().updatePlaybackCallbackUrl(
                    liveAccountPlaybackCallbackRequest);
            Assert.assertTrue(liveAccountPlaybackCallbackResponse);
            if (liveAccountPlaybackCallbackResponse != null) {
                //to do something ......
                log.debug("测试设置转存成功回调通知url成功,{}", liveAccountPlaybackCallbackResponse);
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

url

false

String

回调地址url,不提交表示关闭回调功能,如果提交,必须以http://或者https://开头

返回对象描述

true为设置回调成功,false为设置回调失败

回调说明

  设置接口地址后,如果账号有进行暂存视频转存,即将直播生成的录制文件转存到点播中,如果转存视频处理完毕为已完成状态,直播系统会将以下参数channelId(频道号)、vid(转存成功的视频ID)、title(视频标题)、duration(视频时长)和fileSize(视频文件大小)以GET方式提交到给用户自定义的回调接口进行通知,如:http://abc.com/test.do?channelId=123456&vid=e6b23c6f5134943a015bc117e2854eae_e&title=视频标题&duration=01:23:45&fileSize=123400&timestamp=1557976774000&sign=xxxxxxxxxx&fileId=359a81ed8fd8cb83d88ddcd97d9e8a2b&videoId=b1c6f3ad2c&origin=auto&sessionIds=["20190703145126,4,fdqbopvtnv","20190703145126,8,fdqbopvtnv"]

参数名类型说明

channelId

String

频道号

vid

String

转存成功的视频ID

title

String

视频标题

duration

String

视频时长 格式为 hh:mm:ss

fileSize

Long

视频文件大小,单位为byte

timestamp

Long

13位的时间戳(签名使用)

sign

String

校验的加密字符串,生成的规则md5(AppSecret+timestamp),AppSecret是直播系统的密匙

sessionIds

String

录制的场次和时间对应的数组字符串,格式:["20190703145126,4,fdqbopvtnv","20190703145126,8,fdqbopvtnv"] ,其中:"20190703145126,4,fdqbopvtnv" 第一个字段是开始时间,第二个字段是直播的时长,第三个是对应的sessionId。

fileId

String

转存对应的录制文件id

videoId

String

转存回放唯一的id

origin

String

转存的录制来源。manual-云录制,auto-自动录制,merge-合并,clip-裁剪

sessionId

String

回放对应的单个场次id

userId

String

POLYV用户ID,和保利威官网一致,获取路径:官网->登录->直播(开发设置)

status

String

转存成功返回success


13、设置录制回调通知url

描述

设置录制回调通知url
接口地址(仅做说明使用):https://api.polyv.net/live/v2/user/%s/set-record-callback

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

2、不提交地址参数url,则回调地址为空,表示关闭回调功能,如果要提交的地址参数url,必须以 http:// 或者 https:// 开头

单元测试

	@Test
	public void testUpdateRecordCallbackUrl() throws Exception, NoSuchAlgorithmException {
        LiveAccountRecordCallbackRequest liveAccountRecordCallbackRequest = new LiveAccountRecordCallbackRequest();
        Boolean liveAccountRecordCallbackResponse;
        try {
            liveAccountRecordCallbackRequest.setUrl("http://www.abc.com/callback");
            liveAccountRecordCallbackResponse = new LiveAccountServiceImpl().updateRecordCallbackUrl(
                    liveAccountRecordCallbackRequest);
            Assert.assertTrue(liveAccountRecordCallbackResponse);
            if (liveAccountRecordCallbackResponse) {
                //to do something ......
                log.debug("测试设置录制回调通知url成功");
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

url

false

String

回调地址url,不提交表示关闭回调功能,如果提交,必须以http://或者https://开头

返回对象描述

true为设置回调成功,false为设置回调失败

回调说明

  设置接口地址后,如果账号有开通录制功能,账号下各频道在推流结束,生成m3u8录制视频后,直播系统会将参数channelId(频道号)和fileUrl(录制文件地址)以GET方式提交到给用户自定义的回调接口进行通知,如:http://abc.com/test.do?channelId=104400&fileUrl=http://rflive.videocc.net/i6ro0hxj0020150529112242035/recordf.i6ro0hxj0020150529112242035_20170120184803.m3u8&origin=auto&fileId=072c36138cfbd3e546cda227dc273951&timestamp=1557976774000&sign=xxxxxxxxxx

参数名类型说明

channelId

String

频道号

fileUrl

String

录制文件地址

format

String

文件类型,m3u8或者mp4

timestamp

Long

13位的时间戳(签名使用)

sign

String

校验的加密字符串,生成的规则md5(AppSecret+timestamp),AppSecret是直播系统的密匙

fileId

String

录制唯一的id

origin

String

录制来源。manual-云录制,auto-自动录制,merge-合并,clip-裁剪

hasRtcRecord

String

(该字段只对开启云录制功能有用),值为 'Y',表示该场直播录制同时存在云录制和自动录制,值为"N",该场直播只有自动录制


14、设置功能开关状态

描述

设置功能开关状态
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/switch/update

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

2、isClosePreview当enabled值为Y时,表示的是关闭系统观看页;closeDanmu当enabled值为Y时,表示的是关闭弹幕;closeChaterList当enabled值为Y时,表示的是关闭在线列表

单元测试

	@Test
	public void testUpdateAccountSwitch() throws Exception, NoSuchAlgorithmException {
        LiveUpdateAccountSwitchRequest liveUpdateAccountSwitchRequest = new LiveUpdateAccountSwitchRequest();
        Boolean liveUpdateAccountSwitchResponse;
        try {
            liveUpdateAccountSwitchRequest.setType(LiveConstant.ChannelSwitch.AUTO_PLAY.getDesc()).setEnabled("N");
            liveUpdateAccountSwitchResponse = new LiveAccountServiceImpl().updateAccountSwitch(
                    liveUpdateAccountSwitchRequest);
            Assert.assertNotNull(liveUpdateAccountSwitchResponse);
            if (liveUpdateAccountSwitchResponse) {
                //to do something ......
                log.debug("设置功能开关状态成功");
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

channelId

false

String

频道号,不传该参数则表示修改全局设置

type

true

String

开关类型,若未注明默认Y表示开启 isClosePreview:是否关闭系统观看页,Y时表示关闭 mobileWatch:是否开启移动端系统观看页 mobileAudio:是否开启移动端音视频切换 autoPlay:是否开启播放器自动播放功能 booking:是否开启预约功能 redPack:是否开启红包功能 shareBtnEnabled:是否开启分享功能 chat:是否开启聊天室 closeChaterList:是否关闭在线列表,Y时表示关闭 consultingMenu:是否开启咨询提问 closeDanmu:是否关闭弹幕功能,Y时表示关闭 praise:是否开启点赞语功能 welcome:是否开启欢迎语功能 viewerSendImgEnabled:是否开启观众发送图片 qaMenuEnabled:是否开启问答功能 filterManagerMsgEnabled:过滤聊天室管理员的聊天消息开关,即观看页聊天室只看主持人开关 showCustomMessageEnabled:显示自定义消息开关 chatOnlineNumberEnable:在线人数开关

enabled

true

String

开关值,Y或N

返回对象描述

true为设置成功,false为设置失败


15、查询功能开关状态接口

描述

接口用于获取开关设置,可获取全局开关设置或频道开关设置
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/switch/get

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

2、isClosePreview当enabled值为Y时,表示的是关闭系统观看页;closeDanmu当enabled值为Y时,表示的是关闭弹幕;closeChaterList当enabled值为Y时,表示的是关闭在线列表

3、当频道非三分屏场景时才返回:mobileAudio移动端音频开关,redPack红包开关,praise点赞语开关,chatPlayBack聊天回放开关

单元测试

	@Test
	public void testGetAccountSwitch() throws Exception, NoSuchAlgorithmException {
        LiveAccountSwitchRequest liveAccountSwitchRequest = new LiveAccountSwitchRequest();
        LiveAccountSwitchResponse liveAccountSwitchResponse;
        try {
            liveAccountSwitchRequest.setChannelId(null);
            liveAccountSwitchResponse = new LiveAccountServiceImpl().getAccountSwitch(liveAccountSwitchRequest);
            Assert.assertNotNull(liveAccountSwitchResponse);
            if (liveAccountSwitchResponse != null) {
                //to do something ......
                log.debug("测试查询功能开关状态接口成功,{}", JSON.toJSONString(liveAccountSwitchResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveAccountSwitchResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

channelId

false

String

频道号,不传该参数为获取全局设置

返回对象描述

参数名类型说明

channelSwitches

Array

频道开关【详见ChannelSwitch参数描述

ChannelSwitch参数描述

参数名类型说明

type

String

开关类型 isClosePreview:是否关闭系统观看页,Y时表示关闭 mobileWatch:是否开启移动端系统观看页 mobileAudio:是否开启移动端音视频切换 autoPlay:是否开启播放器自动播放功能 booking:是否开启预约功能 redPack:是否开启红包功能 shareBtnEnabled:是否开启分享功能 chat:是否开启聊天室 closeChaterList:是否关闭在线列表,Y时表示关闭 consultingMenu:是否开启咨询提问 closeDanmu:是否关闭弹幕功能,Y时表示关闭 praise:是否开启点赞语功能 welcome:是否开启欢迎语功能 viewerSendImgEnabled:是否开启观众发送图片 chatPlayBack:是否开启聊天回放开关 pushSharingEnabled:是否开启推流端分享开关 sendFlowersEnabled:是否开启送花开关

enabled

String

是否已打开开关


16、查询账号下所有频道缩略信息

描述

查询账号下所有频道缩略信息
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/management/list

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testListChannelBasic() throws Exception, NoSuchAlgorithmException {
        LiveListAccountChannelBasicRequest liveListAccountChannelBasicRequest =
                new LiveListAccountChannelBasicRequest();
        LiveListAccountChannelBasicResponse liveListAccountChannelBasicResponse;
        try {
            liveListAccountChannelBasicRequest.setCategoryId(null)
                    .setWatchStatus("end")
                    .setKeyword("勿删")
                    .setPageSize(null)
                    .setCurrentPage(1);
            liveListAccountChannelBasicResponse = new LiveAccountServiceImpl().listChannelBasic(
                    liveListAccountChannelBasicRequest);
            Assert.assertNotNull(liveListAccountChannelBasicResponse);
            if (liveListAccountChannelBasicResponse != null) {
                //to do something ......
                log.debug("测试查询账号下所有频道缩略信息成功,{}", JSON.toJSONString(liveListAccountChannelBasicResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveListAccountChannelBasicResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

categoryId

false

Integer

所属分类id

watchStatus

false

String

观看页状态筛选,live-直播中,playback-回放中,end-已结束,waiting-未开始

keyword

false

String

频道名称,模糊查询

currentPage

false

Integer

页数,默认为1【对应api文档的page字段】

pageSize

false

Integer

每页显示的数据条数,默认每页显示20条数据

返回对象描述

参数名类型说明

contents

Array

频道基础信息【详见ChannelBasicInfo参数描述

pageSize

Integer

每页显示的数据条数,默认每页显示20条数据

currentPage

Integer

当前页【对应api文档的pageNumber字段】

totalItems

Integer

记录总条数

totalPage

Integer

总页数【对应api文档的totalPages字段】

ChannelBasicInfo参数描述

参数名类型说明

channelId

String

频道号

name

String

频道名称

channelPasswd

String

频道密码

scene

String

场景,alone-活动直播,ppt-三分屏,topclass-大班课,seminar:研讨会

sceneText

String

场景描述

watchStatus

String

观看页状态,live-直播中,playback-回放中,end-已结束,waiting-未开始

watchStatusText

String

观看页状态描述,直播中,回放中,已结束,未开始

watchUrl

String

观看页链接


17、查询账户分钟数

描述

查询账户分钟数
接口地址(仅做说明使用):https://api.polyv.net/live/v2/user/get-user-durations

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testGetUserDurations() throws Exception, NoSuchAlgorithmException {
        LiveAccountUserDurationsRequest liveAccountUserDurationsRequest = new LiveAccountUserDurationsRequest();
        LiveAccountUserDurationsResponse liveAccountUserDurationsResponse;
        try {
            liveAccountUserDurationsResponse = new LiveAccountServiceImpl().getUserDurations(
                    liveAccountUserDurationsRequest);
            Assert.assertNotNull(liveAccountUserDurationsResponse);
            if (liveAccountUserDurationsResponse != null) {
                //to do something ......
                log.debug("测试查询账户分钟数成功,{}", JSON.toJSONString(liveAccountUserDurationsResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveAccountUserDurationsResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

此方法采用系统全局配置,不需要显式传递参数

返回对象描述

参数名类型说明

userId

String

POLYV用户ID,和保利威官网一致,获取路径:官网->登录->直播(开发设置)

available

Long

当前可用的分钟数

used

Long

历史已经使用的分钟数


18、查询账号下所有/某个频道号收入详情

描述

查询账号下所有/某个频道号收入详情
接口地址(仅做说明使用):https://api.polyv.net/live/v2/user/%s/get-income-detail

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看 根据是否提交channelId来获取全部频道/某个频道的收入详情数据

单元测试

	@Test
	public void testGetChannelIncomeDetail() throws Exception {
        LiveChannelIncomeDetailRequest liveChannelIncomeDetailRequest = new LiveChannelIncomeDetailRequest();
        LiveChannelIncomeDetailResponse liveChannelIncomeDetailResponse;
        try {
            String channelId = super.createChannel();
            liveChannelIncomeDetailRequest.setChannelId(channelId)
                    .setStartDate(getDate(2019, 10, 24))
                    .setEndDate(getDate(2021, 11, 11));
            liveChannelIncomeDetailResponse = new LiveAccountServiceImpl().getChannelIncomeDetail(
                    liveChannelIncomeDetailRequest);
            Assert.assertNotNull(liveChannelIncomeDetailResponse);
            if (liveChannelIncomeDetailResponse != null) {
                //to do something ......
                log.debug("测试查询账号下所有/某个频道号收入详情成功,{}", JSON.toJSONString(liveChannelIncomeDetailResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveChannelIncomeDetailResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

channelId

false

String

要查询的频道号,不提交默认为查询所有频道

startDate

true

Date

查询的开始日期 格式为yyyy-MM-dd

endDate

true

Date

查询的结束日期 格式为yyyy-MM-dd

currentPage

false

Integer

页数,默认为1【对应api文档的page字段】

pageSize

false

Integer

每页显示的数据条数,默认每页显示20条数据

返回对象描述

参数名类型说明

contents

Array

收入详情【详见ChannelIncomeDetail参数描述

pageSize

Integer

每页显示的数据条数,默认每页显示20条数据

currentPage

Integer

当前页【对应api文档的pageNumber字段】

totalItems

Integer

记录总条数

totalPage

Integer

总页数【对应api文档的totalPages字段】

ChannelIncomeDetail参数描述

参数名类型说明

amount

Float

金额

payType

String

收入类型:good、cash、pay

payTypeName

String

收入类型的名称:道具打赏、现金打赏、付费观看

viewerName

String

付费观众昵称

payTime

Date

付费时间

outTradeNo

String

保利威视系统内部订单号


19、分页查询频道可设置接收转播频道列表

描述

通过一个(发起转播的)频道分页查询能够被它设置接收转播的频道列表
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/basic/receive/list

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testGetReceiveList() throws IOException, NoSuchAlgorithmException {
        LiveChannelReceiveListRequest liveChannelReceiveListRequest = new LiveChannelReceiveListRequest();
        LiveChannelReceiveListResponse liveChannelReceiveListResponse;
        try {
            String channelId = super.createChannel();
            liveChannelReceiveListRequest.setChannelId(channelId);
            liveChannelReceiveListResponse = new LiveAccountServiceImpl().getReceiveList(liveChannelReceiveListRequest);
            Assert.assertNotNull(liveChannelReceiveListResponse);
            if (liveChannelReceiveListResponse != null) {
                //to do something ......
                log.debug("测试分页查询频道可设置接收转播频道列表成功 {}", JSON.toJSONString(liveChannelReceiveListResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveChannelReceiveListResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

channelId

true

String

(发起转播的)频道号

keyword

false

String

频道名称,支持模糊搜索

currentPage

false

Integer

页数,默认为1【对应api文档的page字段】

pageSize

false

Integer

每页显示的数据条数,默认每页显示20条数据

返回对象描述

参数名类型说明

contents

Array

查询的结果列表【详见ReceiveList参数描述

pageSize

Integer

每页显示的数据条数,默认每页显示20条数据

currentPage

Integer

当前页【对应api文档的pageNumber字段】

totalItems

Integer

记录总条数

totalPage

Integer

总页数【对应api文档的totalPages字段】

ReceiveList参数描述

参数名类型说明

channelId

String

频道号

name

String

频道名称

channelPasswd

String

频道密码,非研讨会场景使用

hostPasswd

String

研讨会主持人密码,研讨会场景使用

attendeePasswd

String

研讨会参会人密码,研讨会场景使用

categoryName

String

频道所属分类名称

authType

String

观看条件,使用,分隔,如:none,none none:无条件, pay:付费观看, code:验证码观看, phone:白名单观看, info:登记观看, custom:自定义授权观看, external:外部授权, direct:直接授权

recentViewCount

Integer

最近场次观看人数

subChannelAccount

String

第一个子频道号,如果没有子频道则为null

subChannelPasswd

String

第一个子频道密码,如果没有子频道则为null

transmitChannelId

String

关联转播的频道号,如果没有关联则为null

scene

String

场景 alone:活动直播 ppt:三分屏 topclass:大班课


20、查询所有频道的缩略信息

描述

查询账号下所有的频道缩略信息列表,观看页状态与新版后台一致
接口地址(仅做说明使用):https://api.polyv.net/live/v4/channel/simple/list

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testListChannelSimpleV2() throws Exception, NoSuchAlgorithmException {
        LiveListAccountChannelSimpleV2Request liveListAccountChannelSimpleV2Request =
                new LiveListAccountChannelSimpleV2Request();
        LiveListAccountChannelSimpleV2Response liveListAccountChannelSimpleV2Response;
        try {
            liveListAccountChannelSimpleV2Request.setCategoryId(null)
                    .setOrderBy(LiveConstant.OrderBy.CHANNEL_CREATED_TIME_DESC.getType());
            liveListAccountChannelSimpleV2Response = new LiveAccountServiceImpl().listChannelSimpleV2(
                    liveListAccountChannelSimpleV2Request);
            Assert.assertNotNull(liveListAccountChannelSimpleV2Request);
            if (liveListAccountChannelSimpleV2Response != null) {
                //to do something ......
                log.debug("测试查询所有频道的缩略信息成功,{}", JSON.toJSONString(liveListAccountChannelSimpleV2Response));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveListAccountChannelSimpleV2Response对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

categoryId

false

Integer

所属分类id

watchStatus

false

String

观看页状态筛选,live-直播中,playback-回放中,end-已结束,waiting-等待中,unStart-未开始

keyword

false

String

频道名称,模糊查询

orderBy

false

String

排序字段,默认按频道创建时间升序,startTimeDesc:开播时间降序,startTimeAsc:开播时间升序,channelCreatedTimeDesc:频道创建时间降序

currentPage

false

Integer

页数,默认为1【对应api文档的pageNumber字段】

pageSize

false

Integer

每页显示的数据条数,默认每页显示20条数据

返回对象描述

参数名类型说明

contents

Array

频道基础信息【详见ChannelBasicInfo参数描述

pageSize

Integer

每页显示的数据条数,默认每页显示20条数据

currentPage

Integer

当前页【对应api文档的pageNumber字段】

totalItems

Integer

记录总条数

totalPage

Integer

总页数【对应api文档的totalPages字段】

ChannelBasicInfo参数描述

参数名类型说明

channelId

String

频道号

name

String

频道名称

channelPasswd

String

频道密码

scene

String

场景,alone-活动直播,ppt-三分屏,topclass-大班课,seminar:研讨会

sceneText

String

场景描述

watchStatus

String

观看页状态,live-直播中,playback-回放中,end-已结束,waiting-等待中,unStart-未开始

watchStatusText

String

观看页状态描述,直播中,回放中,已结束,等待中,未开始

watchUrl

String

观看页链接


21、查询所有频道的基础信息

描述

查询账号下所有的频道基础信息列表
接口地址(仅做说明使用):https://api.polyv.net/live/v4/channel/basic/list

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testListAccountBasicV2() throws IOException, NoSuchAlgorithmException {
        LiveListAccountBasicInfoV2Request liveListAccountBasicInfoV2Request = new LiveListAccountBasicInfoV2Request();
        LiveListAccountBasicV2Response liveListAccountBasicV2Response;
        try {
            liveListAccountBasicInfoV2Request.setPageSize(2).setCurrentPage(2);
            liveListAccountBasicV2Response = new LiveAccountServiceImpl().listAccountBasicInfoV2(
                    liveListAccountBasicInfoV2Request);
            Assert.assertNotNull(liveListAccountBasicV2Response);
            if (liveListAccountBasicV2Response != null) {
                //to do something ......
                log.debug("测试查询所有频道的基础信息成功 {}", JSON.toJSONString(liveListAccountBasicV2Response));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveListAccountBasicV2Response对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

categoryIds

false

String

分类ID,多个id用英文逗号分隔

channelIds

false

String

频道号,多个频道用英文逗号分隔

watchStatus

false

String

观看页状态筛选

startTime

false

Date

直播开始时间,查询开始时间13位时间戳

endTime

false

Date

直播开始时间,查询结束时间13位时间戳

orderBy

false

String

排序字段,默认按频道创建时间升序,startTimeDesc:开播时间降序,startTimeAsc:开播时间升序,channelCreatedTimeDesc:频道创建时间降序

currentPage

false

Integer

页数,默认为1【对应api文档的pageNumber字段】

pageSize

false

Integer

每页显示的数据条数,默认每页显示20条数据

返回对象描述

参数名类型说明

contents

Array

查询的结果列表【详见LiveChannelBasic参数描述

pageSize

Integer

每页显示的数据条数,默认每页显示20条数据

currentPage

Integer

当前页【对应api文档的pageNumber字段】

totalItems

Integer

记录总条数

totalPage

Integer

总页数【对应api文档的totalPages字段】

LiveChannelBasic参数描述

参数名类型说明

channelId

String

频道号

name

String

频道名称

publisher

String

主持人名称

startTime

Date

直播开始时间,关闭时为0

pageView

Integer

页面累计观看数

likes

Integer

观看页点赞数

coverImg

String

频道图标url

splashImg

String

引导页图片地址

splashEnabled

String

引导页开关,取值 Y:开启 N:关闭

desc

String

直播介绍

maxViewer

Integer

最大在线观看人数

watchStatus

String

频道的观看页状态,取值为 live:直播中 end:直播结束 playback:回放中 waiting:等待中 unStart:未开始

watchStatusText

String

观看页状态描述,直播中,回放中,已结束,等待中,未开始

onlineNum

Integer

在线人数

bgImg

String

暖场图片URL

categoryId

Integer

分类ID

videoList

Array

回放视频列表,当有多个时按添加时间倒叙排列【详见BasicVideoList参数描述

BasicVideoList参数描述

参数名类型说明

videoId

String

直播系统生成的id (视频库中的回放视频)

videoPoolId

String

点播视频vid (视频库中的回放视频)


22、查询所有频道的详细信息

描述

查询账号下所有频道详细信息列表,观看页状态与新版后台一致
接口地址(仅做说明使用):https://api.polyv.net/live/v4/channel/detail/list

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testListAccountDetailV2() throws IOException, NoSuchAlgorithmException {
        LiveListAccountDetailV2Request liveListAccountDetailV2Request = new LiveListAccountDetailV2Request();
        LiveListAccountDetailV2Response liveListAccountDetailV2Response;
        try {
            liveListAccountDetailV2Request.setPageSize(2).setCurrentPage(2);
            liveListAccountDetailV2Response = new LiveAccountServiceImpl().listAccountDetailV2(
                    liveListAccountDetailV2Request);
            Assert.assertNotNull(liveListAccountDetailV2Response);
            if (liveListAccountDetailV2Response != null) {
                //to do something ......
                log.debug("测试查询所有频道的详细信息成功 {}", JSON.toJSONString(liveListAccountDetailV2Response));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveListAccountDetailV2Response对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

categoryId

false

Integer

所属分类id

watchStatus

false

String

观看页状态筛选 live:直播中 playback:回放中 end:已结束 waiting:等待中 unStart:未开始

keyword

false

String

频道名称,模糊查询

orderBy

false

String

排序字段,默认按频道创建时间升序,startTimeDesc:开播时间降序,startTimeAsc:开播时间升序,channelCreatedTimeDesc:频道创建时间降序

currentPage

false

Integer

页数,默认为1【对应api文档的pageNumber字段】

pageSize

false

Integer

每页显示的数据条数,默认每页显示20条数据

返回对象描述

参数名类型说明

contents

Array

频道详细信息列表【详见LiveChannelDetail参数描述

pageSize

Integer

每页显示的数据条数,默认每页显示20条数据

currentPage

Integer

当前页【对应api文档的pageNumber字段】

totalItems

Integer

记录总条数

totalPage

Integer

总页数【对应api文档的totalPages字段】

LiveChannelDetail参数描述

参数名类型说明

channelId

String

频道号

name

String

频道名称

channelPasswd

String

频道密码

categoryId

Integer

频道分类ID

scene

String

场景,alone-活动直播,ppt-三分屏,topclass-大班课,seminar:研讨会

sceneText

String

场景描述,如:大班课

watchStatus

String

观看页状态 live:直播中 playback:回放中 end:已结束 waiting:等待中 unStart:未开始

watchStatusText

String

观看页状态描述,直播中,回放中,已结束,等待中,未开始

watchUrl

String

观看页链接

content

String

直播介绍

startTime

Date

直播开始时间

channelLogo

String

频道图标

splashImg

String

频道引导图

splashEnabled

String

引导页开关 Y:开启 N:关闭

publisher

String

主持人名称

authSetting

Array

直播权限设置数据传输对象【详见LiveAuthSetting参数描述

LiveAuthSetting参数描述

参数名类型说明

channelId

String

频道号

rank

Integer

用于实现一个频道设置两个观看条件,为1或2(1为主要条件,2为次要条件)

userId

String

POLYV用户ID,和保利威官网一致,获取路径:官网->登录->直播(开发设置)

globalSettingEnabled

String

是否开启全局设置(Y/N)

enabled

String

是否开启观看条件(Y/N)

authType

String

观看条件类型(1. 无限制 none 2. 验证码观看 code 3. 付费观看 pay 4. 白名单观看 phone 5. 登记观看 info 6. 分享观看 wxshare 7. 自定义授权观看 custom 8. 外部授权观看 external)

codeAuthTips

String

验证码观看提示信息

authCode

String

验证码观看方式的验证码

qCodeTips

String

验证码观看方式的二维码提示【对应api文档的qcodeTips字段】

qCodeImg

String

验证码观看方式的二维码图片【对应api文档的qcodeTips字段】

payAuthTips

String

付费观看提示信息

price

Float

付费观看的价格

validTimePeriod

Integer

付费观看的截止时长 (天)

watchEndTime

Date

付费观看,截止时间,为null表示:一次付费,永久有效

authTips

String

白名单观看提示信息

infoAuthTips

String

登记观看提示信息

customKey

String

自定义授权观看的key

customUri

String

自定义授权观看的接口地址

externalKey

String

自定义授权观看的接口地址

externalUri

String

外部授权观看的接口地址

externalRedirectUri

String

外部授权观看,用户直接访问观看页时的跳转地址

directKey

String

独立授权key

trialWatchEnabled

String

试看开关,Y:开启试看,N:关闭试看

trialWatchTime

Integer

试看时间,单位为分钟

trialWatchEndTime

Date

试看截止日期,为null 表示对该频道永久有效


23、查询全局回调设置

描述

查询全局回调设置
接口地址(仅做说明使用):https://api.polyv.net/live/v4/user/global-setting/callback/get

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testGetLiveUserCallback() throws IOException, NoSuchAlgorithmException {
        LiveGetUserCallbackRequest liveGetUserCallbackRequest = new LiveGetUserCallbackRequest();
        LiveGetUserCallbackResponse liveGetUserCallbackResponse;
        try {
            liveGetUserCallbackResponse = new LiveAccountServiceImpl().getLiveUserCallback(liveGetUserCallbackRequest);
            Assert.assertNotNull(liveGetUserCallbackResponse);
            if (liveGetUserCallbackResponse != null) {
                //to do something ......
                log.debug("测试查询全局回调设置成功 {}", JSON.toJSONString(liveGetUserCallbackResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveGetUserCallbackResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

此方法采用系统全局配置,不需要显式传递参数

返回对象描述

参数名类型说明

recordCallbackUrl

String

录制生成回调URL

recordFileCallBackType

String

回调录制文件类型 all:全部回放视频 last:最终回放视频

recordCallbackVideoType

String

回调文件类型 m3u8:m3u8文件 mp4:mp4文件 m3u8,mp4:m3u8和mp4文件

playbackCallbackUrl

String

转存成功回调URL

rebirthVodCallbackEnabled

String

重制课件转存点播回调开关 Y:开启 N:关闭

pptRecordCallbackUrl

String

课件重制成功回调URL

streamCallbackUrl

String

直播状态改变回调URL

channelBasicUpdateCallbackUrl

String

频道直播间信息修改回调URL

liveScanCallbackUrl

String

直播内容审核不通过回调URL

chatUserStatusCallbackUrl

String

直播间人员状态回调URL

interactionCallbackUrl

String

互动功能回调URL

playbackCacheCallbackUrl

String

直播回放缓存生成回调通知URL

playbackSettingCallbackUrl

String

回放设置回调URL


24、修改全局回调设置

描述

修改全局回调设置
接口地址(仅做说明使用):https://api.polyv.net/live/v4/user/global-setting/callback/update

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testUpdateLiveUserCallback() throws IOException, NoSuchAlgorithmException {
        LiveUpdateUserCallbackRequest liveUpdateUserCallbackRequest = new LiveUpdateUserCallbackRequest();
        Boolean liveUpdateUserCallbackResponse;
        try {
            liveUpdateUserCallbackRequest.setPptRecordCallbackUrl("https://abc.cn/callback")
                    .setRecordCallbackVideoType("m3u8,mp4")
                    .setRecordFileCallBackType("all");
            liveUpdateUserCallbackResponse = new LiveAccountServiceImpl().updateLiveUserCallback(
                    liveUpdateUserCallbackRequest);
            Assert.assertNotNull(liveUpdateUserCallbackResponse);
            if (liveUpdateUserCallbackResponse != null) {
                //to do something ......
                log.debug("测试修改全局回调设置成功 {}", JSON.toJSONString(liveUpdateUserCallbackResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

recordCallbackUrl

false

String

录制生成回调URL

recordFileCallBackType

false

String

回调录制文件内容 all:全部回放视频 last:最终回放视频

recordCallbackVideoType

false

String

回调文件类型 m3u8:m3u8文件 mp4:mp4文件 m3u8,mp4:m3u8和mp4文件

playbackCallbackUrl

false

String

转存成功回调URL

rebirthVodCallbackEnabled

false

String

重制课件转存点播回调开关 Y:开启 N:关闭

pptRecordCallbackUrl

false

String

课件重制成功回调URL

streamCallbackUrl

false

String

直播状态改变回调URL

channelBasicUpdateCallbackUrl

false

String

频道直播间信息修改回调URL

liveScanCallbackUrl

false

String

直播内容审核不通过回调URL

playbackCacheCallbackUrl

false

String

直播回放缓存生成回调通知URL

返回对象描述

修改全局回调设置返回实体


25、查询账号时间范围连麦使用量

描述

查询账号时间范围连麦使用量
接口地址(仅做说明使用):https://api.polyv.net/live/v4/statistics/mic/history/get

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

2、连麦使用量按天统计,由于数据量和计算量大,统计结果时效性为两天,即今天的数据需后天才可查询(凌晨2点汇总)

单元测试

	@Test
	public void testGetMicDurationHistory() throws IOException, NoSuchAlgorithmException {
        LiveGetMicDurationRequest liveGetMicDurationRequest = new LiveGetMicDurationRequest();
        LiveGetMicDurationResponse liveGetMicDurationResponse;
        try {
            liveGetMicDurationResponse = new LiveAccountServiceImpl().getMicDuration(liveGetMicDurationRequest);
            Assert.assertNotNull(liveGetMicDurationResponse);
            if (liveGetMicDurationResponse != null) {
                //to do something ......
                log.debug("测试查询账号时间范围连麦使用量成功 {}", JSON.toJSONString(liveGetMicDurationResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveGetMicDurationResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

startTime

false

Date

开始时间,13位毫秒级时间戳(仅支持到日期)

endTime

false

Date

结束时间,13位毫秒级时间戳(仅支持到日期)

返回对象描述

参数名类型说明

userId

String

用户ID

history

Integer

连麦使用分钟数


26、查询全局频道设置

描述

查询全局频道设置
接口地址(仅做说明使用):https://api.polyv.net/live/v4/user/global-setting/switch/get

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testGetGlobalSwitch() throws IOException, NoSuchAlgorithmException {
        LiveGetGlobalSwitchRequest liveGetGlobalSwitchRequest = new LiveGetGlobalSwitchRequest();
        LiveGetGlobalSwitchResponse liveGetGlobalSwitchResponse;
        try {
            liveGetGlobalSwitchResponse = new LiveAccountServiceImpl().getGlobalSwitch(liveGetGlobalSwitchRequest);
            Assert.assertNotNull(liveGetGlobalSwitchResponse);
            if (liveGetGlobalSwitchResponse != null) {
                //to do something ......
                log.debug("测试查询全局频道设置成功 {}", JSON.toJSONString(liveGetGlobalSwitchResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveGetGlobalSwitchResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

此方法采用系统全局配置,不需要显式传递参数

返回对象描述

参数名类型说明

channelConcurrencesEnabled

String

最高同时在线人数修改开关 Y:开启 N:关闭

timelyConvertEnabled

String

自动转存开关 Y:开启 N:关闭

donateEnabled

String

打赏开关 Y:开启 N:关闭

rebirthAutoUploadEnabled

String

重制课件自动转存开关 Y:开启 N:关闭

rebirthAutoConvertEnabled

String

重制课件自动重制开关 Y:开启 N:关闭

pptCoveredEnabled

String

重制课件PPT铺满开关 Y:开启 N:关闭

coverImgType

String

播放器封面设置 contain:等比例缩放 cover:拉伸


27、修改全局频道设置

描述

修改全局频道设置
接口地址(仅做说明使用):https://api.polyv.net/live/v4/user/global-setting/switch/update

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testUpdateGlobalSwitch() throws IOException, NoSuchAlgorithmException {
        LiveUpdateGlobalSwitchRequest liveUpdateGlobalSwitchRequest = new LiveUpdateGlobalSwitchRequest();
        Boolean liveUpdateGlobalSwitchResponse;
        try {
            liveUpdateGlobalSwitchRequest.setChannelConcurrencesEnabled(LiveConstant.Flag.YES.getFlag())
                    .setCoverImgType("contain");
            liveUpdateGlobalSwitchResponse = new LiveAccountServiceImpl().updateGlobalSwitch(
                    liveUpdateGlobalSwitchRequest);
            Assert.assertNotNull(liveUpdateGlobalSwitchResponse);
            if (liveUpdateGlobalSwitchResponse != null) {
                //to do something ......
                log.debug("测试修改全局频道设置成功 {}", JSON.toJSONString(liveUpdateGlobalSwitchResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

channelConcurrencesEnabled

false

String

最高同时在线人数修改开关 Y:开启 N:关闭

timelyConvertEnabled

false

String

自动转存开关 Y:开启 N:关闭

donateEnabled

false

String

打赏开关 Y:开启 N:关闭

rebirthAutoUploadEnabled

false

String

重制课件自动转存开关 Y:开启 N:关闭

rebirthAutoConvertEnabled

false

String

重制课件自动重制开关 Y:开启 N:关闭

pptCoveredEnabled

false

String

重制课件PPT铺满开关 Y:开启 N:关闭

coverImgType

false

String

播放器封面设置 contain:等比例缩放 cover:拉伸

返回对象描述

修改全局频道设置返回实体


28、查询观看次数显示开关

描述

查询观看页观看次数显示开关
接口地址(仅做说明使用):https://api.polyv.net/live/v4/user/global-setting/pv-show/get

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testGetPVShowSetting() throws IOException, NoSuchAlgorithmException {
        LiveGetPVShowSettingRequest liveGetPVShowSettingRequest = new LiveGetPVShowSettingRequest();
        LiveGetPVShowSettingResponse liveGetPVShowSettingResponse;
        try {
            liveGetPVShowSettingResponse = new LiveAccountServiceImpl().getPVShowSetting(liveGetPVShowSettingRequest);
            Assert.assertNotNull(liveGetPVShowSettingResponse);
            if (liveGetPVShowSettingResponse != null) {
                //to do something ......
                log.debug("测试查询观看次数显示开关成功 {}", JSON.toJSONString(liveGetPVShowSettingResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveGetPVShowSettingResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

此方法采用系统全局配置,不需要显式传递参数

返回对象描述

参数名类型说明

enabled

String

观看页观看次数显示开关 Y:开启 N:关闭


29、修改观看次数显示开关

描述

修改观看页观看次数显示开关
接口地址(仅做说明使用):https://api.polyv.net/live/v4/user/global-setting/pv-show/update

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testUpdatePVShowSetting() throws IOException, NoSuchAlgorithmException {
        LiveUpdatePVShowSettingRequest liveUpdatePVShowSettingRequest = new LiveUpdatePVShowSettingRequest();
        Boolean liveUpdatePVShowSettingResponse;
        try {
            liveUpdatePVShowSettingRequest.setEnabled(LiveConstant.Flag.YES.getFlag());
            liveUpdatePVShowSettingResponse = new LiveAccountServiceImpl().updatePVShowSetting(
                    liveUpdatePVShowSettingRequest);
            Assert.assertNotNull(liveUpdatePVShowSettingResponse);
            if (liveUpdatePVShowSettingResponse != null) {
                //to do something ......
                log.debug("测试修改观看次数显示开关成功 {}", JSON.toJSONString(liveUpdatePVShowSettingResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

enabled

true

String

观看页观看次数显示开关 Y:开启 N:关闭

返回对象描述

修改观看次数显示开关返回实体


30、查询页脚设置

描述

查询全局页脚设置
接口地址(仅做说明使用):https://api.polyv.net/live/v4/user/global-setting/footer/get

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testGetFooterSetting() throws IOException, NoSuchAlgorithmException {
        LiveGetFooterSettingRequest liveGetFooterSettingRequest = new LiveGetFooterSettingRequest();
        LiveGetFooterSettingResponse liveGetFooterSettingResponse;
        try {
            liveGetFooterSettingResponse = new LiveAccountServiceImpl().getFooterSetting(liveGetFooterSettingRequest);
            Assert.assertNotNull(liveGetFooterSettingResponse);
            if (liveGetFooterSettingResponse != null) {
                //to do something ......
                log.debug("测试查询页脚设置成功 {}", JSON.toJSONString(liveGetFooterSettingResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveGetFooterSettingResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

此方法采用系统全局配置,不需要显式传递参数

返回对象描述

参数名类型说明

userId

String

POLYV用户ID,和保利威官网一致,获取路径:官网->登录->直播(开发设置)

showFooterEnabled

String

是否开启页脚 Y:开启 N:关闭

footerText

String

页脚文案

footTextLinkProtocol

String

页脚链接协议头

footTextLinkUrl

String

页脚链接地址


31、修改页脚设置

描述

修改全局页脚设置
接口地址(仅做说明使用):https://api.polyv.net/live/v4/user/global-setting/footer/update

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testUpdateFooterSetting() throws IOException, NoSuchAlgorithmException {
        LiveUpdateFooterSettingRequest liveUpdateFooterSettingRequest = new LiveUpdateFooterSettingRequest();
        Boolean liveUpdateFooterSettingResponse;
        try {
            liveUpdateFooterSettingRequest.setShowFooterEnabled(LiveConstant.Flag.YES.getFlag())
                    .setFooterText("保利威提供技术支持")
                    .setFootTextLinkProtocol("https://")
                    .setFootTextLinkUrl("www.polyv.net");
            liveUpdateFooterSettingResponse = new LiveAccountServiceImpl().updateFooterSetting(
                    liveUpdateFooterSettingRequest);
            Assert.assertNotNull(liveUpdateFooterSettingResponse);
            if (liveUpdateFooterSettingResponse != null) {
                //to do something ......
                log.debug("测试修改页脚设置成功 {}", JSON.toJSONString(liveUpdateFooterSettingResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

showFooterEnabled

false

String

是否开启页脚 Y:开启 N:关闭

footerText

false

String

页脚文案,最大长度12

footTextLinkProtocol

false

String

页脚链接协议头 http:// 或者 https://

footTextLinkUrl

false

String

页脚链接地址,最大长度50,不用带协议,例如:www.polyv.net

返回对象描述

修改页脚设置返回实体


32、查询观看页默认模板设置

描述

查询观看页默认模板设置
接口地址(仅做说明使用):https://api.polyv.net/live/v4/user/template/page-setting/get

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testGetPageSetting() throws IOException, NoSuchAlgorithmException {
        LiveGetPageSettingRequest liveGetPageSettingRequest = new LiveGetPageSettingRequest();
        LiveGetPageSettingResponse liveGetPageSettingResponse;
        try {
            liveGetPageSettingResponse = new LiveAccountServiceImpl().getPageSetting(liveGetPageSettingRequest);
            Assert.assertNotNull(liveGetPageSettingResponse);
            if (liveGetPageSettingResponse != null) {
                //to do something ......
                log.debug("测试查询观看页默认模板设置成功 {}", JSON.toJSONString(liveGetPageSettingResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveGetPageSettingResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

此方法采用系统全局配置,不需要显式传递参数

返回对象描述

参数名类型说明

autoPlayEnabled

String

自动播放开关,Y:开启,N:关闭

barrageEnabled

String

弹幕开关,Y:开启,N:关闭

barrageSpeed

String

弹幕速度,340:缓慢,270:较慢,200:标准,130:较快,60:快速

bookingEnabled

String

微信预约功能开关,Y:开启,N:关闭

closePreviewEnabled

String

观看页开关,Y:不显示观看页(仅允许集成SDK观看),N:显示观看页

flashPlayerEnabled

String

flash播放器开关,Y:开启,N:关闭

forbidFirefoxEnabled

String

禁止Firefox开关,Y:开启,N:关闭

mobileAudioEnabled

String

音视频切换开关,Y:开启,N:关闭

mobilePvShowLocation

String

观看次数移动端显示位置,player:播放器,desc:直播介绍

mobileWatchEnabled

String

移动观看页开关,Y:开启,N:关闭

pvShowEnabled

String

观看次数开关,Y:开启,N:关闭

recordingProtectEnabled

String

防弹窗播放开关,Y:开启,N:关闭

showCountdownEnabled

String

回放中显示“下一场次”倒计时 开关值,Y:开启,N:关闭

switchPlayerEnabled

String

允许观众切换h5及flash播放器,Y:允许,N:不允许;flash播放器开关为N时,该值不生效

viewerVerificationEnabled

String

观众实名认证开关,Y:开启,N:关闭

watchFeedbackEnabled

String

观众投诉开关,Y:开启,N:关闭

watchLangType

String

观看页语言,zh_CN:中文,en:英文,follow_browser:跟随浏览器

watchLayout

String

观看页布局,ppt文档为主、video视频为主、only-video仅视频、followTeacher跟随讲师


33、修改观看页默认模板设置

描述

修改观看页默认模板设置
接口地址(仅做说明使用):https://api.polyv.net/live/v4/user/template/page-setting/update

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testUpdatePageSetting() throws IOException, NoSuchAlgorithmException {
        LiveUpdatePageSettingRequest liveUpdatePageSettingRequest = new LiveUpdatePageSettingRequest();
        Boolean liveUpdatePageSettingResponse;
        try {
            liveUpdatePageSettingRequest.setAutoPlayEnabled("Y");
            liveUpdatePageSettingResponse = new LiveAccountServiceImpl().updatePageSetting(
                    liveUpdatePageSettingRequest);
            Assert.assertNotNull(liveUpdatePageSettingResponse);
            if (liveUpdatePageSettingResponse != null) {
                //to do something ......
                log.debug("测试修改观看页默认模板设置成功 {}", JSON.toJSONString(liveUpdatePageSettingResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

autoPlayEnabled

false

String

自动播放开关,Y:开启,N:关闭

barrageEnabled

false

String

弹幕开关,Y:开启,N:关闭

barrageSpeed

false

String

弹幕速度,340:缓慢,270:较慢,200:标准,130:较快,60:快速

bookingEnabled

false

String

微信预约功能开关,Y:开启,N:关闭

closePreviewEnabled

false

String

观看页开关,Y:不显示观看页(仅允许集成SDK观看),N:显示观看页

flashPlayerEnabled

false

String

flash播放器开关,Y:开启,N:关闭

forbidFirefoxEnabled

false

String

禁止Firefox开关,Y:开启,N:关闭

mobileAudioEnabled

false

String

音视频切换开关,Y:开启,N:关闭

mobilePvShowLocation

false

String

观看次数移动端显示位置,player:播放器,desc:直播介绍

mobileWatchEnabled

false

String

移动观看页开关,Y:开启,N:关闭

pvShowEnabled

false

String

观看次数开关,Y:开启,N:关闭

recordingProtectEnabled

false

String

防弹窗播放开关,Y:开启,N:关闭

showCountdownEnabled

false

String

回放中显示“下一场次”倒计时 开关值,Y:开启,N:关闭

switchPlayerEnabled

false

String

允许观众切换h5及flash播放器,Y:允许,N:不允许;flash播放器开关为N时,该值不生效

viewerVerificationEnabled

false

String

观众实名认证开关,Y:开启,N:关闭

watchFeedbackEnabled

false

String

观众投诉开关,Y:开启,N:关闭

watchLangType

false

String

观看页语言,zh_CN:中文,en:英文,follow_browser:跟随浏览器

watchLayout

false

String

观看页布局,ppt文档为主、video视频为主、only-video仅视频、followTeacher跟随讲师

返回对象描述

true为修改成功,false为修改失败


34、查询所有频道的回放视频

描述

查询账号下回放列表和点播列表, 注意:不包括暂存列表
接口地址(仅做说明使用):https://api.polyv.net/live/v3/user/playback/list

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testGetUserPlaybackList() throws IOException, NoSuchAlgorithmException {
        LiveListUserPlaybackRequest liveListUserPlaybackRequest = new LiveListUserPlaybackRequest();
        LiveListUserPlaybackResponse liveListUserPlaybackResponse;
        try {
            String channelId = super.createChannel();
            liveListUserPlaybackRequest.setChannelId(channelId);
            liveListUserPlaybackResponse = new LiveAccountServiceImpl().getUserPlaybackList(
                    liveListUserPlaybackRequest);
            Assert.assertNotNull(liveListUserPlaybackResponse);
            if (liveListUserPlaybackResponse != null) {
                //to do something ......
                log.debug("测试查询所有频道的回放视频成功 {}", JSON.toJSONString(liveListUserPlaybackResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveListUserPlaybackResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

channelId

false

String

频道号,不传查询账号下所有回放视频

page

false

String

页码,默认为1

pageSize

false

String

每页数据大小,默认为20,合法范围为1-1000

order

false

String

排序规则,取值 timeDesc:按createdTime降序 rankDesc:按rank降序 time:按createdTime升序 rank:按rank升序,默认是timeDesc

listType

false

String

playback:回放列表 vod:点播列表,默认是playback

返回对象描述

参数名类型说明

contents

Array

响应成功时返回回放视频列表信息【详见UserPlayback参数描述

pageSize

Integer

每页显示的数据条数,默认每页显示20条数据

currentPage

Integer

当前页【对应api文档的pageNumber字段】

totalItems

Integer

记录总条数

totalPage

Integer

总页数【对应api文档的totalPages字段】

UserPlayback参数描述

参数名类型说明

videoId

String

直播系统生成的id (视频库中的回放视频)

videoPoolId

String

点播视频vid (视频库中的回放视频)

userId

String

POLYV用户ID,和保利威官网一致,获取路径:官网->登录->直播(开发设置)

channelId

String

回放视频对应的直播频道号

title

String

视频标题

firstImage

String

视频首图

duration

String

视频长度,格式为HH:mm:ss

myBr

String

默认视频的播放清晰度 1:流畅 2:高清 3:超清

qid

String

访客信息收集id

seed

Integer

视频加密状态,1表示为加密状态,0为非加密

orderTime

Integer

关联点播视频的排序字段【对应api文档的ordertime字段】

createdTime

Date

添加为回放视频的日期

lastModified

Date

视频最后修改日期

rank

Integer

排序值,值越大优先级越高

asDefault

String

是否为默认播放视频,值为Y/N Y:是 N:否

url

String

视频播放地址,注:如果视频为加密视频,则此地址无法访问

channelSessionId

String

用于PPT请求数据,与PPT直播的回放相关,普通直播回放值为null

status

String

关联点播视频的状态,60、61审核通过

fileUrl

String

视频地址

fileId

String

回放视频转存前的暂存fileId

startTime

Date

直播开始时间

liveType

String

直播类型 alone:活动直播 ppt:三分屏 topclass:大班课 seminar:研讨会

width

Integer

视频宽度

height

Integer

视频高度

origin

String

转存文件来源 manual:手动录制 auto:自动录制 merge:合并 clip:裁剪

callbackUrl

String

转存视频时设置的回调地址

errorCount

Integer

处理失败的次数

lang

String

语言 zh_CN:中文 EN:英文

videoIdEN

String

英文回放videoId

enFileUrl

String

英文回放文件地址

mergeInfo

String

视频合并信息【对应api文档的mergeinfo字段】

watchUrl

String

观看回放视频的地址


35、查询默认模板防录屏设置

描述

查询防录屏默认模板设置
接口地址(仅做说明使用):https://api.polyv.net/live/v4/user/template/marquee/get

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testGetMarquee() throws IOException, NoSuchAlgorithmException {
        LiveGetMarqueeRequest liveGetMarqueeRequest = new LiveGetMarqueeRequest();
        LiveGetMarqueeResponse liveGetMarqueeResponse;
        try {
            liveGetMarqueeResponse = new LiveAccountServiceImpl().getMarquee(liveGetMarqueeRequest);
            Assert.assertNotNull(liveGetMarqueeResponse);
            if (liveGetMarqueeResponse != null) {
                //to do something ......
                log.debug("测试查询默认模板防录屏设置成功 {}", JSON.toJSONString(liveGetMarqueeResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveGetMarqueeResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

此方法采用系统全局配置,不需要显式传递参数

返回对象描述

参数名类型说明

enable

String

防录屏开关 Y:开启 N:关闭

antiRecordType

String

防录屏方式 marquee:跑马灯 watermark:水印

modelType

String

防录屏类型 fixed:固定 nickname:用户名 diyurl:url自定义设置

autoZoomEnabled

String

自定义缩放开关 Y:开启 N:关闭

content

String

固定值时为设置内容 URL自定义设置时为网址

opacity

Integer

透明度 跑马灯透明度,范围0-99 水印透明度,范围0-100

doubleEnabled

String

双跑马灯开关 Y:开启 N:关闭

fontColor

String

跑马灯字体颜色,色值,例如:#FFFFFF

fontSize

String

字体大小 防录屏方式为跑马灯时:设置数值,范围1-256 防录屏方式为水印时: small:小 middle:中 large:大

showMode

String

跑马灯显示方式 roll:滚动 flicker:闪烁


36、查询默认模板回放设置

描述

查询回放默认模板设置
接口地址(仅做说明使用):https://api.polyv.net/live/v4/user/template/playback-setting/get

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testGetTemplatePlaybackSetting() throws IOException, NoSuchAlgorithmException {
        LiveGetTemplatePlaybackSettingRequest liveGetTemplatePlaybackSettingRequest =
                new LiveGetTemplatePlaybackSettingRequest();
        LiveGetTemplatePlaybackSettingResponse liveGetTemplatePlaybackSettingResponse;
        try {
            liveGetTemplatePlaybackSettingResponse = new LiveAccountServiceImpl().getTemplatePlaybackSetting(
                    liveGetTemplatePlaybackSettingRequest);
            Assert.assertNotNull(liveGetTemplatePlaybackSettingResponse);
            if (liveGetTemplatePlaybackSettingResponse != null) {
                //to do something ......
                log.debug("测试查询默认模板回放设置成功 {}", JSON.toJSONString(liveGetTemplatePlaybackSettingResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回LiveGetTemplatePlaybackSettingResponse对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

此方法采用系统全局配置,不需要显式传递参数

返回对象描述

参数名类型说明

playbackEnabled

String

回放开关 Y:开启 N:关闭

type

String

观看页回放方式 single:单个视频 list:列表回放

origin

String

回放视频来源 record:暂存 playback:回放列表 vod:点播列表

sectionEnabled

String

章节开关 Y:开启 N:关闭

chatPlaybackEnabled

String

聊天回放开关 Y:开启 N:关闭


37、修改默认模板防录屏设置

描述

更新防录屏默认模板设置
接口地址(仅做说明使用):https://api.polyv.net/live/v4/user/template/marquee/update

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testUpdateMarquee() throws IOException, NoSuchAlgorithmException {
        LiveUpdateMarqueeRequest liveUpdateMarqueeRequest = new LiveUpdateMarqueeRequest();
        Boolean liveUpdateMarqueeResponse;
        try {
            liveUpdateMarqueeRequest.setAntiRecordType("marquee");
            liveUpdateMarqueeRequest.setAutoZoomEnabled("Y");
            liveUpdateMarqueeRequest.setContent("测试跑马灯内容test");
            liveUpdateMarqueeRequest.setDoubleEnabled("N");
            liveUpdateMarqueeRequest.setEnable("Y");
            liveUpdateMarqueeRequest.setFontColor("#ff4d4f");
            liveUpdateMarqueeRequest.setFontSize("20");
            liveUpdateMarqueeRequest.setModelType("fixed");
            liveUpdateMarqueeRequest.setOpacity(80);
            liveUpdateMarqueeRequest.setShowMode("flicker");
            liveUpdateMarqueeResponse = new LiveAccountServiceImpl().updateMarquee(liveUpdateMarqueeRequest);
            Assert.assertNotNull(liveUpdateMarqueeResponse);
            if (liveUpdateMarqueeResponse != null) {
                //to do something ......
                log.debug("测试修改默认模板防录屏设置成功 {}", JSON.toJSONString(liveUpdateMarqueeResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

enable

true

String

防录屏开关 Y:开启 N:关闭

antiRecordType

false

String

防录屏方式,防录屏开关开启时必填 marquee:跑马灯 watermark:水印

modelType

false

String

防录屏类型,防录屏开关开启时必填,水印方式时设置自定义URL无效 fixed:固定 nickname:用户名 diyurl:url自定义设置,仅跑马灯方式有效

content

false

String

防录屏类型是固定值时为设置内容 URL自定义设置时为网址,需要携带 http:// 或 https:// 防录屏类型为登录用户名时可不传,固定值和url自定义设置时必传

opacity

false

Integer

跑马灯透明度,范围0-99 水印透明度,范围0-100

fontSize

false

String

字体大小 防录屏方式为跑马灯时:设置数值,范围1-256 防录屏方式为水印时: small:小 middle:中 large:大

fontColor

false

String

跑马灯字体颜色,色值,例如:#FFFFFF

showMode

false

String

跑马灯显示方式 roll:滚动 flicker:闪烁

doubleEnabled

false

String

双跑马灯开关 Y:开启 N:关闭

autoZoomEnabled

false

String

自定义缩放开关 Y:开启 N:关闭

返回对象描述

修改默认模板防录屏设置返回实体


38、修改默认模板回放设置

描述

修改回放默认模板设置
接口地址(仅做说明使用):https://api.polyv.net/live/v4/user/template/playback-setting/update

调用约束

1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看

单元测试

	@Test
	public void testUpdatePlaybackSetting() throws IOException, NoSuchAlgorithmException {
        LiveUpdatePlaybackSettingRequest liveUpdatePlaybackSettingRequest = new LiveUpdatePlaybackSettingRequest();
        Boolean liveUpdatePlaybackSettingResponse;
        try {
            liveUpdatePlaybackSettingRequest.setChatPlaybackEnabled("Y");
            liveUpdatePlaybackSettingRequest.setOrigin("vod");
            liveUpdatePlaybackSettingRequest.setPlaybackEnabled("N");
            liveUpdatePlaybackSettingRequest.setSectionEnabled("N");
            liveUpdatePlaybackSettingRequest.setType("list");
            liveUpdatePlaybackSettingResponse = new LiveAccountServiceImpl().updatePlaybackSetting(
                    liveUpdatePlaybackSettingRequest);
            Assert.assertNotNull(liveUpdatePlaybackSettingResponse);
            if (liveUpdatePlaybackSettingResponse != null) {
                //to do something ......
                log.debug("测试修改默认模板回放设置成功 {}", JSON.toJSONString(liveUpdatePlaybackSettingResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

单元测试说明

1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;

2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]

3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]

请求入参描述

参数名必选类型说明

playbackEnabled

false

String

回放开关 Y:开启 N:关闭

type

false

String

观看页回放方式 single:单个视频 list:列表回放

origin

false

String

回放视频来源 record:暂存 playback:回放列表 vod:点播列表

sectionEnabled

false

String

章节开关 Y:开启 N:关闭

chatPlaybackEnabled

false

String

聊天回放开关 Y:开启 N:关闭

返回对象描述

修改默认模板回放设置返回实体

Last updated