إيقاف الجلسة
إغلاق محرك واتساب وتحرير الموارد.
تسجيل الدخول مطلوب
سجل الدخول لاستبدال المعرفات (Instance ID) ورمز الوصول (Access Token) بمعلومات حسابك الحقيقي لاختبار ال API مباشرة.
تسجيل الدخوللا توجد معاملات استعلام مطلوبة
هذه النهاية الطرفية لا تتوقع بيانات في الرابط.
توصيات
استخدم نقطة النهاية هذه لإيقاف الجلسة إذا علقت، ثم أعد تشغيلها.
قم بتنفيذ مؤقت خمول في تطبيقك لإيقاف الجلسات التي لم تستخدم لأكثر من 24 ساعة تلقائياً.
إدارة الموارد: الدليل الكامل لإيقاف الجلسة /v2/session/stop
تعد نقطة النهاية /v2/session/stop أداة حيوية لإدارة كفاءة نظامك وتوفير موارد الحوسبة. هي تمثل وضع الجلسة في "حالة سبات" (Hibernation)، حيث نقوم بإغلاق كافة العمليات النشطة وتحرير الذاكرة العشوائية (RAM) والمعالج (CPU) المخصصين لهذه النسخة، مع الحفاظ الكامل على سلامة بيانات المصادقة.
فلسفة "الإيقاف النظيف" مقابل "الحذف"
من المهم جداً التمييز بين الإيقاف (stop) والحذف (delete).
- الإيقاف (
stop): يحافظ على "شخصية" الجلسة. عندما تعيد تشغيلها لاحقاً، ستظل مرتبطة بنفس رقم الهاتف ولن تحتاج لمسح رمز QR جديد. هو إجراء مؤقت للصيانة وتوفير الموارد. - الحذف (
delete): إجراء مدمر يمسح كل شيء.
لماذا يجب عليك استخدام الإيقاف بانتظام؟
- استقرار الأداء: الجلسات التي تعمل لأسابيع طويلة دون توقف قد تواجه أحياناً تسرباً في الذاكرة (Memory Leaks) بسبب طبيعة متصفح Headless Chrome. الإيقاف ثم التشغيل ينظف الذاكرة تماماً.
- الامتثال لقواعد واتساب: إبقاء الجلسة متصلة 24/7 بينما لا يوجد نشاط حقيقي قد يثير أحياناً أنظمة الرقابة الآلية لدى واتساب. الإيقاف في فترات الخمول الطويلة يحاكي السلوك البشري الطبيعي.
الأوركسترا التقنية: ماذا يحدث عند طلب الإيقاف؟
عند إرسال طلب إلى /v2/session/stop، يقوم نظام Wawp بالخطوات التالية:
- إيقاف الاستلام (Intercept Stop): نتوقف فوراً عن استقبال أي رسائل جديدة من خوادم واتساب.
- مزامنة البيانات (State Sync): نقوم بحفظ الحالة النهائية لقاعدة البيانات المحلية للتأكد من عدم فقدان أي "علامات قراءة" (Seen Marks) أو تعديلات أخيرة.
- قتل العمليات (Process Termination): نرسل إشارة
SIGTERMللمتصفح الخفي لإغلاقه بشكل آمن. - تحرير الحاوية: يتم وضع الحاوية البرمجية في حالة "متوقف"، مما يقلل استهلاك موارد الخادم المضيف إلى الصفر تقريباً.
استراتيجيات التشغيل الذكي
1. مؤقت الخمول (Idle Timeout)
أحد أفضل الأنماط المعمارية هو تنفيذ "مؤقت خمول" في تطبيقك.
مثال: إذا لم يقم المستخدم بإرسال رسالة ولم يستقبل النظام أي رسالة لهذا المستخدم خلال آخر 12 ساعة، قم تلقائياً باستدعاء /v2/session/stop. هذا يضمن أن خوادمك تعمل دائماً بأقصى كفاءة للجلسات النشطة فعلياً.
2. الصيانة المجدولة
ننصح بجدولة عملية إيقاف وتشغيل (Stop -> Start) لجميع الجلسات مرة كل أسبوع في ساعات الفجر. هذا الإجراء البسيط يضمن تحديث كافة الكاشات (Caches) وحل أي مشاكل تقنية خفية قد تكون تراكمت.
الأمان والاعتبارات الهامة
تفادي فقدان البيانات
قبل استدعاء stop عبر الكود الخاص بك، تأكد من أنك قمت بمعالجة كافة أحداث الويب هوك (Webhooks) الواردة. في اللحظة التي تتوقف فيها الجلسة، لن تصلك أي تحديثات حتى يتم التشغيل مرة أخرى.
حالة الطوارئ
إذا واجهت جلسة "مجمدة" (Frozen) لا تستجيب لأوامر الإرسال ولا ترسل ويب هوك، فإن استدعاء /v2/session/stop هو الخطوة الأولى لاستعادة السيطرة. هو بمثابة "إعادة تعيين قسري" للبيئة البرمجية.
استكشاف الأخطاء (Troubleshooting)
الخطأ: "Instance is already stopped" (400)
هذا يعني أن الطلب وصل ولكن الجلسة ليست في حالة تشغيل. يمكنك تجاهل هذا الخطأ في نظامك لأنه يعني الوصول للنتيجة المطلوبة.
الخطأ: "Stop request timed out"
في حالات نادرة، قد يرفض متصفح Chrome الإغلاق بسبب عملية معلقة. إذا حدث هذا، انتظر 30 ثانية ثم حاول مرة أخرى. نظامنا يمتلك "قاتل عمليات" تلقائي يعمل في الخلفية لمعالجة هذه الحالات.
قائمة التحقق للإيقاف الناجح:
- تحقق أن الحالة الحالية هي
WORKINGأوSCAN_QR_CODEأوSTARTING. - استدعِ
/v2/session/stop. - راقب الحالة عبر
/v2/session/infoحتى تصبحSTOPPED. - اعرض حالة "غير متصل" أو "في وضع السبات" لمستخدمك النهائي.
البارامترات
قم بتهيئة المعاملات المطلوبة للتفاعل مع نقطة النهاية هذه. جميع وسائط الاستعلام والبيانات مدرجة أدناه مع تفاصيلها.
محتوى الطلب
يرسل كـ JSONstring | معرف النسخة الفريد مثال: | ||
string | مفتاح الوصول الخاص بـ API مثال: |
أمثلة الكود
استخدم أمثلة الكود الجاهزة لدمج واجهة برمجة التطبيقات (API) في مشروعك بسرعة وكفاءة. اختر لغة البرمجة والمكتبة التي تفضلها.
الردود المتوقعة
استكشف كافة الردود والنتائج المحتملة من الخادم. قمنا بتوثيق كل كود حالة (Status Code) مع أمثلة للبيانات لتسهيل معالجة الأخطاء والنجاح.
Example
{
"name": "wawp-84729105",
"status": "STOPPED",
"config": {
"webhooks": {
},
"proxy": null
}
}Command Palette
Search for a command to run...