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