首頁
XtreamUIPro

設定指南

體育俱樂部與學院部署指南

將平台設定為俱樂部或學院的影片服務:比賽與訓練訊號、依梯隊劃分的分析片庫,以及隨球季變動的會員與家人存取權。

這些指南將產業的概念對應到平台目前具備的物件(頻道包、線路、方案、合作夥伴帳號、節點、API)。這些是概念上的對應,並非產業專屬功能,而且合作夥伴帳號是委派帳號,不是隔離的租戶。

概念對應

面板裡沒有任何東西叫梯隊或會員。下表說明哪個物件扮演哪個角色;以下各章依該順序進行設定。

在您的產業中在平台上在面板中的位置
比賽或訓練訊號直播頻道:含來源、EPG 與輸出格式的串流Streams → 新增直播串流(來源 URL 或 RTMP 推流)
分析與重播片庫VOD 內容目錄:電影與含季和集的影集、分類與中繼資料Movies 與 Series,或 VOD 匯入工作
梯隊或賽事方案頻道包(bouquet):由方案授予的一組具名頻道、電影或影集Bouquets,由 Streams 與 Movies / Series 建立
會員或家人的存取權線路:一份存取權,含其方案、頻道包、到期日、連線數上限與輸出Lines → 新增,或使用啟用碼,或 Reseller API
球季或會員期間線路的到期日,可由方案、點數或 API 續期線路的到期日與方案的期限
球隊或學院職員帳號合作夥伴帳號(經銷商):具備點數、權限與自己線路的委派 dashboardUsers → 新增經銷商;其權限在 Groups 設定
商店或俱樂部管理整合Reseller API 與 webhook:從您自己的系統執行面板的各項操作經銷商 dashboard 中的 Reseller API 金鑰與 webhook

前置條件

安裝前需要準備什麼。

  1. 一台具公開位址或網域的伺服器(Ubuntu 22.04 或 24.04),以及足以應付您計畫直播的比賽的上行頻寬。
  2. 球場上能推送 RTMP 的攝影機與編碼器,以及教練已經儲存的訓練與分析錄製檔案。
  3. 關於誰看得到什麼的決定:哪些梯隊共用素材、哪些比賽僅限會員,以及哪些職員取得面板帳號。

基礎架構部署

先部署學院,比賽日需要時再加入節點。

  1. 在學院伺服器上執行安裝程式,並將面板放在具 TLS 的反向代理之後;設定受信任代理,使日誌與 IP 規則能看到觀眾的真實位址。
  2. 將播放基底網址設為觀眾連線的公開位址,使面板發出的連結在家裡也能使用。
  3. 若許多家庭觀看同一場比賽,從 Servers 登錄一個節點;面板會透過 SSH 安裝它,並由它向外分送直播頻道。
  4. 為教練團隊建立一個擁有目錄權限、沒有會員線路權限的合作夥伴帳號(reseller)。

內容整理

梯隊與球季是分類,存取權是頻道包。

  1. 依年齡組與球季建立分類,為各項賽事建立影集,每場比賽一集。
  2. 每個梯隊的分析素材建立一個頻道包,比賽直播頻道一個,整個學院一個。
  3. 每種會員資格建立一個方案:它授予的頻道包,以球季作為時效;若由職員銷售,再設定以點數計的價格。
  4. 以梯隊或賽事的名稱來命名頻道包,讓職員知道該給一個家庭哪個方案。

合作夥伴(經銷商)設定

若俱樂部有此需求,讓職員管理各自的會員。

  1. 為教練建立一個擁有目錄權限的群組,為會員秘書建立一個擁有線路權限的群組。
  2. 將他們各自新增為 reseller,使用對應的群組;只有透過面板銷售會員資格時,才給秘書點數。
  3. 擁有自己會員的分院或球迷俱樂部,取得自己的合作夥伴帳號與自己的方案。

會員與家人存取設定

每位會員或每個家庭一條線路。

  1. 為商店或俱樂部管理系統建立一個 Reseller API 金鑰,並儲存在該系統的機密資訊中。
  2. 報名時,系統以會員資格的方案與請求 ID 呼叫 action=create_line;球季就是方案的時效。
  3. 將最大連線數設為一個家庭所需的裝置數(通常三四個),這樣一份會員資格就不會被共用到家庭之外。
  4. 對於試用比賽日,透過 Lines → add 使用試用方案新增線路,或為看台上的支持者列印啟用碼。

分析與重播片庫

隨選比賽與訓練。

  1. 將每場比賽或訓練作為一集的來源上傳,或以 VOD 匯入工作匯入;在標題中保留日期、對手與梯隊。
  2. 透過影集把錄影關聯到該梯隊的頻道包,這樣只有該梯隊的線路看得到它。
  3. 以每種會員資格的測試線路檢查播放,確認誰看得到什麼。

比賽與訓練訊號

把球場攝影機變成直播頻道。

  1. 為球場上的每台編碼器新增一個直播串流(RTMP 推送),並放入比賽日頻道包。
  2. 啟用回看,讓遲到的家庭可以倒轉,並在終場哨響後把錄影加入片庫。
  3. 比賽日繁忙時,檢查節點是否從來源伺服器只拉取一次該頻道,並服務導向它的觀眾。

會員資格到期

存取權跟隨球季。

  1. 線路在其方案期間結束時到期;下一球季的費用付清時,商店以 action=renew_line 為其續期。
  2. 讓商店訂閱 webhook:在 line.expiring 時發送提醒,在 line.expired 時結束會員資格。
  3. 球季中途離隊的球員,由商店以 action=disable_line 停用;該線路會保留以備查。

與商店或俱樂部軟體整合

由系統驅動存取,由播放器負責播放。

  1. 在商店端安裝您的電商平台(WooCommerce、Shopify 等)的連接器,使購買建立線路、付款續期線路。
  2. 俱樂部管理或票務系統透過 Reseller API 與 webhook 接入;沒有針對它的原生連接器。
  3. 沒有面向觀眾的單一登入:會員使用商店寄給他們的線路憑證登入播放器。

安全考量

梯隊素材只留在梯隊內部。

  1. 透過 TLS 提供面板與播放基底網址,並將 TRUSTED_PROXIES 設為您的反向代理。
  2. 每個面板帳號使用雙重驗證登入,並設定權限群組,使秘書無法更改目錄,教練看不到線路。
  3. 播放連結經過簽章並會過期,每條線路設定連線數上限,職員線路綁定 IP 或國家。
  4. 加密的資料庫備份並保留異地副本,以稽核日誌記錄線路與目錄的每一次變更。

疑難排解

常見的初步檢查。

  1. 家長看到了一線隊的分析:檢查線路的方案及其授予的頻道包。
  2. 新會員付款後沒有存取權:檢查商店請求在 Reseller API 呼叫日誌中的紀錄以及線路的到期日。
  3. 比賽訊號在開球時卡頓:檢查球場上編碼器的上傳,若有節點為觀眾服務,再檢查該節點的心跳。
  4. 稽核日誌顯示的是代理的位址:將 TRUSTED_PROXIES 設為該代理並重新啟動面板。