الحالة: تجريبية. يتيح هذا التكامل أتمتة حساب Zalo شخصي عبرDocumentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
zca-js الأصلي داخل OpenClaw.
Plugin المضمّن
يُشحن Zalo Personal كـ Plugin مضمّن في إصدارات OpenClaw الحالية، لذلك لا تحتاج الحِزم المبنية العادية إلى تثبيت منفصل. إذا كنت تستخدم بنية أقدم أو تثبيتًا مخصصًا يستثني Zalo Personal، فثبّت حزمة npm مباشرة:- التثبيت عبر CLI:
openclaw plugins install @openclaw/zalouser - إصدار مثبّت:
openclaw plugins install @openclaw/zalouser@2026.5.2 - أو من نسخة مصدرية:
openclaw plugins install ./path/to/local/zalouser-plugin - التفاصيل: Plugins
zca/openzca.
إعداد سريع (للمبتدئين)
- تأكد من توفر Plugin الخاص بـ Zalo Personal.
- تتضمنه إصدارات OpenClaw المعبأة الحالية بالفعل.
- يمكن للتثبيتات الأقدم/المخصصة إضافته يدويًا باستخدام الأوامر أعلاه.
- سجّل الدخول (QR، على جهاز Gateway):
openclaw channels login --channel zalouser- امسح رمز QR باستخدام تطبيق Zalo للهاتف المحمول.
- فعّل القناة:
- أعد تشغيل Gateway (أو أنهِ الإعداد).
- يكون وصول الرسائل المباشرة افتراضيًا عبر الاقتران؛ وافق على رمز الاقتران عند أول تواصل.
ما هو
- يعمل بالكامل داخل العملية عبر
zca-js. - يستخدم مستمعي أحداث أصليين لاستقبال الرسائل الواردة.
- يرسل الردود مباشرة عبر JS API (نص/وسائط/رابط).
- مصمم لحالات استخدام “الحساب الشخصي” حيث لا تتوفر Zalo Bot API.
التسمية
معرّف القناة هوzalouser لتوضيح أن هذا يؤتمت حساب مستخدم Zalo شخصي (غير رسمي). نُبقي zalo محجوزًا لاحتمال تكامل رسمي مستقبلي مع Zalo API.
العثور على المعرّفات (الدليل)
استخدم CLI الخاص بالدليل لاكتشاف الأقران/المجموعات ومعرّفاتهم:الحدود
- يُجزّأ النص الصادر إلى نحو 2000 حرف (حدود عميل Zalo).
- البث محظور افتراضيًا.
التحكم في الوصول (الرسائل المباشرة)
يدعمchannels.zalouser.dmPolicy: pairing | allowlist | open | disabled (الافتراضي: pairing).
يجب أن يستخدم channels.zalouser.allowFrom معرّفات مستخدمي Zalo مستقرة. ويمكنه أيضًا الإشارة إلى مجموعات وصول مرسلين ثابتة (accessGroup:<name>). أثناء الإعداد التفاعلي، يمكن حل الأسماء المُدخلة إلى معرّفات باستخدام بحث جهات الاتصال داخل العملية الخاص بالـ Plugin.
إذا بقي اسم خام في الإعدادات، فسيتم حله عند بدء التشغيل فقط عند تمكين channels.zalouser.dangerouslyAllowNameMatching: true. من دون هذا الاشتراك الصريح، تكون فحوصات المرسلين وقت التشغيل بالمعرّفات فقط، ويتم تجاهل الأسماء الخام للتخويل.
اعتمد عبر:
openclaw pairing list zalouseropenclaw pairing approve zalouser <code>
وصول المجموعات (اختياري)
- الافتراضي:
channels.zalouser.groupPolicy = "open"(المجموعات مسموحة). استخدمchannels.defaults.groupPolicyلتجاوز الافتراضي عند عدم تعيينه. - قيّد الوصول إلى قائمة سماح باستخدام:
channels.zalouser.groupPolicy = "allowlist"channels.zalouser.groups(يجب أن تكون المفاتيح معرّفات مجموعات مستقرة؛ تُحل الأسماء إلى معرّفات عند بدء التشغيل فقط عند تمكينchannels.zalouser.dangerouslyAllowNameMatching: true)channels.zalouser.groupAllowFrom(يتحكم في المرسلين داخل المجموعات المسموح بها الذين يمكنهم تشغيل الروبوت؛ يمكن الإشارة إلى مجموعات وصول المرسلين الثابتة باستخدامaccessGroup:<name>)
- احظر كل المجموعات:
channels.zalouser.groupPolicy = "disabled". - يمكن لمعالج الإعداد المطالبة بقوائم سماح المجموعات.
- عند بدء التشغيل، يحل OpenClaw أسماء المجموعات/المستخدمين في قوائم السماح إلى معرّفات ويسجل الربط فقط عند تمكين
channels.zalouser.dangerouslyAllowNameMatching: true. - مطابقة قائمة سماح المجموعات تكون بالمعرّفات فقط افتراضيًا. تُتجاهل الأسماء غير المحلولة للمصادقة ما لم يتم تمكين
channels.zalouser.dangerouslyAllowNameMatching: true. channels.zalouser.dangerouslyAllowNameMatching: trueهو وضع توافق لكسر القيود يعيد تمكين حل الأسماء القابلة للتغيير عند بدء التشغيل ومطابقة أسماء المجموعات وقت التشغيل.- إذا لم يتم تعيين
groupAllowFrom، يعود وقت التشغيل إلىallowFromلفحوصات مرسلي المجموعات. - تنطبق فحوصات المرسلين على رسائل المجموعات العادية وأوامر التحكم على حد سواء (مثل
/newو/reset).
بوابة الإشارات في المجموعات
- يتحكم
channels.zalouser.groups.<group>.requireMentionفيما إذا كانت ردود المجموعات تتطلب إشارة. - ترتيب الحل: معرّف/اسم المجموعة المطابق تمامًا -> slug المجموعة المطبّع ->
*-> الافتراضي (true). - ينطبق هذا على المجموعات الموجودة في قائمة السماح وعلى وضع المجموعات المفتوحة.
- يُحسب اقتباس رسالة الروبوت كإشارة ضمنية لتفعيل المجموعة.
- يمكن لأوامر التحكم المصرح بها (مثل
/new) تجاوز بوابة الإشارات. - عندما يتم تخطي رسالة مجموعة لأن الإشارة مطلوبة، يخزنها OpenClaw كسجل مجموعة معلّق ويدرجها في رسالة المجموعة التالية التي تتم معالجتها.
- الحد الافتراضي لسجل المجموعات هو
messages.groupChat.historyLimit(احتياطيًا50). يمكنك تجاوزه لكل حساب باستخدامchannels.zalouser.historyLimit.
حسابات متعددة
تُربط الحسابات بملفات تعريفzalouser في حالة OpenClaw. مثال:
الكتابة، والتفاعلات، وإقرارات التسليم
- يرسل OpenClaw حدث كتابة قبل إرسال الرد (بأفضل جهد).
- إجراء تفاعل الرسالة
reactمدعوم لـzalouserفي إجراءات القنوات.- استخدم
remove: trueلإزالة رمز تعبيري محدد للتفاعل من رسالة. - دلالات التفاعل: التفاعلات
- استخدم
- للرسائل الواردة التي تتضمن بيانات وصفية للأحداث، يرسل OpenClaw إقرارات التسليم + المشاهدة (بأفضل جهد).
استكشاف الأخطاء وإصلاحها
تسجيل الدخول لا يثبت:openclaw channels status --probe- إعادة تسجيل الدخول:
openclaw channels logout --channel zalouser && openclaw channels login --channel zalouser
- استخدم المعرّفات الرقمية في
allowFrom/groupAllowFromومعرّفات المجموعات المستقرة فيgroups. إذا كنت تحتاج عمدًا إلى أسماء الأصدقاء/المجموعات الدقيقة، فمكّنchannels.zalouser.dangerouslyAllowNameMatching: true.
- أزل أي افتراضات قديمة حول عملية
zcaخارجية. - تعمل القناة الآن بالكامل داخل OpenClaw من دون ملفات CLI تنفيذية خارجية.
ذات صلة
- نظرة عامة على القنوات — كل القنوات المدعومة
- الاقتران — مصادقة الرسائل المباشرة وتدفق الاقتران
- المجموعات — سلوك دردشة المجموعات وبوابة الإشارات
- توجيه القنوات — توجيه الجلسات للرسائل
- الأمان — نموذج الوصول والتقوية