
Este código es una implementación de WhiskySockets, como un servicio API relajado, que controla las funciones de WhatsApp.
Con este, puede crear chats multiservicio, bots de servicio o cualquier otro sistema que use WhatsApp. Con este código, no necesita conocer JavaScript para NodeJs, simplemente inicie el servidor y haga las solicitudes de idioma con las que se sienta más cómodo.
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker ${USER}PostgreSQL [requerido]
componer de Postgres
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
# or
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bashDespués de terminar, reinicie el terminal para cargar la nueva información.
nvm install 20npm i -g pm2Clonación del repositorio
git clone https://github.com/code-chat-br/whatsapp-api.git
Vaya al directorio del proyecto e instale todas las dependencias.
Dar preferencia a NPM , ya que tiene una mayor compatibilidad.
cd whatsapp-api-v2
npm install
# or
npm install --forceConsulte la configuración adicional que se puede aplicar a través del archivo ENV haciendo clic aquí .
️ Atención️ : Copie el archivo .env.dev a .env .
cp .env.dev .envmigrate dev en el desarrollo para crear y aplicar automáticamente migraciones, facilitando el trabajo con la base de datos.migrate deploy para aplicar migraciones de manera controlada y segura.npx prisma studioDefina la variable de entorno Database_URL para la implementación de la base de datos.
bash deploy_db.shFinalmente, ejecute el comando a continuación para iniciar la aplicación:
npm run start:dev
npm run start:prod
# pm2
pm2 start ' npm run start:prod ' --name CodeChat_API_v1.3.0Para usar el trabajador con la API, es necesario definir las siguientes variables de entorno en la API:
PROVIDER_ENABLED=true : esta variable habilita el uso del proveedor (trabajador) en la API.PROVIDER_HOST=127.0.0.1 : Define el host donde el trabajador está escuchando las solicitudes.PROVIDER_PORT=5656 : Define el puerto donde el trabajador está escuchando las solicitudes.PROVIDER_PREFIX=codechat : Establecer prefijo, por ejemplo, la agrupación en el trabajador Compatibilidad de WebSocket agregada. Lea aquí.
http://localhost:8084/docsPuede definir dos tipos de autenticación para las rutas en el archivo ENV . Se deben insertar autenticaciones en el encabezado de solicitud.
Las autenticaciones se generan en el tiempo de creación de instancias.
Nota: También existe la posibilidad de definir una clave API global, que puede acceder y controlar todas las instancias.
Después de construir la aplicación, en el mismo directorio que los archivos anteriores, ejecute el siguiente comando:
docker-compose up| Enviar mensajes de texto | ✔ |
| Enviar botones | ✔ Solo [iOS, Android] |
| Enviar medios: Audio - Video - Imagen - Documento - GIF base64: false | ✔ |
| Enviar archivo multimedia | ✔ |
| Enviar Audio tipo whatsapp | ✔ |
| Enviar Audio Tipo WhatsApp - Archivo | ✔ |
| Enviar ubicación | ✔ |
| Lista de envío | ✔ Solo [iOS, Android] |
| Enviar una vista previa del enlace | |
| Enviar contacto | ✔ |
| Enviar reacción - emoji | ✔ |
| Nombre | Evento | Typedata | Descripción |
|---|---|---|---|
| Qrcode_updated | Qrcode.Updated | json | Envía la base64 del Ccode QR para leer |
| Connection_Update | conexión. | json | Informa el estado de la conexión con WhatsApp |
| Messages_set | Message.set | json | Envía una lista de todos sus mensajes cargados en whatsapp Este evento ocurre solo una vez |
| Messages_upsert | Message.upsert | json | Te notifica cuando se recibe un mensaje |
| Messages_Update | Message.update | json | Te dice cuándo se actualiza un mensaje |
| Send_message | enviar.message | json | Notifica cuándo se envía un mensaje |
| Contactos_set | contactos. | json | Realiza la carga inicial de todos los contactos Este evento ocurre solo una vez |
| Contactos_upsert | contactos. | json | Recarga todos los contactos con información adicional Este evento ocurre solo una vez |
| Contactos_update | contactos. | json | Le informa cuando se actualiza el chat |
| Presencia_update | presencia. | json | Informa si el usuario está en línea, si está realizando alguna acción como escribir o grabar y su último visto 'indisponible' |
| Chats_set | chats.ets | json | Enviar una lista de todos los chats cargados |
| Chats_update | chats.extactate | json | Le informa cuando se actualiza el chat |
| Chats_upsert | chats.upsert | json | Envía cualquier información de chat nueva |
| Grupos_upsert | grupos. | Json | Notifica cuándo se crea un grupo |
| Grupos_update | grupos. | Json | Notifica cuándo un grupo tiene su información actualizada |
| Group_Participants_Update | grupos-participantes. | Json | Notifica cuándo ocurre una acción que involucra a un participante 'agregar' |
| New_Token | nuevo.jwt | Json | Notifica cuándo se actualiza el token (JWT) |
Para instalar el certificado SSL, siga las instrucciones a continuación.
Este código no está afiliado de ninguna manera a WhatsApp. Use a su propia discreción. No spam esto.
Este código se produjo en base a la Biblioteca Baileys y todavía está en desarrollo.
