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