فكرة البوت
أريد برمجة بوت Discord لتتبع الدعوات وربطها بنظام مكافآت داخل السيرفر.
الفكرة الأساسية هي أن كل عضو يستطيع دعوة أشخاص جدد إلى السيرفر، والبوت يقوم بتتبع من قام بدعوة كل عضو جديد، ثم يحسب عدد الدعوات الصحيحة لكل شخص ويحفظها في قاعدة البيانات.
طريقة عمل البوت
عندما يدخل شخص جديد إلى السيرفر، يقوم البوت بمعرفة من قام بدعوته وتسجيل الدعوة لصاحب الرابط.
ويجب أن يتعامل النظام مع الحالات التالية:
دخول عضو جديد.
خروج العضو من السيرفر.
دخول العضو مرة أخرى.
منع احتساب نفس الشخص أكثر من مرة بطريقة غير صحيحة.
تسجيل الشخص الذي قام بالدعوة.
تسجيل وقت الدخول والخروج.
حفظ سجل الدعوات بالكامل.
ويتم استخدام MongoDB + Mongoose لحفظ جميع البيانات.
معرفة عدد الدعوات
عندما يستخدم العضو أمر مثل:
/invites
يقوم البوت بإنشاء صورة خاصة بالعضو توضح تقدمه في نظام الدعوات.
الصورة تكون مشابهة للتصميم المرجعي المرفق، وتحتوي على:
صورة العضو.
اسم العضو.
مجموع دعواته.
عدد الدعوات المتبقية للمكافأة التالية.
اسم المكافأة التالية.
Progress Bar يوضح نسبة التقدم.
آخر شخص قام بدعوته إن أمكن.
مثال:
مجموع دعواتك: 55
باقي لك 65 دعوة للمكافأة التالية
المكافأة التالية: Discord Nitro
ويتم إنشاء الصورة تلقائيًا باستخدام:
@napi-rs/canvas
نظام المكافآت
كل مكافأة لها:
اسم المكافأة.
عدد الدعوات المطلوبة.
مثال:
50 دعوة → Discord Nitro
100 دعوة → 14 Boosts
200 دعوة → منتج مجاني من المتجر
المكافآت لا تكون ثابتة داخل الكود.
أريد أن يستطيع الإداري من داخل البوت:
إضافة مكافأة.
تغيير اسم المكافأة.
تغيير عدد الدعوات المطلوبة.
حذف المكافأة.
تفعيل أو تعطيل المكافأة.
ويتم حفظ جميع التعديلات مباشرة في MongoDB بدون الحاجة إلى تعديل الكود أو إعادة تشغيل البوت.
طلب المكافأة
عندما يصل العضو إلى العدد المطلوب من الدعوات، يستطيع تقديم طلب للحصول على المكافأة.
يرسل البوت الطلب إلى روم خاص بالإدارة ويحتوي على:
اسم العضو.
User ID.
عدد دعواته.
اسم المكافأة.
تاريخ الطلب.
مع زرين:
قبول
رفض
إذا تم قبول الطلب، يتم تسجيل أن العضو استلم المكافأة حتى لا يستطيع طلب نفس المكافأة مرة أخرى.
لوحة الإدارة
أريد لوحة تحكم داخل Discord باستخدام:
Buttons + Select Menus + Modals
ومن خلالها يستطيع الإداري:
إدارة المكافآت.
إضافة أو خصم دعوات من عضو.
تصفير دعوات عضو.
مشاهدة عدد دعوات عضو.
مشاهدة الأشخاص الذين قام العضو بدعوتهم.
مشاهدة طلبات المكافآت.
مشاهدة المكافآت المستلمة.
تحديد روم طلبات المكافآت.
تحديد روم Logs.
تحديد Roles المسموح لها بإدارة البوت.
Leaderboard
أريد أمر يعرض أكثر الأعضاء دعوة داخل السيرفر، مثل:
/leaderboard
ويعرض ترتيب الأعضاء حسب عدد الدعوات الصحيحة.
التقنيات المطلوبة
Node.js 20+
discord.js v14
MongoDB
Mongoose
@napi-rs/canvas
PM2
الهدف النهائي
أريد نظام Invite Tracker كامل، بحيث يعرف العضو عدد دعواته من خلال صورة، ويرى تقدمه نحو المكافأة القادمة، بينما تستطيع الإدارة التحكم في أسماء المكافآت وعدد الدعوات المطلوبة بالكامل من داخل Discord بدون تعديل الكود.
ويجب أن يكون نظام تتبع الدعوات دقيقًا مع حفظ جميع البيانات والسجلات في MongoDB وعدم فقدانها عند إعادة تشغيل البوت.
| تاريخ التسجيل | |
| معدل التوظيف | |
| المشاريع المفتوحة | 1 |
| مشاريع قيد التنفيذ | 0 |
| التواصلات الجارية | 4 |
السلام عليكم ورحمة الله وبركاته، اطلعت على تفاصيل المشروع، وفهمت أن المطلوب ليس مجرد بوت Discord لتتبع الدعوات، بل نظام Invite Tracker متكامل وقابل للإدارة بالك...
السلام عليكم أستاذ فيصل، اطلعت على تفاصيل المشروع وفهمت المطلوب، وأقدر أنفذ لك البوت باستخدام Node.js و Discord.js v14 و MongoDB/Mongoose، مع نظام دقيق لتتبع ال...
اطلعت على فكرتك: بوت Discord لتتبع الدعوات وربطها بنظام مكافآت. أبنيه بلغة Node على مكتبة Discord الرسمية مع قاعدة بيانات تحفظ من دعا كل عضو. النقطة التي تكسر ب...
السلام عليكم أستاذ فيصل، اطلعت على تفاصيل المشروع وفهمت المطلوب بشكل واضح، والمشروع بالنسبة لي ليس مجرد إضافة عداد للدعوات، بل نظام Invite Tracker متكامل يجب أن...
السلام عليكم ورحمة الله وبركاته، أنا كباشي قاسم، مطور محترف مع أكثر من 4 سنوات خبرة في بناء الأنظمة والتطبيقات. أستطيع تنفيذ بوت Discord كامل لتتبع الدعوات ونظا...
السلام عليكم سوف يتم تنفيذ البوت بالكامل بـ Node.js وDiscord.js مع MongoDB/Mongoose. هركز بشكل خاص على دقة تتبع الدعوات وحالات الدخول والخروج وإعادة الدخول، مع ...
السلام عليكم أستاذ فيصل، البوت الذي تطلبه جاهز لدي فعليا بنفس التقنيات المحددة (Node JS الإصدار 20 ومكتبة discord الإصدار 14 و MongoDB مع Mongoose ومكتبة napi-r...
السلام عليكم أستاذ فيصل، أستطيع تنفيذ نظام الدعوات والمكافآت كما وصفته، بحيث تتحكم الإدارة في المكافآت والإعدادات من داخل Discord وتحفظ فورا في MongoDB دون تعدي...
السلام عليكم أستاذ فيصل، اطلعت على تفاصيل المشروع، والمطلوب هنا ليس مجرد Discord Bot يحسب عدد الـInvites، بل نظام Tracking Rewards كامل يحافظ على سجل الدعوات بد...
شفت تصميم البطاقة المرفق مع العرض[cite: 1]، وجاهز أنفذ لك البوت بنفس الدقة 100% باستخدام Node.js 20 و Discord.js v14 مع @napi-rs/canvas لتوليد الصورة بنفس الشكل...
السلام عليكم استاذ فيصل, معك احمد حسام مهندس برمجيات ومتخصص AI، ولدي خبرة في بناء الأنظمة الخلفية (backend) وقواعد البيانات وأتمتة سير العمل. قرأت تفاصيل بوت In...