這些指南將產業的概念對應到平台目前具備的物件(頻道包、線路、方案、合作夥伴帳號、節點、API)。這些是概念上的對應,並非產業專屬功能,而且合作夥伴帳號是委派帳號,不是隔離的租戶。
概念對應
面板裡沒有任何東西叫院系、學期或學生。下表說明哪個物件扮演哪個角色;以下各章依該順序進行設定。
| 在您的產業中 | 在平台上 | 在面板中的位置 |
|---|---|---|
| 院系或部門帳號 | 合作夥伴帳號(經銷商):具備點數、權限與自己線路的委派 dashboard | Users → 新增經銷商;其權限在 Groups 設定 |
| 院系專藏或校園頻道包 | 頻道包(bouquet):由方案授予的一組具名頻道、電影或影集 | Bouquets,由 Streams 與 Movies / Series 建立 |
| 校園頻道或現場活動 | 直播頻道:含來源、EPG 與輸出格式的串流 | Streams → 新增直播串流(來源 URL 或 RTMP 推流) |
| 講座存檔 | VOD 內容目錄:電影與含季和集的影集、分類與中繼資料 | Movies 與 Series,或 VOD 匯入工作 |
| 學生或職員的存取權 | 線路:一份存取權,含其方案、頻道包、到期日、連線數上限與輸出 | Lines → 新增,或使用啟用碼,或 Reseller API |
| 學期或註冊期結束 | 線路的到期日,可由方案、點數或 API 續期 | 線路的到期日與方案的期限 |
| 校區或學生宿舍節點 | 串流節點:從面板登錄的邊緣伺服器,每個據點或建築一個 | Servers → 新增節點,透過 SSH 安裝 |
| 學生資訊系統整合 | Reseller API 與 webhook:從您自己的系統執行面板的各項操作 | 經銷商 dashboard 中的 Reseller API 金鑰與 webhook |
前置條件
安裝前需要準備什麼。
- 主校區的一台伺服器(Ubuntu 22.04 或 24.04),其他校區與學生宿舍可以連線到它;還需要安裝程式,以及反向代理之後的內部位址或網域。
- 校園頻道訊號與講座錄影(或講座錄播系統的匯出),以及學生資訊系統呼叫 HTTP API 的能力。
- 關於結構的決定:哪些院系取得合作夥伴帳號、講座影集如何命名,以及學期方案持續多久。
基礎架構部署
先部署主校區,再部署其他據點。
- 在主校區伺服器上執行安裝程式;將面板放在大學的反向代理之後,並設定受信任代理,使日誌與 IP 規則能看到真實位址。
- 將播放基底網址設為學生在校園與學生宿舍內可以連線的位址。
- 從 Servers 為每個校區與每棟學生宿舍登錄一個節點;面板會透過 SSH 安裝它,並將該據點的觀眾導向它。
- 在伺服器上設定授權金鑰;使用學術網域的機構可以透過電子郵件申請教育計畫的免費 Professional 金鑰。
內容整理
院系專藏與校園頻道包。
- 依院系與學科建立分類,每門課程一部影集,每個學期一季,每堂講座一集。
- 每個院系專藏建立一個頻道包,校園頻道一個,入學介紹影片等通用素材一個。
- 為學生與教職員建立方案:各自需要的頻道包,以學期作為時效,這樣除非續期,存取權會隨學期結束。
- 為開放日或來訪學生建立一個較短的試用方案。
合作夥伴(經銷商)設定
院系作為委派帳號。
- 建立一個擁有線路權限與本院系目錄權限、不能存取設定的群組。
- 將每個院系或部門新增為合作夥伴帳號(reseller),使用該群組及其方案;子 reseller 可以對應院系內的各個部門。
- 院系只能檢視與管理自己的線路;中央團隊保留全局視圖。它是委派帳號,而不是獨立的安裝。
學生存取權設定
每位學生一條線路,來自 SIS。
- 為學生資訊系統建立一個 Reseller API 金鑰,並儲存在該系統的機密資訊中。
- 註冊時,SIS 以學生的方案與請求 ID 呼叫 action=create_line;方案的時效(一個學期)就是存取期間。
- 將最大連線數設為學生可同時使用的裝置數(通常為兩個:手機與筆記型電腦)。
- 對於教職員與試行,透過 Lines → add 新增線路並發放憑證。
講座存檔
隨選錄影。
- 將每個錄影作為一集的來源上傳,或以 VOD 匯入工作匯入;保留課程標題與簡短說明。
- 將影集關聯到該院系的頻道包,這樣只有方案授予它的學生才看得到這門課程。
- 以每個方案的測試線路檢查播放,確認誰看得到什麼。
校園頻道與現場活動
校園的直播頻道。
- 在 Streams 下將校園頻道訊號新增為直播串流,並新增一個 EPG 來源用於節目表。
- 為每個演講廳或活動新增一個直播串流,由演講廳的編碼器透過 RTMP 供流,並啟用回看,讓遲到的觀眾可以倒轉。
- 將每個頻道放入合適的頻道包;學生宿舍的節點從來源伺服器只拉取一次,並為學生就近提供服務。
到期與續期
學期就是線路的有效期。
- 線路在其方案期間結束時到期;重新註冊時,SIS 呼叫 action=renew_line,增加一個週期。
- 學生退學或畢業時,SIS 呼叫 action=disable_line。
- 讓 SIS 訂閱 webhook,以將即將到期與已到期的線路與其紀錄核對。
與學生資訊系統整合
由 SIS 驅動存取,由播放器負責播放。
- SIS 憑金鑰與請求 ID,透過 Reseller API 建立、續期、啟用與停用線路。
- 沒有面向觀眾的單一登入,也沒有原生的 LMS 或 SIS 整合:學生使用線路的憑證登入播放器,LMS 中的課程頁面可以連結到網頁播放器。
- 為內部報表工具使用帶唯讀旗標、IP 允許清單與到期日的 Admin API 金鑰。
安全考量
讓存取權只屬於學生與教職員。
- 讓平台留在校園網路內,或放在具 TLS 的反向代理之後;將 TRUSTED_PROXIES 設為該代理。
- 每個面板帳號使用雙重驗證登入,並依角色設定權限群組,使院系看不到其他院系的線路。
- 播放連結經過簽章並會過期,每條線路設定連線數上限,在有幫助時綁定國家或位址。
- 加密的資料庫備份並保留異地副本,以稽核日誌記錄線路與目錄的每一次變更。
疑難排解
常見的初步檢查。
- 學生看不到講座:檢查線路的到期日,然後檢查方案及其授予的頻道包。
- 新學生沒有存取權:在 Reseller API 呼叫日誌中檢查 SIS 的呼叫是否成功,以及請求 ID 是否是新的。
- 某棟學生宿舍在晚間卡頓:檢查其節點的心跳以及觀眾是否已導向它。
- 稽核日誌顯示的是代理的位址:將 TRUSTED_PROXIES 設為該代理並重新啟動面板。