Este proyecto es un backend desarrollado con Node.js y Express que permite conectar tu cuenta de WhatsApp y responder automáticamente a los mensajes recibidos. Utiliza la librería wa-multi-session para manejar múltiples sesiones y responder a mensajes basados en un diccionario predefinido.
- Conexión a WhatsApp: Maneja múltiples sesiones de WhatsApp.
- Auto-respuestas: Responde automáticamente a mensajes basados en palabras clave definidas en un diccionario.
- WebSocket: Comunicación en tiempo real con clientes mediante Socket.IO.
- Gestión de etiquetas: Emite eventos de asociación y edición de etiquetas.
- Node.js: Entorno de ejecución para JavaScript en el servidor.
- Express: Framework para construir APIs y manejar peticiones.
- wa-multi-session: Librería para manejar sesiones de WhatsApp.
- Socket.IO: Comunicación bidireccional en tiempo real entre el servidor y los clientes.
Sigue estos pasos para poner en marcha el proyecto en tu entorno local:
-
Clona el repositorio:
git clone https://github.com/MateoMax-hub/wa-test.git
-
Accede al directorio del proyecto:
cd wa-test
-
Instala las dependencias:
npm install
-
Configura las variables de entorno:
- Crea un archivo
.env
en la raíz del proyecto. - Define las siguientes variables si son necesarias:
PORT=4000 SESSION_STORAGE=./sessions
- Crea un archivo
-
Inicia el servidor:
npm start
-
El servidor estará disponible en http://localhost:4000.
El archivo de constantes (./src/constants/dictionary.js
) contiene las palabras clave y las respuestas automáticas. Puedes personalizarlo para agregar tus propias respuestas:
const DICTIONARY = {
"hola": "¡Hola! ¿Cómo puedo ayudarte?",
"adios": "¡Hasta luego!",
// Agrega más palabras clave y respuestas aquí
};
module.exports = DICTIONARY;
- /api/: Maneja las rutas principales de la API.
- /socket/: Comunicación en tiempo real mediante WebSocket.
¡Las contribuciones son bienvenidas! Si deseas agregar nuevas funcionalidades, corregir errores o mejorar la documentación:
- Haz un fork del repositorio.
- Crea una rama para tu funcionalidad o corrección:
git checkout -b mi-nueva-funcionalidad
- Realiza tus cambios y haz un commit:
git commit -m "Descripción breve del cambio"
- Sube los cambios:
git push origin mi-nueva-funcionalidad
- Abre un Pull Request.