حذف رسالة

احذف رسالة معينة باستخدام معرفها.

DELETE
https://api.wawp.net/v2/messages/delete?access_token=YOUR_ACCESS_TOKEN&chatId=201234567890%40c.us&instance_id=123456789&messageId=true_..._...

تسجيل الدخول مطلوب

سجل الدخول لاستبدال المعرفات (Instance ID) ورمز الوصول (Access Token) بمعلومات حسابك الحقيقي لاختبار ال API مباشرة.

تسجيل الدخول
اختبار /v2/messages/delete
DELETE
DELETE

لا توجد معاملات استعلام مطلوبة

هذه النهاية الطرفية لا تتوقع بيانات في الرابط.

توصيات

  • قم بإلغاء الرسائل فقط في حالة حدوث أخطاء أو تسرب بيانات حساسة.

  • أبلغ المستخدم بأنه سيظهر 'تم حذف هذه الرسالة'.

المحو المنضبط: إتقان دورة حياة حذف الرسائل

في نظام المراسلة المهني، تعد القدرة على إزالة المحتوى بنفس أهمية القدرة على إرساله. توفر نقطة النهاية /v2/messages/delete طريقة برمجية لاستدعاء بروتوكولات الحذف في واتساب. ومع ذلك، فإن الحذف ليس مجرد أمر "إزالة" بسيط؛ إنه تفاوض معقد بين مثيلك، وشبكة واتساب، وحالات جهاز المستلم.


🏗️ المنطق التقني: "الحذف للجميع" مقابل "الحذف لدي"

يميز واتساب بين الحذف المحلي والحذف عبر الشبكة. يحاول Wawp تنفيذ الحذف الأكثر فعالية بناءً على السياق:

  1. الحذف لدى الجميع (عبر الشبكة):
    • التوقيع: يتم استبدال الرسالة الأصلية بتنبيه من النظام: "تم حذف هذه الرسالة".
    • المصافحة: يرسل مثيلك حزمة "إلغاء" (Revocation). يقوم خادم واتساب بعد ذلك ببث هذا إلى جميع المستلمين النشطين.
    • القيد: يعمل هذا فقط إذا كانت الرسالة مرسلة من قبل مثيل وقبل مرور ~48 ساعة.
  2. الحذف لدي (تنظيف محلي):
    • إذا انتهت المهلة الزمنية، أو إذا كنت تحذف رسالة أرسلها شخص آخر (ولست مشرف مجموعة)، فإن الحذف يكون محلياً. تختفي الرسالة من مثيل Wawp الخاص بك والأجهزة المرتبطة، ولكنها تظل مرئية للمرسل والمستلمين الآخرين.

🚀 حالات استخدام استراتيجية للحذف

1. الامتثال وخصوصية البيانات (GDPR)

إذا مارس العميل "حقه في النسيان"، يجب عليك إزالة رسائله.

  • سير العمل: حدد جميع معرفات messageId المرتبطة بمعرف JID للعميل في قاعدة بياناتك المحلية وقم بالحذف من خلال هذه النقطة لضمان إزالتها من مخزن محرك Wawp.

2. تصحيح هلسنات البوت

إذا أرسل بوت الذكاء الاصطناعي معلومات غير صحيحة (مثل سعر خاطئ أو بيانات خاصة):

  • إجراء فوري: استدعِ نقطة حذف هذا المعرف messageId خلال ثوانٍ. حتى لو رأى المستخدم التنبيه، فإن إزالة المحتوى تمنع أرشفته أو استخدامه كمرجع لاحقاً.

3. إشراف المجموعات

بصفتك مشرفاً على المجموعة، يمتلك مثيل Wawp الخاص بك القدرة على "الحذف للجميع" بغض النظر عمن أرسل الرسالة.

  • التنفيذ: بناء "فلتر بذاءات". عندما يكتشف الويب هوك رسالة تحتوي على كلمات محظورة، قم بتشغيل الحذف تلقائياً للحفاظ على مهنية وسلامة المجموعة.

🛡️ أفضل الممارسات للتنظيف الفعال

  • عتبة الـ 48 ساعة: قم دائماً بتسجيل الطابع الزمني للرسائل الصادرة. لا تحاول إجراء "حذف للجميع" إذا كانت الرسالة أقدم من 48 ساعة.
  • عقود الوسائط: يؤدي حذف رسالة تحتوي على وسائط عادةً إلى إزالة المؤشر لتلك الوسائط. ومع ذلك، إذا قفل المستلم "التنزيل التلقائي إلى المعرض" في هاتفه، فقد يظل الملف موجوداً في تخزين هاتفه الفعلي حتى بعد "الحذف للجميع".

⚠️ اعتبارات هامة

  • متطلبات المشرف: يجب أن تكون مشرفاً لتتمكن من حذف رسائل أرسلها الآخرون في المجموعة. استخدم /v2/groups/participants للتحقق من حالتك.
  • مزامنة الأجهزة المرتبطة: عمليات الحذف هي أحداث مزامنة ذات أولوية عالية. ستنتشر إلى واتساب ويب ومثيلات الموبايل لديك بشكل شبه فوري.
  • لا يوجد "تراجع": بمجرد حذف الرسالة للجميع، لا يوجد إجراء "إلغاء الحذف". قم دائماً بتنفيذ خطوة "تأكيد الحذف" في واجهة الوكيل البشري.

البارامترات

قم بتهيئة المعاملات المطلوبة للتفاعل مع نقطة النهاية هذه. جميع وسائط الاستعلام والبيانات مدرجة أدناه مع تفاصيلها.

محتوى الطلب

يرسل كـ JSON
string

WhatsApp Instance ID

مثال:
string

API Access Token

مثال:
string

Target Chat ID (phone@c.us or group@g.us)

مثال:
string

Unique ID of the message

مثال:

أمثلة الكود

استخدم أمثلة الكود الجاهزة لدمج واجهة برمجة التطبيقات (API) في مشروعك بسرعة وكفاءة. اختر لغة البرمجة والمكتبة التي تفضلها.

1const baseUrl = "https://api.wawp.net";
2const endpoint = "/v2/messages/delete";
3const params = new URLSearchParams({
4 "instance_id": "123456789",
5 "access_token": "YOUR_ACCESS_TOKEN",
6 "chatId": "201234567890@c.us",
7 "messageId": "true_..._..."
8}).toString();
9
10
11fetch(`${baseUrl}${endpoint}${params ? '?' + params : ''}`, {
12 method: "DELETE",
13 headers: { "Content-Type": "application/json" },
14
15})
16 .then(async (response) => {
17 if (response.ok) {
18 const data = await response.json();
19 console.log("Success:", data);
20 return data;
21 }
22
23 // Error Handling
24 if (response.status === 400) {
25 console.error("Error 400: طلب غير صالح - معاملات مطلوبة مفقودة");
26 }
27 if (response.status === 400) {
28 console.error("Error 400: طلب غير صالح (تنسيق XML)");
29 }
30 if (response.status === 400) {
31 console.error("Error 400: طلب غير صالح (نص عادي)");
32 }
33 if (response.status === 401) {
34 console.error("Error 401: غير مصرح - مفتاح الوصول غير صالح أو مفقود");
35 }
36 if (response.status === 401) {
37 console.error("Error 401: غير مصرح (تنسيق XML)");
38 }
39 if (response.status === 404) {
40 console.error("Error 404: غير موجود - الجلسة غير موجودة");
41 }
42 if (response.status === 404) {
43 console.error("Error 404: غير موجود (تنسيق XML)");
44 }
45 if (response.status === 500) {
46 console.error("Error 500: خطأ في الخادم الداخلي - فشل غير متوقع");
47 }
48 if (response.status === 500) {
49 console.error("Error 500: خطأ في الخادم الداخلي (HTML)");
50 }
51 if (response.status === 502) {
52 console.error("Error 502: بوابة غير صالحة - فشل الاتصال بالخادم الرئيسي");
53 }
54 if (response.status === 502) {
55 console.error("Error 502: بوابة غير صالحة (تنسيق XML)");
56 }
57
58 const errorText = await response.text();
59 console.error(`Error ${response.status}: ${errorText}`);
60 })
61 .catch((error) => console.error("Network Error:", error));
عينات تفاعلية
Ln 61, Col 1javascript

الردود المتوقعة

استكشف كافة الردود والنتائج المحتملة من الخادم. قمنا بتوثيق كل كود حالة (Status Code) مع أمثلة للبيانات لتسهيل معالجة الأخطاء والنجاح.

ناجح - تم إكمال الطلب بنجاح
النوع:
application/json
boolean *
string *

Example

{
"success": true,
"message": "Operation completed successfully"
}
طلب غير صالح - معاملات مطلوبة مفقودة
غير مصرح - مفتاح الوصول غير صالح أو مفقود
غير موجود - الجلسة غير موجودة
خطأ في الخادم الداخلي - فشل غير متوقع
بوابة غير صالحة - فشل الاتصال بالخادم الرئيسي
الموضوع السابقالحصول على رسالة بالمعرف
الموضوع التاليتعديل رسالة نصية

Command Palette

Search for a command to run...