ربط وكيل n8n AI
خطوات ربط وكيل n8n AI بـ WhatsApp باستخدام Webhooks وAPIs من Chakra
ربط روبوت n8n AI بـ WhatsApp
سنستعرض في هذه المقالة كيفية ربط روبوت أو وكيل n8n AI بـ WhatsApp. سنستخدم لذلك APIs وwebhooks التي يوفرها Chakra Chat.
بعد إكمال هذه الخطوات، ستتمكن من تشغيل وكيل محادثة n8n متكامل يجيب عن استفسارات المستخدمين على رقم WhatsApp المتصل عبر Cloud.
المتطلبات الأساسية
A) سنفترض أن لديك بالفعل حساب n8n cloud أو أنك تستضيف n8n في مكان يمكن الوصول إليه عبر الإنترنت العام.
B) يجب أيضًا أن يكون لديك حساب Chakra Chat وأن تكون قد ربطت WhatsApp. إذا لم تفعل ذلك، يُرجى اتباع الخطوات أدناه:
يُرجى أيضًا ملاحظة أنه يمكنك إنشاء هذا الروبوت باستخدام حساب Chakra Chat مجاني. 🎉
ج) ستحتاج أيضًا إلى حساب OpenAI ومفتاح OpenAI، إذ سنستخدم OpenAI كمزوّد للذكاء الاصطناعي. يمكنك التسجيل للحصول على حساب مطوّر OpenAI من هذه الصفحة.
1. إعداد مشغّل webhook على n8n
1.1 تسجيل الدخول إلى حساب n8n
أنشئ سير عمل جديدًا بالنقر على زر "Create Workflow" في الزاوية العلوية اليمنى من لوحة معلومات n8n الرئيسية.

1.2 إضافة الخطوة الأولى
انقر على عقدة "Add First Step"، ثم اختر مشغّل "On webhook call" .

1.3 ضبط عنوان URL لاختبار webhook
1.3.1 يُفترض أن تكون صفحة إعداد مشغّل webhook مفتوحة الآن. انقر على عنوان URL لاختبار webhook لنسخه إلى الحافظة.

1.3.2 افتح حساب Chakra Chat وانتقل إلى صفحة إعداد WhatsApp ، ثم انقر على علامة التبويب More .

1.3.3 مرّر إلى الأسفل وانقر على مفتاح التبديل أسفل "Enable pass through webhook".

1.3.4 الصق عنوان URL لاختبار webhook المنسوخ من n8n في مربع الإدخال أسفل "Pass through webhook url".

1.3.5 انقر على زر Save في الزاوية العلوية اليمنى من صفحة إعداد WhatsApp لحفظ الإعدادات.

1.4 اختبار التكامل
1.4.1 عُد إلى n8n وغيّر HTTP Method للمشغّل إلى POST من صفحة إعداد webhook.

1.4.2 انقر على زر "Listen for test event".

نحتاج إلى إرسال رسالة إلى رقم WhatsApp من رقم WhatsApp لمستخدم آخر، حتى يتم إنشاء حدث webhook للاختبار.

1.4.4 في صفحة إعداد مشغّل n8n، يُفترض أن ترى الآن حدث webhook المرتبط بالرسالة التي أرسلتها للتو، كما في لقطة الشاشة التالية. إذا لم يظهر أي حدث، فيُرجى مراجعة جميع الخطوات السابقة والتحقق من إعداداتك.

1.4.5 حسنًا، نحن الآن جاهزون لإعداد وكيل ذكاء اصطناعي، لذا انقر على "Back to Canvas" واحفظ سريعًا كل ما أنجزته في سير العمل حتى الآن.
2. إعداد وكيل ذكاء اصطناعي
سنُعدّ الآن وكيل ذكاء اصطناعي من OpenAI على n8n.
2.1 انقر على زر الإضافة بجوار مشغّل webhook في محرر سير عمل n8n. ستُفتح لوحة جانبية على اليمين تتضمن خيارات العقد. انقر على "AI" لعرض جميع خيارات عقد الذكاء الاصطناعي.

2.2 انقر على AI Agent لاختياره وإضافة عقدة AI Agent.

2.3 يُفترض أن تكون صفحة إعداد عقدة AI Agent مفتوحة الآن.

2.4 انقر على القائمة المنسدلة لخيار "Source for Prompt (User Message)". تم ضبطه افتراضيًا على إدخال الدردشة، لكننا نحتاج إلى ربطه بإدخال مشغّل webhook. لذا انقر على خيار "Define below".

2.5 تعرض علامة التبويب Input على الجانب الأيسر كائن JSON بالكامل المُرسَل عبر webhook. حدّد الرسالة التي أرسلتها ضمن الإدخال على الجانب الأيسر، ثم انقر عليها واسحبها إلى مربع نص Prompt.

2.6 لنُعدّ الآن نموذج الدردشة. انقر على زر الإضافة أسفل خيار "Chat Model" في أسفل الصفحة.

2.7 ستُفتح قائمة فرعية على اليمين تتضمن قائمة بنماذج الذكاء الاصطناعي المتاحة. ابحث عن OpenAI وانقر عليه لاختياره.

2.8 يُفترض أن تكون صفحة إعداد العقدة الفرعية OpenAI مفتوحة الآن. نحتاج هنا إلى إعداد بيانات اعتماد OpenAI. إذا كانت متاحة بالفعل، فاخترها، وإلا فانقر على create new credentials وأدخِل مفتاح OpenAI API.


2.9 يمكننا الآن العودة إلى لوحة العمل بالنقر على "Go back to canvas"، ثم النقر على "Execute Workflow" لاختبار الإعداد حتى الآن. سيؤدي ذلك إلى بدء سير العمل في الاستماع إلى الأحداث على webhook الاختباري.

2.10 افتح حساب WhatsApp الخاص بك كمستخدم نهائي وأرسل رسالة إلى رقم WhatsApp المتصل. لن تتلقى ردًا، لكن يُفترض أن ترى سجلات استجابة OpenAI في عقدة AI Agent. كما يُفترض أن يظهر إطار أخضر حول عقدة AI Agent، ما يشير إلى نجاح التشغيل.
إذا لم يظهر تشغيل ناجح، فراجع إعداداتك باتباع الخطوات السابقة مرة أخرى.

3: إرسال استجابة الذكاء الاصطناعي إلى المستخدم
بعد أن أصبح بإمكان وكيل الذكاء الاصطناعي الرد على استفسارات الدردشة الواردة، لنبدأ بإرسال الردود عبر WhatsApp.
3.1 في محرر سير عمل n8n، انقر على زر + الموجود على يمين عقدة AI Agent. ستُفتح قائمة محدد العقد. اكتب "HTTP request" في شريط البحث، ثم انقر على نوع العقدة HTTP Request .

3.2 اضبط عقدة HTTP Request لإرسال رسالة عبر API إرسال رسائل WhatsApp.
يمكنك العثور على تفاصيل حول API هذا في وثائق API. يُفترض أن يبدو الإعداد كما يلي:
- الطريقة: POST
- عنوان URL:
https://api.chakrahq.com/v1/ext/plugin/whatsapp/{{chakraPluginId}}/api/v22.0/{{whatsappPhoneNumberId}}/messages

- الرؤوس:
Authorization: Bearer {{chakraAccessToken}}

- المتن: يجب أن يكون من النوع JSON

- المتن: يجب أن يبدو كائن JSON بالكامل كما يلي

يمكنك العثور على المدخلات المطلوبة لإعداد API أعلاه في حساب Chakra Chat. فيما يلي وصف موجز لها:
العثور على chakraPluginId
في صفحة إعداد WhatsApp ضمن Chakra Chat، ابحث عن أيقونة النقاط الثلاث بجوار زر الحفظ في الزاوية العلوية اليمنى. انقر عليها، ثم انقر على زر "Copy Plugin Id". سيتم نسخ معرّف المكوّن الإضافي، ويمكنك لصقه في الموضع المطلوب.
العثور على whatsappPhoneNumberId
في صفحة إعداد WhatsApp ضمن Chakra Chat، انقر على أيقونة الترس بجوار "📞 أرقام هواتف WhatsApp". في اللوحة الجانبية التي تُفتح، ستجد معرّف Meta لكل رقم هاتف في عمود رقم الهاتف.
الحصول على chakraAccessToken
لاستخدام واجهات Chakra API، عليك أولًا إنشاء مفتاح API لحالة الاستخدام الخاصة بك من قسم مفاتيح API في Chakra Chat.
إنشاء مفتاح API
لإنشاء مفتاح API، عليك تقديم المعلومات التالية:
- الاسم - اسم المفتاح. يُرجى اختيار اسم ذي معنى. فهذا يسهّل إدارة المفاتيح.
- الوصف (اختياري) - وصف لمفاتيح API
- دور الوصول - اختر
roleلمفتاح API الجديد. سيرث مفتاح API الامتيازات التي يمنحها الدور المعيّن، وستُقيّده هذه الامتيازات. تأكّد من أن مفاتيح API المكشوفة للعامة تستخدم الدور الأقل امتيازًا اللازم لإنجاز المهمة.
بعد إنشاء مفتاح API، ستجد chakraAccessToken ضمن قسم "Access Tokens" الخاص بمفتاح API الذي أنشأته.
3.3 بعد إعداد HTTP Request، عُد إلى لوحة العمل وانقر على زر تنفيذ الخطوة أعلى عقدة HTTP Request. إذا أعددت كل شيء بشكل صحيح، فستنفّذ العقدة الخطوة بنجاح، وستتلقى ناتج OpenAI الاختباري على حساب WhatsApp الخاص بالمستخدم النهائي 🥳
4. نشر سير العمل
4.1 احفظ سير العمل واجعله نشطًا.

4.2 انقر نقرًا مزدوجًا على webhook، ثم انقر على Production URL ضمن عناوين URL الخاصة بـ webhook. بعد ذلك، انقر على عنوان URL الفعلي لنسخه.

4.3 افتح الآن حساب Chakra Chat وانتقل إلى صفحة إعداد WhatsApp. ثم انقر على علامة التبويب More. الصق عنوان URL الخاص بـ webhook الذي نسخته في مربع الإدخال أسفل "pass through webhook url".

4.4 انقر على Save في الزاوية العلوية اليمنى من الصفحة لحفظ هذا الإعداد. ستُرسل الآن أحداث WhatsApp إلى عنوان URL الخاص بـ webhook للإنتاج.
الخاتمة
هذا كل شيء! يمكنك الآن اختبار الروبوت، ثم تعديل الوكيل لمعالجة حالات استخدام أكثر تعقيدًا. وكيل الذكاء الاصطناعي الموضح أعلاه بسيط جدًا. أما حالات الاستخدام العملية، فستحتاج فيها إلى إضافة أمور أخرى مثل الذاكرة أو معالجة الصور. لكن المبدأ الأساسي يظل كما هو.
الملحق
أ. إضافة شرط if لاستبعاد الأحداث غير المتعلقة بالرسائل
عادةً ما يتلقى خطاف الويب الذي يمرر الأحداث كما هي العديد من الأحداث من WhatsApp؛ فبعضها أحداث رسائل، وقد يكون بعضها الآخر أحداث حالة أو أحداث فوترة. ومن الأفضل إضافة عقدة شرط if بعد عقدة Webhook لاستبعاد الأحداث غير المتعلقة بالرسائل.
بعد تنفيذ ما سبق، احرص على تغيير تعبير مطالبة المستخدم في عقدة AI Agent ليحدد بيانات خطاف الويب بشكل صحيح. سيبدو الآن على نحو مماثل لما يلي:
{{ $('Webhook').item.json.body.entry[0].changes[0].value.messages[0].text.body }}ب. استخدام الذاكرة لمتابعة المحادثة
قد تحتاج في مرحلة ما إلى استخدام الذاكرة لمتابعة محادثة مع أحد المستخدمين. وتتضمن أحداث الرسائل أيضًا رقم هاتف المستخدم النهائي؛ ويمكن استخدام هذا الرقم مفتاحًا مناسبًا لربط جميع الرسائل معًا.
ج. الوصول إلى الوسائط التي يرسلها المستخدمون
قد ترغب في معالجة الصور أو المستندات التي يرسلها المستخدمون. في هذه الحالة، تتضمن أحداث خطاف الويب في WhatsApp عادةً معرّف وسائط WhatsApp. ويمكنك جلب الوسائط المرتبطة بهذا المعرّف باستخدام واجهة API لعرض الوسائط.