Desde que Telegram está en IFTTT, es relativamente sencillo usarlo como sistema de notificaciones de eedomus (para que la familia sepa si la alarma está activada en casa, por ejemplo), y también para dar órdenes (enciende la luz del salón, por ejemplo). Hasta se puede usar la voz recurriendo a la funcionalidad de dictado que incorporan tanto iOS como Android en sus dispositivos móviles.
Hasta aquí todo bien.
Pero conocer el estado de un periférico a través de Telegram, es más complicado porque la API de eedomus nos devuelve los datos en un formato concreto. Lo suyo sería hacerlo a través de un script…
Pero con un poco de imaginación y dando muchas vueltas, la verdad (hay que crear un “flow” y dos “Applet” para conseguirlo por cada consulta de estado…) lo he conseguido hacer con IFTTT+Stringify.
Digo que hay que dar muchas vueltas porque Telegram no está en Stringify, lo que facilitaría mucho las cosas, y cuando invocas a IFTTT desde Stringify no puedes transmitir valores…
Al final lo he hecho de la siguiente manera:
En IFTTT he creado este Applet:
Trigger: Telegram con un mensaje concreto
Acción: Stringify (dispara un flow concreto).
En Stringify he creado un flow con 4 componentes, que podéis ver en la captura adjunta.
Trigger: IFTTT
—> Maker de Stringify que dispara la consulta de la temperatura en el salón mediante la URL que llama a la API de eedomus.
—> Thing Text, para extraer de la respuesta de la API la temperatura y desechar todo lo demás.
—> Gmail para mandar por Gmail (en el asunto) lo que sale del paso anterior, aderezado con el texto “eedomus dice que la temperatura…”
En IFTTT he creado otro Applet:
Trigger: Gmail (recepción de un mail clasificado con una etiqueta concreta)
Acción: Telegram (el mensaje es el asunto del mail anterior).
Nunca conseguí hacer eso únicamente con IFTTT. Como digo, hasta donde yo sé la única forma era recurrir a un script.
Lo tiempos de ejecución no son malos, al menos de momento.
Os adjunto capturas por si os interesa. Y si os hace falta os subiré los detalles de configuración de cada “Thing” en el “Flow” de Stringify.
Buenos días.
Pensaba que desde telegram sólo se podían enviar órdenes a eedomus pero veo que también es posible recibir notificaciones.
¿Podrías por favor decirme cómo se hace?.
Muchas gracias.
Yo he creado un chat de Telegram donde están todos los miembros de la familia y también el bot de IFTTT (en el mensaje inicial el mismo boy te indica como añadirlo a cualquier grupo). Pero no tienes por que hacerlo en un grupo, puede ser en el chat que tienes con el bot.
Luego en eedomus creas un actuador http que llame al maker de IFTTT. Es una URL compuesta por un código que va con el usuario.
O sea que en este caso el Maker de IFTTT lo usas como trigger y no como acción. Sera el IF de tu receta.
Si quieres saber como llamar a maker de IFTTT desde eedomus, en este post lo explico:
Luego vas a IFTTT y creas un Applet con estos servicios:
IF: Maker de IFTTT como te he dicho anteriormente.
Acción: Telegram (Send a text message to a Telegram chat).
No es más complicado que eso. Cada vez que ejecutas en eedomus el actuador http que llama al maker de IFTTT, te sale la notificación en Telegram. Yo lo uso sobre todo para avisar del estado de la alarma en casa.
Te adjunto unas capturas por si te ayudan.
Si te hace falta más ayuda, no tienes más que decirlo
Gracias @Phroc, lo acabo de poner en marcha (Maker (IF) > Telegram (TTT)) y funciona pero con un retraso muy grande. Cuál es tu experiencia en cuanto al “lag”?
Si te refieres a recibir notificaciones en Telegram (lo que le explicaba a @Aly) el lag en mi caso es cero. Cuando pongo la alarma instantáneamente recibo la notificación en el chat de Telegram, y cuando la quito lo mismo.
De más de 10 min. Debo estar haciendo algo mal. Debe ser en el IF (Maker) por que el TTT puede ser cualquier cosa que ese pedazo de lag permanece.
He metido la llamada http que pongo en el IF directamente en un navegador y lo mismo. Eedomus no es el culpable pues da lo mismo que hacerlo a través de un Actuador.
Haré más pruebas y os digo si lo resuelvo.
Donde “Prueba” es como se llama “Event Name” de la receta de IFTTT que he creado previamente para el “IF”.
Donde “d5SUp4mRnLCX-1ODKyDiuc” (cambiado para que no se pueda copiar) es el código que me da IFTTT para mi canal “Maker”.