
خدمة WhatsApp OTP
واجهة WhatsApp OTP للتحقق مع سجلات رموز مجزأة وطابور إرسال في SQLite ولوحة إدارة بالعربية والإنجليزية.
تفاصيل المشروع
خدمة WhatsApp OTP نظام مستضاف ذاتيًا للتطبيقات التي ترسل رموز تحقق لمرة واحدة عبر WhatsApp وتتحقق من الرموز التي يقدمها المستخدمون. يستخدم المشغلون لوحة الإدارة لربط الحساب ومراجعة مهام الإرسال وإدارة قوالب الرسائل. هذه هي النسخة الثانية من خدمة سابقة لإرسال OTP باسم whatsapp-otp.
المشكلة
يحتاج التطبيق إلى توليد الرمز وإرساله من حساب WhatsApp متصل، ثم فحص الرمز الذي يدخله المستخدم. وقد تصل طلبات الإرسال بوتيرة أسرع من وتيرة تسليم الرسائل. تحفظ الخدمة تجزئة الرمز للتحقق، وتضع الرسالة الصادرة في طابور SQLite. وتعرض اللوحة حالة الاتصال وتقدم المهام ونشاط التحقق للمشغلين.
الميزات الرئيسية
- استقبال طلبات الإرسال والتحقق عبر مسارات API محمية بترويسة x-api-key.
- فحص صيغة رقم الهاتف الدولية والاستعلام عن وجود حساب WhatsApp قبل وضع الرسالة في الطابور.
- توليد رمز رقمي باستخدام crypto في Node.js، وحفظ تجزئته عبر bcrypt، وإرجاع استجابة إرسال دون كشف الرمز.
- مقارنة الرمز المدخل بأحدث سجل غير مستخدم وساري الصلاحية، ثم تسجيل نجاح التحقق.
- إنشاء قوالب الرسائل وتعديلها وتفعيلها وحذفها، مع إدراج الرمز عبر موضع {otp}.
- حفظ مهام التسليم في SQLite بحالات الانتظار والمعالجة والإرسال والفشل.
- عرض رمز QR للربط وإحصاءات المهام والتحقق وموارد النظام في لوحة الإدارة.
- تعديل إعدادات OTP وبيانات دخول المسؤول عبر مسارات موثقة.
- إرسال إشعارات تشغيلية اختيارية عبر بوت Telegram.
البنية التقنية
يعالج Express طلبات HTTP ويقدم صفحات الإدارة باستخدام EJS. يتحقق متحكم الإرسال من الطلب، ويطبق حدودًا على الهاتف وعنوان IP، ثم يولد الرمز ويحفظ تجزئته في جدول otp_verifications ويضيف مهمة تسليم. يستعلم عامل مدمج عن مهام SQLite، ويحجز مهمة منتظرة، ثم ينتظر فترة عشوائية قبل إرسال الرسالة عبر Baileys. يحفظ موائم SQLite بيانات مصادقة Baileys ومفاتيح Signal. ينقل Socket.IO تحديثات حالة WhatsApp ورمز QR وموارد النظام إلى لوحة Alpine.js، ويوفر i18n النصوص العربية والإنجليزية.
أبرز الجوانب الهندسية
- يعتمد التحقق على تجزئة محفوظة وفحص انتهاء الصلاحية، بينما تعرض استجابة الإرسال الحالة دون رمز OTP.
- ينقل الطابور المهمة إلى المعالجة إذا بقيت في حالة الانتظار، ثم يسجل نتيجة الإرسال.
- تتابع حدود الطلبات المحفوظة في الذاكرة الهاتف وعنوان IP، ولتسجيل دخول المسؤول حد مستقل.
- يبدل قالب الإدارة اتجاه العرض بين الإنجليزية من اليسار إلى اليمين والعربية من اليمين إلى اليسار.
- تحذف مهمة دورية سجلات التحقق القديمة بحسب حالتها.
معرض الصور
آراء العملاء
آراء أشخاص استخدموا هذا المشروع أو شاركوا في تطويره.
شارك تجربتك مع هذا المشروع
مشاريع ذات صلة

بوت Levix المستضاف ذاتيًا لـ WhatsApp
بوت WhatsApp بترخيص MIT يضم أدوات ذكاء اصطناعي وإشرافًا وجدولة، مع استضافة عبر Android وموقع مرافق.

منصة Leviro Jobs Hunter لفرص العمل الحر
خدمة من Leviro تبحث عن فرص العمل الحر، وتطابقها مع المهارات، وترسل النتائج عبر Telegram.

منصة خدمات WhatsApp المتعددة
منصة WhatsApp خاصة لرموز OTP وإشعارات الحالة والإرسال الجماعي، مع تحكم إداري وصلاحيات مفصلة.