186 lines
4.6 KiB
Markdown
186 lines
4.6 KiB
Markdown
# Guía Rápida de Inicio - WallaMonitor 🚀
|
||
|
||
Esta guía te ayudará a configurar y ejecutar WallaMonitor en menos de 5 minutos.
|
||
|
||
## Requisitos Previos
|
||
|
||
- Python 3.x instalado
|
||
- Un bot de Telegram creado (habla con [@BotFather](https://t.me/botfather))
|
||
- Un canal o grupo de Telegram donde recibir notificaciones
|
||
|
||
## Instalación en 4 Pasos
|
||
|
||
### 1️⃣ Instalar Dependencias
|
||
|
||
```bash
|
||
pip3 install -r requirements.txt
|
||
```
|
||
|
||
### 2️⃣ Configurar Archivos
|
||
|
||
Ejecuta el script de configuración automática:
|
||
|
||
```bash
|
||
python setup_config.py
|
||
```
|
||
|
||
Este script creará automáticamente:
|
||
- `config.yaml` desde `config.sample.yaml`
|
||
- `workers.json` desde `workers.sample.json`
|
||
|
||
**Nota:** Si los archivos ya existen, no se sobrescribirán.
|
||
|
||
### 3️⃣ Editar config.yaml
|
||
|
||
Abre `config.yaml` y configura tus credenciales:
|
||
|
||
```yaml
|
||
telegram_token: "TU_TOKEN_AQUI" # Token que te dio BotFather
|
||
telegram_channel: "@tu_canal" # Tu canal o grupo de Telegram
|
||
```
|
||
|
||
**¿Cómo obtener el token?**
|
||
1. Habla con [@BotFather](https://t.me/botfather) en Telegram
|
||
2. Envía el comando `/newbot`
|
||
3. Sigue las instrucciones y guarda el token que te proporciona
|
||
|
||
**¿Cómo configurar el canal?**
|
||
- Si es un canal público: `@nombre_canal`
|
||
- Si es un grupo: usa el ID numérico (ej: `-1001234567890`)
|
||
|
||
### 4️⃣ Configurar Búsquedas (workers.json)
|
||
|
||
El archivo `workers.json` contiene ejemplos de búsquedas. Personalízalo según tus necesidades:
|
||
|
||
```json
|
||
{
|
||
"general": {
|
||
"title_exclude": ["palabras", "a", "excluir"],
|
||
"description_exclude": ["más", "palabras"]
|
||
},
|
||
"items": [
|
||
{
|
||
"name": "Mi Búsqueda",
|
||
"search_query": "playstation 5",
|
||
"platform": "wallapop",
|
||
"thread_id": 8,
|
||
"title_exclude": ["roto", "piezas"],
|
||
"description_exclude": ["no funciona"]
|
||
}
|
||
]
|
||
}
|
||
```
|
||
|
||
**Parámetros importantes:**
|
||
- `name`: Nombre descriptivo de la búsqueda
|
||
- `search_query`: Término a buscar
|
||
- `platform`: `wallapop` (por defecto) o `vinted`
|
||
- `thread_id`: ID del hilo de Telegram (opcional)
|
||
- `latitude`/`longitude`: Para búsquedas locales (opcional)
|
||
- `max_distance`: Distancia máxima en km (opcional)
|
||
|
||
## Ejecutar WallaMonitor
|
||
|
||
Una vez configurado, simplemente ejecuta:
|
||
|
||
```bash
|
||
python wallamonitor.py
|
||
```
|
||
|
||
El monitor:
|
||
- ✅ Verificará la configuración automáticamente
|
||
- ✅ Creará archivos faltantes desde los .sample
|
||
- ✅ Comenzará a monitorizar tus búsquedas
|
||
- ✅ Enviará notificaciones a Telegram cuando encuentre artículos
|
||
|
||
## Verificación de Funcionamiento
|
||
|
||
Si todo está correcto, verás mensajes como:
|
||
|
||
```
|
||
INFO [2025-10-13 10:30:00] Iniciando monitor para: Mi Búsqueda
|
||
INFO [2025-10-13 10:30:01] Polling de Telegram iniciado
|
||
```
|
||
|
||
Y comenzarás a recibir notificaciones en tu canal de Telegram!
|
||
|
||
## Solución de Problemas Comunes
|
||
|
||
### Error: "No se encontró config.yaml"
|
||
- Ejecuta `python setup_config.py`
|
||
- O copia manualmente: `cp config.sample.yaml config.yaml`
|
||
|
||
### Error: "Missing mandatory field: items"
|
||
- Verifica que `workers.json` tenga la estructura correcta
|
||
- Asegúrate de que el campo `items` exista y sea una lista
|
||
|
||
### No recibo notificaciones en Telegram
|
||
- Verifica que el bot sea administrador del canal
|
||
- Comprueba que el token y el canal sean correctos
|
||
- Para grupos privados, asegúrate de usar el ID numérico correcto
|
||
|
||
### Error de autenticación de Telegram
|
||
- Revisa que el token en `config.yaml` sea correcto
|
||
- Regenera el token con [@BotFather](https://t.me/botfather) si es necesario
|
||
|
||
## Funcionalidades Avanzadas
|
||
|
||
### Búsquedas Locales
|
||
|
||
```json
|
||
{
|
||
"name": "Búsqueda Local",
|
||
"search_query": "nintendo switch",
|
||
"latitude": 40.4165,
|
||
"longitude": -3.70256,
|
||
"max_distance": "25"
|
||
}
|
||
```
|
||
|
||
### Múltiples Plataformas
|
||
|
||
```json
|
||
{
|
||
"name": "Búsqueda en Vinted",
|
||
"platform": "vinted",
|
||
"search_query": "zapatillas nike"
|
||
}
|
||
```
|
||
|
||
### Hilos de Telegram
|
||
|
||
Organiza tus notificaciones en diferentes hilos/temas:
|
||
|
||
```json
|
||
{
|
||
"name": "Consolas Retro",
|
||
"search_query": "gameboy",
|
||
"thread_id": 10
|
||
}
|
||
```
|
||
|
||
## Comandos del Bot de Telegram
|
||
|
||
Una vez el bot esté funcionando, puedes usar:
|
||
|
||
- `/favs` - Ver tu lista de artículos favoritos
|
||
- Botón "⭐ Añadir a favoritos" - Guardar un artículo
|
||
- Botón "🗑️ Quitar de favoritos" - Eliminar de favoritos
|
||
|
||
## Próximos Pasos
|
||
|
||
- 📖 Lee el [README.md](README.md) completo para más opciones
|
||
- 🔧 Consulta [ADDING_PLATFORMS.md](ADDING_PLATFORMS.md) para añadir nuevas plataformas
|
||
- 🏗️ Revisa [REFACTORING.md](REFACTORING.md) para entender la arquitectura
|
||
|
||
## ¿Necesitas Ayuda?
|
||
|
||
Si tienes problemas:
|
||
1. Verifica los logs en `monitor.log`
|
||
2. Revisa que todos los archivos de configuración estén correctos
|
||
3. Asegúrate de tener todas las dependencias instaladas
|
||
|
||
---
|
||
|
||
**¡Feliz monitoreo! 🛎️**
|