این راهنماها مفاهیم یک صنعت را روی اشیایی که پلتفرم امروز دارد (بوکهها، لاینها، بستهها، حسابهای پارتنر، نودها، API) نگاشت میکنند. اینها نگاشتهای مفهومیاند، نه قابلیتهای مخصوص صنعت، و حساب پارتنر یک حساب تفویضی است، نه tenant ایزوله.
نگاشت مفهومی
در پنل چیزی به نام فروشگاه یا فرانچایز نیست. جدول میگوید کدام شیء چه نقشی دارد؛ بخشهای زیر آنها را به همین ترتیب راه میاندازند.
| در صنعت شما | روی پلتفرم | کجا در پنل |
|---|---|---|
| کانال فروشگاه یا مجموعه آموزش | بوکه: مجموعهای نامدار از کانالها، فیلمها یا سریالها که یک بسته میدهد | Bouquets، از Streams و Movies / Series |
| کانال فروشگاه | کانال زنده: یک استریم با منابع، EPG و فرمتهای خروجیاش | Streams ← افزودن استریم زنده (URL منبع یا RTMP push) |
| ویدیوی آموزش و محصول | کاتالوگ VOD: فیلم و سریال با فصل و قسمت، دستهبندیها و اطلاعات متادیتا | Movies و Series، یا کار ingest VOD |
| نمایشگر فروشگاه یا دسترسی کارمند | لاین: یک دسترسی با بسته، بوکهها، انقضا، محدودیت اتصال و خروجیهایش | Lines ← افزودن، یا کدهای فعالسازی، یا Reseller API |
| حساب فرانچایز | حساب پارتنر (ریسلر): داشبورد تفویضی با کردیت، مجوزها و لاینهای خودش | Users ← افزودن ریسلر؛ Groups برای مجوزهای آن |
| نود منطقهای | نودهای پخش: سرورهای edge ثبتشده از پنل، یکی برای هر سایت یا ساختمان | Servers ← افزودن نود، نصبشده با SSH |
| نمایشگر یا دستگاه به ازای هر لاین | حداکثر اتصال لاین: چند دستگاه میتوانند همزمان تماشا کنند | حداکثر اتصال لاین |
پیشنیازها
آنچه پیش از نصب باید داشته باشید.
- یک سرور دفتر مرکزی (Ubuntu 22.04 یا 24.04)، نصبکننده و یک سرور برای هر منطقهای که فروشگاه زیاد دارد و از آنها قابل دسترسی است.
- محتوای کانال فروشگاه (یک انکودر یا منبع تکرارشونده)، ضبطهای آموزش ورود و محصول و نمایشگرها یا مدیاپلیرهای فروشگاهها.
- تصمیم درباره ساختار فرانچایز: کدام مناطق نود میگیرند و چه کسی در هر فرانچایز لاینها را مدیریت میکند.
استقرار زیرساخت
اول دفتر مرکزی، بعد مناطق.
- نصبکننده را روی سرور دفتر مرکزی اجرا کنید و URL پایه پخش را پشت TLS روی آدرسی بگذارید که فروشگاهها به آن میرسند.
- کانال فروشگاه را زیر Streams و ضبطهای آموزشی را زیر Movies اضافه کنید و در پخشکننده وب بررسی کنید.
- برای هر منطقه از Servers یک نود ثبت کنید؛ پنل آن را با SSH نصب میکند، یا نود با کد یکبارمصرف ثبت میشود، و فروشگاههای آن منطقه را به آن هدایت میکند.
- برای تیم محتوای دفتر مرکزی حساب پارتنر با مجوز کاتالوگ و بدون مجوز لاینهای فروشگاهها بسازید.
سازماندهی محتوا
کانال فروشگاه و کتابخانه آموزش.
- برای کانال فروشگاه یک استریم زنده بسازید و در بوکه مخصوص خودش بگذارید.
- برای هر موضوع دستهبندی و برای هر دوره آموزشی یک سریال با یک قسمت برای هر درس بسازید؛ برای هر نقش (فروشندهها، مدیران، تازهواردها) یک بوکه اضافه کنید.
- یک بسته برای نمایشگرهای فروشگاه و یک بسته برای هر نقش بسازید که هر کدام بوکههای خودش را میدهد و دوره دسترسی را مدت خود دارد.
- بستههایی را که فرانچایزها میتوانند به فروشگاهها و کارکنانشان بفروشند به آنها بدهید.
پیکربندی پارتنر (ریسلر)
یک حساب پارتنر برای هر فرانچایز.
- گروهی با مجوزهای محدود به لاینها بسازید، بدون تغییر کاتالوگ.
- هر فرانچایز را زیر Users → افزودن ریسلر با آن گروه، بستههایش و موجودی کردیت اضافه کنید.
- فرانچایزی با چند منطقه میتواند برای هر منطقه یک زیرریسلر اضافه کند که هر کدام فروشگاههای خودش را دارد.
پیکربندی لاین فروشگاه و کارکنان
یک لاین برای هر نمایشگر و هر کارمند.
- برای هر نمایشگر فروشگاه زیر Lines → افزودن یک لاین با نام فروشگاه و بسته فروشگاه بسازید؛ فرانچایز همین کار را برای فروشگاههای خودش میکند.
- حداکثر اتصال را روی تعداد نمایشگرهای فروشگاه و برای کارمند روی دو (سالن فروش و گوشی) بگذارید.
- وقتی فروشگاه آدرس ثابت دارد لاین فروشگاه را به آدرسش ببندید تا اطلاعات ورود جای دیگری کار نکند.
- پخشکننده نمایشگر را یک بار پیکربندی کنید (M3U، Xtream Codes API یا آدرس پخشکننده وب) و اطلاعات ورود را در پرونده فروشگاه نگه دارید.
ویدیوی آموزش و محصول
کتابخانه برای کارکنان.
- هر دوره آموزشی را بهصورت سریال و هر فیلم محصول را بهصورت فیلم آپلود کنید، یا با کار ingest مربوط به VOD به ریشه رسانه وارد کنید.
- ضبطها را از طریق دستهبندیهایشان در بوکه نقش درست بگذارید.
- پیش از باز کردن کتابخانه برای فرانچایزها با لاین آزمایشی بررسی کنید هر نقش چه میبیند.
کانال فروشگاه
یک کانال برای همه نمایشگرها.
- کانال فروشگاه را بهصورت استریم زنده اضافه کنید که انکودر دفتر مرکزی با RTMP یا یک منبع تکرارشونده تغذیهاش کند.
- برای جلسات آموزشی که زنده پخش میشوند catch-up را فعال کنید و بعداً ضبط را در کتابخانه آپلود کنید.
- نودهای مناطق کانال را یک بار از اوریجین میگیرند و به فروشگاههایشان سرویس میدهند، پس لینک فروشگاهها اشباع نمیشود.
انقضا و تمدید
دسترسی دنبال فروشگاه یا قرارداد است.
- لاین در پایان دوره بستهاش منقضی میشود؛ فرانچایز آن را با یک بسته یا یک کردیت تمدید میکند.
- لاین فروشگاه تعطیلشده یا کارمند در حال رفتن را غیرفعال کنید.
- سامانه مدیریت فرانچایز یا منابع انسانی را به وبهوکها مشترک کنید تا لاینهایی که در شرف انقضا یا منقضیاند را ببیند.
یکپارچگی با سامانههای فرانچایز یا منابع انسانی
سامانهها لاینها را میرانند؛ پخشکننده پخش میکند.
- برای سامانه مدیریت فرانچایز یا منابع انسانی یک کلید Reseller API بسازید؛ create_line، renew_line، enable_line و disable_line را با شناسه درخواست در هر نوشتن صدا میزند.
- وقتی سرویس را به فرانچایزها صورتحساب میکنید از کانکتور تجارت استفاده کنید؛ هر سامانه دیگری از Reseller API و وبهوک استفاده میکند.
- ورود یکپارچه برای بینندگان نیست: کارکنان با اطلاعات لاین خود وارد پخشکننده میشوند.
ملاحظات امنیتی
هر فروشگاه را روی لاینهای خودش نگه دارید.
- پنل را پشت ریورسپراکسی با TLS ارائه دهید و TRUSTED_PROXIES را تنظیم کنید تا گزارش ممیزی و قواعد IP آدرسهای واقعی را ببینند.
- ورود دومرحلهای برای هر حساب دفتر مرکزی؛ فرانچایزها گروه مجوزی محدود به لاینهای خودشان میگیرند.
- سقف اتصال برای هر لاین، لینکهای پخش امضاشده و منقضیشونده، و بستن نمایشگرهای فروشگاه به آدرس.
- پشتیبانگیری رمزگذاریشده پایگاه داده با نسخه بیرونی را فعال کنید و از گزارش ممیزی برای بازبینی تغییر لاینها و کاتالوگ استفاده کنید.
عیبیابی
بررسیهای اولیه معمول.
- نمایشگر فروشگاه سیاه است: بررسی کنید لاینش فعال و منقضینشده است، بستن به آدرس، و اگر دستگاه دومی از لاین استفاده میکند سقف اتصال.
- منطقهای بافر میکند: heartbeat نود منطقهای و اینکه فروشگاهها به آن هدایت میشوند را بررسی کنید.
- فرانچایز نمیتواند لاین بسازد: موجودی کردیت، مجوزهای گروه و بستههای اختصاصیافته به او را بررسی کنید.
- گزارش ممیزی آدرس پراکسی را نشان میدهد: TRUSTED_PROXIES را روی پراکسی بگذارید و پنل را راهاندازی مجدد کنید.