Este proyecto es una API REST que permite enviar y recibir mensajes de WhatsApp utilizando la biblioteca whatsmeow.
- Envío de mensajes: Envía mensajes de texto a números de WhatsApp específicos.
- Recepción de mensajes: Simula la recepción de mensajes para pruebas.
- Autenticación básica: Protege las rutas con autenticación básica (username y password).
- Integración con WhatsApp Web: Inicia sesión en WhatsApp Web mediante un código QR.
- Lenguaje: Go (Golang)
- Biblioteca de WhatsApp: whatsmeow
- Framework web: Gin
- Base de datos: SQLite (para almacenar datos de sesión)
-
Configura las credenciales:
- Crea un archivo
credentials.txt
con el formatousername:password
.
- Crea un archivo
-
Ejecuta el servidor:
- Ejecuta el programa con
go run main.go
.
- Ejecuta el programa con
-
Envía mensajes:
- Usa la ruta
/api/v1/sendMessage
para enviar mensajes.
- Usa la ruta
-
Recibe mensajes:
- Usa la ruta
/api/v1/recvMessage
para simular la recepción de mensajes.
- Usa la ruta
- Autenticación: Usa el encabezado
Authorization: Basic base64(username:password)
. - Ejemplo de solicitud:
{ "number": "1234567890", "message": "Hola, este es un mensaje de prueba" }
Aspecto | implementación con whatsmeow |
API principal de Meta |
---|---|---|
Enfoque | WhatsApp Web | WhatsApp Business API |
Autenticación | Código QR | Token de acceso |
Escalabilidad | Limitada | Alta |
Soporte | Comunidad | Oficial |
Limitaciones | No oficial, no comercial | Aprobada por Meta |
Uso | Personas, proyectos pequeños | Negocios |