اضبط ADMIN_KEY في /etc/oxgames.env ثم أعد تشغيل الخدمة.
📈 نظرة عامة
🟢 الآن على الموقع
…
شاشةٌ مفتوحة = اتّصالٌ قائمٌ هذه اللحظة، يقينا.
و«ظهر قريبا» يعني أنّه فتح صفحةً خلال المدّة — و«آخر ظهور» يُكتب مرّةً كلّ عشر دقائق،
فلا يصلح إلّا لـ«كان هنا». تتجدّد الصفحة وحدَها كلّ ١٥ ثانية.
المدّة
شاشات مفتوحة
ستريمرز ظهروا قريبا بلا شاشة مفتوحة
🎧 الدعم
…
اختر تذكرة من القائمة.
—
بريد هذه التذكرة غير مُثبت — لا يُعمل على حساب حتى يُثبت صاحبه ملكيّته.
🎨 استديو التصميم
افتح أي لعبة في وضع الاستديو، وحرّك أي عنصر أو غيّر حجمه ولونه
وشفافيته وأيقونته، أو أضف نصا وصورة. ما تعدّله يبقى مسودة تراها أنت وحدك حتى تضغط «نشر للجميع».
لا يفتح الاستديو إلا لحساب المالك.
🔑 مفتاح توقيع تيك توك
من Euler Stream. بدونه قد لا تصل التعليقات من السيرفر.
يحفظ في قاعدة البيانات ويسري فورا بلا إعادة تشغيل.
—
🔏 خادم توقيع خاصّ
حين تُغلق باقةُ المزوّد مسارات البثّ يتوقّف الموقع كلّه لأنّ
طرفا ثالثا غيّر تسعيرته. هذا الحقل يُنهي ذلك: ضع عنوان خادم التوقيع عندنا فتذهب طلبات التوقيع إليه
بدل Euler. ركّبه أولا بأمر sudo bash /opt/oxgames/deploy/signer.sh install على السيرفر.
اتركه فارغا لترجع إلى Euler.
—
جلسة الحساب — خادم التوقيع لا يقلع بلا واحدة: مقبس تيك توك يرفض مصافحةً بلا كوكيز.
استعمل حساب تيك توك منفصلا، لا حساب بثّك.
هذه الكوكيز هي الحساب، وكلّ ما يوقّعه الخادم منسوبٌ إليه — فإن أصابه شيءٌ لم يُصب بثّك.
من متصفّحٍ مسجَّلٍ بالحساب المنفصل: أدوات المطوّر ← Application ← Cookies، وانسخ
sessionid وsessionid_ss وsid_tt وttwid
في سطرٍ واحد بهذا الشكل، ثم الصقه هنا:
sessionid=...; sessionid_ss=...; sid_tt=...; ttwid=... يُكتب في ملفٍّ بصلاحيّة 0600 ولا يُعرض ثانيةً أبدا. اتركه فارغا واحفظ لتمسحه.
—
🔒 إعادة تعيين كلمة مرور
للستريمر الذي نسي كلمته. تُقطع جلساته المفتوحة فورا بعد التغيير.
🎟️ توليد أكواد اشتراك
الباقة
عدد الأشهر
كم كودا
ملاحظة
تبيع الكود بأي وسيلة (تحويل، واتساب، متجر) والستريمر يفعله من لوحته. لا تحتاج بوابة دفع لتبدأ البيع.
📣 تنبيه الموقع …
سطر يظهر أعلى صفحات الموقع لكل زائر — لا في شاشات البث.
يُقرأ وهو يتصفّح، ومعه زرّ «راسلنا» فيصير العطل رسالةً تصلك بدل زائر يخرج بصمت.
وأطفئه من هنا حين يستقرّ الموقع.
النص العربي
English
من أغلق التنبيه لا يراه مرة أخرى — إلا إن تغيّر نصّه، أو ضغطت «أظهره للجميع».
⚡ امنح اشتراكا
اكتب بريده أو معرّف OX أو يوزره في تيك توك وامنحه — أيّها عرفت.
ولا يلزم أن يكون مسجّلا: إن كتبت بريدا غير مسجّل حُفظت المنحة بانتظاره وتُفعّل
من نفسها أول ما يسجّل أو يدخل. ويصله بريد يُخبره في الحالتين.
بريد أو معرّف أو يوزر
الباقة
أشهر
أو أيام
الأيام تغلب الأشهر إن كُتبت. والمدة تُضاف إلى ما بقي له من نفس الباقة لا تستبدله — فالتجديد يمدّ والتعويض يزيد. (وباقةٌ مختلفة تبدأ من اليوم.)
منح تنتظر أصحابها
🎮 الألعاب المعروضة
أطفئ لعبةً فيها عطل فتختفي من الصفحة الرئيسة ومن قائمة الألعاب ومن خريطة
الموقع في الحال — بلا نشر ولا حذف مجلّدها. وأنت تبقى تفتحها لتصلحها وتجرّبها،
ومن يفتح رابطها غيرك يرى «موقوفة مؤقتا».
🎁 الموقع مجاني بالكامل
مفتاحٌ واحد: كلُّ حسابٍ يأخذ «إيليت» — كلُّ الألعاب، بلا علامةٍ مائيّة، ومؤثّراتُ الهدايا
والمعارك — وتختفي الأسعارُ وأزرارُ الترقية من الموقع ومن لوحة الستريمر. لا يُكتب شيءٌ في حسابات الناس:
إطفاؤه يعيد كلَّ حسابٍ إلى باقته كما كانت (المشتركُ يكمل مدّته). الوكالةُ السارية تبقى وكالة.
والأفاتاراتُ والبطاقاتُ وعملاتُ المتجر تبقى بالمال — المجانيُّ يفتح الباقات لا المتجر.
—
⏳ مدّة التجربة المجانية
كم يوما يأخذ الحساب الجديد باقة «برو» مجانا. تُغيَّر من هنا لا من ملفّ
على السيرفر. ولا تمسّ تجربةً جارية: من بدأ بسبعة يكملها — التغيير لمن يسجّل بعده.
أيام
🎁 الهديّة اليوميّة للاعبين
صندوقٌ في المتجر وصفحة اللاعب: يفتح اللاعب هديّةً كلَّ يوم، وسبعةُ أيّامٍ في الدورة
واليومُ السابع أكبرُها. ومن فاته يومٌ رجع إلى اليوم الأوّل.
والقيمة مدىً لا رقما — المفاجأةُ هي التي تُعيده، لا الرقم المعلوم.
وللمعايرة: مبارةٌ واحدة تعطيه اليوم ٢ للمشاركة و٤٠ للفوز و٢٥ لأوّل مباراة في اليوم،
وأرخصُ عنصرٍ في المتجر بمئة عملة. فهديّةٌ بخمس عملاتٍ لا يعود لها أحد.
اليوم العاديّ — أقلّ
أكثر
اليوم السابع — أقلّ
أكثر
فرق التوقيت (ساعات)
فرقُ التوقيت هو الذي يُحدّد متى يبدأ «اليوم الجديد».
بصفرٍ يبدأ بتوقيت غرينتش، فمن يفتح هديّتَه الثانيةَ ليلا في الخليج يُحسب له يومُ أمس وتنكسر سلسلتُه وهو لم يغب.
و٣ توقيتُ الرياض.
🚫 إغلاق حساب
الإيقاف يمنع صاحبه من الدخول، ويقطع جلساته المفتوحة الآن، ويُبطل مفتاح بثّه
فتتوقّف ألعابه في OBS. ويُرفع بضغطة إن تبيّن أنّ الشكوى باطلة، ولا يضيع رصيده ولا مقتنياته.
و«من» يقبل البريد أو المعرّف أو يوزر تيك توك. وحساب المالك لا يُغلق.
من
أو محوٌ نهائيّ
يُمحى كلّ أثره: رصيده ومقتنياته وبطاقاته وربط يوزره وتذاكره. لا يُسترجع.
اكتب معرّفه (تجده بـ«من هذا؟») في الحقل ليُفتح الزرّ.
🎁 امنح إطارا أو بطاقة للاعب
الإطارات واللافتات تُشترى بالعملات، والبطاقات تأتي مع الشراء — ولم يكن لك
باب تُهدي منه أحدا. من هنا تمنح من تشاء بلا ثمن: فائزَ مسابقة، أو من تعتذر له عن عطل.
و«من» يقبل البريد أو المعرّف أو يوزر تيك توك.
من
العنصر
الممنوح يُلبس فورا إن كانت خانته فارغة، فيظهر على صاحبه
في أوّل بثّ يعلّق فيه بلا أن يفتح حقيبته. و«اسحبه» يردّ منحةً أخطأت فيها.
💳 الدفع عبر Polar
…
Polar تاجر مسجّل: تقبض وتحسب الضريبة وتحوّل لك، ولا نلمس بيانات بطاقة أبدا.
ألصق التوكن وسر الويبهوك هنا فيُخزنان في قاعدة السيرفر وحدها.
انتبه: بيئة التجربة في Polar حساب منفصل تماما على sandbox.polar.sh — تنظيم وتوكن ومنتجات
وسر ويبهوك مستقلة. لذلك لكل بيئة حقولها هنا، ولا يضيع شيء عند التبديل.
Organization Access Token
Webhook Secret
ضع هذا الرابط في Polar تحت Settings ← Webhooks، واختر الأحداث:
order.paid و subscription.active و subscription.revoked.
🅿️ الدفع عبر PayPal
…
طريق ثانٍ بجانب Polar لمن لا بطاقة له. نفس المنتجات ونفس ما يصل للمشتري،
والمبلغ يُؤخذ من خانة «السعر» في المنتج.
فرق مهم: Polar تاجر مسجّل يتكفّل بالضريبة والفواتير نيابة عنك. أما PayPal فبوابة فقط —
في مبيعاته أنت التاجر: الضريبة والفواتير والاسترجاع مسؤوليتك، وPayPal قد يجمّد الرصيد عند نزاع.
Client ID
Secret
Webhook ID
العملة
ضع هذا الرابط في لوحة PayPal تحت Apps & Credentials ← تطبيقك ← Webhooks، واختر الحدثين:
CHECKOUT.ORDER.APPROVED و PAYMENT.CAPTURE.COMPLETED.
ثم انسخ Webhook ID الذي يعطيك إياه والصقه فوق — بدونه تُرفض كل الإشعارات.
المبلغ الذي سيُرسل إلى PayPal لكل منتج
طلبات معلّقة — لم تصل نهايتها بعد
المعلّق عادي: من فتح صفحة الدفع ولم يكملها يبقى هنا.
ومن دفع فعلا يُمنح تلقائيا عند العودة أو بالويبهوك. زرّ «اقبض» للحالات النادرة التي ضاع فيها الاثنان.
🏷️ ربط منتجات Polar
أنشئ المنتج في Polar، ثم الصق معرّفه هنا وحدد ماذا يعطي. لا يوجد رقم ثابت في الكود.
معرّف المنتج
النوع
الباقة
أشهر
عملات
البطاقة
الاسم المعروض
السعر
يُعرض كما هو. ومع PayPal هو المبلغ المقبوض فعلا، فاكتبه رقما.
الترتيب
🧾 طلبات الدفع
💰 سجلّ زبون
اكتب بريد الزبون فترى ما دفع وما أُعطي جنبا إلى جنب:
كل طلب دفع، وكل منحة ومن أين جاءت — دفعا أو كودا أو تجربة مجّانية أو منحةً بيدك.
وبهذا يُجاب سؤال «كم دفع؟ وكم أخذ؟» بالقراءة لا بالحساب.
—
الطلبات الواصلة من البوابة
المُنح — كل مدّة أُعطيت ومن أين
✉️ البريد …
يُستعمل لرسائل استرجاع كلمة المرور. اختر طريقة واحدة.
المرسل (From)
ردودهم تروح إلى (Reply-To)
هذا هو الاسم الذي يراه اللاعب في صندوقه. اجعله باسم موقعك لا باسم بريدك الشخصي.
بلا حساب ولا مفتاح ولا اشتراك: السيرفر يبحث عن خادم بريد المستلم ويسلّمه الرسالة بيده،
ويختمها بتوقيع DKIM كي يقبلها جيميل. المفاتيح تُولَّد هنا وحدها ولا تغادر السيرفر.
يبقى شيء واحد بيدك: ألصق السجلات الثلاثة تحت عند مزوّد نطاق oxgames.live،
ثم اضغط «افحص» حتى تصير كلها خضراء.
اسم الخادم في التحية (HELO)
مُحدِّد DKIM
Resend API Key
الطريق المحترف. افتح حسابا في resend.com ← Domains ← Add domain ← اكتب
oxgames.live، فيعطيك سجلات يُلصق كل منها عند كلاودفلير
(DNS ← Records ← Add record). حين تصير كلها Verified اذهب إلى
API Keys وأنشئ مفتاحا صلاحيته Sending access فقط، والصقه هنا.
بعدها اكتب في «المرسل» فوق: OX GAMES <[email protected]>.
مجانا حتى ٣٠٠٠ رسالة شهريا، وتصل صندوق الوارد لا المزعج.
أسرع طريق: جيميلك نفسه. اضغط «جهّزه لجيميل» تحت، ثم:
حساب جوجل ← الأمان ← فعّل التحقق بخطوتين ← App passwords ←
أنشئ كلمة ١٦ حرفا والصقها في خانة كلمة المرور.
اكتب بريدك نفسه في «المستخدم» وفي «المرسل» — جوجل لا يرسل باسم بريد غيره.
بلا سجلات نطاق وبلا انتظار، وحدّه ٥٠٠ رسالة يوميا.
الخادم
المنفذ
المستخدم
كلمة المرور
🎙️ خادم الصوت TURN …
فويس «القاتل بيننا» يربط الهواتف ببعضها مباشرة. على الواي فاي يكفي STUN،
أما على شبكة الجوال (4G/5G) فالمشغّل يضع المشتركين خلف حاجز واحد
فلا يجد الهاتفان طريقا — وبدون TURN يصمت الصوت تماما.
خادم TURN يمرّر الصوت بينهما.
يقبل عدة عناوين مفصولة بفاصلة، والأفضل أن تضع udp و tcp معا:
turn:host:3478?transport=udp, turn:host:3478?transport=tcp
العنوان
المستخدم
كلمة المرور
🔑 الدخول بجوجل
أنشئ «OAuth client ID» من نوع Web في Google Cloud Console، وضع
https://oxgames.live في Authorized JavaScript origins، ثم الصق المعرّف هنا.
لا نحتاج client secret ولا نخزنه.
🪙 أكواد شحن رصيد اللاعبين
اللاعب يشحن رصيده من صفحة «الرصيد» في حسابه. بعها كما تبيع أكواد الاشتراك.
عدد العملات
كم كودا
ملاحظة
🎮 لاعبو المنصة
معرّف أو بريد
عملات (سالب للخصم)
كلمات المرور غير مخزّنة كنص — المحفوظ بصمة scrypt لا تُعكس.
لمن نسي كلمته استعمل «إعادة تعيين كلمة مرور» أعلاه أو دعه يسترجعها ببريده.
💨 أصوات المزاح
مؤثر «ضرطة» في مؤثرات الإقصاء مخفي عن الجميع افتراضيا. فعّله لحساب واحد من الجدول أدناه، أو للجميع من هنا.