inline keyboard and move to channel with threads

Signed-off-by: Omar Sánchez Pizarro <omar.sanchez@pistacero.net>
This commit is contained in:
Omar Sánchez Pizarro
2025-10-10 02:45:55 +02:00
parent 967f7e52a2
commit fa79e53950
6 changed files with 272 additions and 18 deletions

View File

@@ -43,6 +43,7 @@
| `description_must_include` | Palabras requeridas en la descripción: si no aparece alguna, se descarta. | `["funciona"]` | No |
| `title_first_word_exclude` | Lista de palabras: si el primer término del título coincide, se descarta. (Nuevo) | `["Reacondicionado"]` | No |
| `check_every` | Cada cuántos segundos se actualiza la búsqueda (por defecto, 30s si no se especifica). | `15` | No |
| `thread_id` | ID del tema/hilo de Telegram donde se enviarán los mensajes. Si no se especifica, se envía al tema general. (Nuevo) | `2` | No |
Consulta el archivo de ejemplo [args.json](./args.json) para ver cómo estructurarlo.
@@ -52,6 +53,34 @@
- Multiples criterios combinados para ignorar anuncios indeseados o exigir palabras clave.
- Recibes una galería de imágenes en cada notificación, no solo una imagen.
- El código es más modular y fácil de personalizar para diferentes búsquedas simultáneas.
### Sistema de Favoritos ⭐
- **Botones interactivos**: Cada artículo incluye un botón "⭐ Añadir a favoritos" para guardar rápidamente los que te interesan.
- **Comando /favs**: Escribe `/favs` en tu chat de Telegram para ver todos tus artículos favoritos guardados.
- **Gestión completa**: Puedes añadir y eliminar artículos de favoritos con un solo clic.
- **Persistencia**: Todos tus favoritos se guardan en `favorites.json` y persisten entre reinicios.
- **Enlaces directos**: Cada favorito incluye un enlace directo al mensaje original en Telegram.
### Soporte para Temas de Telegram 📌
Wallabicher ahora soporta grupos de Telegram con temas (topics/hilos). Puedes organizar tus notificaciones enviando cada búsqueda a su tema correspondiente:
- **Configuración por worker**: Añade el parámetro `thread_id` a cada búsqueda en `workers.json` con el ID del tema donde quieres recibir las notificaciones.
- **Tema general**: Si un worker no tiene especificado el `thread_id`, los mensajes se enviarán al tema general del grupo.
- **Cómo obtener el thread_id**:
1. En tu grupo de Telegram, haz clic en el tema donde quieres enviar notificaciones
2. Copia el enlace del tema (tiene el formato: `https://t.me/c/XXXXX/THREAD_ID`)
3. El número después de la última barra es el `thread_id`
**Ejemplo en workers.json**:
```json
{
"name": "Nintendo 64",
"search_query": "nintendo 64",
"thread_id": 6
}
```
## Uso 🚀