Skip to content

المصطلحات

مفردات Timers Studio: room وrundown وStudio وPlayer وModerator وGateway وAgenda وcontroller وحالة الـ timer وبقية المصطلحات التي ستقابلها في التوثيق.

آخر تحديث

المصطلحات

تجمع هذه الصفحة المصطلحات التي ستلاقيها عبر توثيق Timers Studio. معظمها يقابل مباشرة مسارًا أو مكوّنًا أو عمودًا في مخطط Supabase، فالكلمة نفسها تعني الشيء نفسه في المنتج وفي الوثائق.

مفاهيم أساسية

Room (الغرفة) حدث داخل Timers Studio. تملك الغرفة rundown وثيمًا وكلمة مرور للمنسّق ومجموعة من الروابط العامة. تُعرَّف بـ slug قصير يظهر في كل الروابط (/id/<room>, /player/<room> وغيرها).

Rundown القائمة المرتّبة لـ timers داخل الغرفة. يعرضها Studio في العمود الأوسط، ويقرؤها Moderator، ويعرضها Agenda للجمهور، ويحرّك Player عنصرًا واحدًا في كل مرة.

Timer سطر واحد من الـ rundown. يحمل عنوانًا، واختياريًا عنوانًا فرعيًا ومتحدّثًا، ومدّة، ووضعًا (DURATION, FINISH_TIME, TIME_OF_DAY, COUNT_UP).

Controller السطر في Supabase الذي يمثّل الغرفة من جهة الخادم (جدول controllers). UUID وslug للـ studio وslug للـ player ولغة الإدارة وحالة الـ timer. تُفهرَس كل قناة realtime على هذا الـ UUID.

الوحدات الأربع

Studio/id/<room> كونسول المخرج. يحرّر الـ rundown ويقود الـ Player ويملك العرض. يتطلّب تسجيل الدخول.

Player/player/<room> الشاشة المواجهة للمسرح. شاشة كاملة بعدّاد تنازلي مع طبقات اختيارية. عام، دون تسجيل دخول.

Moderator/moderator/<room> مساحة الكواليس لعامل ثانٍ (مقدّم، مسؤول خشبة). شبكة widgets قابلة للتخصيص، intercom، عدّادات مباشرة. محمي بكلمة مرور لكل غرفة.

Agenda/agenda/<room> الجدول الزمني الموجّه للجمهور. قراءة فقط، ثلاثة أوضاع عرض (LIST, FOCUS, CURRENT_NEXT). دون تسجيل دخول.

Gateway/ask/<room> + مضمّن داخل Studio وجهان للوحدة نفسها. مسار /ask/<room> هو النموذج العام حيث يرسل المشاهدون أسئلة أو يصوّتون. داخل Studio، تبويب مساحة المشغّل يفتح LiveMonitor وStageConfigurator وTombola وPolls.

حالات وأوضاع الـ timer

TimerState إحدى STOPPED أو RUNNING أو PAUSED. كل Player في الغرفة يعكس التغيير خلال أقل من 100 ms.

DURATION عدّ تنازلي من طول تحدّده (مثلاً 10:00 لعشر دقائق).

FINISH_TIME عدّ تنازلي إلى ساعة حائط (مثلاً 14:30 توقيتًا محليًا).

TIME_OF_DAY ساعة حيّة تعرض الوقت المحلي الحالي بدلاً من عدّ تنازلي.

COUNT_UP ساعة إيقاف تبدأ من 00:00.

Tweak تعديل حيّ على الـ timer الجاري (+1m, +30s, -30s, -1m). يُصدره Studio ويستقبله Player في الزمن الحقيقي.

المسارات والروابط

المسارلمنالتوثيق
/id/<room>المخرج، المشغّلتسجيل دخول
/player/<room>المسرح، OBS، بث مباشرعام
/moderator/<room>المقدّم، الكواليسكلمة مرور
/agenda/<room>الجمهور، الاستقبالعام
/ask/<room>المشاهدون (Gateway)عام

جداول Supabase التي ستلاقيها

controllers — الغرفة نفسها (UUID، slugs، حالة الـ timer، لغة الإدارة).

spectators — الأشخاص الذين فتحوا /ask/<room> لغرفة معيّنة (اسم/كنية، مقعد اختياري، بصمة المتصفّح).

spatial_questions — أسئلة أرسلها المشاهدون (status: pending, approved, answered, rejected، مشاعر، متّجه مقعد اختياري).

polls — استفتاءات حيّة أُنشئت من Moderator (status: draft, active, closed).

poll_votes — سطر لكل صوت. صوت واحد لكل بصمة لكل استفتاء.

العرض والثيم

Theme (الثيم) رموز لون، خطّ طباعي، تأثير زجاجي، خلفية. يُطبَّق على Player وAgenda. يُحرَّر من customiser Studio.

Display mode (Agenda) واحد من LIST, FOCUS, CURRENT_NEXT. يغيّره المشغّل، ويُعكس على جهة الجمهور دون إعادة تحميل.

Safe area inset للعرض يُطبَّق على Player لتجنّب overscan على التلفزيونات. Default، 90%، 80%، off.

الزمن الحقيقي

Channel قناة realtime في Supabase مفهرسة على UUID الـ controller. كل صفحات Studio وPlayer وModerator وAgenda وGateway في الغرفة نفسها تشترك في القناة نفسها.

مظروف الكمون التأخير المستهدف بين فعل داخل Studio وأثره المرئي على Player. يستهدف Timers Studio ≤ 100 ms من طرف إلى طرف.

اقرأ بعدها