43 lines
3.4 KiB
Markdown
43 lines
3.4 KiB
Markdown
# wallamanta
|
|
|
|
## Instalación y ejecución
|
|
|
|
Crea un bot en Telegram a través de [@Botfather](https://t.me/botfather), guárdate el token generado y abre una conversación con él. Obtén tu ID de chat hablándole a [@myidbot](https://t.me/myidbot) y escribiéndole `/getid`.
|
|
|
|
Rellena el archivo `.env` (puede que esté oculto, pero está ahí, al lado del `docker-compose.yml`!) con los valores que has obtenido para `TELEGRAM_CHANNEL_ID` y para `TELEGRAM_TOKEN`, en `LATITUDE` y `LONGITUDE` pon tus coordenadas aproximadas (con punto `.`) y en `SLEEP_TIME` el tiempo en segundos que desees entre peticiones a Wallapop (no pongas 1 segundo, que nos conocemos).
|
|
|
|
Ejecuta `docker-compose up -d` para arrancar el bot, puedes consultar los logs con `docker logs wallamanta-bot -f` si no le has cambiado el nombre en el `docker-compose.yml`.
|
|
|
|
## Instrucciones de uso
|
|
|
|
Para interactuar con el bot, una vez esté ejecutado, abre la conversación con él. Tienes disponibles los siguientes comandos:
|
|
|
|
* `/help` - Muestra una ayuda básica con algún ejemplo
|
|
* `/add` - Añade un producto al seguimiento, úsalo con `/add nombre del producto;precio_mínimo;precio_máximo` para un seguimiento básico. Si quieres un seguimiento más específico, tienes los siguientes campos disponibles (los campos opcionales no hace falta ponerlos, pero si quieres poner los del final, tienes que dejar los anteriores vacíos):
|
|
- nombre del producto (requerido) - puede contener espacios
|
|
- precio mínimo del producto (requerido) - en €
|
|
- precio máximo del producto (requerido) - en €
|
|
- excluir palabra/s del título (opcional) - separadas por coma, pueden incluir espacios (ejemplo: `/add placa base;0;100;itx,lga 1150`)
|
|
- excluir palabra/s del título y la descripción (opcional) - igual que el anterior
|
|
- latitud (opcional) - específica para ese producto
|
|
- longitud (opcional) - específica para ese producto
|
|
- distancia (opcional) - en km
|
|
|
|
* `/list` - Lista los productos en seguimiento, si quieres ver los detalles de un producto en concreto escribe `/list nombre del producto`
|
|
* `/remove` - Borra un producto del seguimiento, para usarlo escribe `/remove nombre del producto` (tal y como aparece en la lista)
|
|
|
|
Cuando un artículo esté en seguimiento, el bot hará una primera búsqueda en la que no mostrará nada, pero se guardará los resultados de forma interna. Cada `SLEEP_TIME` segundos volverá a realizar la misma búsqueda y si ve que ha aparecido un producto que antes no estaba, lo mostrará en el chat de Telegram que hayas indicado, siempre que cumpla con las condiciones especificadas al añadirlo.
|
|
|
|
## Ejemplos
|
|
|
|
Si te interesa una placa base, pero no quieres que el título contenga las palabras `itx` o `lga 1150`, pero te da igual lo que haya en la descripción y quieres que esté como mucho a 100km de tus coordenadas por defecto:
|
|
|
|
`/add placa base;0;100;itx,lga 1150;;;;100`
|
|
|
|
## Datos guardados
|
|
|
|
El bot guarda automáticamente la lista de productos en seguimiento en `data/products.json`, por lo que si tienes que reiniciar o recrear el bot, los productos que tuvieras en seguimiento seguirán ahí.
|
|
|
|
## Actualización
|
|
|
|
Si necesitas actualizar el bot, vuelve a descargarte el repositorio (o actualízalo con un `git pull` ;) ) y haz un `docker-compose build`, luego vuelve a hacer un `docker-compose up -d` y ya tendrás la nueva imagen corriendo. ¡Vigila con los archivos `.env` y `data/products.json` para no perder los datos que tenías! |