بناء Chatbot WhatsApp مدعوم بالذكاء الاصطناعي: دليل خطوة بخطوة

نشرت: 2024-03-22

ملخص:

تعرف على كيفية إنشاء روبوت دردشة WhatsApp مدعوم بالذكاء الاصطناعي خطوة بخطوة، مع الاستفادة من إمكانات Node.js وOpenAI. بدءًا من إعداد حساب Meta للأعمال وحتى دمج WhatsApp API وOpenAI، يعمل هذا الدليل على تمكين الشركات من تبسيط تفاعلات العملاء وفتح إمكانيات جديدة في الاتصال الآلي.

في العصر الرقمي الحالي، يعد تسخير قوة الذكاء الاصطناعي (AI) لتعزيز تفاعلات العملاء أمرًا بالغ الأهمية للشركات التي تسعى جاهدة للبقاء في المقدمة في السوق. يعد تطبيق WhatsApp أحد أكثر منصات المراسلة استخدامًا على مستوى العالم، ويوفر فرصة ممتازة للشركات للتفاعل مع جمهورها بشكل فعال. أدخل عالم روبوتات الدردشة WhatsApp المدعومة بالذكاء الاصطناعي. يُحدث هؤلاء المساعدون الافتراضيون ثورة في خدمة العملاء، حيث يقدمون الدعم على مدار الساعة، ويبسطون عمليات الاتصال.

سواء كنت شركة ناشئة أو مؤسسة راسخة، فإن التنقل خلال خطوات التطوير يمكن أن يصبح أسهل باستخدام النهج الصحيح. في هذا الدليل الشامل، سنستكشف المبادئ الأساسية والإجراءات خطوة بخطوة والاعتبارات الحاسمة اللازمة لدمج WhatsApp Business API مع تطبيق Node.js الخاص بك. من خلال تسخير قوة إمكانات معالجة اللغة الطبيعية في OpenAI، سنقوم بصياغة تجربة مستخدم سلسة تلقى صدى لدى جمهورك.

بدءًا من إعداد حساب WhatsApp Business الخاص بك ووصولاً إلى دمج واجهة برمجة تطبيقات OpenAI مع رمز Node.js الخاص بك، تابع معنا حيث نقوم بإزالة الغموض عن العملية وتمكينك من إنشاء الحل الخاص بك المستند إلى الذكاء الاصطناعي. هذه الرحلة التحويلية إلى عالم وكلاء المحادثة المعتمدين على الذكاء الاصطناعي ليست رحلة يتعين عليك القيام بها بمفردك. يمكن لشركة تطوير Chatbot التي تعمل بالذكاء الاصطناعي أن تكون بمثابة شريكك الموثوق به، حيث توفر لك رؤى وخبرات لا تقدر بثمن على طول الطريق. دعونا نشرع في هذه الرحلة الاستكشافية المثيرة معًا.

الخطوة 1: إعداد حساب الأعمال والتطبيق التعريفي (Facebook).

  1. قم أولاً بإنشاء حساب ميتا للأعمال (انقر هنا).

املأ التفاصيل وانقر على إرسال.

2. قم بإنشاء تطبيق Meta (Facebook) جديد (انقر هنا).

  • (تسجيل الدخول) إلى حساب مطور Meta (Facebook) الخاص بك.

بعد تسجيل الدخول، انقر على "تطبيقاتي"

انقر على تطبيقي

3. الآن انقر على "إنشاء التطبيق"

4. حدد "أخرى" وانقر على "التالي".

5. اختر نوع التطبيق: "أعمال" وانقر على "التالي".

6. قم بتقديم تفاصيل التطبيق وانقر على "إنشاء تطبيق"

الخطوة 2: إعداد تطبيق Meta (Facebook) لتكامل WhatsApp

1. أضف WhatsApp إلى تطبيق Meta (Facebook) الخاص بك.

  • في "لوحة تحكم المطورين"، اختر تطبيقك.
  • حدد موقع "إضافة منتجات إلى تطبيقك" في علامة تبويب لوحة التحكم في تطبيقك.
  • اختر "WhatsApp" للإعداد.
  • حدد حساب Meta (Facebook) التجاري الخاص بك
  • انتقل إلى إعدادات التطبيق > أساسي من الشريط الجانبي
  • حفظ التغييرات.
  • اضبط وضع التطبيق على Live

الخطوة 3: إنشاء رمز WhatsApp

للحصول على رمز وصول دائم إلى WhatsApp، اتبع الخطوات من 1 إلى 3:

1. قم بإنشاء "مستخدم النظام":

  • قم بزيارة Meta Business Suite.
  • ابحث عن حساب عملك في القائمة المنسدلة العلوية اليسرى وانقر على أيقونة الإعدادات (الترس).
  • انقر فوق إعدادات الأعمال.
  • انتقل إلى المستخدمون > مستخدمو النظام.
  • إضافة مستخدم نظام المسؤول.

2. أضف الأصول.

  • بعد إنشاء مستخدم النظام، اضغط على إضافة الأصول.
  • انتقل إلى التطبيقات > "اسم تطبيقك".
  • حدد تطبيقك وامنحه التحكم الكامل لإدارة التطبيق.

3. إنشاء رموز وصول مستخدم النظام.

  • انقر فوق الزر "إنشاء رمز مميز جديد" الموجود على مستخدم النظام.

اختر التطبيق الذي سيستخدم الرمز المميز وقم بتعيين انتهاء صلاحية الرمز المميز على "أبدًا".

  • حدد أذونات "whatsapp_business_messaging" و"whatsapp_business_management".
  • قم بإنشاء الرمز المميز.
  • انسخ رمز الوصول وقم بتخزينه بشكل آمن.

4. أضف رقم عمل جديد لتطبيق WhatsApp

  • يمكنك استخدام رقم عملك الخاص أو الاستفادة من رقم الاختبار المقدم لبرنامج Chatbot الخاص بك على WhatsApp.
  • في لوحة تحكم مطور WhatsApp، انتقل إلى WhatsApp > إعداد API من الشريط الجانبي.
  • تابع إلى "الخطوة 5: إضافة رقم هاتف"، وانقر فوق "إضافة رقم هاتف".
  • تقديم التفاصيل المطلوبة في النموذج التالي.
  • قم بتأكيد رقمك باستخدام الرمز المستلم.
  • بمجرد الإضافة بنجاح، حدد رقم هاتفك في الخطوة 1 من إعداد واجهة برمجة التطبيقات.

5. أضف طريقة الدفع

  • لإرسال رسائل عبر الواتساب، تحتاج إلى طريقة دفع صالحة. زيارة هنا للحصول على التفاصيل.
  • بعد إضافة رقم هاتف عملك، انقر فوق "إضافة طريقة دفع" لمعالجة التنبيه "طريقة دفع صالحة مفقودة".
  • سيتم توجيهك إلى إعدادات حساب WhatsApp الخاص بك. انقر على "طرق الدفع" > "إضافة طريقة دفع تجارية" واتبع المطالبات لإضافة معلومات بطاقتك.

6. اختبر رقم عملك الجديد لتطبيق WhatsApp

  • ارجع إلى لوحة تحكم مطور WhatsApp، وانتقل إلى إعداد API
  • أدخل رقم الاختبار "إلى".
  • انقر فوق "إرسال رسالة" للتحقق من تسليم الرسالة بنجاح.

الخطوة 4: تكوين إعدادات WhatsApp API Webhook

1. تحقق من رد اتصال WhatsApp Webhook.

  • في لوحة تحكم مطور WhatsApp، انتقل إلى التكوين.
  • ضمن Webhook، انقر فوق تحرير
  • الآن، نحتاج إلى توفير عنوان URL مباشر للويب هوك ورمز مميز لتطبيق WhatsApp. عنوان URL المباشر هو عنوان URL لتطبيقك، ويتم إنشاء الرمز المميز أيضًا من جانبك. في الصورة أدناه، أضفت عنوان URL الخاص بـ Ngrok لأن تطبيق Node.js الخاص بي يعمل على Ngrok، ولقد استخدمت UUID كرمز مميز.
  • في عملية التحقق، يرسل WhatsApp طلب GET إلى عنوان URL لرد الاتصال للتحقق من صحة الرمز المميز للمركز. الكود التالي، المكتوب في Next.js (إطار عمل Node.js)، يعالج عملية التحقق هذه. لن يكون التحقق ناجحًا إلا إذا أرسل الرمز الخاص بك رمز الحالة 200 ردًا على ذلك، كما هو موضح أدناه.
تصدير دالة غير متزامنة GET(req: NextRequest) {

Let hubMode = req.nextUrl.searchParams.get("hub.mode");

Let hubChallenge = req.nextUrl.searchParams.get("hub.challenge");

Let hubToken = req.nextUrl.searchParams.get("hub.verify_token");

// ابحث عن الرمز المميز في قاعدة البيانات

لو (

hubMode === "الاشتراك" &&

hubToken === "<القيمة من .env أو من قاعدة البيانات>"

) {

console.log("تم التحقق بنجاح");

إرجاع استجابة جديدة (hubChallenge)؛

}

إرجاع استجابة جديدة ("بيانات اعتماد غير صالحة"، { الحالة: 400 })؛

}

  • ابحث عن حقل "الرسائل" واشترك فيه عن طريق تحديد المربع.
  • نحتاج الآن إلى رمز الوصول إلى WhatsApp وسر تطبيق Facebook الذي نحصل عليه من نفس حساب WhatsApp للأعمال
  • في الصورة أدناه ترى تطبيق Facebook السري

نحتاج أيضًا إلى الاحتفاظ بالبيانات المميزة التالية

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

الخطوة 5: إرسال واستقبال الرسائل من خلال API

  • في كود TypeScript المقدم، نجحنا في دمج WhatsApp API لإرسال واستقبال الرسائل. بالإضافة إلى ذلك، قمت بدمج OpenAI ونموذج الذكاء الاصطناعي المُدرب خصيصًا للرد على الرسائل الواردة لتحقيق هدفي.
  • يتم استخدام عنوان URL لرد الاتصال المقدم إلى WhatsApp لكل من طلبات GET وPOST. عندما يتم إرسال رسالة إلى رقم العمل، يقوم WhatsApp بتشغيل عنوان URL لرد الاتصال هذا ويرسل الرسالة مع تفاصيل المستخدم. يقرأ التعليمة البرمجية التالية تلك الرسالة ويستجيب بناءً على المنطق المطبق.
  • وظيفة POST هي وظيفة غير متزامنة تعالج طلبات POST الواردة. يقوم أولاً بتحليل الطلب الوارد إلى JSON واستخراج الرسالة التي أرسلها المستخدم من WhatsApp. إذا كانت الرسالة غير محددة أو فارغة، فإنها ترجع استجابة بحالة 200 ولا تتابع أكثر من ذلك.
  • تقوم الوظيفة بعد ذلك باسترداد رقم هاتف العمل ورقم هاتف المرسل من الطلب.
  • تقوم الوظيفة بعد ذلك بإعداد طلب POST لإرسال رسالة مرة أخرى إلى المستخدم عبر WhatsApp. يقوم بإنشاء عنوان URL للطلب، وتحديد الرسالة التي سيتم إرسالها، وتعيين خيارات الطلب، بما في ذلك الطريقة، والعناوين، والنص.
  • تقوم الوظيفة بعد ذلك بإرسال الطلب باستخدام وظيفة الجلب. إذا نجح الطلب، فسيتم إرجاع استجابة بالحالة 200. إذا حدث خطأ في أي وقت، فسيتم تسجيله إلى وحدة التحكم.
  • وظيفة getResponseNumber هي وظيفة مساعدة تستخرج رقم هاتف المرسل من الطلب الوارد.
  • يوفر هذا الرمز مثالاً أساسيًا لكيفية دمج تطبيق Node.js مع WhatsApp Business API، مما يسمح بإرسال الرسائل واستلامها تلقائيًا.

// سيقوم WhatsApp بتشغيل طلب النشر هذا بمجرد أن يطرح المستخدم سؤالاً على الروبوت وكذلك الرد على المستخدم

تصدير وظيفة غير متزامنة POST(req: NextRequest) {

دعونا الدقة: أي = انتظار req.json();

اسمحوا سؤالمنWhatsapp =

res?.entry?.[0]?.changes?.[0]?.value?.messages?.[0]?.text?.body; // سؤال ورد من الواتس اب

لو (

questionFromWhatsapp == غير محدد ||

questionFromWhatsapp.trim().length <= 0

) {

// إذا كان الطلب يتعلق بالحالة فقط، فلا تنتقل إلى أبعد من ذلك

// return NextResponse.json({ message: "received" });

إرجاع استجابة جديدة ("تم الاستلام"، { الحالة: 200 })؛

}

// احصل على معرف رقم الهاتف من الرد. رقم الهاتف هذا هو رقم العمل

رقم هاتف ثابت =

res?.entry?.[0]?.changes?.[0]?.value?.metadata["phone_number_id"];

// ستعيد هذه الطريقة رقم الهاتف الذي تم استلام الرسالة منه

const ResponseNumber = getResponseNumber(res);

// استرجاع معرف المستخدم من قاعدة البيانات

يحاول {

نسخة ثابتة = "v18.0";

// تحقق مما إذا تم الوصول إلى الحد أم لا

رقم هاتف ثابت؛

const ReceiverPhoneNumber = "+" + ResponseNumber؛

// const accessToken =process.env.WHATSAPPTOKEN

const accessToken = "الرمز المميز الذي تحصل عليه من facebook";

يحاول {

//--------------- هذا الرمز مخصص لإرسال الرسائل إلى التليجرام

const url = `https://graph.facebook.com/${version}/${phoneNumberId}/messages`;

// تحديد البيانات التي سيتم إرسالها في نص الطلب

بيانات ثابتة = {

message_product: "واتساب"،

نوع_المستلم: "فردي"،

إلى: `${recipientPhoneNumber}`،

أكتب نصا"،

نص: {

Preview_url: خطأ،

body: "مرحبًا، أنا روبوت الدردشة، وأنا مشغول حاليًا، وسأعود إليك قريبًا.",

},

};

// تحديد خيارات طلب الجلب

خيارات ثابتة = {

الطريقة: "POST"،

العناوين: {

"نوع المحتوى": "application/json"،

التفويض: `الحامل ${accessToken}`،

},

الجسم: JSON.stringify (البيانات)،

};

// قم بإجراء طلب POST باستخدام الجلب

يحاول {

استجابة const = انتظار الجلب (url، options)؛

إذا (!response.ok) {

رمي خطأ جديد("خطأ HTTP! الحالة: ${response.status}`);

}

بيانات ثابتة = انتظار الاستجابة.json();

// التعامل مع البيانات حسب الحاجة

} التقاط (خطأ) {

// تعامل مع الخطأ حسب الحاجة

console.log(error);

}

إرجاع استجابة جديدة ("تم الاستلام"، { الحالة: 200 })؛

} التقاط (خطأ) {

console.log("خطأ"، خطأ)؛

}

} قبض (خطأ: أي) {

console.log(error);

// الحفاظ على سجل الأخطاء في قاعدة البيانات، في حالة حدوث خطأ غير معالج

}

}

const getResponseNumber = (الدقة: أي) => {

إرجاع الدقة؟.entry?.[0]?.changes?.[0]?.value?.contacts[0]?.wa_id;

};

خاتمة

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

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

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