這些指南將產業的概念對應到平台目前具備的物件(頻道包、線路、方案、合作夥伴帳號、節點、API)。這些是概念上的對應,並非產業專屬功能,而且合作夥伴帳號是委派帳號,不是隔離的租戶。
概念對應
面板裡沒有任何東西叫節目或支持者。下表說明哪個物件扮演哪個角色;以下各章依該順序進行設定。
| 在您的產業中 | 在平台上 | 在面板中的位置 |
|---|---|---|
| 工作室的頻道 | 直播頻道:含來源、EPG 與輸出格式的串流 | Streams → 新增直播串流(來源 URL 或 RTMP 推流) |
| 節目片庫 | VOD 內容目錄:電影與含季和集的影集、分類與中繼資料 | Movies 與 Series,或 VOD 匯入工作 |
| 訂閱級別 | 頻道包(bouquet):由方案授予的一組具名頻道、電影或影集 | Bouquets,由 Streams 與 Movies / Series 建立 |
| 支持者的存取權 | 線路:一份存取權,含其方案、頻道包、到期日、連線數上限與輸出 | Lines → 新增,或使用啟用碼,或 Reseller API |
| 計費週期 | 線路的到期日,可由方案、點數或 API 續期 | 線路的到期日與方案的期限 |
| 聯盟推廣者或發行商帳號 | 合作夥伴帳號(經銷商):具備點數、權限與自己線路的委派 dashboard | Users → 新增經銷商;其權限在 Groups 設定 |
| 商店或會員整合 | Reseller API 與 webhook:從您自己的系統執行面板的各項操作 | 經銷商 dashboard 中的 Reseller API 金鑰與 webhook |
前置條件
安裝前需要準備什麼。
- 一台具公開位址或網域的伺服器(Ubuntu 22.04 或 24.04),以及足以應付預期觀眾的上行頻寬。
- 製作完成的集數、工作室用於頻道的播出系統或編碼器,以及一個運行在有連接器的平台上的商店,或具備呼叫 HTTP API 的能力。
- 關於級別與聯盟推廣者的決定:每種訂閱授予什麼,以及誰可以銷售它。
基礎架構部署
先用一台伺服器,隨觀眾增加再加入節點。
- 在管理伺服器上執行安裝程式,並將面板放在具 TLS 的反向代理之後;設定受信任代理,使 IP 規則能看到觀眾的真實位址。
- 將播放基底網址設為您的觀眾連線的公開位址。
- 在支持者較多的區域,從 Servers 登錄一個節點;面板會透過 SSH 安裝它,並將該區域的觀眾導向它。
- 為每位負責目錄或支持者的職員建立一個合作夥伴帳號(reseller),並配上各自的權限群組。
內容整理
節目是影集,級別是頻道包。
- 依類型建立分類,每個節目一部影集,每批發布一季,每支影片一集。
- 為直播頻道建立一個頻道包,為免費或入門內容建立一個,並為每個更高的級別各建立一個。
- 每個級別建立一個方案,以計費週期作為時效;如有需要,為新訪客新增一個試用方案,並為聯盟推廣者設定以點數計的價格。
- 把過往內容放在單獨的分類中,這樣不必改動影集就能在級別之間移動它。
合作夥伴(經銷商)設定
聯盟推廣者與發行商。
- 為聯盟推廣者建立一個僅含線路權限的群組,使他們無法更改目錄。
- 將每位聯盟推廣者新增為 reseller,使用該群組並賦予點數餘額;其方案價格由工作室決定。
- 擁有下級聯盟推廣者的發行商可以在自己的帳號下建立子 reseller,最多五層。
支持者存取設定
每位支持者一條線路。
- 安裝您商店的連接器(例如 WooCommerce),並填入 Reseller API 金鑰以及與每個商品對應的方案。
- 訂閱時,連接器以方案與請求 ID 呼叫 create_line;計費週期就是方案的時效。
- 將最大連線數設為支持者可使用的裝置數,通常為兩三個。
- 對於贈送活動或首發,可批次產生啟用碼,或透過 Lines → add 使用試用方案新增線路。
節目片庫
隨選集數。
- 將每一集作為一個來源上傳,或以 VOD 匯入工作匯入;填寫標題、季、集號,若節目有 TMDB 中繼資料也一併填寫。
- 將每部影集關聯到可觀看它的各級別的頻道包。
- 在宣布發布之前,以每個級別的測試線路檢查播放。
工作室的頻道
全天候的頻道。
- 為工作室的播出系統新增一個直播串流(RTMP 推送),並將它放入包含該頻道的每個級別的頻道包中。
- 以 XMLTV 載入頻道的節目表,讓支持者看到正在播放什麼,並對值得重播的節目啟用回看。
- 在兩次發布之間,以工作室自己的預排內容維持播出系統運作;面板只轉送該串流。
訂閱到期
存取權跟隨付款。
- 線路在其方案期間結束時到期;下一筆付款到帳時,商店以 renew_line 為其續期。
- 讓商店訂閱 webhook:在 line.expiring 時發送提醒,在 line.expired 時為支持者降級。
- 取消訂閱的支持者由商店以 disable_line 停用,之後可以續期同一條線路,不需要新帳號。
與商店整合
商店負責銷售,播放器負責播放。
- 連接器隨訂單建立、續期並停用線路;任何其他商店使用 Reseller API 與 webhook。
- 聯盟推廣者在自己的後台中查看自己的線路,Reseller API 讓他們可以自動化這個流程。
- 沒有面向觀眾的單一登入:支持者使用商店寄給他們的線路憑證登入播放器。
安全考量
保護訂閱,而不僅僅是伺服器。
- 透過 TLS 提供面板與播放基底網址,並將 TRUSTED_PROXIES 設為您的反向代理。
- 每個面板帳號使用雙重驗證登入,並設定權限群組,使聯盟推廣者無法更改目錄。
- 播放連結經過簽章並會過期,每條線路設定連線數上限;若授權有地域限制,將線路綁定到某個國家。
- 加密的資料庫備份並保留異地副本,以稽核日誌記錄線路與目錄的每一次變更。
疑難排解
常見的初步檢查。
- 新支持者付款後無法觀看:在 Reseller API 日誌中檢查商店連接器的呼叫,以及線路的到期日。
- 支持者看到了更高級別的內容:檢查該線路的方案及其授予的頻道包。
- 頻道在一個播出週期結束時停止:檢查編碼器向直播串流的推送,以及該串流的探測狀態。
- 聯盟推廣者的銷售沒有出現:檢查它的點數,以及它所用的方案是否屬於它的群組。