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