الوسائط والأجهزة
دعم الصور والوسائط
تعمل قناة واتساب عبر Baileys Web. يوثق هذا المستند قواعد معالجة الوسائط الحالية للإرسال، والبوابة، وردود الوكيل.
الأهداف
- إرسال الوسائط مع تعليقات اختيارية عبر
openclaw message send --media. - السماح للردود التلقائية من صندوق الويب الوارد بتضمين الوسائط إلى جانب النص.
- الحفاظ على حدود لكل نوع معقولة ومتوقعة.
واجهة سطر الأوامر (CLI)
openclaw message send --media <مسار-أو-رابط> [--message <تعليق>]--mediaاختياري؛ يمكن أن يكون التعليق فارغًا للإرسال الوسائط فقط.--dry-runيطبع الحمولة المحللة؛--jsonيصدر{ channel, to, messageId, mediaUrl, caption }.
سلوك قناة واتساب ويب
- الإدخال: مسار ملف محلي أو رابط HTTP(S).
- التدفق: التحميل إلى Buffer، اكتشاف نوع الوسائط، وبناء الحمولة الصحيحة:
- الصور: تغيير الحجم وإعادة الضغط إلى JPEG (أقصى جانب 2048 بكسل) مستهدفًا
agents.defaults.mediaMaxMb(الافتراضي 5 ميجابايت)، بحد أقصى 6 ميجابايت. - الصوت/الصوت/الفيديو: تمرير مباشر حتى 16 ميجابايت؛ يُرسل الصوت كملاحظة صوتية (
ptt: true). - المستندات: أي شيء آخر، حتى 100 ميجابايت، مع الحفاظ على اسم الملف عند التوفر.
- الصور: تغيير الحجم وإعادة الضغط إلى JPEG (أقصى جانب 2048 بكسل) مستهدفًا
- تشغيل GIF على طريقة واتساب: أرسل ملف MP4 مع
gifPlayback: true(CLI:--gif-playback) حتى تقوم التطبيقات المحمولة بتكرار التشغيل داخليًا. - اكتشاف نوع MIME يفضل البايتات السحرية، ثم العناوين، ثم امتداد الملف.
- التعليق يأتي من
--messageأوreply.text؛ يُسمح بتعليق فارغ. - التسجيل: الوضع غير المفصل يُظهر
↩️/✅؛ الوضع المفصل يتضمن الحجم ومسار/رابط المصدر.
خط أنابيب الرد التلقائي
getReplyFromConfigتُرجع{ text?, mediaUrl?, mediaUrls? }.- عند وجود وسائط، يقوم المرسل عبر الويب بحل المسارات المحلية أو الروابط باستخدام نفس خط الأنابيب مثل
openclaw message send. - يتم إرسال إدخالات الوسائط المتعددة بالتتابع إذا تم توفيرها.
الوسائط الواردة إلى الأوامر (Pi)
- عندما تتضمن رسائل الويب الواردة وسائط، يقوم OpenClaw بتنزيلها إلى ملف مؤقت ويعرض متغيرات القوالب:
{{MediaUrl}}رابط زائف للوسائط الواردة.{{MediaPath}}مسار محلي مؤقت يُكتب قبل تشغيل الأمر.
- عند تمكين حاوية Docker المعزولة لكل جلسة، يتم نسخ الوسائط الواردة إلى مساحة عمل الحاوية المعزولة ويتم إعادة كتابة
MediaPath/MediaUrlإلى مسار نسبي مثلmedia/inbound/<اسم الملف>. - فهم الوسائط (إذا تم تكوينه عبر
tools.media.*أوtools.media.modelsالمشتركة) يعمل قبل القوالب ويمكنه إدراج كتل[Image]، و[Audio]، و[Video]فيBody.- يضبط الصوت
{{Transcript}}ويستخدم النص المنقول لتحليل الأوامر حتى تعمل أوامر الشرطة المائلة. - تحافظ أوصاف الفيديو والصورة على أي نص تعليق لتحليل الأوامر.
- افتراضيًا، تتم معالجة أول مرفق صورة/صوت/فيديو مطابق فقط؛ اضبط
tools.media.<cap>.attachmentsلمعالجة مرفقات متعددة.
- يضبط الصوت
الحدود والأخطاء
حدود الإرسال الصادرة (إرسال واتساب ويب)
- الصور: حد أقصى ~6 ميجابايت بعد إعادة الضغط.
- الصوت/الصوت/الفيديو: حد أقصى 16 ميجابايت؛ المستندات: حد أقصى 100 ميجابايت.
- الوسائط كبيرة الحجم أو غير القابلة للقراءة → خطأ واضح في السجلات ويتم تخطي الرد.
حدود فهم الوسائط (النسخ/الوصف)
- الصور الافتراضي: 10 ميجابايت (
tools.media.image.maxBytes). - الصوت الافتراضي: 20 ميجابايت (
tools.media.audio.maxBytes). - الفيديو الافتراضي: 50 ميجابايت (
tools.media.video.maxBytes). - تتخطى الوسائط كبيرة الحجم عملية الفهم، لكن الردود لا تزال تتم مع النص الأصلي.
ملاحظات للاختبارات
- تغطية تدفقات الإرسال + الرد لحالات الصور/الصوت/المستندات.
- التحقق من إعادة الضغط للصور (حد الحجم) وعلامة الملاحظة الصوتية للصوت.
- التأكد من أن الردود متعددة الوسائط تُرسل بالتتابع.
فهم الوسائطالصوت والملاحظات الصوتية