คู่มือเหล่านี้จับคู่แนวคิดของอุตสาหกรรมกับออบเจ็กต์ที่แพลตฟอร์มมีอยู่ในวันนี้ (bouquet ไลน์ แพ็กเกจ บัญชีพาร์ตเนอร์ node และ API) เป็นการจับคู่เชิงแนวคิด ไม่ใช่ฟีเจอร์เฉพาะอุตสาหกรรม และบัญชีพาร์ตเนอร์คือบัญชีที่มอบหมายสิทธิ์ ไม่ใช่ tenant ที่แยกขาด
การจับคู่เชิงแนวคิด
ไม่มีสิ่งใดในแผงควบคุมที่เรียกว่าคณะ ภาคการศึกษา หรือนักศึกษา ตารางบอกว่าออบเจ็กต์ใดทำหน้าที่อะไร บทด้านล่างตั้งค่าตามลำดับนั้น
| ในอุตสาหกรรมของคุณ | บนแพลตฟอร์ม | อยู่ที่ไหนในแผงควบคุม |
|---|---|---|
| บัญชีคณะหรือภาควิชา | บัญชีพาร์ตเนอร์ (รีเซลเลอร์): แดชบอร์ดที่มอบหมายสิทธิ์พร้อมเครดิต สิทธิ์ และไลน์ของตนเอง | Users → เพิ่มรีเซลเลอร์ กลุ่มสิทธิ์ที่ Groups |
| คอลเลกชันของคณะหรือชุดช่องของวิทยาเขต | Bouquet: ชุดช่อง ภาพยนตร์ หรือซีรีส์ที่มีชื่อ ซึ่งแพ็กเกจมอบให้ | Bouquets จาก Streams และ Movies / Series |
| ช่องของวิทยาเขตหรือกิจกรรมสด | ช่องสด: สตรีมพร้อมแหล่งสัญญาณ EPG และรูปแบบเอาต์พุต | Streams → เพิ่มสตรีมสด (URL แหล่งสัญญาณหรือ RTMP push) |
| คลังบรรยาย | แคตตาล็อก VOD: ภาพยนตร์และซีรีส์พร้อมซีซันและตอน หมวดหมู่ และข้อมูลเมตา | Movies และ Series หรืองาน ingest VOD |
| สิทธิ์ของนักศึกษาหรือเจ้าหน้าที่ | ไลน์: สิทธิ์เข้าใช้หนึ่งรายการพร้อมแพ็กเกจ bouquet วันหมดอายุ ขีดจำกัดการเชื่อมต่อ และเอาต์พุต | Lines → เพิ่ม หรือรหัสเปิดใช้งาน หรือ Reseller API |
| สิ้นภาคการศึกษาหรือการลงทะเบียน | วันหมดอายุของไลน์ ต่ออายุด้วยแพ็กเกจ เครดิต หรือ API | วันหมดอายุของไลน์และระยะเวลาของแพ็กเกจ |
| node ของวิทยาเขตหรือหอพัก | node สตรีมมิง: เซิร์ฟเวอร์ edge ที่ลงทะเบียนจากแผงควบคุม หนึ่งเครื่องต่อสถานที่หรืออาคาร | Servers → เพิ่ม node ติดตั้งผ่าน SSH |
| การเชื่อมต่อกับระบบข้อมูลนักศึกษา | Reseller API และ webhook: การทำงานของแผงควบคุมจากระบบของคุณเอง | Reseller API key และ webhook ในแดชบอร์ดของรีเซลเลอร์ |
สิ่งที่ต้องเตรียม
สิ่งที่ควรมีก่อนติดตั้ง
- เซิร์ฟเวอร์ที่วิทยาเขตหลัก (Ubuntu 22.04 หรือ 24.04) ที่เข้าถึงได้จากวิทยาเขตอื่นและหอพัก ตัวติดตั้ง และที่อยู่ภายในหรือโดเมนหลัง reverse proxy ของคุณ
- ฟีดช่องของวิทยาเขตและการบันทึกการบรรยาย (หรือไฟล์ส่งออกของระบบ lecture-capture) และความสามารถของระบบข้อมูลนักศึกษาในการเรียก HTTP API
- การตัดสินใจเรื่องโครงสร้าง: คณะใดได้บัญชีพาร์ตเนอร์ ตั้งชื่อซีรีส์การบรรยายอย่างไร และแพ็กเกจภาคการศึกษานานเท่าใด
การติดตั้งโครงสร้างพื้นฐาน
วิทยาเขตหลักก่อน แล้วจึงไซต์อื่น
- รันตัวติดตั้งบนเซิร์ฟเวอร์วิทยาเขตหลัก วางแผงควบคุมหลัง reverse proxy ของมหาวิทยาลัยและตั้ง trusted proxy เพื่อให้บันทึกและกฎ IP เห็นที่อยู่จริง
- ตั้ง playback base เป็นที่อยู่ที่นักศึกษาเข้าถึงจากวิทยาเขตและหอพัก
- ลงทะเบียน node ต่อวิทยาเขตและต่อหอพักจากหน้าเซิร์ฟเวอร์ แผงควบคุมติดตั้งผ่าน SSH และส่งผู้ชมของไซต์นั้นไปยัง node นั้น
- ตั้งคีย์ใบอนุญาตบนเซิร์ฟเวอร์ สถาบันที่ใช้โดเมนวิชาการขอคีย์ Professional ฟรีของโปรแกรมการศึกษาทางอีเมลได้
การจัดระเบียบเนื้อหา
คอลเลกชันของคณะและชุดช่องของวิทยาเขต
- สร้างหมวดหมู่ต่อคณะและวิชา และหนึ่งซีรีส์ต่อรายวิชา หนึ่งซีซันต่อภาคเรียนและหนึ่งตอนต่อการบรรยาย
- สร้างหนึ่ง bouquet ต่อคอลเลกชันของคณะ หนึ่งสำหรับช่องของวิทยาเขต และหนึ่งสำหรับเนื้อหาส่วนกลาง เช่น วิดีโอปฐมนิเทศ
- สร้างแพ็กเกจสำหรับนักศึกษาและเจ้าหน้าที่: bouquet ที่แต่ละกลุ่มต้องการ โดยมีภาคการศึกษาเป็นระยะเวลา สิทธิ์จึงสิ้นสุดพร้อมภาคเรียนเว้นแต่จะต่ออายุ
- สร้างแพ็กเกจทดลองสั้น ๆ สำหรับวันเปิดบ้านหรือนักศึกษาที่มาเยี่ยม
การตั้งค่าพาร์ตเนอร์ (รีเซลเลอร์)
คณะเป็นบัญชีที่มอบหมายสิทธิ์
- สร้างกลุ่มที่มีสิทธิ์จัดการไลน์และแคตตาล็อกของคณะเอง และไม่เข้าถึงการตั้งค่า
- เพิ่มแต่ละคณะหรือภาควิชาเป็นบัญชีพาร์ตเนอร์ (รีเซลเลอร์) พร้อมกลุ่มนั้นและแพ็กเกจของตน รีเซลเลอร์ย่อยสะท้อนภาควิชาภายในคณะได้
- คณะเห็นและจัดการเฉพาะไลน์ของตนเอง ทีมส่วนกลางเห็นภาพรวมทั้งหมด เป็นบัญชีที่มอบหมายสิทธิ์ ไม่ใช่การติดตั้งที่แยกขาด
การตั้งค่าสิทธิ์เข้าใช้ของนักเรียน
หนึ่งไลน์ต่อนักศึกษา จาก SIS
- สร้างคีย์ Reseller API สำหรับระบบข้อมูลนักศึกษาและเก็บไว้ในความลับของระบบนั้น
- เมื่อลงทะเบียน SIS เรียก action=create_line พร้อมแพ็กเกจของนักศึกษาและ request id ระยะเวลาของแพ็กเกจ คือภาคการศึกษา เป็นช่วงสิทธิ์
- ตั้งจำนวนการเชื่อมต่อสูงสุดเป็นจำนวนอุปกรณ์ที่นักศึกษาใช้พร้อมกันได้ (ปกติสองเครื่อง: โทรศัพท์และแล็ปท็อป)
- สำหรับเจ้าหน้าที่และการทดลอง เพิ่มไลน์จาก Lines → add และมอบข้อมูลเข้าสู่ระบบ
คลังบรรยาย
การบันทึกตามสั่ง
- อัปโหลดแต่ละการบันทึกเป็นแหล่งของตอน หรือนำเข้าด้วยงาน VOD ingest ใส่ชื่อรายวิชาและคำอธิบายสั้น ๆ
- แนบซีรีส์กับ bouquet ของคณะ เพื่อให้เฉพาะนักศึกษาที่แพ็กเกจมอบสิทธิ์เห็นรายวิชา
- ตรวจการเล่นด้วยไลน์ทดสอบของแต่ละแพ็กเกจ เพื่อยืนยันว่าใครเห็นอะไร
ช่องของวิทยาเขตและกิจกรรมสด
ช่องสดสำหรับวิทยาเขต
- เพิ่มฟีดช่องของวิทยาเขตเป็นสตรีมสดใน Streams และแหล่ง EPG สำหรับผังรายการ
- เพิ่มสตรีมสดต่อห้องบรรยายหรือกิจกรรม ป้อนจากตัวเข้ารหัสของห้องผ่าน RTMP และเปิด catch-up เพื่อให้ผู้ชมที่มาช้าย้อนดูได้
- ใส่แต่ละช่องใน bouquet ที่ถูกต้อง node ในหอพักดึงช่องจาก origin เพียงครั้งเดียวและให้บริการนักศึกษาในพื้นที่
การหมดอายุและการต่ออายุ
ภาคการศึกษาคืออายุของไลน์
- ไลน์หมดอายุเมื่อสิ้นระยะเวลาของแพ็กเกจ เมื่อลงทะเบียนใหม่ SIS เรียก action=renew_line และเพิ่มอีกหนึ่งช่วง
- เมื่อนักศึกษาถอนตัวหรือสำเร็จการศึกษา SIS เรียก action=disable_line
- ให้ SIS สมัครรับ webhook เพื่อกระทบยอดไลน์ที่ใกล้หมดอายุและหมดอายุแล้วกับบันทึกของตน
การเชื่อมต่อกับระบบข้อมูลนักศึกษา
SIS ควบคุมสิทธิ์ เพลเยอร์เล่น
- SIS สร้าง ต่ออายุ เปิดและปิดใช้งานไลน์ผ่าน Reseller API ด้วยคีย์และ request id
- ไม่มี single sign-on สำหรับผู้ชมและไม่มีการเชื่อมต่อแบบเนทีฟกับ LMS หรือ SIS: นักศึกษาเข้าสู่ระบบเพลเยอร์ด้วยข้อมูลของไลน์ และหน้ารายวิชาใน LMS ลิงก์ไปยังเว็บเพลเยอร์ได้
- ใช้คีย์ Admin API ที่มีแฟล็กอ่านอย่างเดียว รายการ IP ที่อนุญาต และวันหมดอายุ สำหรับเครื่องมือรายงานภายใน
ข้อควรพิจารณาด้านความปลอดภัย
จำกัดสิทธิ์ไว้ที่นักศึกษาและเจ้าหน้าที่
- เก็บแพลตฟอร์มไว้บนเครือข่ายวิทยาเขตหรือหลัง reverse proxy ที่มี TLS ตั้ง TRUSTED_PROXIES เป็นพร็อกซี
- การเข้าสู่ระบบสองขั้นตอนสำหรับทุกบัญชีแผงควบคุมและกลุ่มสิทธิ์ต่อบทบาท เพื่อให้คณะหนึ่งไม่เห็นไลน์ของอีกคณะ
- ลิงก์เล่นที่ลงนามและหมดอายุ ขีดจำกัดการเชื่อมต่อต่อไลน์ และการผูกกับประเทศหรือที่อยู่ในที่ที่ช่วยได้
- ข้อมูลสำรองฐานข้อมูลที่เข้ารหัสพร้อมสำเนานอกสถานที่ และบันทึกการตรวจสอบสำหรับทุกการเปลี่ยนแปลงของไลน์และแคตตาล็อก
การแก้ไขปัญหา
สิ่งที่ตรวจสอบก่อนตามปกติ
- นักศึกษาไม่เห็นการบรรยาย: ตรวจวันหมดอายุของไลน์ แล้วตรวจแพ็กเกจและ bouquet ที่มอบให้
- นักศึกษาใหม่ไม่มีสิทธิ์: ตรวจว่าการเรียกของ SIS สำเร็จในบันทึกการเรียก Reseller API และ request id เป็นค่าใหม่
- หอพักบัฟเฟอร์ในตอนเย็น: ตรวจ heartbeat ของ node ของหอพักและว่าผู้ชมถูกส่งไปยัง node นั้น
- บันทึกการตรวจสอบแสดงที่อยู่ของพร็อกซี: ตั้ง TRUSTED_PROXIES เป็นพร็อกซีและรีสตาร์ตแผงควบคุม