Ngobrol di WhatsApp dengan AI
Server: Node.JS, Ekspres
Basis Data: Redis
API: API Cloud Bisnis WhatsApp, OpenAI GPT-3
Penerapan: Docker, Nginx, Linode
Lain-lain: ElasticSearch, Kibana
konektor whatsapp: Konektor Whatsapp adalah layanan mikro yang menghubungkan bot ke API WhatsApp, menangani pengiriman pesan dan permintaan masuk dari WhatsApp
chatbot: Chatbot adalah layanan mikro yang akan terhubung ke model OpenAI GPT-3 untuk menjawab pertanyaan pengguna berdasarkan perintah
Beberapa prasyarat dan konfigurasi perlu dilakukan pada Pengembang Meta, silakan ikuti panduan saya di bawah ini untuk detailnya: https://blog.amitwani.dev/create-a-chatbot-using-whatsapp-cloud-api
docker-compose
Perbarui Variabel Lingkungan
docker-compose-local.yml
di dalam folder docker
untuk variabel lingkungan di bawah ini:VERIFY_TOKEN
- Verifikasi Token untuk WhatsApp WebhookOPENAI_API_KEY
- Kunci API OpenAIWHATSAPP_TOKEN
- Token Otentikasi Permanen/Sementara WhatsApp Business dengan izin whatsapp_business_messaging
WHATSAPP_SEND_MESSAGE_API
- WhatsApp Cloud API Kirim Pesan Titik Akhir API dengan ID Nomor TeleponCHATBOT_URL
- URL api layanan mikro Chatbot Jalankan perintah docker-compose -f docker-compose.local.yml up -d
di dalam folder docker
npm
Arahkan ke whatsapp-connector
dan chatbot
untuk menginstal dependensinya.
npm install
atau
yarn add
Perbarui Variabel Lingkungan
.env
dengan menyalin .env.sample
di kedua layanan mikroVERIFY_TOKEN
- Verifikasi Token untuk WhatsApp WebhookOPENAI_API_KEY
- Kunci API OpenAIWHATSAPP_TOKEN
- Token Otentikasi Permanen/Sementara WhatsApp Business dengan izin whatsapp_business_messaging
WHATSAPP_SEND_MESSAGE_API
- WhatsApp Cloud API Kirim Pesan Titik Akhir API dengan ID Nomor TeleponCHATBOT_URL
- URL api layanan mikro ChatbotJalankan Servernya
npm run start
Terapkan dengan Docker dengan mudah menggunakan Dockerfile
yang disediakan di folder layanan masing-masing atau docker-compose.yml
di folder docker
Tindakan GitHub digunakan untuk membuat alur kerja CI/CD yang ditentukan dalam workflow.yml
.
main
docker-compose.yml
dengan mengganti variabel lingkungan dari rahasia GitHubdocker-compose.yml
dan nginx.conf
ke serverdocker-compose
untuk membuat ulang containerJika Anda memiliki masukan, silakan hubungi saya di [email protected]