الدردشة على WhatsApp مع الذكاء الاصطناعي
الخادم: Node.JS، اكسبرس
قاعدة البيانات: ريديس
واجهة برمجة التطبيقات: WhatsApp Business Cloud API، OpenAI GPT-3
النشر: دوكر، إنجينكس، لينود
متنوعات: ElasticSearch، كيبانا
whatsapp-connector: موصل Whatsapp عبارة عن خدمة صغيرة تربط الروبوت بواجهة برمجة تطبيقات WhatsApp، وتتعامل مع الرسائل والطلبات الواردة من WhatsApp
chatbot: Chatbot عبارة عن خدمة صغيرة ستتصل بنموذج OpenAI GPT-3 للإجابة على استفسارات المستخدم بناءً على المطالبة
يجب تنفيذ العديد من المتطلبات الأساسية والتكوين على Meta Developers، يرجى اتباع الدليل أدناه للحصول على التفاصيل: https://blog.amitwani.dev/create-a-chatbot-using-whatsapp-cloud-api
docker-compose
تحديث متغيرات البيئة
docker-compose-local.yml
داخل مجلد docker
لمتغيرات البيئة أدناه:VERIFY_TOKEN
- التحقق من الرمز المميز لـ WhatsApp WebhookOPENAI_API_KEY
- مفتاح واجهة برمجة تطبيقات OpenAIWHATSAPP_TOKEN
- رمز المصادقة الدائم/المؤقت لتطبيق WhatsApp Business مع إذن whatsapp_business_messaging
WHATSAPP_SEND_MESSAGE_API
- نقطة نهاية واجهة برمجة تطبيقات WhatsApp Cloud API لإرسال الرسائل مع معرف رقم الهاتفCHATBOT_URL
- عنوان URL لواجهة برمجة التطبيقات للخدمة الصغيرة لـ Chatbot قم بتشغيل الأمر docker-compose -f docker-compose.local.yml up -d
داخل مجلد docker
npm
انتقل إلى whatsapp-connector
و chatbot
لتثبيت تبعياتهما.
npm install
أو
yarn add
تحديث متغيرات البيئة
.env
عن طريق نسخ .env.sample
في كلتا الخدمتين الصغيرتينVERIFY_TOKEN
- التحقق من الرمز المميز لـ WhatsApp WebhookOPENAI_API_KEY
- مفتاح واجهة برمجة تطبيقات OpenAIWHATSAPP_TOKEN
- رمز المصادقة الدائم/المؤقت لتطبيق WhatsApp Business مع إذن whatsapp_business_messaging
WHATSAPP_SEND_MESSAGE_API
- نقطة نهاية واجهة برمجة تطبيقات WhatsApp Cloud API لإرسال الرسائل مع معرف رقم الهاتفCHATBOT_URL
- عنوان URL لواجهة برمجة التطبيقات للخدمة الصغيرة لـ Chatbotقم بتشغيل الخادم
npm run start
يمكنك النشر باستخدام Docker بسهولة باستخدام ملف Dockerfile
المتوفر في مجلد الخدمات المعني أو docker-compose.yml
في مجلد docker
يتم استخدام إجراءات GitHub لإنشاء سير عمل CI/CD المحدد في ملف workflow.yml
.
main
docker-compose.yml
عن طريق استبدال متغيرات البيئة من أسرار GitHubdocker-compose.yml
و nginx.conf
إلى الخادمdocker-compose
لإعادة إنشاء الحاوياتإذا كان لديك أي تعليقات، يرجى التواصل معي على [email protected]