Existen multitud de proyectos en los cuales puede interesarnos recibir alertas en nuestro teléfono móvil. Por ejemplo cuando un sensor detecta movimiento, agua o humo. Si empleamos una placa que tenga conectividad Wifi o GPRS podemos emplear dicha conexión para enviar mensajes a través de Internet y recibirlos en nuestro teléfono móvil de forma totalmente gratuita. Descubre como hacerlo en este artículo.
La librería de Arduino Universal Telegram Bot.
Si aprendemos a utilizar esta librería nos va a ser muy sencillo adaptarla a nuestros proyectos cuando necesitemos enviar mensasjes a nuestro teléfono móvil. En el siguiente ejemplo vamos a mostrar como enviar un mensaje a nuestro móvil cada 20 segundos. Si modificamos el programa podremos hacer que el mensaje nos llegue cuando se recojan datos de un sensor, por ejemplo. La aplicación encargada de recibir los mensajes en nuestro móvil se llama Telegram. Es una especie de Whatsapp pero con mayores opciones.
Algunos ejemplos de proyectos IoT que funcionan con Telegram para enviarte avisos al móvil.
- Detector de actos vandálicos Wifi. Completamente autónomo, funciona con energía solar.
- Detector de fugas de agua con aviso al móvil. Evita que tu casa se inunde si ocurre una rotura de tuberías.
Aprende Arduino de forma fácil, práctica y rápida gracias a duino.pro. Monta tus propios proyectos de Arduino.
Los datos necesarios para que el experimento funcione
Vamos a necesitar varios datos para configurar el programa y vamos a enseñaros como obtenerlos. Los datos son los siguientes:
- SSID y Password de nuestra red Wifi. Son los credenciales que normalmente usamos para conectarnos al Wifi de nuestra casa u oficina.
- Bot Token
- Chat ID
A continuación os explicamos como obtener el Bot Token y el Chat ID.
Recordad que debeis descargar e instalar la aplicación Telegram en vuestro móvil. Podéis descargarla desde la Google Play Store o en este enlace: https://play.google.com/store/apps/details?id=org.telegram.messenger&hl=es
Como obtener el Bot Token y el Chat ID
En este vídeo os resumimos estos pasos para que podáis verlo claramente.
- Una vez instalada la APP Telegram en nuestro móvil, la abrimos. Presionamos en la lupa y escribimos «BotFather» y entramos.
- Escribir /newbot
- Escribir un nombre para el bot por ejemplo «guardian»
- Escribir lo mismo pero terminado en «bot» por ejemplo «guardianbot»
- Se nos proporcionará una clave o token para acceder a la HTTP API, copiar dicha clave que será nuestro BOT token
- También veremos un enlace que empieza por «t.me/nombre_del_bot» presionamos para entrar.
- Escribimos /start en la ventana de nuestro bot
- Volvemos atrás y de nuevo en la lupa escribimos «IDBot». Entramos.
- Escribimos /start
- Escribimos /getid y apuntamos el número que aparezca que será nuestro CHAT_ID
Modificar el programa y subirlo a nuestra placa
Te recomendamos este modelo de placa. Puedes comprarla aquí.
Este programa está pensado para las placas ESP32 pero podéis utilizarlo en otras placas Arduino que tengan por ejemplo un chip capáz de soportar Wifi como por ejemplo el ESP8266, simplemente deberéis modificar la librería Wifi utilizada.
Si todavía no has instalado el IDE de Arduino o las dependencias necesarias para ESP32 este es el momento adecuado para ello.
Ahora que ya tenemos el Bot Token y el Chat ID podemos modificicar el programa para que se conecte a nuestro Telegram. Vamos a enseñaros un ejemplo que envía un mensaje cada 20 segundos, pero podréis usar estos datos en cualquier otro programa que haga uso de Telegram para enviar mensajes.
Paso 1: Descargar los siguientes archivos .zip y descomprimirlos en «Documentos > Arduino > libraries»
https://github.com/witnessmenow/Universal-Arduino-Telegram-Bot/archive/master.zip
https://github.com/bblanchon/ArduinoJson/archive/5.x.zip
Paso 2: Copiar y pegar el siguiente programa en el IDE de Arduino:
Paso 3: Sustituir las siguientes lineas:
- Debemos modificar estas líneas con los datos anteriormente obtenidos:
#define CHAT_ID «782888438»
#define BOTtoken «640232033:AAEqe4BlVkjMivcuxJ16rfef6g8EMujJiLc»
- Debemos modificar estas líneas con los datos de nuestra red Wifi
char ssid[] = «MiRed»; // your network SSID (name)
char password[] = «Mi_clave_wifi.»; // your network key
Paso 4: Seleccionar la placa y el puerto adecuados y subir el programa.
Si todo ha funcionado correctamente podremos abrir el monitor serie del IDE de arduino desde el menu «Herramientas > monitor serie» para ver los mensajes de diagnóstico.
Tras ello podremos ver que el sistema se conecta a nuestra red Wifi y envía un mensaje a nuestro teléfono.
Posts Destacados
Aprender Arduino es fácil con estos proyectos
Kit completo. Con radar, cámara, conexión Wifi, manual y código fuente.
Kit completo. Capaz de coger objetos, dibujar y aprender movimientos.