保利威文档中心

帮助中心

authService

更新时间:2023-09-22 17:31:15

1、查询研讨会参会条件

描述

查询研讨会参会条件
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/seminar/setting/auth/get

调用约束

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

单元测试

    @Test
    public void testGetAuthSetting() throws IOException, NoSuchAlgorithmException {
        SeminarGetAuthSettingRequest seminarGetAuthSettingRequest = new SeminarGetAuthSettingRequest();
        List<SeminarGetAuthSettingResponse> seminarGetAuthSettingResponse;
        try {
            String channelId = super.getChannelId();
            seminarGetAuthSettingRequest.setChannelId(channelId);
            seminarGetAuthSettingResponse = new SeminarAuthServiceImpl().getAuthSetting(seminarGetAuthSettingRequest);
            Assert.assertNotNull(seminarGetAuthSettingResponse);
            if (seminarGetAuthSettingResponse != null) {
                //to do something ......
                log.debug("测试查询研讨会参会条件成功 {}", JSON.toJSONString(seminarGetAuthSettingResponse));
            }
        } 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、请求正确,返回SeminarGetAuthSettingResponse对象,B端依据此对象处理业务逻辑;

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

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

请求入参描述

参数名 必选 类型 说明
channelId true String 频道号

返回对象描述

返回对象是List<SeminarGetAuthSettingResponse>,SeminarGetAuthSettingResponse具体元素内容如下:

参数名 类型 说明
channelId String 频道号
userId String 用户ID
rank Integer 用于实现一个频道设置两个参会条件,为1或2(1为主要条件,2为次要条件)
enabled String 是否开启参会条件 N:关闭 Y:开启
authType String 参会条件类型 password:密码登录 direct:独立授权
roleCode String 角色 host:主持人 attendee:参会人
password String 密码登录的password
directKey String 独立授权key
roleName String 角色名称
customKey String 自定义授权观看的key
customUri String 自定义授权观看的接口地址






2、修改研讨会参会条件

描述

修改研讨会的登录条件
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/seminar/setting/auth/set

调用约束

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

2、主要参会条件不能关闭,否则返回参数错误

3、相同参会条件(主要参会条件/次要参会条件),不同角色的开关、认证类型必须相同,否则返回参数错误

4、相同参会条件(主要参会条件/次要参会条件),不同角色的密码/独立授权key必须不同,否则返回参数错误

5、当认证类型是密码登录时,密码不能为空;当认证类型是独立授权时,授权key不能为空,否则返回参数错误

6、主要参会条件和次要参会条件的类型为相同时,不能够同时打开,否则返回参数错误

单元测试

    @Test
    public void testSetAuthSetting() throws IOException, NoSuchAlgorithmException {
        SeminarSetAuthSettingRequest seminarSetAuthSettingRequest = new SeminarSetAuthSettingRequest();
        Boolean seminarSetAuthSettingResponse;
        try {
            String channelId = super.getChannelId();
            SeminarSetAuthSettingRequest.AuthSetting authSetting1 = new SeminarSetAuthSettingRequest.AuthSetting();
            SeminarSetAuthSettingRequest.AuthSetting authSetting2 = new SeminarSetAuthSettingRequest.AuthSetting();
            authSetting1.setRank(1)
                    .setEnabled(SeminarConstant.Flag.YES.getFlag())
                    .setAuthType(SeminarConstant.SeminarAuthType.PASSWORD.getCode())
                    .setRoleCode(SeminarConstant.RoleCode.ATTENDEE.getCode())
                    .setPassword(getRandomString(6));
            authSetting2.setRank(1)
                    .setEnabled(SeminarConstant.Flag.YES.getFlag())
                    .setAuthType(SeminarConstant.SeminarAuthType.PASSWORD.getCode())
                    .setRoleCode(SeminarConstant.RoleCode.HOST.getCode())
                    .setPassword(getRandomString(6));
            seminarSetAuthSettingRequest.setChannelId(channelId)
                    .setAuthSettings(Arrays.asList(authSetting1, authSetting2));
            seminarSetAuthSettingResponse = new SeminarAuthServiceImpl().setAuthSetting(seminarSetAuthSettingRequest);
            Assert.assertTrue(seminarSetAuthSettingResponse);
            if (seminarSetAuthSettingResponse) {
                //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 频道号,不传为全局设置
authSettings true Array 观看条件设置 【详见AuthSetting参数描述
AuthSetting参数描述
参数名 必选 类型 说明
rank true Integer 主要观看条件为1,次要观看条件为2
enabled true String 是否开启条件观看 N:关闭 Y:开启
roleCode true String 角色 host:主持人 attendee:参会人
authType false String 参会条件类型 password:密码登录 direct:独立授权
password false String 当authType为password时,密码登录的password
directKey false String 当authType为direct时,设置参数,非必填,独立授权SecretKey
customUri false String 当authType为custom时,为自定义授权自定义URL
customKey false String 当authType为custom时,为自定义授权SecretKey

返回对象描述

修改研讨会参会条件返回实体

联系客服,在线咨询