https://github.com/voscarmv/santabot
Secret Santa Bot for WhatsApp
https://github.com/voscarmv/santabot
bot chatbot christmas match matching santa secret secret-santa sort whatsapp wwebjs
Last synced: 2 months ago
JSON representation
Secret Santa Bot for WhatsApp
- Host: GitHub
- URL: https://github.com/voscarmv/santabot
- Owner: voscarmv
- License: gpl-3.0
- Created: 2025-12-22T00:34:56.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2025-12-22T04:58:31.000Z (6 months ago)
- Last Synced: 2025-12-23T16:12:38.073Z (6 months ago)
- Topics: bot, chatbot, christmas, match, matching, santa, secret, secret-santa, sort, whatsapp, wwebjs
- Language: JavaScript
- Homepage:
- Size: 30.3 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 🎅 SantaBot – WhatsApp Secret Santa Bot
Un bot de WhatsApp construido con **whatsapp-web.js** que organiza automáticamente un **intercambio de regalos (Secret Santa)** cuando es agregado a un grupo.
Cuando el bot entra al grupo:
* Saluda a todos 🎄
* Realiza el sorteo de manera automática 🎲
* Envía a cada participante un **mensaje privado** con la persona a la que le toca regalar 🎁🤫
* Se despide y **abandona el grupo** 👋
Ideal para grupos de amigos, familia o trabajo.
---
## ✨ Características
* 🤖 Automatización total del sorteo
* 🔒 Asignaciones **secretas** por mensaje privado
* 🚫 Evita que alguien se regale a sí mismo
* 🎄 Mensajes navideños listos para usar
* 👋 Sale del grupo automáticamente al finalizar
* ♻️ Autenticación persistente con `LocalAuth`
---
## 🧠 Cómo funciona
1. El bot es agregado a un grupo de WhatsApp
2. Detecta el evento `group_join`
3. Obtiene la lista de participantes del grupo
4. Ejecuta el algoritmo de Secret Santa usando [`@voscarmv/secret-santa`](https://www.npmjs.com/package/@voscarmv/secret-santa)
5. Envía a cada usuario su asignación **en privado**
6. Envía un mensaje final al grupo
7. Abandona el grupo
---
## 🛠️ Tecnologías usadas
* **Node.js**
* **whatsapp-web.js**
* **Puppeteer**
* **qrcode-terminal**
* **@voscarmv/secret-santa**
---
## 📦 Instalación
Clona el repositorio:
```bash
git clone https://github.com/voscarmv/santabot.git
cd santabot
```
Instala dependencias:
```bash
npm install
```
Asegúrate de tener Google Chrome instalado:
```bash
/usr/bin/google-chrome-stable
```
---
## ▶️ Uso
Ejecuta el bot:
```bash
node index.js
```
1. Escanea el **QR** desde WhatsApp
2. Agrega el bot a un grupo
3. Disfruta del intercambio 🎁🎄
> ⚠️ El bot **debe ser agregado**, no funciona si ya estaba en el grupo.
---
## 📁 Estructura básica
```text
santabot/
├── index.js
├── package.json
├── node_modules/
└── .wwebjs_auth/
```
---
## 🔐 Notas importantes
* El bot **no necesita ser admin**
* No puede volver a entrar al grupo sin invitación
* WhatsApp puede limitar bots en cuentas nuevas
* Uso bajo tu propia responsabilidad
---
## 🎁 Personalización
Puedes modificar fácilmente:
* 📝 Mensajes del bot
* ⏱️ Tiempos de espera (`sleep`)
* 🧑🎄 Idioma y tono
* 📛 Mostrar nombres en vez de números
---
## 📜 Licencia
GPL-3-or-latest
---
## 👤 Autor
**Oscar Mier**
* GitHub: [https://github.com/voscarmv](https://github.com/voscarmv)
* NPM: @voscarmv
---
🎄✨ ¡Feliz intercambio y felices fiestas! ✨🎄