الأدلة دي بتطابق مفاهيم المجال مع العناصر الموجودة في المنصة دلوقتي (bouquets وخطوط وحزم وحسابات موزّعين وعقد والـ API). دي مطابقات مفاهيمية، مش ميزات خاصة بمجال، وحساب الموزّع حساب مفوَّض، مش tenant معزول.
المطابقة المفاهيمية
مفيش حاجة في اللوحة اسمها مسرح أو تذكرة. الجدول بيقول أنهي كائن بيلعب أنهي دور؛ والفصول اللي تحت بتظبطهم بالترتيب ده.
| في مجالك | على المنصة | فين في اللوحة |
|---|---|---|
| قناة المسرح | قناة مباشرة: بث بمصادره وEPG وصيغ الإخراج | Streams → ضيف بث مباشر (رابط المصدر أو RTMP push) |
| نوع التذكرة | Bouquet: مجموعة مسمّاة من القنوات أو الأفلام أو المسلسلات اللي الحزمة بتديها | Bouquets، من Streams وMovies / Series |
| تذكرة أو تصريح | الخط: وصول واحد بحزمته وbouquets وانتهائه وحد اتصالاته ومخرجاته | Lines → إضافة، أو أكواد التفعيل، أو الـ Reseller API |
| نهاية الفعالية | تاريخ انتهاء الخط، بيتجدّد بحزمة أو كريديت أو الـ API | تاريخ انتهاء الخط ومدة الحزمة |
| أجهزة لكل تذكرة | أقصى اتصالات للخط: كام جهاز يقدر يشوف في نفس الوقت | أقصى اتصالات للخط |
| تكامل التذاكر أو التسجيل | Reseller API وwebhooks: عمليات اللوحة من نظامك إنت | مفاتيح Reseller API وwebhooks في لوحة الموزّع |
| عقدة المكان | عقد البث: سيرفرات حافة بتتسجّل من اللوحة، واحدة لكل موقع أو مبنى | Servers → ضيف Node، بتتثبّت عن طريق SSH |
المتطلبات
اللي لازم يكون موجود قبل التثبيت.
- سيرفر (Ubuntu 22.04 أو 24.04) بعنوان عام أو نطاق ووصلة صاعدة تكفي لذروة الجمهور المتوقعة، ولـ Node المكان جهاز على شبكة المكان.
- مشفّر لكل مسرح يقدر يدفع RTMP، وقائمة بالمسارح والأيام وأنواع التذاكر.
- قرار بخصوص إزاي التذاكر بتوصل للوحة: رموز تفعيل بتتولّد بالجملة، أو نظام التذاكر بينادي Reseller API.
نشر البنية
المصدر الأصلي الأول، وبعدين المكان.
- شغّل المثبّت على سيرفر الإدارة وحط اللوحة ورا ريفرس بروكسي مع TLS؛ واضبط الوكلاء الموثوقين عشان قواعد IP تشوف عنوان المشاهد الحقيقي.
- اضبط أساس التشغيل على العنوان العام اللي الحضور بيوصلوله.
- سجّل Node من Servers على الجهاز اللي في المكان؛ اللوحة بتثبّتها عبر SSH، والشاشات المحلية بتتوجّه ليها.
- اعمل حساب شريك (موزّع) لمكتب التذاكر بصلاحيات للخطوط ومن غير صلاحيات للكتالوج.
تنظيم المحتوى
المسارح كقنوات، والتذاكر كحزم.
- ضيف تصنيفات لكل يوم أو مسار عشان قائمة القنوات تتقري زي برنامج الفعالية.
- اعمل bouquet لكل نوع تذكرة: المسارح اللي التذكرة دي تقدر تتفرج عليها.
- اعمل حزمة لكل نوع تذكرة مدتها طول الفعالية، وحزمة تجريبية للصحافة والمتحدثين لو احتجت.
- اعمل bouquet لبث مسرح الرعاة أو الصالة وامنحه من خلال حزمة الرعاة بس.
إعداد الشركاء (الموزّعين)
مكتب التذاكر، لو هو اللي بيصدر الوصول.
- اعمل مجموعة بصلاحيات الخطوط ومن غير صلاحيات الكتالوج لمكتب التذاكر.
- ضيف المكتب كموزّع بالمجموعة دي ورصيد كريدت يكفي للرموز اللي هيصدرها.
- المنظّم المشارك أو الشريك الإقليمي اللي بيبيع تذاكره بنفسه بياخد حساب شريك وحزم خاصة بيه.
إعداد وصول الحضور
خط لكل تذكرة.
- ولّد رموز تفعيل بالجملة، رمز لكل تذكرة، مربوط بحزمة نوع تذكرته، واطبعه أو ابعته بالإيميل مع التذكرة.
- لبيع التذاكر أونلاين، ثبّت موصّل منصة التجارة، أو خلّي نظام التذاكر ينادي action=create_line مع الحزمة ومعرّف الطلب.
- اضبط max connections على جهاز أو اتنين لكل تذكرة عشان الرمز ما يتشاركش مع الجمهور.
- جرّب بخط تجريبي قبل ما الأبواب تتفتح، بنفس المشغّل اللي الحضور هيستخدموه.
تسجيلات الجلسات
تسجيلات بعد الفعالية.
- سجّل كل مسرح وضيف الملفات للمكتبة كحلقات مسلسل لكل مسار، أو استوردها بمهمة استيراد الفيديو عند الطلب.
- امنح التسجيلات من خلال bouquet وحزمة خاصة بيها، عشان الحضور يحتفظوا بالوصول بعد ما الخطوط المباشرة تنتهي.
- افحص تشغيل التسجيلات بخط تجريبي من الحزمة دي قبل ما تعلن عنها.
قنوات المسارح
المسرح كقناة مباشرة.
- ضيف بث مباشر لكل مسرح بدفع RTMP من المشفّر، وحطه في bouquets أنواع التذاكر اللي تقدر تتفرج عليه.
- فعّل Catch-up عشان الحاضر اللي فاتته بداية الجلسة يقدر يرجع لورا.
- اتأكد قبل أول جلسة إن Node المكان بتاخد كل مسرح مرة واحدة من المصدر الأصلي وإن الشاشات متوجّهة ليها.
الانتهاء
الوصول بينتهي بانتهاء الفعالية.
- ادّي كل حزمة تذكرة مدة بتنتهي مع آخر يوم من الفعالية، فالخطوط بتنتهي من غير أي شغل.
- مدّد خط واحد، أو أصدر رمز قصير الأمد، لمتحدث أو راعي متأخر بدل ما تعمل حزمة جديدة.
- وقّف من Lines خط تذكرة ضايعة أو مشاركة؛ وسجل التدقيق بيحتفظ بالسجل.
التكامل مع نظام التذاكر
الأنظمة بتدير الوصول؛ والمشغّل بيشغّل.
- نظام التذاكر أو التسجيل بيعمل الخطوط عبر Reseller API وبيسمع webhooks زي line.created وline.expired.
- مبيعات التذاكر أونلاين على منصة تجارة مدعومة بتستخدم موصّلها؛ ومفيش موصّل أصلي لمنتج تذاكر معيّن.
- مفيش تسجيل دخول موحّد للمشاهدين: الحاضر بيسجّل الدخول للمشغّل ببيانات الخط أو برمز تفعيل.
اعتبارات الأمان
التذكرة لشخص واحد.
- قدّم اللوحة وعنوان أساس التشغيل عبر TLS واضبط TRUSTED_PROXIES على الريفرس بروكسي بتاعك.
- تسجيل دخول بخطوتين لكل حساب في اللوحة، ومجموعات صلاحيات عشان مكتب التذاكر ما يغيّرش المسارح.
- روابط تشغيل موقّعة وبتنتهي وحد اتصالات واطي لكل تذكرة.
- نسخ احتياطية مشفّرة لقاعدة البيانات مع نسخة برا الموقع، وسجل التدقيق لكل تغيير في الخطوط والمسارح.
حل المشاكل
الفحوص الأولى المعتادة.
- حاضر مش قادر يفتح مسرح: افحص حزمة الخط والـ bouquet اللي فيه المسرح وتاريخ الانتهاء.
- مسرح بيتجمد في القاعة مش أونلاين: افحص نبض Node المكان ومسار الشاشات ليها.
- رمز تفعيل مرفوض: افحص إنه ما اتستخدمش قبل كده وإن حزمته لسه صالحة.
- سجل التدقيق بيعرض عنوان البروكسي: اضبط TRUSTED_PROXIES على البروكسي وأعد تشغيل اللوحة.