Controlar la Raspberry mediante Telegram
Tabla de contenido
Va mos a ver como usar Telegram para controlar nuestra rpi mediante mensajes. Desde ver la temperatura, hasta actualizar el sistema o reiniciarlo, todo ello de una forma segura, creando un chat privado.
Instalación API de Telegram #
Antes de comenzar con la instalación, nos conectamos mediante ssh a la rpi y actualizamos el sistema:
sudo apt-get update && sudo apt-get upgrade -y
Instalamos los paquetes necesarios
sudo apt-get install python-setuptools
sudo apt-get install python-pip
sudo pip install telepot
sudo apt-get install sysstat
Mediante Git, clonamos el repositorio de la API de Telegram.
sudo git clone https://github.com/eternnoir/pyTelegramBotAPI.git /opt/pyTelegramApi
Cambiamos el propietario del directorio /opt/pyTelegramApi
para no tener problemas de acceso.
sudo chown -R pi:pi /opt/pyTelegramApi
Instalamos:
cd /opt/pyTelegramBotApi
sudo python setup.py install
Obteniendo Token y crear Bot #
El primer paso, es dirigirnos a @BotFather, es un Bot creado por Telegram para crear y administrar nuestros bots, e iniciamos una conversación con ól.

Le damos a Iniciar y escribimos /newbot
Nos preguntará por el nombre que le vamos a dar al bot, en mi caso mirpibot y el nombre de usuario, que debe de acabar en bot.

Con esto ya tendremos creado nuestro bot, recibiremos un mensaje con el token del bot para poder usar la API de programas de Telegram.

Obteniendo ID #
Necesitamos saber nuestro ID en Telegram, que es un el identificador único de nuestro usuario de Telegram, para obtenerlo, nos vamos a Telegram y buscamos el bot @myidbot

Le damos a iniciar y tras recibir el mensaje de bienvenida escribimos /getid

Programar el bot #
Si buscas por Internet encontraras multitud de bots ya programados, yo he utilizado el que encontró en https://www.fwhibbit.es/controla-tu-raspberry-pi-mediante-telegram y le he hecho unos pequeños cambios para adaptarlo a mi gusto. te recomiendo que pases por su pagina y leas el articulo, gracias a ól hice mis modificaciones.
Mi bot lo he subido a github por si lo quieres usar.
Unicamente hay que editar el fichero rpi_bot.py
nano rpi_bot.py
y rellenar los campos TOKEN e ID con los valores que hemos obtenido anteriormente y grabar los cambios.
TOKEN = 'tu token' # Entre comillas
ID = tu ID # Sin comillas
A mi me gusta tener estas cosas en /opt, por lo que me creo una carpeta y copio el bot
sudo mkdir /opt/bots
cd /opt/bots
sudo cp -r /media/pi/Nas_01/rpi_bot.py .
Y le doy permisos de ejecución para poder trabajar con mi usuario
sudo chown -R pi:pi /opt/bots
Arrancando el bot #
Ponemos en marcha el bot con la siguiente orden:
python rpi_bot.py
Inicio del bot en el arranque #
Existe un fichero en /etc/rc.local
que se ejecuta al final del arranque del sistema y ejecuta el comando o script que pongamos en su interior.
Por lo que editamos el fichero /etc/rc.local
y añadiremos la ruta de nuestro fichero:
sudo nano -w /etc/rc.local
Aunque cuando edites el fichero lo verás, es importante poner el fichero que se va a ejecutar antes del exit 0
/usr/bin/python /opt/bots/rpi_bot.py
exit 0
Y con esto ya hemos terminado, ya tenemos un bot para controlar la rpi desde telegram, además el bot se ejecuta cada vez que arranque la rpi, genial!!!
Espero que te haya gustado, pasa un buen día. 🐧