Chatea por WhatsApp con una IA
Servidor: Node.JS, Express
Base de datos: Redis
API: API de WhatsApp Business Cloud, OpenAI GPT-3
Implementación: Docker, Nginx, Linode
Varios: ElasticSearch, Kibana
whatsapp-connector: el conector de Whatsapp es un microservicio que conecta un bot a la API de WhatsApp, maneja mensajes y solicitudes entrantes de WhatsApp.
chatbot: Chatbot es un microservicio que se conectará al modelo OpenAI GPT-3 para responder las consultas de los usuarios según el mensaje.
Se deben realizar múltiples requisitos previos y configuración en Meta Developers; siga mi guía a continuación para obtener más detalles: https://blog.amitwani.dev/create-a-chatbot-using-whatsapp-cloud-api
docker-compose
Actualizar variables de entorno
docker-compose-local.yml
dentro de la carpeta docker
para las siguientes variables de entorno:VERIFY_TOKEN
- Verificar token para el webhook de WhatsAppOPENAI_API_KEY
- Clave API de OpenAIWHATSAPP_TOKEN
: token de autenticación permanente/temporal de WhatsApp Business con permiso whatsapp_business_messaging
WHATSAPP_SEND_MESSAGE_API
: punto final de la API de envío de mensajes de la API de WhatsApp Cloud con ID de número de teléfonoCHATBOT_URL
: URL de la API del microservicio Chatbot Ejecute el comando docker-compose -f docker-compose.local.yml up -d
dentro de la carpeta docker
npm
Navegue hasta whatsapp-connector
y chatbot
para instalar sus dependencias.
npm install
o
yarn add
Actualizar variables de entorno
.env
copiando .env.sample
en ambos microserviciosVERIFY_TOKEN
- Verificar token para el webhook de WhatsAppOPENAI_API_KEY
- Clave API de OpenAIWHATSAPP_TOKEN
: token de autenticación permanente/temporal de WhatsApp Business con permiso whatsapp_business_messaging
WHATSAPP_SEND_MESSAGE_API
: punto final de la API de envío de mensajes de la API de WhatsApp Cloud con ID de número de teléfonoCHATBOT_URL
: URL de la API del microservicio ChatbotEjecute el servidor
npm run start
Implemente con Docker fácilmente utilizando el Dockerfile
proporcionado en la carpeta de servicios respectiva o el docker-compose.yml
en la carpeta docker
.
GitHub Actions se utiliza para crear un flujo de trabajo de CI/CD especificado en workflow.yml
.
main
docker-compose.yml
reemplazando las variables de entorno de los secretos de GitHubdocker-compose.yml
y nginx.conf
al servidordocker-compose
para recrear contenedoresSi tiene algún comentario, comuníquese conmigo en [email protected]