RespiraBot

RespiraBot

Hace ya un año desde que empezó el proyecto CovidEuskadi del que ya os hablamos en este post y para celebrar el aniversario, hemos querido hacer un post explicando cómo creamos el Bot de telegram con el que muchos de vosotros hablasteis (y alguno/alguna hasta se enamoró de él).

Cuando empezamos con el grupo de Covid Gipuzkoa las primeras recogidas se programaron a través de formularios de Google, algo sencillo de hacer pero que obligaban a los participantes a abrir el navegador para introducir manualmente los datos. Además el control en la introducción de datos en muchos de los campos de información no era muy exhaustivo por lo que nos encontramos en muchos casos con direcciones de recogida o teléfonos de contacto erróneos impidiendo a la DYA poder hacer una ruta fluida y lo más rápida posible por el territorio de Gipuzkoa.

form

¿Para qué nos sirve un Bot en este caso?

Se nos ocurrió entonces poner a prueba las habilidades de @mifulapirus con Python y el desarrollo de Bots de Telegram, ya que esta era la herramienta que estábamos utilizando como plataforma de comunicaciones del grupo como ya explico en el vídeo al que hacemos referencia al inicio.

RespiraBot nos facilitaba bastante la captura de datos para organizar la logística de recogida de material y entrega de plástico. Simplemente con iniciar una conversación con @RespiraBot e ir respondiendo a sus preguntas, se generaba la información necesaria que se subía a una hoja de cálculo en Google Drive de la cual podíamos partir para coordinar la recogida del día siguiente con al DYA.

mapa

Con este sencillo Bot conversacional estábamos eliminando la necesidad de que una o dos personas estuvieran dos días repasando los datos y preguntando en el grupo por aquellos a los que les faltaban datos o eran incorrectos.


¿Cómo funciona RespiraBot?

El bot se basa en uno de los ejemplos ofrecidos por el propio equipo de Telegram.

Cuando RespiraBot arranca, espera que alguien comience una conversación con el commando /start, /empezar o simplemente diciendo Vamos. Una vez iniciada la conversación, RespiraBot va haciendo una serie de preguntas y ofreciendo respuestas controladas cuando procede. Una vez llegado al final de la conversación, todas las respuestas se guardan y se suben a la hoja de cálculo preparada por el equipo de logística.

form

En la mayoría de preguntas incluimos respuestas con botones grandes para facilitar la estandarización de las respuestas. Además integramos la posibilidad de utilizar la geolocalización del móvil para dar la dirección o la de compartir tu propio contacto de telegram en vez de escribir el número de teléfono. Por detrás cogíamos el ID único de cada usuario y su nick(si lo tenían público) para cruzar los datos de recogidas y entregas, y así ir calculando la cantidad de bobinas de plástico que “le tocaban” a cada participante.

Aquí puedes ver el diagrama de flujo completo de la conversación de RespiraBot

digrama

Y como no podía ser de otra manera, tienes todo el código en este repo de mifulapirus en github para que puedas crearte tu propio RespiraBot o lo utilices como base para crear otro para un uso diferente. A nosotros se nos ocurren miles de posibilidades como por ejemplo un Bot para programar entregas de Pizzas que tanto nos gustan.

pizza


¿Y todo esto para qué?

Tras uno de los meses más intensos de nuestras vidas, nuestro pequeño Bot pasó de ser un infante a adolescente efervescente y nos ayudó a gestionar más de 15.000 viseras en toda Gipuzkoa fabricadas por aproximadamente 300 personas.

Personas de aquí y de allí que por su propia voluntad y de forma totalmente altruista formaron un pequeño ejército clonador al más estilo rep rap y que nos hacen estar muy orgullosos de la comunidad maker de este país y de esta provincia.

resultados

Tenéis todos los datos públicos de recogidas y entregas por si queréis echarles un vistazo.

¡GRACIAS A TODOS!


Suscríbete, que es gratis

Nota: algunos de los enlaces a productos o servicios pueden ser enlaces referidos con los que podemos obtener una comisión de venta.

Similar Posts