تعديل رسالة نصية

قم بتعديل محتوى رسالة نصية تم إرسالها مسبقاً.

PUT
https://api.wawp.net/v2/messages/edit?access_token=YOUR_ACCESS_TOKEN&chatId=201234567890%40c.us&instance_id=123456789&messageId=true_..._...&text=Updated+message+text

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

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

تسجيل الدخول
اختبار /v2/messages/edit
PUT
PUT

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

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

توصيات

  • استخدم هذا لإصلاح الأخطاء المطبعية دون إرسال رسالة جديدة.

  • حافظ على السياق الأصلي سليمًا لتجنب الارتباك.

التصحيح الدقيق: إتقان دورة حياة تعديل الرسائل

تسمح نقطة النهاية /v2/messages/edit لتطبيقك بالحفاظ على مستوى عالٍ من التواصل المهني من خلال تصحيح الأخطاء بعد الإرسال. في سياق الأعمال، يعد وسم "معدلة" أكثر مهنية بكثير من حذف الرسالة وإعادة إرسالها، حيث يحافظ على تسلسل المحادثة مع ضمان دقة البيانات. ومع ذلك، يعد التعديل عملية مقيدة بالوقت والنوع تتطلب تنسيقاً دقيقاً.


🏗️ المنطق التقني لعملية التعديل

عند تقديم طلب تعديل، يبدأ محرك Wawp تحديثاً متخصصاً للحالة:

  1. فحص النزاهة: يتحقق المحرك من أن messageId أُرسلت من الأرقام الحالي وأن الوقت الحالي ضمن النافذة المسموح بها.
  2. بث التحديث: يتم إرسال حزمة "تعديل الرسالة" إلى شبكة واتساب.
  3. تحديث جانب المستلم: يتلقى جهاز المستلم التحديث ويستبدل النص القديم بالنص الجديد، مع إضافة تنويه "معدلة" بجانب الطابع الزمني.

🚀 تنفيذ استراتيجي متقدم

1. تصحيح البوت "صفر توقف"

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

  • السيناريو: يكتشف البوت الخطأ بعد 5 ثوانٍ من الإرسال عبر فحص داخلي.
  • تجربة مستخدم أفضل: بدلاً من حذف الرسالة (مما يترك مكاناً لرسالة محذوفة)، استدعِ /v2/messages/edit فوراً. بالنسبة للمستخدم، يبدو الأمر كأنه تحديث سلس.

2. تحديثات الأسعار والحالة الحية

لتكاملات التجارة الإلكترونية، يمكنك استخدام التعديلات لإظهار الحالة "في الوقت الفعلي" في رسالة واحدة.

  • سير العمل: أرسل رسالة مثل: "حالة الدفع: قيد الانتظار...". بمجرد إتمام المعاملة، قم بتعديل نفس الرسالة لتصبح "حالة الدفع: ✅ نجحت". هذا يمنع فوضى الدردشة ويوفر "مصدراً واحداً للحقيقة" للعميل.

🛡️ أفضل الممارسات لنزاهة الرسائل

  • قاعدة الـ 15 دقيقة: يسمح واتساب عادةً بالتعديلات فقط لمدة 15 دقيقة بعد إرسال الرسالة الأصلية. يجب أن يتتبع نظامك الطابع الزمني sentAt ويخفي أزرار "التعديل" في واجهة الوكيل بمجرد إغلاق هذه النافذة.
  • قيود تعليق الوسائط: حالياً، الدعم الأساسي هو للرسائل النصية فقط. قد تسمح بعض إصدارات المحرك بتعديل تعليقات الصور/الفيديوهات، ولكن لأقصى درجات الموثوقية، افترض أن الرسائل من نوع text فقط هي القابلة للتعديل.

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

  • سلوك التنبيهات: لاحظ أن الرسائل المعدلة عادة لا تطلق تنبيهاً ثانياً كـ "رسالة جديدة" على هاتف المستلم.
  • تاريخ المراجعات: بينما يظهر تطبيق واتساب الرسمي النسخة المعدلة "الحالية" فقط، قد تحتوي بعض الواجهات غير الرسمية أو سجلات المحفوظات على النص الأصلي. لا تستخدم التعديلات "لإخفاء" معلومات حساسة أُرسلت بالخطأ — استخدم /v2/messages/delete للإزالة المتعلقة بالأمان.

البارامترات

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

محتوى الطلب

يرسل كـ 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

مثال:
string

المحتوى النصي الجديد للرسالة

مثال:

أمثلة الكود

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

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

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

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

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

Example

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

Command Palette

Search for a command to run...