الوسائط

/v1/media

استخدم العقدة media لتحميل الوسائط أو استردادها أو حذفها.

عناصر الربط

ترتبط عناصر الربط التالية بهذه العقدة:

عنصر الربطالوصف

/{media-id}

استخدم عنصر الربط هذا لاسترداد الوسائط وحذفها.

قبل البدء

عند إرسال رسالة وسائط، يتم تخزين الوسائط على خوادم واتساب لمدة 14 يومًا. إذا قدّم أحد المستخدمين طلبًا لتنزيل الوسائط بعد مرور 14 يومًا، فستطلب خوادم واتساب ملف الوسائط نفسه من العميل داخل المواقع في واتساب للأعمال. وإذا تمت إزالة الوسائط، فسيتم إعلام المستخدم بعدم توفر الوسائط.

لا يمثل افتراض أن الوسائط قد تم تنزيلها ببساطة استنادًا إلى إيصالات التسليم والقراءة أمرًا آمنًا. وتكون الوسائط الصادرة آمنة في العموم لإزالتها خلال آخر 30 يومًا، ولكن يجب عليك استخدام إستراتيجية تناسب نشاطك التجاري بشكل أفضل.

القيود

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

التحميل

أرسل طلب POST إلى /v1/media لتحميل الوسائط الخاصة بك. يجب أن يحتوي نص طلب داخل المواقع على بيانات الوسائط الثنائية ويجب تعيين عنوان Content-Type إلى نوع الوسائط الذي يتم تحميله. وللحصول على الخيارات المدعومة، يمكنك الرجوع إلى القسم أنواع المحتويات المدعومة.

تُعد عملية إرسال البيانات الثنائية في طلب POST HTTP بمثابة طريقة قياسية لتحميل البيانات الثنائية. وإذا كنت تريد تحميل صورة على سبيل المثال، يمكنك إصدار طلب POST مع وحدات بايت الصورة الفعلية في حمولة البيانات. وبدلًا من ذلك، يمكنك استخدام --data-binary إذا كنت تريد cURL لقراءة الملف المتوفر بتنسيق البيانات الثنائية واستخدامه تمامًا كما هو.

مثال

تحميل الوسائط:

POST /v1/media
Content-Type: image/jpeg or other appropriate media type

your-binary-media-data

تحميل الوسائط باستخدام cURL:

curl -X POST \
https://your-webapp-hostname:your-webapp-port/v1/media \
-H 'Authorization: Bearer your-auth-token' \ 
-H 'Content-Type: image/jpeg'  \ # or other appropriate media type
--data-binary @your-file-path

في الحالتين، تؤدي الاستجابة الناجحة إلى إرجاع الحقل id الذي تحتاج إليه لاسترداد الوسائط أو إرسال رسائل وسائط إلى عملائك.

{
    "media": [
        {
            "id": "f043afd0-f0ae-4b9c-ab3d-696fb4c8cd68"
        }
    ]
}

إذا تلقيت رسالة خطأ، يمكنك الرجوع إلى رسائل الخطأ والحالة لمزيد من المعلومات.

أنواع المحتويات المدعومة

الوسائط أنواع المحتوى المدعومة

audio

audio/aac، audio/mp4، audio/amr، audio/mpeg،
audio/ogg; codecs=opus


ملاحظة: بالنسبة إلى ogg/opus، لا يتم دعم إلا الملفات الصوتية ذات القناة الواحدة من خلال عملاء واتساب.

document

يمثل نوع MIME صالحًا.

image

image/jpeg، image/png


حاليًا لا ندعم الصور ذات الخلفيات الشفافة.

sticker

image/webp

video

video/mp4، video/3gpp


ملاحظات:

  • لا يتم سوى دعم ترميز الفيديو بمعيار H.264 وترميز الصوت من نوع AAC.
  • ندعم مقاطع الفيديو ذات البث الصوتي الفردي أو بدون بث صوتي.

حجم الوسائط بعد المعالجة

هذا هو الحد الأقصى للحجم المسموح به لملف الوسائط بعد الضغط والتشفير.

نوع الوسائط الحجم

audio

16 ميجابايت

document

100 ميجابايت

image

5 ميجابايت

sticker

100 كيلوبايت

video

16 ميجابايت

الأسئلة المتكررة

بالنسبة للصور، ستتم إضافة الشرح التوضيحي باعتباره وصفًا. ويظهر نص الشرح التوضيحي بالكامل في الصور على نظام التشغيل Android وهاتف iPhone.

بالنسبة للمستندات، يحل الشرح التوضيحي محل اسم الملف. ولا يعني ذلك أن يكون معروضًا على جهاز المستخدم باعتباره نصًا للوصف، وإنما من أجل عرض اسم الملف. علمًا بأن هواتف iPhone تعرض النص بالكامل، بينما تقتطع أنظمة التشغيل Android اسم الملف بحيث يكون ذلك تقييدًا تقنيًا في تنفيذ واتساب حاليًا على هذين الجهازين.

يكون أمر تحديد الوقت الذي يتعين خلاله حذف الوسائط متروكًا لك.

بعد تحميل الوسائط، ستتلقى معرف وسائط يمكنك استخدامه لإرسال رسالة تتضمن عنصر الوسائط الذي تم تحميله. وعند إرسال رسالة الوسائط، ستقوم واجهة API واتساب للأعمال بتشفير الوسائط وتحميلها إلى خوادم واتساب حيث ستظل محفوظة بها لمدة 14 يومًا. وبعد ذلك، يمكنك تحديد وقت حذف الوسائط من خلال توفير معرف الوسائط أو الاحتفاظ به لاستخدامه لاحقًا. رغم أننا نوصي بالاحتفاظ بالوسائط لمدة 30 يومًا، يكون أمر تحديد سياسة الاحتفاظ متروكًا لك بناءً على حالة الاستخدام أو السياسة الخاصة بنشاطك التجاري.

لا تتوفر آلية تنظيف تنطبق على ملفات الوسائط الصادرة أو الواردة. ويجوز لك حذف ملفات الوسائط يدويًا من خلال تحديد موقعها على نظام الملف لديك.

للعثور على نقطة تحميل وحدة تخزين الوسائط الخاصة بك، يمكنك تشغيل أمر docker.

الطلب

docker volume inspect whatsappMedia

الاستجابة

[
    {
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/var/lib/docker/volumes/whatsappMedia/_data",
        "Name": "whatsappMedia",
        "Options": {},
        "Scope": "local"
    }
]

بعد ذلك، لعرض كل ملفات الوسائط الواردة، يمكنك تشغيل الأمر ls باستخدام مسار الملف Mountpoint الذي تم تلقيه:

ls /var/lib/docker/volumes/whatsappMedia/_data/

عند إعداد خدمات الويب من Amazon (AWS)، يتم تحميل وحدة تخزين الوسائط إلى المسار /mnt/wa/media في المضيف.

عند إرسال صورة كألبوم من واجهة API الخاصة بتطبيق WhatsApp للأعمال، ستحتاج إلى إرسال أربع صور على الأقل على التوالي. وإذا كانت طريقة عرض المحادثة الخاصة بالمستخدم نشطة حاليًا عند تلقي الصور، فمن ثمّ تكون طريقة عرض الألبوم غير متاحة حتى الزيارة التالية.

لن يتم إنشاء ألبوم في حالة تلبية أحد المعايير التالية:

  1. صور بشروحات توضيحية
  2. فاصل غير مقروء - يعرض المستخدم بعض الصور، ولكن ليس البقية
  3. رأس التاريخ - يوم جديد بين عمليات العرض

لا، يجب أن نستخدم حاليًا نظام AWS EFS لمشاركة وحدة تخزين الوسائط بين Coreapp وWebapp.

يكون الحد الأقصى لحجم تحميل الملف 64 ميجابايت مما يعني أن هذا التقييد أيضًا ينطبق على أية صورة أو مستند أو فيديو ترسله مع الرسالة.