En las últimas semanas he retomado un par de ideas que tuve hace algunos años:
- por un lado la idea de hacer un Bot con el que hacer operaciones a través de comandos específicos. En concreto me gustaría hacer poder realizar comandos de inversión en bolsa (de manera ficticia)
- por otro lado desplegar la aplicación en un móvil con Termux (emulador de Linux para Android)
Así que os cuento los pasos que he hecho para realizar estas tareas.
Creación de Bot con Telegram
Busca el contacto @BotFather (es el bot oficial de Telegram para crear otros Bots).
Pulsa en Iniciar o escribe /start para comenzar.
Escribe el comando: /newbot
BotFather te pedirá que le pongas un nombre visible a tu Bot. Ejemplo:
Nombre: MiBotJava
Luego te pedirá un username único que termine en Bot. Ejemplo:
Username: MiBotJava_bot
Si el nombre de usuario está disponible, te dará un mensaje de éxito.
Obtén el token
Después de crear el Bot, BotFather te dará un mensaje como este:
Done! Congratulations on your new bot. You will find it at t.me/MiBotJava_bot.
Use this token to access the HTTP API:
123456789:ABCdefGHIjklMNOpqrSTUvwxYZ
¡Este token es lo que necesitas en tu código Java! Guárdalo y no lo compartas.
Código para la creación de un Bot con eco
Esta parte la he subido a mi cuenta de Github, en concreto a este repositorio:
Si lo quieres utilizar solo tienes que hacer un "git clone", editar el fichero bot.properties:
bot.username=tecnificados_bot
bot.token=TU_TOKEN_REAL_AQUI
Guarda los cambios, vuelve al directorio principal, lanza un "maven clean package" y ya tendrás en el directorio target un jar con todas las dependencias para lanzarlo.
Cualquier texto que envíes al bot, te será devuelto, complicación zero.
Pruebas y conclusiones
He estado 5 días con el Termux levantado las 24 horas y con el bot escuchando las peticiones, les pedí ayuda a mis compañer@s del gimnasio para que le dieran caña, y la verdad es que no he notado ninguna variación a nivel de bateria y rendimiento del móvil también es el mismo.
Voy a intentar seguir evolucionando el proyecto y os iré comentando.
Próximo objetivo utilizar https://supabase.com/
Nos vemos pronto!