保利威文档中心

幫助中心

channelDoc

更新時間:2025-09-11 15:18:09

1、上傳頻道文件

描述

上传频道文档
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/document/upload-doc

呼叫限制

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

2、上傳的檔案不超過200M,格式限制為(ppt, pdf,pptx,doc,docx,wps,xls,xlsx)

3、file和url只需要傳遞其中一個,如果傳遞了url和file,以file欄位為準

單元測試

    @Test
    public void testCreateChannelDoc() throws Exception, NoSuchAlgorithmException {
        LiveCreateChannelDocRequest liveCreateChannelDocRequest = new LiveCreateChannelDocRequest();
        LiveCreateChannelDocResponse liveCreateChannelDocResponse;
        try {
            String path = getClass().getResource("/file/PPT.pptx").getPath();
            liveCreateChannelDocRequest.setChannelId(super.createChannel())
                    .setType("common")
//                    .setFile(new File(path))
                    .setUrl("https://help.polyv.net/third_res/PPT.pptx")
                    .setDocName("唐诗三百首")
                    .setCallbackUrl("http://www.baidu.com/callback");
            liveCreateChannelDocResponse = new LiveChannelDocServiceImpl().createChannelDoc(
                    liveCreateChannelDocRequest);
            Assert.assertNotNull(liveCreateChannelDocResponse);
            if (liveCreateChannelDocResponse != null) {
                //to do something ......
                log.debug("测试上传频道文档成功,{}", liveCreateChannelDocResponse);
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage(),B
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

單元測試說明

1、請求正確,回傳LiveCreateChannelDocResponse物件,B端依據此物件處理業務邏輯;

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

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

請求入參描述

參數名 必選 類型 說明
channelId true String 頻道號
type false String 轉換類型('common':轉普通圖片, 'animate':轉動畫效果)預設不傳轉普通,因為只有ppt,pptx可以轉動畫,其他類型檔案會自動轉成普通;檔案轉動畫轉失敗會直接把類型轉為普通
file false File 上傳的檔案不超過200M,格式限制為(ppt, pdf,pptx,doc,docx,wps, xls,xlsx)
docName false String 文件名稱(不傳預設使用ppt上傳的檔案取得的檔案名稱作為文件名稱,文件名稱不得超過100個字元)
callbackUrl false String 文件上傳轉換成功回呼位址
url false String 檔案位址url(需要可存取的位址),file和url只需要傳遞其中一個,如果傳遞了url和file,以file欄位為準
appId false String POLYV使用者APP_ID,多帳號呼叫時該參數必填(即呼叫了initMultiAccount()設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV使用者APP_SECRET,多帳號呼叫時該參數必填(即呼叫了initMultiAccount()設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

參數名 類型 說明
fileId String 成功時回傳檔案ID
autoId Integer 成功時回傳檔案記錄自增識別碼id
type String 轉換類型(common:轉普通圖片,animate:轉動畫效果)只有ppt,pptx會轉動畫,其中會自動轉成普通,轉動畫轉失敗也會直接把類型轉為普通
status String 檔案轉換狀態(normal:正常,waitConvert:轉換PPT中,failConvert:轉換PPT失敗)






2、查詢頻道文件轉換狀態

描述

查询频道文档转换状态
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/document/status/get

呼叫限制

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

單元測試

    @Test
    public void testGetChannelDocStatus() throws Exception, NoSuchAlgorithmException {
        LiveChannelDocStatusRequest liveChannelDocStatusRequest = new LiveChannelDocStatusRequest();
        LiveChannelDocStatusResponse liveChannelDocStatusResponse;
        try {
            String channelId = super.createChannel();
            liveChannelDocStatusRequest.setChannelId(channelId)
                    .setFileId("c2d585857870f4eff024976e3a265c0b1965681common," +
                            "6e0603f6c8ec6113b87f69a7191d22021965681common");
            liveChannelDocStatusResponse = new LiveChannelDocServiceImpl().getChannelDocStatus(
                    liveChannelDocStatusRequest);
            Assert.assertNotNull(liveChannelDocStatusResponse);
            if (liveChannelDocStatusResponse != null) {
                //to do something ......
                log.debug("测试查询频道文档转换状态成功,{}", JSON.toJSONString(liveChannelDocStatusResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage(),B
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

單元測試說明

1、請求正確,回傳LiveChannelDocStatusResponse物件,B端依據此物件處理業務邏輯;

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

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

請求入參描述

參數名 必選 類型 說明
channelId true String 頻道號
fileId true String 檔案ID,(如果有多個,可以用英文逗號隔開拼接成字串)
appId false String POLYV使用者APP_ID,多帳號呼叫時該參數必填(即呼叫了initMultiAccount()設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV使用者APP_SECRET,多帳號呼叫時該參數必填(即呼叫了initMultiAccount()設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

參數名 類型 說明
channelDocStatuses Array 頻道文件列表轉換資訊【詳見ChannelDocStatus參數描述
ChannelDocStatus參數描述
參數名 類型 說明
convertStatus String 轉換狀態. ("normal":正常。"failUpload": 上傳失敗。"waitConvert": 轉換PPT中。"failConvert": 轉換失敗,失敗原因會回傳在data[0].errorMsg欄位中展示)
errorMsg String 錯誤資訊(轉換失敗原因,convertStatus="failConvert" 回傳)
totalPage Integer 總頁數(convertStatus="normal" 回傳)
images Array 大圖位址陣列,(convertStatus="normal" 回傳)
smallImages Array 小圖位址陣列,(convertStatus="normal" 回傳)
imageCount Integer 大圖圖片數量,(convertStatus="normal" 回傳)
htmlUrl String 動畫PPT位址,(convertStatus="normal" 回傳)
fileId String 檔案ID






3、取得頻道文件列表

描述

获取频道文档列表
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/document/doc-list

呼叫限制

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

單元測試

    @Test
    public void testListChannelDoc() throws Exception, NoSuchAlgorithmException {
        LiveListChannelDocRequest liveListChannelDocRequest = new LiveListChannelDocRequest();
        LiveListChannelDocResponse liveListChannelDocResponse;
        try {
            String channelId = super.createChannel();
            liveListChannelDocRequest.setChannelId(channelId).setIsShowUrl("Y").setStatus(null);
            liveListChannelDocResponse = new LiveChannelDocServiceImpl().listChannelDoc(liveListChannelDocRequest);
            Assert.assertNotNull(liveListChannelDocResponse);
            if (liveListChannelDocResponse != null) {
                //to do something ......
                log.debug("测试获取频道文档列表成功,{}", JSON.toJSONString(liveListChannelDocResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage(),B
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

單元測試說明

1、請求正確,回傳LiveListChannelDocResponse物件,B端依據此物件處理業務邏輯;

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

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

請求入參描述

參數名 必選 類型 說明
channelId true String 頻道號
status false String 文件狀態,不傳查詢所有("normal":正常,"waitUpload":等待上傳,failUpload:上傳失敗,waitConvert:轉換PPT中,failConvert:轉換PPT失敗)
isShowUrl false String 是否展示PPT原始檔案位址,Y:是;N:否;預設為N
currentPage false Integer 頁數,預設為1【對應api文件的page欄位】
pageSize false Integer 每頁顯示的資料筆數,預設每頁顯示20筆資料【對應api文件的limit欄位】
appId false String POLYV使用者APP_ID,多帳號呼叫時該參數必填(即呼叫了initMultiAccount()設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV使用者APP_SECRET,多帳號呼叫時該參數必填(即呼叫了initMultiAccount()設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

參數名 類型 說明
contents Array 頻道文件【詳見ChannelDoc參數描述
pageSize Integer 每頁顯示的資料筆數,預設每頁顯示20筆資料
currentPage Integer 目前頁【對應api文件的pageNumber欄位】
totalItems Integer 記錄總筆數
totalPage Integer 總頁數【對應api文件的totalPages欄位】
ChannelDoc參數描述
參數名 類型 說明
autoId Integer 文件ID
fileId String 檔案ID
fileName String 檔案名稱
fileUrl String 檔案url(isShowUrl為'Y'的時候回傳檔案位址)
fileType String 檔案類型,如:.pdf
totalPage Integer PPT總頁數
channelId String 頻道號
status String ppt轉換狀態("normal":正常,"waitUpload":等待上傳,failUpload:上傳失敗,waitConvert:轉換PPT中,failConvert:轉換PPT失敗)
createTime Date 建立時間
convertType String 轉換類型(common:普通PPT,animate:動畫PPT)
type String 類型,區分舊版PPT還是新版PPT,新版值為"new",舊版值為"old"
previewImage String ppt預覽小圖位址,如:http://doc-2.polyv.net/x/xxx_0.jpeg






4、刪除頻道文件

描述

删除频道文档
接口地址(仅做说明使用):https://api.polyv.net/live/v3/channel/document/delete

呼叫限制

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

單元測試

    @Test
    public void testDeleteChannelDoc() throws Exception, NoSuchAlgorithmException {
        LiveDeleteChannelDocRequest liveDeleteChannelDocRequest = new LiveDeleteChannelDocRequest();
        Boolean liveDeleteChannelDocResponse;
        try {
            String channelId = super.createChannel();
            liveDeleteChannelDocRequest.setChannelId(channelId)
                    .setFileId("6897d12bd284dd1e9b8b8534b6af91c31965681common")
                    .setType("new");
            liveDeleteChannelDocResponse = new LiveChannelDocServiceImpl().deleteChannelDoc(
                    liveDeleteChannelDocRequest);
            Assert.assertTrue(liveDeleteChannelDocResponse);
            if (liveDeleteChannelDocResponse) {
                //to do something ......
                log.debug("测试删除频道文档成功");
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage(),B
            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 頻道號
fileId true String 檔案ID,(如果有多個,可以用英文逗號隔開拼接成字串)
type true String 新舊版檔案類型,old:舊版,new:新版【這個值可以從文件列表介面回傳資料的type(類型)中獲得】【多個檔案需要刪除,請按照fileId順序對應ppt新舊類型,用英文逗號隔開拼接成字串),type中的類型數量必須跟fileId中包含的ID數量一致】
appId false String POLYV使用者APP_ID,多帳號呼叫時該參數必填(即呼叫了initMultiAccount()設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV使用者APP_SECRET,多帳號呼叫時該參數必填(即呼叫了initMultiAccount()設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

true為刪除文件成功,false為刪除文件失敗




5、講師文件關係管理

描述

开启了“讲义库”功能后(如需开通请联系售后),通过此接口将讲师和公共讲义库中的文档关联起来,从而实现在不需要重复上传的情况下,多个讲师共用同一份文档
接口地址(仅做说明使用):https://api.polyv.net/live/v4/channel/doc/teacher/update-relation

呼叫限制

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

單元測試

    @Test
    public void testUpdateTeacherDocRelation() throws IOException, NoSuchAlgorithmException {
        LiveTeacherDocRelationRequest liveTeacherDocRelationRequest = new LiveTeacherDocRelationRequest();
        Boolean liveTeacherDocRelationResponse;
        try {
            liveTeacherDocRelationRequest.setTeacherId("4047763")
                    .setFileIds("702eaad1e22b218b79285eab77410af84047763common")
                    .setOperation(2);
            liveTeacherDocRelationResponse = new LiveChannelDocServiceImpl().UpdateTeacherDocRelation(
                    liveTeacherDocRelationRequest);
            Assert.assertNotNull(liveTeacherDocRelationResponse);
            if (liveTeacherDocRelationResponse != null) {
                //to do something ......
                log.debug("测试讲师文档关系管理成功 {}", JSON.toJSONString(liveTeacherDocRelationResponse));
            }
        } 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. ]

請求入參描述

參數名 必選 類型 說明
operation true Integer 操作, 1:新增綁定關係,若綁定關係已經存在,則不再新增,只更新關聯時間,查詢列表時預設會根據此關聯時間倒序排序 2:解除綁定關係
teacherId true String 講師ID,32個以內ASCII碼可見字元,係【建立頻道介面】或【更新頻道介面】所傳入的 customTeacherId
fileIds true String 文件ID,多個文件ID以,分隔,一次最多傳入100個
appId false String POLYV使用者APP_ID,多帳號呼叫時該參數必填(即呼叫了initMultiAccount()設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)
appSecret false String POLYV使用者APP_SECRET,多帳號呼叫時該參數必填(即呼叫了initMultiAccount()設定多帳號呼叫),透過註冊保利威官網取得,路徑:官網->登入->直播(開發設定)

回傳物件描述

true為關係修改成功,false為關係修改失敗

联系客服,在线咨询