保利威文档中心

幫助中心

建立並初始化頻道

更新時間:2026-06-26 11:01:41

舊版接口地址建立單個頻道(舊版)

介面描述

1、根据请求参数与默认模板创建频道
2、(timestamp, appId)参与sign签名,并和sign一起通过url传递,请求体参数不参与签名,通过post请求体传递【请设置请求头contentType:application/json】
3、接口支持https协议

介面URL

http://api.polyv.net/live/v4/channel/create-init

線上API呼叫

請求方式

POST

介面限制

1、介面同時支援 HTTP 與 HTTPS,建議使用 HTTPS 以確保介面安全,介面呼叫有頻率限制,詳細請參閱

2、直播場景為雙師課、研討會時,不支援轉播類型設定;直播延遲為無延遲時,不支援轉播類型設定;

3、直播場景為研討會時,不支援直播延遲、轉播、連麥人數設定;

4、研討會場景下主持人密碼與參與者密碼不能相同;

請求參數說明

參數名 必填 類型 說明
appId String 帳號 appId【詳見取得金鑰
timestamp Long 目前13位毫秒級時間戳記,3分鐘內有效
sign String 簽名,為32位大寫的MD5值,產生簽名的 appSecret 金鑰作為通訊資料安全的關鍵資訊,嚴禁儲存在用戶端直接使用,所有API都必須透過客戶自己的伺服器中轉呼叫POLYV伺服器取得回應資料【詳見簽名產生規則

請求體參數說明

參數名稱 必填 類型 說明
basicSetting true Object 頻道基本資訊【詳見basicSetting欄位說明
masterAuthSetting false Object 主要觀看條件【詳見masterAuthSetting欄位說明
不傳此欄位,將依照預設模板設定值。
playbackSetting false Object 回放設定【詳見playbackSetting欄位說明
不傳此欄位,將依照預設模板設定值。
roles false Array 角色設定,包含講師、助教、嘉賓。
不傳此欄位,將依照預設模板設定角色資訊。
傳入此欄位,若未設定講師,將依照預設模板設定講師資訊。
傳入此欄位,若未設定助教、嘉賓則不會建立。最多設定10個角色【詳見roles欄位說明

basicSetting 參數說明

參數名 必填 類型 說明
name true String 直播名稱,最大長度 50
newScene true String 直播場景
topclass(大班課)
double(雙師課,該場景需開通)
train(企業培訓)
alone(活動行銷)
seminar(研討會)
smallclass(小班課)
template true String 直播模板
ppt(三分屏-橫屏)
portrait_ppt(三分屏-豎屏)
alone(純影片-橫屏)
portrait_alone(純影片-豎屏)
topclass(純影片極速-橫屏)
portrait_topclass(純影片極速-豎屏)
seminar(研討會)
欄位限制:
直播場景(newScene 欄位)為 topclass(大班課)時,欄位支援 ppt(三分屏-橫屏)、portrait_ppt(三分屏-豎屏)、alone(純影片-橫屏)、portrait_alone(純影片-豎屏)、topclass(純影片極速-橫屏)、portrait_topclass(純影片極速-豎屏)
直播場景(newScene 欄位)為 train(企業培訓)或 alone(活動行銷)時,該欄位支援 ppt(三分屏-橫屏)、portrait_ppt(三分屏-豎屏)、alone(純影片-橫屏)、portrait_alone(純影片-豎屏)
直播場景(newScene 欄位)為 double(雙師課)時,該欄位支援 ppt(三分屏-橫屏)、alone(純影片-橫屏)
直播場景(newScene 欄位)為 seminar(研討會)時,該欄位支援 seminar(研討會)
直播場景(newScene 欄位)為 guide(導播)時,該欄位支援 alone(純影片-橫屏)、portrait_alone(純影片-豎屏)
streamType false String 直播方式
client: 一般直播(預設值)
disk: 偽直播
channelPasswd false String 講師登入密碼,直播場景不是研討會時有效,長度 6-16 位,必須同時包含字母和數字,不傳則由系統隨機生成
seminarHostPassword false String 研討會主持人密碼,僅直播場景是研討會時有效,長度 6-16 位,必須同時包含字母和數字,不傳則由系統隨機生成
seminarAttendeePassword false String 研討會與會人密碼,僅直播場景是研討會時有效,長度 6-16 位,必須同時包含字母和數字,不傳則由系統隨機生成
categoryId false Integer 分類 ID
startTime false Long 直播開始時間,13 位毫秒級時間戳【註:僅做直播前倒數計時顯示,不對講師開播操作產生影響】
endTime false Long 結束時間,時間戳,如:1629845600000,需大於當前時間【註:僅做未開播時直播狀態判斷顯示,不對講師開播操作產生影響】
pureRtcEnabled false String 無延遲直播開關,Y:開啟,N:關閉
type false String 頻道類型
發起轉播:transmit
接收轉播:receive
一般頻道:normal
createReceiveChannelCount false Integer 建立接收轉播頻道數量(僅當建立頻道類型為發起轉播,即 type 值為 transmit 時生效;最多支援同時建立 100 個轉播頻道)
doubleTeacherType false String 線上雙師房間類型 transmit 大房間、receive 小房間
cnAndEnLiveEnabled false String 中英雙語直播開關 Y 開、N 關
linkMicLimit false Integer 連麥人數限制,最多 16 人。為 0 表示關閉連麥。
該值為空時,則預設使用帳號的最大連麥人數(可聯繫商務修改)
description false String 直播介紹,最多 1024 字元長度(不支援富文本,建議用 menuDesc 代替)
menuDesc false String 選單管理,直播介紹(支援富文本,代替 description)
logoImg false String 直播間圖示位址,如果為空則使用預設模板設定
splashImg false String 引導頁圖片位址,非保利威域名下的圖片需先呼叫上傳頻道所有裝修圖片素材上傳,如果為空則使用預設模板設定
coverImg false String 播放器封面圖片,沒有直播和回放的時候顯示,不傳使用預設模板設定
subAccount false String 子帳號信箱,填寫時頻道會建立在該子帳號下(子帳號不能被刪除或停用),暫無法透過介面取得
customTeacherId false String 自訂講師 ID,32 個以內 ASCII 碼可見字元
watchLangType false String 觀看頁語言 (zh_CN:中文 / en:英文 / ja:日文 / ko:韓文 / zh_TW:繁體中文 / follow_browser:跟隨瀏覽器)
allowSwitchLangEnabled false String 允許觀眾切換語言開關
Y:允許
N:不允許
smallClassSizeLimit false Integer 小班課班型,僅直播場景是小班課時必填,可選值:1,6,12
isRecord false String 小班課錄製開關,僅直播場景是小班課時有效,Y:開啟,N:關閉,不傳則預設關閉
h5LowLatencyFlvEnabled false String 手機 H5 觀看頁低延遲開關,Y 表示開啟,N 表示關閉

masterAuthSetting 參數說明

參數名 必填 類型 說明
enabled true String 是否開啟觀看條件
Y:開啟
N:關閉
authType false String 觀看條件類型
code:驗證碼觀看
pay:付費觀看
custom:自訂授權觀看
external:外部授權觀看
direct:獨立授權觀看
authCode false String authType 為 code 時,設定參數,必填。觀看驗證碼,長度不超過 8 位
codeAuthTips false String authType 為 code 時,設定參數,非必填。歡迎標題,長度不超過 20 位,預設:歡迎觀看本次直播
qCodeTips false String authType 為 code 時,設定參數,非必填。驗證碼提示文案,長度不超過 30 位,預設:掃描 QR Code 獲得驗證碼
qCodeImg false String authType 為 code 時,設定參數,非必填。QR Code 圖片位址
payAuthTips true String 當 authType 為 pay 時,設定參數,必填。歡迎語標題,長度不超過 20 位
price true Float 當 authType 為 pay 時,設定參數,必填。價格,單位為元
watchEndTime false Long 當 authType 為 pay 時,設定參數,非必填。付費有效截止日期,十三位毫秒級時間戳
validTimePeriod false Integer 當 authType 為 pay 時,設定參數,非必填。付費有效時長,單位天。當 watchEndTime 和 validTimePeriod 都為空時,表示付費永久有效
customKey true String 當 authType 為 custom 時,設定參數,必填。SecretKey,長度不超過 10 位
customUri true String 當 authType 為 custom 時,設定參數,必填。自訂 URL
externalKey true String 當 authType 為 external 時,設定參數,必填。SecretKey,長度不超過 10 位
externalUri true String 當 authType 為 external 時,設定參數,必填。自訂 URL
externalRedirectUri false String 當 authType 為 external 時,設定參數,非必填。失敗跳轉位址
externalEntryText false String 當 authType 為 external 時,設定參數,非必填。入口文字,預設為:登入觀看
directKey true String 當 authType 為 direct 時,設定參數,必填。獨立授權 SecretKey,長度不超過 10 位

playbackSetting 參數說明

參數名 必選 類型 說明
playbackEnabled false String 回放開關
Y:開啟
N:關閉
sectionEnabled false string 回放設定,章節開關,Y:開啟,N:關閉
type false String 回放方式
single:單一回放
list:列表回放
origin false String 回放來源
record:暫存
playback:回放列表
vod:點播列表
註:type 為 single 時,該值只能為 record;type 為 list 時,該值只能為 playback 或 vod;

roles 參數說明

參數名 必填 類型 說明
role true String 角色類型
Teacher:講師
Assistant:助教
Guest:嘉賓
nickName false String 角色暱稱,長度限制為30個字元
actor false String 角色頭銜,長度限制為10個字元
passwd false String 角色密碼,密碼長度6-16位,必須包含數字和英文
avatar false String 角色頭像圖片網址,需包含通訊協定

範例

http://api.polyv.net/live/v4/channel/create-init?appId=frlr1zazn3&sign=4424EF1F6C767FC0E2FB4A912E566879&timestamp=1653879013148

請求體 JSON 參數:

{
    "basicSetting": {
        "template": "ppt",
        "newScene": "topclass",
        "type": "normal",
        "cnAndEnLiveEnabled": "N",
        "linkMicLimit": "5",
        "doubleTeacherType": "normal",
        "name": "polyv公开课",
        "startTime": "1747718040000",
        "pureRtcEnabled": "Y",
        "description": "通过游戏的带入课程<br/>让课堂生动有趣",
        "channelPasswd": "1a2b3c4d5e",
        "logoImg": "https://liveimages.videocc.net/uploaded/images/2021/09/g2bta2pjbw.jpg",
        "splashImg": "https://liveimages.videocc.net/uploaded/images/2021/09/g2bta2pjbw.jpg"
    },
    "masterAuthSetting": {
        "enabled": "Y",
        "authType": "code",
        "authCode": "123456"
    },
    "playbackSetting":{
        "playbackEnabled":"Y",
        "sectionEnabled":"Y",
        "type":"list",
        "origin":"vod"
    },
    "roles": [
        {
            "role": "Teacher"
        },
        {
            "role": "Assistant",
            "actor": "助教",
            "nickName": "勋助教"
        },
        {
            "role": "Guest",
            "passwd": "aSzqyd13qz",
            "actor": "嘉宾",
            "avatar": "https://s1.videocc.net/default-img/avatar/guest.png",
            "nickName": "王嘉宾"
        }
    ]
}

回應參數說明

參數名 類型 說明
code Integer 狀態碼,與 HTTP 狀態碼相同,用於確定基本的回應狀態
status String 回應結果,由業務決定,成功回傳 success,失敗回傳 error
success Boolean 是否成功回應
requestId String 請求 ID,每次請求產生的唯一 UUID,僅可用於排查與除錯,不應與業務相關聯
error Object 狀態碼非 200 時的錯誤資訊【詳見 Error 欄位說明
data Object 【詳見 data 欄位說明

Error 參數說明

參數名稱 類型 說明
code Integer 錯誤代碼,用於確定具體的錯誤原因
desc String 錯誤描述,與 error.code 對應

data 欄位說明

參數名 類型 說明
channelId String 頻道ID
name String 頻道名稱
userId String POLYV用戶ID,與保利威官網一致,取得路徑:官網->登入->直播(開發設定)
channelPasswd String 講師登入密碼,非研討會場景使用,長度6-16位
seminarHostPassword String 研討會主持人密碼,僅直播場景為研討會時回傳,長度6-16位
seminarAttendeePassword String 研討會與會者密碼,僅直播場景為研討會時回傳,長度6-16位
publisher String 主持人名稱
description String 直播介紹
newScene String 直播場景 (topclass-大班課 、 double-雙師課(該場景需開通) 、 train-企業培訓 、 seminar-研討會 、 alone-活動行銷)
template String 直播模板 (ppt-三分屏(橫屏) 、 portrait_ppt-三分屏(豎屏) 、 alone-純影片(橫屏) 、portrait_alone-純影片(豎屏) 、 topclass-純影片-極速(橫屏) 、 portrait_topclass-純影片-極速(豎屏) 、 seminar-研討會)
直播場景為topclass時,該欄位支援ppt、portrait_ppt、alone、portrait_alone、topclass、portrait_topclass
直播場景為train或alone時,該欄位支援ppt、portrait_ppt、alone、portrait_alone
直播場景為double時,該欄位支援ppt、alone
直播場景為seminar時,該欄位支援seminar
linkMicLimit Integer 連麥人數
pureRtcEnabled String 直播延遲
Y:無延遲
N:普通延遲
type String 頻道類型
發起轉播:transmit
接收轉播:receive
普通頻道:normal
currentTimeMillis Long 當前13位毫秒級時間戳

Java 請求範例

快速接入基礎程式碼請下載相關依賴原始碼點擊下載原始碼 ,下載後加入自己的原始碼工程中即可。測試案例中的 HttpUtil.java 和 LiveSignUtil.java 都包含在下載檔案中。

強烈建議您使用直播 Java SDK完成 API 的功能對接,直播 Java SDK 對 API 呼叫邏輯、異常處理、資料簽名、HTTP 請求執行緒池進行了統一封裝和最佳化。

private static final Logger log = LoggerFactory.getLogger(ChannelOperateTest.class);
/**
 * 创建单个频道
 * @throws IOException
 * @throws NoSuchAlgorithmException
 */
@Test
public void testCreateInit() throws IOException, NoSuchAlgorithmException {
    //公共参数,填写自己的实际参数
    String appId = super.appId;
    String appSecret = super.appSecret;
    String timestamp = String.valueOf(System.currentTimeMillis());
    
    //业务参数
    String url = "http://api.polyv.net/live/v4/channel/create-init";
    
    //http 调用逻辑
    Map<String, String> requestMap = new HashMap<>();
    requestMap.put("appId", appId);
    requestMap.put("timestamp", timestamp);
    
    requestMap.put("sign", LiveSignUtil.getSign(requestMap, appSecret));
    url = HttpUtil.appendUrl(url, requestMap);
    String json = "{\"basicSetting\":{\"template\":\"ppt\",\"newScene\":\"topclass\",\"type\":\"normal\"," +
    "\"cnAndEnLiveEnabled\":\"N\",\"linkMicLimit\":\"5\",\"doubleTeacherType\":\"normal\"," +
    "\"name\":\"polyv公开课\",\"startTime\":\"1747718040000\",\"pureRtcEnabled\":\"Y\"," +
    "\"description\":\"通过游戏的带入课程,让课堂生动有趣\",\"channelPasswd\":\"1a2b3c4d5e\"," +
    "\"logoImg\":\"https://liveimages.videocc.net/uploaded/images/2021/09/g2bta2pjbw.jpg\"," +
    "\"splashImg\":\"https://liveimages.videocc.net/uploaded/images/2021/09/g2bta2pjbw.jpg\"}," +
    "\"masterAuthSetting\":{\"enabled\":\"Y\",\"authType\":\"code\",\"authCode\":\"123456\"}," +
    "\"roles\":[{\"role\":\"Teacher\"},{\"role\":\"Assistant\",\"actor\":\"助教\",\"nickName\":\"勋助教\"}," +
    "{\"role\":\"Guest\",\"passwd\":\"aSzqyd13qz\",\"actor\":\"嘉宾\",\"avatar\":\"https://s1.videocc" +
    ".net/default-img/avatar/guest.png\",\"nickName\":\"王嘉宾\"}]}";
    
    String response = HttpUtil.postJsonBody(url, json, null);
    
    log.info("测试创建单个频道成功:{}", response);
    //do somethings
    
}

回應範例

系統全域錯誤說明詳見全域錯誤說明

成功範例(測試範例頻道號已隱藏)

{
    "code": 200,
    "status": "success",
    "requestId": "14138a5004b1412fbe109f854fec0b52.59.16538790171742883",
    "data": {
        "channelId": ******,
        "name": "polyv公开课",
        "userId": "1b448be323",
        "channelPasswd": "t2IIefL6toqoBAA",
        "seminarHostPassword": null,
        "seminarAttendeePassword": null,
        "publisher": null,
        "description": "通过游戏的带入课程,让课堂生动有趣",
        "newScene": "topclass",
        "template": "ppt",
        "linkMicLimit": 5,
        "pureRtcEnabled": "Y",
        "type": "normal",
        "currentTimeMillis": 1653879017848
    },
    "success": true
}

異常範例

{
    "code": 400,
    "status": "error",
    "requestId": "4081dbac03e6441e8bdd301d8feee5a2.124.16360831818611581",
    "error": {
        "code": 20001,
        "desc": "application not found."
    },
    "success": false
}
联系客服,在线咨询