روبوت وكيل الدعم خدمة تكتبها **أنت** وتستضيفها. يُرسل Lynomia Chat أحداث المحادثات إلى عنوان تعطيه، وخدمتك تقرّر
ما تفعل وتردّ من خلال الـAPI باستخدام بيانات الروبوت نفسه.

لا لوحة رسم هنا ولا قائمة قواعد — أحداث داخلة واستدعاءات API خارجة. يستطيع كل ما يستطيعه كودك، ولا شيء غيره.

## متى تستخدم روبوتاً

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

## متى لا تستخدم روبوتاً

- **حين يكفي [تدفق](flow-builder).** فالقائمة والسؤال والاستعلام عن الطلب والتحويل لا تحتاج كوداً ولا خادماً ولا
  جاهزية منك. راجع **روبوت أم تدفق؟** أدناه.
- **حين لا شيء يحتاج إلى سؤال.** فالتوجيه والوسم على وقائع تعرفها أصلاً هو [قاعدة أتمتة](automation-rules).
- **حين لا تستطيع إبقاء خدمة عاملة.** فإن تعطّل عنوانك بقيت المحادثات بلا جواب.

## ما تحتاجه أولاً

حساب **مدير**، وعنوان HTTPS يستقبل POST ويجيب بسرعة.

## الخطوات

1. **الإعدادات ← الروبوتات ← إضافة روبوت**.
2. أعطِه اسماً ووصفاً و**رابط Webhook**. والصورة الرمزية اختيارية.
3. احفظ. ويُعرض عليك **رمز وصول** و**سرّ Webhook**. انسخهما الآن؛ ويبقيان متاحين في إعدادات الروبوت، ويمكن توليد
   أيٍّ منهما من جديد.
4. افتح القناة التي تريد أن يردّ عليها الروبوت، واختره في إعداد الروبوت لتلك القناة. روبوت واحد لكل قناة.
5. تحقق من التوقيع على أول إرسالية، ثم ابدأ الردّ من خلال الـAPI برمز الوصول.

## الأحداث التي يستقبلها الـwebhook

| الحدث | يُرسل عند |
|---|---|
| إنشاء رسالة | إضافة رسالة إلى محادثة يراها الروبوت |
| تحديث رسالة | تغيّر رسالة قائمة |
| فتح محادثة | انتقال المحادثة إلى «فتح» |
| حلّ محادثة | انتقالها إلى «تم حلها» |
| تغيّر حالة المحادثة | تغيّر حالتها، مع ما تغيّر |
| تحديث المحادثة | تغيّر شيء آخر فيها، مع ما تغيّر |

وقناة الموقع الإلكتروني تُرسل كذلك حدثاً عند تشغيل الزائر للنافذة.

**ولا يوجد حدث «إنشاء محادثة» للروبوتات.** فأول ما تسمعه خدمتك عن محادثة جديدة هو رسالتها الأولى.

## كيف تُوقَّع الإرسالية

كل POST يحمل جسماً بصيغة JSON، ومعرّف إرسالية فريداً، وطابعاً زمنياً، وتوقيعاً: HMAC-SHA256 على الطابع الزمني
والجسم الخام، بمفتاح سرّ الـwebhook للروبوت. أعِد حسابه على البايتات الخام كما وصلتك وقارنه. وارفض ما لا يطابق،
وارفض طابعاً زمنياً قديماً.

ومعرّف الإرسالية هو ما تجعل به معالِجك محتملاً للتكرار، وهذا يهمّ لأن الإرساليات قد تتكرر.

## مثال عملي

تريد الإجابة عن حالة الطلبات من نظام مستودعك على رقم واتساب.

1. أنشئ الروبوت برابط عنوانك، وانسخ السرّ ورمز الوصول.
2. اربطه بقناة واتساب. فتصل المحادثات الجديدة **معلّقة**، ويستقبل عنوانك كل رسالة واردة.
3. تتحقق خدمتك من التوقيع، وتبحث عن الطلب في نظام مستودعك، وتنشر الرد من خلال الـAPI باسم الروبوت.
4. وحين لا تستطيع الإجابة تُسنِد فريقاً، فيتلقّف أفرادك المحادثة كالمعتاد.

## روبوت أم تدفق؟

| | روبوت وكيل دعم | تدفق |
|---|---|---|
| **من يشغّل المنطق** | خادمك | Lynomia Chat |
| **من يبقيه عاملاً** | أنت | لا أحد، فهو مستضاف |
| **قنوات التواصل** | أي قناة تربطه بها | واتساب Cloud وحده |
| **من يبنيه** | مطوّر، بالكود | مدير، على لوحة |
| **الوصول إلى أنظمتك** | أي شيء | عقدة webhook، والاستعلام عن الطلبات |
| **الأزرار والقوائم** | تبنيها أنت | عقدتان لهما، وقيود واتساب مفروضة |
| **تغييره** | نشر إصدار | تعديل المسودة والنشر |
| **اختباره أولاً** | بيئتك التجريبية | مبني في المنتج، على جهة اتصال تجريبية |

اختر تدفقاً إلا إن احتجت الوصول إلى نظام خاص بك، أو إلى قناة لا يعمل عليها التدفق. فالتدفق جهد أقل ولا شيء فيه
يتعطّل من جهتك.

**والتدفقات لا تظهر في صفحة الروبوتات.** فكلاهما روبوت في الأساس، لكن الصفحة تسرد بقصد روبوتات الـwebhook وحدها،
فيُدار كلٌّ منهما في مكان واحد.

## من يستطيع ذلك

| | وكيل الدعم | المدير |
|---|---|---|
| **رؤية قائمة الروبوتات** | نعم | نعم |
| **الإنشاء والتعديل والحذف** | لا | نعم |
| **توليد الرمز أو السرّ من جديد** | لا | نعم |

والروبوتات ليست من الصلاحيات التي يمكن منحها لدور مخصص. راجع [الأدوار والصلاحيات](roles-and-permissions).

## الحدود

- **روبوت نشط واحد لكل قناة.** فلا يمكن أن يردّ تدفق وروبوت webhook على القناة نفسها.
- **نوع الروبوت ثابت عند الإنشاء.** فروبوت webhook لا يصبح تدفقاً، ولا العكس.
- **تنتهي مهلة الإرسالية بسرعة** — خمس ثوانٍ افتراضياً. فأجب سريعاً ثم أدِّ العمل بعد ذلك.
- **المحاولات محدودة.** فالإرسالية التي تجيبها خدمتك بـ429 أو 500 تُعاد ثلاث مرات على الأكثر بفاصل ثوانٍ قليلة.
  وأي فشل آخر لا يُعاد.
- **الروبوت الفاشل يُفلت المحادثة.** فإن استمر فشل إرساليات الرسائل انتقلت المحادثة من «معلّق» إلى «فتح» وأُضيفت
  ملاحظة، ليتلقّفها شخص — إلا إن كان حسابك مهيّأً لإبقائها معلّقة.
- **لا شيء يُحفظ في طابور أثناء تعطّل عنوانك،** ولا سجل إرساليات لتقرأه هنا. فسجّل من جهتك.
- ورسائل الروبوت تخضع لقيود القناة، ومنها [نافذة الـ24 ساعة في واتساب](the-whatsapp-24-hour-window).

## مواضيع ذات صلة

- [منشئ التدفقات](flow-builder)
- [أتمتة أم منشئ تدفقات؟](automation-or-flow-builder)
- [قواعد الأتمتة](automation-rules)

## إذا لم ينجح الأمر

**لا تصل أحداث.** تحقق أن الروبوت مختار على القناة، وأن الرابط يمكن الوصول إليه من خارج شبكتك عبر HTTPS.

**التوقيعات لا تطابق أبداً.** وقّع الجسم الخام كما وصلك بالضبط، قبل أي تحليل أو إعادة ترميز، وأدخل الطابع الزمني
في النص الموقَّع.

**المحادثات تنتقل إلى «فتح» من تلقاء نفسها.** هذا هو مسار الفشل أعلاه: عنوانك يُخطئ على إرساليات الرسائل.

**لا أرى تدفقي في صفحة الروبوتات.** فالتدفقات تُسرد في منشئ التدفقات.