بوت ديسكورد احترافي ومتقدم لإدارة حجز مواعيد في لعبة "النجاة في الصقيع". يوفر البوت واجهة تفاعلية حديثة بالأزرار فقط مع نظام إدارة شامل للحجوزات، التحالفات، والصلاحيات.
- واجهة بالأزرار فقط (بدون أوامر نصية)
- دعم كامل للغة العربية والإنجليزية
- تخزين تفضيلات كل مستخدم
- أزرار رجوع في جميع القوائم
- ثلاثة أقسام:
- 🏗️ مواعيد البناء
- 🔬 مواعيد الأبحاث
- ⚔️ مواعيد التدريب
- منع التعارض في المواعيد
- دعم مدة الحجز (بالأيام)
- سجل كامل للحجوزات
- معلومات التحالف الكاملة
- إدارة الأعضاء (للمخولين فقط)
- نظام الرتب (R5 - R1)
- صلاحيات مفصلة
- تذكيرات تلقائية قابلة للتكوين
- إرسال رسائل خاصة
- دعم أوقات متعددة (24h, 6h, 3h, 1h)
- صلاحيات المالك الكاملة
- إضافة مشرفين
- صلاحيات جزئية قابلة للتخصيص
- حذف الحجوزات المنتهية
- تنظيف السجلات القديمة
- لا يؤثر على الأداء
# 1. استنساخ المشروع
git clone https://github.com/Dnager1/bor.git
cd bor
# 2. تثبيت المتطلبات
pip install -r requirements.txt
# 3. نسخ ملف البيئة
cp .env.example .env
# 4. تعديل .env بمعلوماتك
# ضع DISCORD_BOT_TOKEN و OWNER_ID
# 5. تشغيل البوت
python bot.pyللحصول على دليل شامل للتثبيت والإعداد والاستخدام، يرجى الاطلاع على:
- دليل النشر الكامل - تعليمات مفصلة
- دعوة البوت إلى السيرفر
- استخدام الأمر
/start - التنقل باستخدام الأزرار
📖 لوحة التحكم الرئيسية
[🤝 التحالف] [📅 الحجوزات]
[⚙️ الإدارة] [🌐 اللغة] [👤 معلوماتي]
- المالك - صلاحيات كاملة
- المشرفون - إدارة التحالفات والحجوزات
- صلاحيات جزئية - قابلة للتخصيص
- Python 3.9+
- discord.py 2.3.0+
- SQLite (aiosqlite)
- i18n (Arabic & English)
هذا المشروع مرخص تحت MIT License.
المساهمات مرحب بها! يرجى فتح Issue أو Pull Request.
لأي استفسارات أو مشاكل:
- افتح Issue على GitHub
- تواصل عبر Discord
Made with ❤️ for White Survival Community
A professional Discord bot for managing reservations and alliances in "White Survival" game with a complete button-based interface supporting Arabic and English.
See DEPLOYMENT.md for complete installation and usage guide.
- ✅ Button-only interface (no text commands)
- ✅ Full i18n support (Arabic & English)
- ✅ Reservations system (Building, Training, Research)
- ✅ Alliance management with ranks
- ✅ Advanced permissions system
- ✅ Auto-reminders (configurable times)
- ✅ Auto-cleanup system
MIT License
- نسخ احتياطي تلقائي
- إرسال إعلانات
- سجلات كاملة للعمليات
- Python 3.8 أو أحدث
- Discord Bot Token
- الحزم المطلوبة (انظر
requirements.txt)
git clone https://github.com/Dnager1/bor.git
cd borpip install -r requirements.txtcp .env.example .envقم بتعديل ملف .env وأضف:
- Discord Bot Token
- معرفات الأدوار والقنوات
- الإعدادات الأخرى
python bot.pyإذا كنت تستخدم استضافة WispByte أو أي استضافة أخرى بدون Console مباشر:
-
راجع دليل النشر الشامل:
- اقرأ
DEPLOYMENT_GUIDE.mdللحصول على تعليمات مفصلة - يحتوي على خطوات خاصة بـ WispByte
- شرح كامل لرفع الملفات عبر File Manager
- اقرأ
-
استخدم قائمة التحقق:
- راجع
UPDATE_CHECKLIST.mdللتأكد من إكمال جميع الخطوات - قوائم تحقق للنشر الأول والتحديثات
- خطوات اختبار النجاح
- راجع
# بناء وتشغيل
docker-compose up -d
# عرض السجلات
docker-compose logs -f# تثبيت كخدمة systemd
sudo nano /etc/systemd/system/booking-bot.service
sudo systemctl enable booking-bot
sudo systemctl start booking-botراجع DEPLOYMENT_GUIDE.md للتفاصيل الكاملة.
لا تحذف أو تعدل:
- مجلد
data/- يحتوي على قاعدة البيانات - ملف
.env- يحتوي على الإعدادات - مجلد
logs/- السجلات
- عمل نسخة احتياطية - حمّل مجلد
data/و.env - إيقاف البوت من لوحة التحكم
- رفع الملفات المحدثة عبر File Manager
- إعادة التشغيل وراقب Console Logs
# النسخ الاحتياطي
cp -r data/ data_backup_$(date +%Y%m%d)/
# التحديث
git pull origin main
pip install -r requirements.txt --upgrade
# إعادة التشغيل
sudo systemctl restart booking-botراجع UPDATE_CHECKLIST.md للحصول على:
- ✅ قائمة كاملة بالملفات المطلوب تحديثها
- ✅ الملفات التي يجب عدم حذفها
- ✅ خطوات التحقق من نجاح التحديث
- ✅ أوامر الاختبار في Discord
- ✅ حلول للمشاكل الشائعة
/start- القائمة الرئيسية التفاعلية | Main Menu/menu- نفس/start| Same as /start/help- دليل المساعدة الكامل (رسالة خاصة) | Full Help Guide
💡 جميع الأوامر تدعم اللغتين العربية والإنجليزية
/حجز- إنشاء حجز جديد/مواعيدي- عرض حجوزاتك النشطة/إلغاء [رقم]- إلغاء حجز/جدول [نوع]- عرض جدول المواعيد/complete [رقم]- تأكيد إكمال حجز
/mystats- عرض إحصائياتك/leaderboard [عدد]- لوحة المتصدرين
/alliance create [اسم]- إنشاء تحالف/alliance join [اسم]- الانضمام لتحالف/alliance leave- مغادرة التحالف/alliance info [اسم]- معلومات التحالف
/admin stats- إحصائيات البوت/admin export- تصدير البيانات/admin backup- نسخة احتياطية/admin announce [رسالة]- إرسال إعلان/admin clear- حذف المنتهي/admin logs [عدد]- عرض السجلات
/help- دليل استخدام شامل
bor/
├── bot.py # الملف الرئيسي
├── config.py # الإعدادات
├── requirements.txt # المكتبات
├── .env.example # مثال ملف البيئة
│
├── cogs/ # وحدات البوت
│ ├── bookings.py # نظام الحجوزات
│ ├── admin.py # أوامر الإدارة
│ ├── stats.py # الإحصائيات
│ ├── alliance.py # التحالفات
│ └── help.py # المساعدة
│
├── database/ # قاعدة البيانات
│ ├── models.py # النماذج
│ ├── db_manager.py # المدير
│ └── schema.sql # الهيكل
│
├── utils/ # وظائف مساعدة
│ ├── validators.py # التحقق
│ ├── formatters.py # التنسيق
│ ├── embeds.py # Embeds
│ ├── datetime_helper.py
│ └── permissions.py
│
├── tasks/ # المهام المجدولة
│ ├── reminders_task.py
│ ├── cleanup_task.py
│ └── backup_task.py
│
├── data/ # البيانات
│ └── backups/
│
└── logs/ # السجلات
# Discord Bot Token
DISCORD_BOT_TOKEN=your_bot_token_here
# Server Configuration
GUILD_ID=your_server_id
# Role IDs
ADMIN_ROLE_ID=123456789
MODERATOR_ROLE_ID=987654321
# Channel IDs
LOG_CHANNEL_ID=your_log_channel_id
ANNOUNCEMENT_CHANNEL_ID=your_announcement_channel_id
# Bot Settings
MAX_ACTIVE_BOOKINGS=5
LANGUAGE=ar
TIMEZONE=Asia/Riyadh
# Reminders
REMINDER_24H=true
REMINDER_1H=true
REMINDER_NOW=true
# Backup
AUTO_BACKUP_HOURS=6- التحقق من صلاحيات المستخدمين
- حماية من SQL Injection
- تشفير البيانات الحساسة
- سجلات أمان شاملة
- نسخ احتياطي تلقائي
يستخدم البوت SQLite مع الجداول التالية:
users- المستخدمونbookings- الحجوزاتalliances- التحالفاتachievements- الإنجازاتlogs- السجلات
- تأكد من مزامنة الأوامر في
bot.py - تحقق من صلاحيات البوت في السيرفر
- تأكد من وجود مجلد
data/ - تحقق من صلاحيات الكتابة
- تأكد من إعدادات التذكيرات في
.env - تحقق من سجلات الأخطاء في
logs/errors.log
يتم حفظ السجلات في مجلد logs/:
bot.log- السجل الرئيسيerrors.log- الأخطاء فقطbookings.log- عمليات الحجز
نرحب بالمساهمات! الرجاء:
- Fork المشروع
- إنشاء branch جديد
- Commit التغييرات
- Push إلى Branch
- فتح Pull Request
هذا المشروع مرخص تحت MIT License.
للدعم والاستفسارات:
- فتح Issue في GitHub
- التواصل مع المطور
شكراً لكل من ساهم في تطوير هذا البوت!
Made with ❤️ for Survival in the Frost Players