Mensajero instantáneo para ESPs y Arduinos - Parte 1

Hola a todos

En publicaciones de blog anteriores ya mostramos cómo enviar paquetes MQTT y Gmail con el ESP8266. Enviar y recibir mensajes MQTT es principalmente interesante solo para usuarios domésticos inteligentes y Gmail solo es adecuado para notificaciones push de forma limitada, por lo que quiero mostrar el envío de mensajes de telegrama con el ESP en los siguientes dos artículos.

Hoy hacemos el trabajo preparatorio. Registramos Telegram, creamos un bot, instalamos CURL para Windows y trabajamos con el bot desde la línea de comandos.

En la próxima publicación muestro cómo los microcontroladores pueden implementar esto.

Necesitamos:

  • Tablero ESP8266
  • Smartphone (con número de teléfono móvil para el registro)

 

¿Qué es telegrama?  Telegram es un mensajero instantáneo similar a WhatzApp, pero con algunas diferencias significativas. A diferencia de WhatzApp, Telegram es de código abierto y hay una API (documentada) disponible, también se admiten los llamados "bots". ¿Qué son los bots?Un (ro) bot es un servicio automático que puede enviar y recibir mensajes sin la necesidad de un dispositivo físico o la intervención del usuario.

Registrar cuenta de Telegram:

Se requiere un número de teléfono para crear una cuenta de Telegram. Puede registrarse con una PC o directamente con un teléfono móvil. Después de descargar la aplicación o aplicación, el número se verifica ingresando un código de seguridad (viene por SMS)

Si ha elegido el programa de escritorio, la siguiente ventana se abre después de la verificación:

Todavía no hay contactos almacenados en la libreta de direcciones, por lo que solo se muestra la ventana vacía.

Crear bot:

El bot se crea interactivamente utilizando el "botfather". Para establecer una conexión con Botfather, haga clic en la barra de búsqueda en Telegram e ingrese "Botfather":

Use el botón "Iniciar" para iniciar una conversación con Botfather:

Después ya vemos los comandos con los que podemos crear / configurar / administrar nuestro bot. En principio, el chat se puede usar como una línea de comando. "/ newbot" le dice al padre bot que cree un nuevo bot. A continuación se nos pide el nombre de nuestro bot:

Luego, para el nombre de usuario, para fines de prueba, elegí "azdemobot".

Una vez que se ha creado el bot, recibimos un token para la API. Ahora hemos resumido el Nombre del botla Nombre de usuario  y eso Token.

El token juega un papel central y no debe compartirse con otros usuarios, ya que el titular puede controlar completamente el bot.

Si buscamos nuestro bot, encontramos el servicio que acabamos de crear y podemos iniciar una conversación haciendo clic en el botón "INICIAR":

En nuestro ejemplo, el bot sirve como una interfaz web. Para verificar si todo salió bien, podemos usar la herramienta de línea de comando "curl". Los usuarios de Linux están familiarizados con la herramienta y pueden omitir la instalación.

Para instalar rizo  es necesario almacenar la ruta en la consola para que Windows la reenvíe automáticamente a curl.exe cuando se ingresa el comando curl.

Curl se puede descargar aquí

Dependiendo del sistema operativo utilizado, necesitará la variante de 64 o 32 bits.

Después de descargar y desempacar, movemos la carpeta a: "C: \ Users \ username \ curl"

Ahora tenemos que agregar esta ruta a las variables de entorno del sistema, que puede encontrar en el menú de inicio:

Luego elija Variables de entorno ...

Marque la línea "Ruta" y luego haga clic en "Editar ...", se abrirá una nueva ventana:

Se puede hacer clic en la ruta en el botón "Nuevo" EL ARCHIVO EXE en el directorio bin! agregado por curl:

Hemos instalado curl y podemos usarlo desde la línea de comando:

Ahora podemos probar si el bot que configuramos funciona.

Para trabajar con la API necesitamos la siguiente URL:

Aquí todavía tenemos nuestros datos o el token, así como el Método (es decir, instrucción)  entrar. En nuestro caso, queremos verificar si el bot tiene nuevos mensajes para nosotros. Entonces consultamos "getUpdates" como método:

Y obtenga el siguiente resultado:

 

El área marcada indica que no hay nueva información disponible.

Ahora enviemos un mensaje de telegrama al bot:

Y comience la consulta nuevamente:

Como podemos ver, el "contenido" ha cambiado. Curl también ofrece la opción de guardar esto directamente en un archivo o mostrarlo en diferentes variantes. Si guardamos el contenido en un archivo, el contenido se vería así:

Entonces vemos el mensaje que enviamos, así como información adicional como ID de chat y actualización.

Funciona al revés.

Ingresemos el siguiente comando:

curl -k https://api.telegram.org/bot694546623:AAGIPm0_89TvPFDAiI0LVFS0Egg62845nNo/sendMessage  -d chat_id = 724358638 -d text = "Esa fue la primera parte"

Si el mensaje que enviamos a través de la línea de comando aparece en la ventana de Telegram:

Por supuesto, debe usar su token y la ID de chat que se muestra en la consulta.

Por lo tanto, hemos sentado las bases para poder comunicarse a través de la API utilizando CURL. En la segunda parte del lunes, mostraré cómo esto se puede implementar fácilmente con un ESP.

Hasta mañana :)

Esp-32Precipitador electrostático - 8266Para arduinoProyectos para avanzados.

5 comentarios

Frank

Frank

War ziemlich gut – nur fehlt die Fortsetzung! Bitte Teil zwei veröffentlichen!

rawa

rawa

wo bleibt der 2.Teil !!!

Steffen

Steffen

Würde mich auch über einen 2. Teil freuen!
Viele Grüße

tbretz

tbretz

Wo gibt es den 2. Teil ?

Tonx

Tonx

Hey richtig cool! kanns kaum erwarten heute den zweiten Teil zu lesen!

Deja un comentario

Todos los comentarios son moderados antes de ser publicados

Artículos de blog

  1. Ahora instalamos el esp32 a través de la administración.
  2. Lüftersteuerung Raspberry Pi
  3. Arduino IDE - Programmieren für Einsteiger - Teil 1
  4. ESP32 - das Multitalent
  5. Transporte Aéreo - programación de ESP mediante redes locales inalámbricas