保利威文档中心

幫助中心

webAuth

更新時間:2025-12-17 11:29:24

1、新增單一白名單

描述

添加单个白名单
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/auth/add-white-list

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testCreateChannelWhiteList() throws Exception, NoSuchAlgorithmException {
        LiveCreateChannelWhiteListRequest liveCreateChannelWhiteListRequest = new LiveCreateChannelWhiteListRequest();
        Boolean liveCreateChannelWhiteListResponse;
        try {
            liveCreateChannelWhiteListRequest.setRank(1)
                    .setCode(String.valueOf(System.currentTimeMillis()))
                    .setName("学员1");
            liveCreateChannelWhiteListResponse = new LiveWebAuthServiceImpl().createChannelWhiteList(
                    liveCreateChannelWhiteListRequest);
            Assert.assertNotNull(liveCreateChannelWhiteListResponse);
            if (liveCreateChannelWhiteListResponse) {
                //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 頻道號(傳入頻道號則新增頻道觀看白名單,不傳頻道號則新增全域觀看白名單)
rank true Integer 主要觀看條件為1,次要觀看條件為2
code true String 會員碼(最多50個字元)
name false String 暱稱(最多50個字元)
appId false String POLYV 使用者 APP_ID,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV 使用者 APP_SECRET,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

true 表示新增成功,false 表示新增失敗




2、查詢頻道觀看白名單列表

描述

查询频道观看白名单列表
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/auth/get-white-list

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testGetChannelWhiteList() throws Exception, NoSuchAlgorithmException {
        LiveChannelWhiteListRequest liveChannelWhiteListRequest = new LiveChannelWhiteListRequest();
        LiveChannelWhiteListResponse liveChannelWhiteListResponse;
        try {
            liveChannelWhiteListRequest.setChannelId(null)
                    .setRank(1)
                    .setKeyword(null)
                    .setPageSize(1);
            liveChannelWhiteListResponse = new LiveWebAuthServiceImpl().getChannelWhiteList(
                    liveChannelWhiteListRequest);
            Assert.assertNotNull(liveChannelWhiteListResponse);
            if (liveChannelWhiteListResponse != null) {
                //to do something ......
                log.debug("测试查询频道观看白名单列表成功,{}", JSON.toJSONString(liveChannelWhiteListResponse));
            }
        } 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、請求正確,回傳 LiveChannelWhiteListResponse 物件,B 端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.LivexxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 保利威請求返回資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因: invalid signature. ]

請求入參說明

參數名 必選 類型 說明
channelId false String 頻道號,不傳則為取得全域設定
rank true Integer 1 為首要條件,2 為次要條件
keyword false String 關鍵詞,可根據會員碼與名稱查詢
currentPage false Integer 頁數,預設為 1【對應 API 文件的 page 欄位】
pageSize false Integer 每頁顯示的資料筆數,預設每頁顯示 20 筆資料
appId false String POLYV 用戶 APP_ID,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV 用戶 APP_SECRET,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

參數名 類型 說明
contents Array 白名單列表【詳見ChannelWhiteList參數說明
pageSize Integer 每頁顯示的資料筆數,預設每頁顯示20筆資料
currentPage Integer 當前頁【對應API文件的pageNumber欄位】
totalItems Integer 記錄總筆數
totalPage Integer 總頁數【對應API文件的totalPages欄位】
ChannelWhiteList參數描述
參數名 類型 說明
name String 暱稱(或備註)
phone String 會員碼






3、查詢直播頻道觀看條件

描述

查询直播频道观看条件
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/auth/get

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testGetChannelAuth() throws Exception, NoSuchAlgorithmException {
        LiveChannelAuthRequest liveChannelAuthRequest = new LiveChannelAuthRequest();
        LiveChannelAuthResponse liveChannelAuthResponse;
        try {
            liveChannelAuthRequest.setChannelId(createChannel());
            liveChannelAuthResponse = new LiveWebAuthServiceImpl().getChannelAuth(liveChannelAuthRequest);
            Assert.assertNotNull(liveChannelAuthResponse);
            if (liveChannelAuthResponse != null) {
                //to do something ......
                log.debug("测试查询直播频道观看条件成功,{}", JSON.toJSONString(liveChannelAuthResponse));
            }
        } 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、請求正確,回傳 LiveChannelAuthResponse 物件,B端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.LivexxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 保利威請求回傳資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因:invalid signature. ]

請求入參說明

參數名 必選 類型 說明
channelId false String 頻道號,不填則取得全域觀看條件
appId false String POLYV 使用者 APP_ID,多帳號呼叫時此參數必填(即已呼叫 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV 使用者 APP_SECRET,多帳號呼叫時此參數必填(即已呼叫 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

參數名稱 類型 說明
authSettings Array 觀看條件【詳見AuthSetting參數說明
AuthSetting參數描述
參數名 類型 說明
rank Integer 通用參數:主要觀看條件為1,次要觀看條件為2
enabled String 通用參數:是否開啟,Y為開啟,N為關閉
authType String 通用參數:付費觀看-pay,驗證碼觀看-code,白名單觀看-phone,登記觀看-info,自定義授權觀看-custom,外部授權-external,直接授權-direct
subAuthType String authType為none時對應的值,public-公開觀看,wx-微信授權
wxAuthExpireValue String subAuthType為wx時,對應的微信授權有效期,例如:3d表示3天,3h表示3小時
payAuthTips String 付費觀看參數:歡迎語標題
price Float 付費觀看參數:價格,單位為元
watchEndTime Date 付費觀看參數:付費有效截止日期。當watchEndTime和validTimePeriod都為空時,表示付費永久有效
validTimePeriod Integer 付費觀看參數:付費有效時長,單位天。當watchEndTime和validTimePeriod都為空時,表示付費永久有效
authCode String 驗證碼觀看參數:驗證碼
qcodeTips String 驗證碼觀看參數:提示文案
qcodeImg String 驗證碼觀看參數:公眾號二維碼地址
authTips String 當authType為phone時,設定參數,非必填。提示文案
whiteListEntryText String 當authType為phone時,設定參數,非必填。白名單入口文案
whiteListInputTips String 當authType為phone時,設定參數,非必填。白名單輸入提示
infoFields Array 登記觀看參數,上限為5個【詳見InfoField參數描述
infoAuthTips String 當authType為info時,設定參數,非必填。歡迎標題
infoDesc String 當authType為info時,設定參數,非必填。提示資訊
infoEntryText String 當authType為info時,設定參數,非必填。入口文字
externalKey String 外部授權參數:SecretKey
externalUri String 外部授權參數:自訂url
externalRedirectUri String 外部授權參數:跳轉地址
externalEntryText String 外部授權觀看,入口文字
externalButtonEnabled String 外部授權觀看,登入按鈕。Y為開啟,N為關閉。開啟後使用者造訪連結時,引導頁面將顯示登入按鈕
customKey String 自訂授權參數:SecretKey
customUri String 自訂授權參數:自訂url
directKey String 直接授權參數:直接授權SecretKey
codeAuthTips String 密碼觀看條件提示資訊
codeEntryText String 密碼觀看入口文字
payEntryText String 付費入口文字
expectedArrivalEnabled String 白名單觀看到勤名單開關,Y-開,N-關,預設為N
onceWhitelistEnabled String 白名單觀看不允許重複使用,預設為N,Y:是、N:否
privacyStatus String 是否開啟隱私聲明,Y-開,N-關,預設為N
privacyContent String 隱私聲明內容
inviteWatchAuditEnabled String 邀請觀看審核開關,Y-開,N-關,預設為N
InfoField參數描述
參數名稱 類型 說明
name String 登記資訊名稱,最多8個字元
type String 登記類型,姓名-name,文字-text,手機號碼-mobile,數字-number,下拉選項-option,登記觀看時此欄位必填
options String 下拉選項時,下拉的選項值,以英文逗號分隔。選項個數上限為8個;選項內容最多8個字元
placeholder String 文字框輸入提示,最多8個字元
sms String 簡訊驗證開關,Y 開啟,N 關閉






4、設定觀看條件

描述

设置观看条件
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/auth/update

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testUpdateChannelAuth() throws Exception, NoSuchAlgorithmException {
        LiveUpdateChannelAuthRequest liveUpdateChannelAuthRequest = new LiveUpdateChannelAuthRequest();
        Boolean liveUpdateChannelAuthResponse;
        try {
            LiveChannelSettingRequest.AuthSetting authSetting = new LiveChannelSettingRequest.AuthSetting().setAuthType(
                    LiveConstant.AuthType.CODE.getDesc())
                    .setRank(1)
                    .setEnabled("Y")
                    .setAuthCode("123456")
                    .setQcodeTips("提示文案测试2")
                    .setQcodeImg("https://live.polyv.net/static/images/live-header-logo.png");
            List<LiveChannelSettingRequest.AuthSetting> authSettings =
                    new ArrayList<LiveChannelSettingRequest.AuthSetting>();
            authSettings.add(authSetting);
            LiveChannelSettingRequest.AuthSetting authSetting2 = new LiveChannelSettingRequest.AuthSetting().setAuthType(
                    LiveConstant.AuthType.DIRECT.getDesc())
                    .setRank(2)
                    .setEnabled("N")
                    //此处随机生成独立授权秘钥,对接时根据实际情况设置
                    .setDirectKey(super.getRandomString(10));
            authSettings.add(authSetting2);
            liveUpdateChannelAuthRequest.setChannelId(createChannel())
                    .setAuthSettings(authSettings);
            liveUpdateChannelAuthResponse = new LiveWebAuthServiceImpl().updateChannelAuth(
                    liveUpdateChannelAuthRequest);
            Assert.assertNotNull(liveUpdateChannelAuthResponse);
            if (liveUpdateChannelAuthResponse) {
                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參數描述
appId false String POLYV 使用者 APP_ID,多帳號呼叫時此參數必填(即已呼叫 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV 使用者 APP_SECRET,多帳號呼叫時此參數必填(即已呼叫 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
AuthSetting參數描述
參數名 必填 類型 說明
rank true Integer 通用參數:主要觀看條件為1,次要觀看條件為2
enabled true String 通用參數:是否開啟,Y為開啟,N為關閉
authType false String 通用參數:付費觀看-pay,驗證碼觀看-code,白名單觀看-phone,登記觀看-info,自訂授權觀看-custom,外部授權-external,直接授權-direct
subAuthType false String authType為none時對應的值,public-公開觀看,wx-微信授權
wxAuthExpireValue false String subAuthType為wx時,對應的微信授權有效期,例如: 3d表示3天,3h表示3小時
payAuthTips false String 付費觀看參數:歡迎語標題
price false Float 付費觀看參數:價格,單位為元
watchEndTime false Date 付費觀看參數:付費有效截止日期。當watchEndTime和validTimePeriod都為空時,表示付費永久有效
validTimePeriod false Integer 付費觀看參數:付費有效時長,單位天。當watchEndTime和validTimePeriod都為空時,表示付費永久有效
authCode false String 驗證碼觀看參數:驗證碼
qcodeTips false String 驗證碼觀看參數:提示文案
qcodeImg false String 驗證碼觀看參數:公眾號二維碼地址
authTips false String 當authType為phone時,設定參數,非必填。提示文案
whiteListEntryText false String 當authType為phone時,設定參數,非必填。白名單入口文案
whiteListInputTips false String 當authType為phone時,設定參數,非必填。白名單輸入提示
infoFields false Array 登記觀看參數,上限為5個【詳見InfoField參數描述
infoAuthTips false String 當authType為info時,設定參數,非必填。歡迎標題
infoDesc false String 當authType為info時,設定參數,非必填。提示資訊
infoEntryText false String 當authType為info時,設定參數,非必填。入口文字
externalKey false String 外部授權參數:SecretKey
externalUri false String 外部授權參數:自訂url
externalRedirectUri false String 外部授權參數:跳轉地址
externalEntryText false String 外部授權觀看,入口文字
externalButtonEnabled false String 外部授權觀看,登入按鈕。Y為開啟,N為關閉。開啟後使用者造訪連結時,引導頁面將顯示登入按鈕
customKey false String 自訂授權參數:SecretKey
customUri false String 自訂授權參數:自訂url
directKey false String 獨立授權:授權SecretKey
directRedirectUri false String 獨立授權參數:授權失敗地址
codeAuthTips false String 密碼觀看條件提示資訊
codeEntryText false String 密碼觀看入口文字
payEntryText false String 付費入口文字
expectedArrivalEnabled false String 白名單觀看到勤名單開關,Y-開,N-關,預設為N
onceWhitelistEnabled false String 白名單觀看不允許重複使用,預設為N,Y:是、N:否
privacyStatus false String 是否開啟隱私聲明,Y-開,N-關,預設為N
privacyContent false String 隱私聲明內容
inviteWatchAuditEnabled false String 邀請觀看審核開關,Y-開,N-關,預設為N
InfoField參數描述
參數名 必選 類型 說明
name false String 登記資訊名稱,最多8個字元
type true String 登記類型,姓名-name,文字-text,手機號碼-mobile,數字-number,下拉選項-option,登記觀看時此欄位必填
options false String 下拉選項時,下拉的選項值,以英文逗號分隔。選項個數上限為8個;選項內容最多8個字元
placeholder false String 文字框輸入提示,最多8個字元
sms false String 簡訊驗證開關,Y 開啟,N 關閉

回傳物件描述

true 表示設定觀看條件成功,false 表示設定失敗




5、透過介面設定外部授權

描述

通过接口设置外部授权
接口地址(仅做说明使用):https://api.polyv.net/live/v2/channelSetting/%s/auth-external

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testUpdateChannelAuthExternal() throws Exception, NoSuchAlgorithmException {
        LiveChannelAuthExternalRequest liveChannelAuthExternalRequest = new LiveChannelAuthExternalRequest();
        LiveChannelAuthExternalResponse liveChannelAuthExternalResponse;
        try {
            liveChannelAuthExternalRequest.setChannelId(createChannel())
                    .setExternalUri("https://help.polyv.net/");
            liveChannelAuthExternalResponse = new LiveWebAuthServiceImpl().updateChannelAuthExternal(
                    liveChannelAuthExternalRequest);
            Assert.assertNotNull(liveChannelAuthExternalResponse);
            if (liveChannelAuthExternalResponse != null) {
                //to do something ......
                log.debug("测试通过接口设置外部授权成功,{}", JSON.toJSONString(liveChannelAuthExternalResponse));
            }
        } 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、請求正確,回傳 LiveChannelAuthExternalResponse 物件,B 端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.LivexxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 保利威請求返回資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因: invalid signature. ]

請求入參描述

參數名 必選 類型 說明
userId false String POLYV 使用者 ID,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
channelId false String 頻道號,提交後對某頻道號設定,不提交則對帳號下所有頻道號進行設定
externalUri true String 取得使用者資訊介面位址
appId false String POLYV 使用者 APP_ID,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV 使用者 APP_SECRET,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

參數名稱 類型 說明
channelAuthExternals Array 外部授權【詳見ChannelAuthExternal參數說明
ChannelAuthExternal參數描述
參數名稱 類型 說明
channelId String 設定的頻道號
secretKey String 頻道號對應外部授權的 secretKey






6、設定自訂授權地址

描述

设置自定义授权地址
接口地址(仅做说明使用):https://api.polyv.net/live/v2/channelSetting/%s/oauth-custom

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testUpdateChannelAuthCustom() throws Exception, NoSuchAlgorithmException {
        LiveChannelAuthCustomRequest liveChannelAuthCustomRequest = new LiveChannelAuthCustomRequest();
        LiveChannelAuthCustomResponse liveChannelAuthCustomResponse;
        try {
            liveChannelAuthCustomRequest.setChannelId(createChannel())
                    .setCustomUri("https://help.polyv.net/");
            liveChannelAuthCustomResponse = new LiveWebAuthServiceImpl().updateChannelAuthCustom(
                    liveChannelAuthCustomRequest);
            Assert.assertNotNull(liveChannelAuthCustomResponse);
            if (liveChannelAuthCustomResponse != null) {
                //to do something ......
                log.debug("测试设置自定义授权地址成功,{}", JSON.toJSONString(liveChannelAuthCustomResponse));
            }
        } 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、請求正確,回傳 LiveChannelAuthCustomResponse 物件,B 端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.LivexxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 保利威請求回傳資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因: invalid signature. ]

請求入參描述

參數名稱 必填 類型 說明
userId false String POLYV 用戶 ID,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
channelId false String 頻道號,提交後對某頻道號設定,不提交則對帳號下所有頻道號進行設定
customUri true String 自訂授權地址
appId false String POLYV 用戶 APP_ID,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV 用戶 APP_SECRET,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

參數名 類型 說明
channelAuthExternals Array 外部授權【詳見ChannelAuthExternal參數說明
ChannelAuthExternal參數描述
參數名稱 類型 說明
channelId String 設定的頻道號
secretKey String 頻道號對應的自訂授權 secretKey






7、設定授權認證URL

描述

设置授权认证URL
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/restrict/update-auth-url

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testUpdateChannelAuthUrl() throws Exception, NoSuchAlgorithmException {
        LiveUpdateChannelAuthUrlRequest liveUpdateChannelAuthUrlRequest = new LiveUpdateChannelAuthUrlRequest();
        Boolean liveUpdateChannelAuthUrlResponse;
        try {
            liveUpdateChannelAuthUrlRequest.setChannelId(createChannel())
                    .setUrl("http://www.polyv.net");
            liveUpdateChannelAuthUrlResponse = new LiveWebAuthServiceImpl().updateChannelAuthUrl(
                    liveUpdateChannelAuthUrlRequest);
            Assert.assertNotNull(liveUpdateChannelAuthUrlResponse);
            if (liveUpdateChannelAuthUrlResponse != null) {
                //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. ]

請求入參說明

參數名 必填 類型 說明
channelId String 頻道號,無此參數則為全域設定
url String 授權認證 URL,為空時清除設定
appId String POLYV 使用者 APP_ID,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret String POLYV 使用者 APP_SECRET,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

true 為設定成功,false 為設定失敗




8、設定授權觀看類型

描述

设置授权观看类型
接口地址(仅做说明使用):https://api.polyv.net/live/v2/channelSetting/%s/set-auth-type

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testUpdateChannelAuthType() throws Exception, NoSuchAlgorithmException {
        LiveChannelAuthTypeRequest liveChannelAuthTypeRequest = new LiveChannelAuthTypeRequest();
        Boolean liveChannelAuthTypeResponse;
        try {
            liveChannelAuthTypeRequest.setChannelId(createChannel())
                    .setAuthType("none");
            liveChannelAuthTypeResponse = new LiveWebAuthServiceImpl().updateChannelAuthType(
                    liveChannelAuthTypeRequest);
            Assert.assertTrue(liveChannelAuthTypeResponse);
            if (liveChannelAuthTypeResponse) {
                //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 true String 頻道號
authType true String 觀看條件類型,預設值為 none(關閉觀看條件)
appId false String POLYV 使用者 APP_ID,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV 使用者 APP_SECRET,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

true 表示授權成功,false 表示授權失敗




9、更新白名單

描述

更新白名单
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/auth/update-white-list

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testUpdateChannelWhiteList() throws Exception, NoSuchAlgorithmException {
        LiveUpdateChannelWhiteListRequest liveUpdateChannelWhiteListRequest = new LiveUpdateChannelWhiteListRequest();
        Boolean liveUpdateChannelWhiteListResponse;
        try {
            liveUpdateChannelWhiteListRequest.setChannelId(null)
                    .setRank(1)
                    .setOldCode("1605067278063")
                    .setCode("1605067278063")
                    .setName("学员2");
            liveUpdateChannelWhiteListResponse = new LiveWebAuthServiceImpl().updateChannelWhiteList(
                    liveUpdateChannelWhiteListRequest);
            Assert.assertNotNull(liveUpdateChannelWhiteListResponse);
            if (liveUpdateChannelWhiteListResponse) {
                //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 頻道號(傳入頻道號則修改頻道觀看白名單,不傳入頻道號則修改全域觀看白名單)
rank true Integer 主要觀看條件為1,次要觀看條件為2
oldCode true String 舊會員碼
code true String 會員碼(最多50個字元)
name false String 暱稱(最多50個字元)
appId false String POLYV 使用者 APP_ID,多帳號呼叫時此參數必填(即已呼叫 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV 使用者 APP_SECRET,多帳號呼叫時此參數必填(即已呼叫 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

true 表示更新成功,false 表示失敗




10、刪除白名單

描述

用于删除指定观看白名单(支持一键清空)
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/auth/delete-white-list

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testDeleteChannelWhiteList() throws Exception, NoSuchAlgorithmException {
        LiveDeleteChannelWhiteListRequest liveDeleteChannelWhiteListRequest = new LiveDeleteChannelWhiteListRequest();
        Boolean liveDeleteChannelWhiteListResponse;
        try {
            liveDeleteChannelWhiteListRequest.setChannelId(null)
                    .setRank(1)
                    .setIsClear("N")
                    .setCode("1605052902421");
            liveDeleteChannelWhiteListResponse = new LiveWebAuthServiceImpl().deleteChannelWhiteList(
                    liveDeleteChannelWhiteListRequest);
            Assert.assertNotNull(liveDeleteChannelWhiteListResponse);
            if (liveDeleteChannelWhiteListResponse) {
                //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 頻道號(傳入頻道號則修改該頻道的觀看白名單,不傳入頻道號則修改全域觀看白名單)
rank true Integer 主要觀看條件為1,次要觀看條件為2
isClear true String 是否一鍵清空白名單
Y:清空白名單
N:根據請求參數code刪除白名單
code false String 會員碼(isClear 為N時為必傳參數)
appId false String POLYV用戶APP_ID,多帳號調用時該參數必填(即調用了initMultiAccount()設定多帳號調用),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV用戶APP_SECRET,多帳號調用時該參數必填(即調用了initMultiAccount()設定多帳號調用),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

true 表示刪除成功,false 表示失敗




11、查詢頻道或全域登記觀看欄位

描述

查询频道或全局登记观看字段
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/auth/get-record-field

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testGetChannelAuthField() throws Exception, NoSuchAlgorithmException {
        LiveChannelAuthFieldRequest liveChannelAuthFieldRequest = new LiveChannelAuthFieldRequest();
        LiveChannelAuthFieldResponse liveChannelAuthFieldResponse;
        try {
            liveChannelAuthFieldRequest.setChannelId(createChannel())
                    .setRank(1);
            liveChannelAuthFieldResponse = new LiveWebAuthServiceImpl().getChannelAuthField(
                    liveChannelAuthFieldRequest);
            Assert.assertNotNull(liveChannelAuthFieldResponse);
            if (liveChannelAuthFieldResponse != null) {
                //to do something ......
                log.debug("测试查询频道或全局登记观看字段成功,{}", JSON.toJSONString(liveChannelAuthFieldResponse));
            }
        } 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、請求正確,回傳 LiveChannelAuthFieldResponse 物件,B 端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.LivexxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 保利威請求回傳資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因:invalid signature. ]

請求參數說明

參數名 必填 類型 說明
rank true Integer 主要觀看條件為1,次要觀看條件為2
channelId false String 頻道號,不填則取得全域設定
appId false String POLYV 使用者 APP_ID,多帳號呼叫時此參數必填(即已呼叫 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網 -> 登入 -> 直播(開發設定)
appSecret false String POLYV 使用者 APP_SECRET,多帳號呼叫時此參數必填(即已呼叫 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網 -> 登入 -> 直播(開發設定)

回傳物件描述

參數名稱 類型 說明
channelAuthFields Array 登記觀看欄位【詳見ChannelAuthField參數說明
ChannelAuthField參數描述
參數名 類型 說明
type String 登記觀看類型。name-姓名;mobile-手機號碼;number-數字;option-下拉選單;text-文字
name String 登記觀看資訊標題
placeholder String 登記觀看資訊描述
options String 登記觀看為下拉選單時的選項,選項值以英文逗號分隔






12、查詢頁面登記觀看列表

描述

查询页面登记观看列表
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/auth/get-record-info

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testGetChannelAuthInfo() throws Exception, NoSuchAlgorithmException {
        LiveChannelAuthInfoRequest liveChannelAuthInfoRequest = new LiveChannelAuthInfoRequest();
        LiveChannelAuthInfoResponse liveChannelAuthInfoResponse;
        try {
            liveChannelAuthInfoRequest.setChannelId(createChannel());
            liveChannelAuthInfoResponse = new LiveWebAuthServiceImpl().getChannelAuthInfo(liveChannelAuthInfoRequest);
            Assert.assertNotNull(liveChannelAuthInfoResponse);
            if (liveChannelAuthInfoResponse != null) {
                //to do something ......
                log.debug("测试查询页面登记观看列表成功,{}", JSON.toJSONString(liveChannelAuthInfoResponse));
            }
        } 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、請求正確,回傳 LiveChannelAuthInfoResponse 物件,B 端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.LivexxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤資訊請見 PloyvSdkException.getMessage(),例如 [ 保利威請求回傳資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因:invalid signature. ]

請求入參說明

參數名 必填 類型 說明
channelId true String 頻道號
currentPage false Integer 頁碼,預設為1【對應 API 文件的 page 欄位】
pageSize false Integer 每頁顯示的資料筆數,預設每頁顯示20筆資料
appId false String POLYV 用戶 APP_ID,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV 用戶 APP_SECRET,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

參數名 類型 說明
contents Array 頁面登記記錄【詳見ChannelAuthInfo參數說明
pageSize Integer 每頁顯示的資料筆數,預設每頁顯示20筆資料
currentPage Integer 當前頁【對應API文件的pageNumber欄位】
totalItems Integer 記錄總筆數
totalPage Integer 總頁數【對應API文件的totalPages欄位】
ChannelAuthInfo參數描述
參數名 類型 說明
createdTime Date 登記時間
params Array 登記的內容資料






13、下載頻道登記觀看記錄

描述

接口用于下载频道的登记观看列表,包含登记观看记录字段和数据内容
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/auth/download-record-info

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testDownloadChannelAuthInfo() throws Exception, NoSuchAlgorithmException {
        LiveDownloadChannelAuthInfoRequest liveDownloadChannelAuthInfoRequest =
                new LiveDownloadChannelAuthInfoRequest();
        byte[] liveDownloadChannelAuthInfoResponse;
        try {
            //path设置为下载文件路径
            String path = Paths.get(getClass().getResource("/file/").toURI()).toString() + "downLoad.xlsx";
            liveDownloadChannelAuthInfoRequest.setChannelId(createChannel())
                    .setRank(1);
            liveDownloadChannelAuthInfoResponse = new LiveWebAuthServiceImpl().downloadChannelAuthInfo(
                    liveDownloadChannelAuthInfoRequest);
            Assert.assertNotNull(liveDownloadChannelAuthInfoResponse);
            if (liveDownloadChannelAuthInfoResponse != null) {
                FileUtil.writeFile(liveDownloadChannelAuthInfoResponse, path);
                //to do something ......
                log.debug("测试下载频道登记观看记录成功, 文件长度 {}", liveDownloadChannelAuthInfoResponse.length);
            }
        } 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、請求正確,回傳 byte[] 物件,B 端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.LivexxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤資訊請參閱 PloyvSdkException.getMessage(),例如 [ 保利威請求回傳資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因: invalid signature. ]

請求入參說明

參數名 必選 類型 說明
channelId true String 頻道號
rank true Integer 1為首要條件,2為次要條件。影響匯出的表格表頭
appId false String POLYV使用者APP_ID,多帳號呼叫時此參數必填(即呼叫了initMultiAccount()設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV使用者APP_SECRET,多帳號呼叫時此參數必填(即呼叫了initMultiAccount()設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

返回的byte[]可以依照單元測試範例進行儲存,也可以自行處理。




14、新增白名單

描述

用于设置频道或全局观看条件中的白名单列表
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/auth/upload-white-list

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testUploadWhiteList() throws Exception, NoSuchAlgorithmException {
        LiveUploadWhiteListRequest liveUploadWhiteListRequest = new LiveUploadWhiteListRequest();
        Boolean liveUploadWhiteListResponse;
        try {
            //path设置为模板文件路径(已填写完数据)
            String path = getClass().getResource("/file/WhiteListTemplate.xls").getPath();
            liveUploadWhiteListRequest.setChannelId(createChannel())
                    .setRank(1)
                    .setFile(new File(path));
            liveUploadWhiteListResponse = new LiveWebAuthServiceImpl().uploadWhiteList(liveUploadWhiteListRequest);
            Assert.assertTrue(liveUploadWhiteListResponse);
            if (liveUploadWhiteListResponse) {
                //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 頻道號,無該參數為全域設定
rank true Integer 主要觀看條件為1,次要觀看條件為2
file true File 白名單檔案(白名單模板
appId false String POLYV 使用者 APP_ID,多帳號呼叫時該參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV 使用者 APP_SECRET,多帳號呼叫時該參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

如匯入資料與現有列表資料的會員碼一致,則會以匯入的暱稱覆蓋現有暱稱。




15、下載頻道觀看白名單列表

描述

用于下载全局或频道的观看条件白名单列表
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/auth/download-white-list

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testDownloadChannelWhiteList() throws Exception, NoSuchAlgorithmException {
       LiveDownloadChannelWhiteListRequest liveDownloadChannelWhiteListRequest = new LiveDownloadChannelWhiteListRequest();
        byte[] liveDownloadChannelWhiteListResponse;
        try {
            //path设置为下载文件路径
            String path = Paths.get(getClass().getResource("/file/").toURI()).toString() + "downLoadWhiteList.xlsx";
            liveDownloadChannelWhiteListRequest.setChannelId(createChannel())
                    .setRank(1);
            liveDownloadChannelWhiteListResponse = new LiveWebAuthServiceImpl().downloadChannelWhiteList(
                    liveDownloadChannelWhiteListRequest);
            Assert.assertNotNull(liveDownloadChannelWhiteListResponse);
            if (liveDownloadChannelWhiteListResponse != null) {
                FileUtil.writeFile(liveDownloadChannelWhiteListResponse, path);
                //to do something ......
                log.debug("测试下载频道观看白名单列表成功, 文件长度 {}", liveDownloadChannelWhiteListResponse.length);
            }
        } 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、請求正確,回傳 byte[] 物件,B 端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.LivexxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤資訊請見 PloyvSdkException.getMessage(),例如 [ 保利威請求回傳資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因: invalid signature. ]

請求入參說明

參數名 必選 類型 說明
channelId false String 頻道號,要下載的頻道號,不傳則為全域設定
rank true Integer 1 為首要條件,2 為次要條件
appId false String POLYV 使用者 APP_ID,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV 使用者 APP_SECRET,多帳號呼叫時此參數必填(即呼叫了 initMultiAccount() 設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

返回的byte[]可以按照單元測試範例進行儲存,也可以自行處理。

联系客服,在线咨询