تطابق هذه الأدلة مفاهيم القطاع مع العناصر الموجودة في المنصة اليوم (باقات القنوات والخطوط والحزم وحسابات الموزّعين والعقد وواجهة API). وهي مطابقات مفاهيمية لا ميزات خاصة بقطاع، وحساب الموزّع حساب مفوَّض لا tenant معزول.
المطابقة المفاهيمية
لا شيء في اللوحة يُسمّى كلية أو فصلًا دراسيًا أو طالبًا. يبيّن الجدول أي كائن يؤدي أي دور؛ وتُعدّه الفصول أدناه بهذا الترتيب.
| في قطاعك | على المنصة | أين في اللوحة |
|---|---|---|
| حساب كلية أو قسم | حساب موزّع (reseller): لوحة مفوَّضة بأرصدة وصلاحيات وخطوطه الخاصة | Users ← إضافة موزّع؛ Groups لصلاحياته |
| مجموعة كلية أو باقة قنوات الحرم | باقة قنوات (bouquet): مجموعة مسمّاة من القنوات أو الأفلام أو المسلسلات تمنحها الحزمة | Bouquets، من Streams وMovies / Series |
| قناة الحرم أو فعالية مباشرة | قناة مباشرة: بث بمصادره وEPG وصيغ الإخراج | Streams ← إضافة بث مباشر (رابط المصدر أو دفع RTMP) |
| أرشيف المحاضرات | كتالوج VOD: أفلام ومسلسلات بمواسم وحلقات وتصنيفات وبيانات وصفية | Movies وSeries، أو مهمة استيراد VOD |
| وصول طالب أو موظف | الخط: وصول واحد بحزمته وباقات قنواته وانتهائه وحد اتصالاته ومخرجاته | Lines ← إضافة، أو رموز التفعيل، أو Reseller API |
| نهاية الفصل الدراسي أو التسجيل | تاريخ انتهاء الخط، يُجدَّد بحزمة أو رصيد أو واجهة API | تاريخ انتهاء الخط ومدة الحزمة |
| عقدة حرم أو مدينة جامعية | عقد البث: خوادم حافة تُسجَّل من اللوحة، واحدة لكل موقع أو مبنى | Servers ← إضافة عقدة، تُثبَّت عبر SSH |
| تكامل نظام معلومات الطلاب | Reseller API وwebhooks: عمليات اللوحة من نظامك الخاص | مفاتيح Reseller API وwebhooks في لوحة الموزّع |
المتطلبات
ما يجب توفيره قبل التثبيت.
- خادم في الحرم الرئيسي (Ubuntu 22.04 أو 24.04) يمكن الوصول إليه من الحرم الأخرى والمدن الجامعية، والمثبّت، وعنوان داخلي أو نطاق خلف وكيلك العكسي.
- بث قنوات الحرم وتسجيلات المحاضرات (أو ما يصدّره نظام التقاط المحاضرات)، وقدرة نظام معلومات الطلاب على استدعاء HTTP API.
- قرار بشأن الهيكل: أي الكليات تحصل على حساب شريك، وكيف تُسمّى سلاسل المحاضرات، وكم تدوم حزمة الفصل الدراسي.
نشر البنية
الحرم الرئيسي أولًا، ثم المواقع الأخرى.
- شغّل المثبّت على خادم الحرم الرئيسي؛ وضع اللوحة خلف الوكيل العكسي للجامعة واضبط الوكلاء الموثوقين لترى السجلات وقواعد IP العناوين الحقيقية.
- اضبط أساس التشغيل على العنوان الذي يصل إليه الطلاب من الحرم والمدن الجامعية.
- سجّل عقدة لكل حرم ولكل مدينة جامعية من الخوادم؛ تثبّتها اللوحة عبر SSH وتوجّه إليها مشاهدي ذلك الموقع.
- أدخل مفتاح الترخيص على الخادم؛ ويمكن لمؤسسة على نطاق أكاديمي طلب مفتاح Professional المجاني من برنامج التعليم بالبريد الإلكتروني.
تنظيم المحتوى
مجموعات الكليات وباقة قنوات الحرم.
- أنشئ تصنيفات لكل كلية ومادة، ومسلسلًا لكل مقرر بموسم لكل فصل وحلقة لكل محاضرة.
- أنشئ باقة قنوات لكل مجموعة كلية، وأخرى لقنوات الحرم، وثالثة للمواد المشتركة مثل فيديوهات التعريف.
- أنشئ حزمًا للطلاب والموظفين: الباقات التي يحتاجها كل منهم، والفصل الدراسي كمدة، فينتهي الوصول بانتهاء الفصل ما لم يُجدَّد.
- أنشئ حزمة تجريبية قصيرة للأيام المفتوحة أو الطلاب الزائرين.
إعداد الشركاء (الموزّعين)
الكليات كحسابات مفوَّضة.
- أنشئ مجموعة بأذونات للخطوط وللكتالوج الخاص بالكلية، ودون وصول إلى الإعدادات.
- أضف كل كلية أو قسم كحساب شريك (موزّع) بتلك المجموعة وحزمه؛ ويمكن لموزّعين فرعيين محاكاة الأقسام داخل الكلية.
- لا ترى الكلية وتدير إلا خطوطها؛ ويحتفظ الفريق المركزي بالرؤية الكاملة. وهو حساب مفوَّض لا تثبيت معزول.
إعداد وصول الطلاب
خط لكل طالب، من نظام معلومات الطلاب.
- أنشئ مفتاح Reseller API لنظام معلومات الطلاب واحتفظ به ضمن أسرار ذلك النظام.
- عند التسجيل يستدعي نظام معلومات الطلاب action=create_line مع حزمة الطالب ومعرّف الطلب؛ ومدة الحزمة، أي الفصل الدراسي، هي فترة الوصول.
- اضبط الحد الأقصى للاتصالات على عدد الأجهزة التي يجوز للطالب استخدامها معًا (عادةً اثنان: الهاتف والحاسوب المحمول).
- للموظفين وللتجربة، أضف خطوطًا من الخطوط ← إضافة وسلّم بيانات الدخول.
أرشيف المحاضرات
تسجيلات عند الطلب.
- ارفع كل تسجيل كمصدر حلقة أو استوردها بمهمة استيراد الفيديو عند الطلب؛ واحتفظ بعنوان المقرر ووصف قصير.
- اربط المسلسل بباقة الكلية، فلا يرى المقرر إلا الطلاب الذين تمنحه حزمتهم.
- افحص التشغيل بخط تجريبي من كل حزمة للتأكد من من يرى ماذا.
قنوات الحرم والفعاليات المباشرة
قنوات مباشرة للحرم.
- أضف بث قنوات الحرم كبثوث مباشرة ضمن البثوث، ومصدر EPG للدليل.
- أضف بثًا مباشرًا لكل قاعة محاضرات أو فعالية، يغذّيه مشفّر القاعة عبر RTMP، وفعّل Catch-up ليتمكن المتأخرون من الرجوع إلى الوراء.
- ضع كل قناة في الباقة المناسبة؛ وتأخذها العقد في المدن الجامعية مرة واحدة من المصدر الأصلي وتخدم الطلاب محليًا.
الانتهاء والتجديد
الفصل الدراسي كصلاحية للخط.
- ينتهي الخط في نهاية فترة حزمته؛ وعند إعادة التسجيل يستدعي نظام معلومات الطلاب action=renew_line فتُضاف فترة أخرى.
- حين ينسحب طالب أو يتخرج يستدعي نظام معلومات الطلاب action=disable_line.
- اشترك بنظام معلومات الطلاب في webhooks لمطابقة الخطوط التي توشك على الانتهاء والمنتهية مع سجلاته.
التكامل مع نظام معلومات الطلاب
نظام معلومات الطلاب يدير الوصول؛ والمشغّل يشغّل.
- ينشئ نظام معلومات الطلاب الخطوط ويجدّدها ويفعّلها ويعطّلها عبر Reseller API بمفتاح ومعرّف طلب.
- لا يوجد تسجيل دخول موحّد للمشاهدين ولا تكامل أصلي مع LMS أو SIS: يسجّل الطالب الدخول إلى المشغّل ببيانات الخط، ويمكن لصفحة المقرر في LMS أن ترتبط بمشغّل الويب.
- استخدم مفاتيح Admin API بعلامة القراءة فقط وقائمة IP مسموحة وتاريخ انتهاء لأدوات التقارير الداخلية.
اعتبارات الأمان
اقصر الوصول على الطلاب والموظفين.
- أبقِ المنصة على شبكة الحرم أو خلف الوكيل العكسي مع TLS؛ واضبط TRUSTED_PROXIES على الوكيل.
- دخول بخطوتين لكل حساب في اللوحة ومجموعة أذونات لكل دور، فلا ترى كلية خطوط كلية أخرى.
- روابط تشغيل موقّعة ومنتهية الصلاحية، وحدّ اتصالات لكل خط، وربط ببلد أو عنوان حيث يفيد ذلك.
- نسخ احتياطية مشفّرة لقاعدة البيانات مع نسخة خارج الموقع، وسجل التدقيق لكل تغيير في الخطوط والكتالوج.
استكشاف الأخطاء
الفحوص الأولى المعتادة.
- طالب لا يرى محاضرات: افحص تاريخ انتهاء الخط، ثم الحزمة والباقات التي تمنحها.
- طالب جديد بلا وصول: افحص نجاح استدعاء نظام معلومات الطلاب في سجل استدعاءات Reseller API وأن معرّف الطلب جديد.
- مدينة جامعية تتقطّع في المساء: افحص نبض عقدتها وأن المشاهدين موجَّهون إليها.
- يُظهر سجل التدقيق عنوان الوكيل: اضبط TRUSTED_PROXIES على الوكيل وأعد تشغيل اللوحة.