Ver la Versión Completa : [ CONSULTA ] Controlar relé Wifi desde tasker
clarividente
25/11/19, 12:44:12
Hola, tengo interés en controlar un relé que está conectado al Wifi. Normalmente estos relés se controlan con una app llamada eWeLink y algunos con la app Smart Life. He estado buscando pero no encuentro ninguna manera de conectar tasker a dichas aplicaciones. Mi pregunta es, hay algún relé Wifi que se pueda controlar desde tasker?. O, hay alguna forma de controlar eWeLink o Smart Life desde tasker?
WillyWeb
25/11/19, 22:10:42
... hay algún relé Wifi que se pueda controlar desde tasker?
Directamente, lo dudo. Puede que a través de un plugin sí se pueda, pero sigue leyendo porque existe otra forma.
... hay alguna forma de controlar eWeLink o Smart Life desde tasker?
Sí. Puedes creas un Webhook en IFTTT y activarlo con una acción HTTP de Tasker.
https://ifttt.com/maker_webhooks
Me suena que esto ya lo hemos tratado antes. Busca "webhook" y seguro que lo encuentras.
EDITO
Ahora que lo pienso, creo que esto no lo hemos tocado aquí. Puede que fuese en Reddit. :rolleyes:
En cualquier caso no es nada complicado, pero si te atascas vuelve y lo miramos.
clarividente
26/11/19, 13:26:48
Gracias WillyWeb, lo investigaré. La idea es conectar y desconectar una calefacción antigua desde el teléfono movil
clarividente
26/11/19, 19:59:55
He estado investigando y creo que entiendo el mecanismo. Tasker envía un web request a IFTTT y éste activa el relé a través de eWeLink.
De todas formas el uso de tasker no es imperativo para mi. Supongo que con IFTTT solo sin tasker es suficiente, no?. La idea es que el relé se active cuando esté conectado a una determinada red Wifi o por geolocalización y se desactive en caso contrario y también por la noche independientemente de la condición anterior. O sea, que la calefacción se conecte solo si estoy en casa durante el día. Ésto tasker lo hace muy bien desde luego pero no se si merece la pena utilizar tantas aplicaciones.
WillyWeb
26/11/19, 21:05:05
He estado investigando y creo que entiendo el mecanismo. Tasker envía un web request a IFTTT y éste activa el relé a través de eWeLink.
Correcto. IFTTT se comunica directamente con los servidores de lo que sea (eWeLink en este caso) y hace todo el trabajo sin que te enteres.
De todas formas el uso de tasker no es imperativo para mi. Supongo que con IFTTT solo sin tasker es suficiente, no?.
Podría ser. A fin de cuentas la aplicación de IFTTT es algo así como un Tasker reducido. Pero puestos a eliminar aplicaciones, Tasker no sería mi primera opción.
...no se si merece la pena utilizar tantas aplicaciones.
Yo no uso la aplicación de IFTTT para nada. Configuro todo directamente en la web y uso los webhook en Tasker o directamente como atajos en el escritorio. Y tampoco uso eWeLink. Tengo instalada la aplicación, pero la tengo siempre "detenida".
clarividente
26/11/19, 21:39:09
Y tampoco uso eWeLink.
Pero conectas con relés o dispositivos Wifi? Si es así, como lo haces?
clarividente
26/11/19, 21:42:15
Yo no uso la aplicación de IFTTT para nada
Bueno, supongo que yo puedo hacer lo mismo. Una vez haya configurado la url ya no necesito IFTTT
Y tampoco uso eWeLink
Pero conectas con reles Wifi o dispositivos similares? Si es así, como lo haces?
WillyWeb
26/11/19, 21:57:58
Bueno, supongo que yo puedo hacer lo mismo. Una vez haya configurado la url ya no necesito IFTTT
Así es.
Pero conectas con reles Wifi o dispositivos similares? Si es así, como lo haces?
Tengo un par de enchufes y varios relés compatibles con eWeLink. En su momento usé la aplicación para añadir esos dispositivos a mi cuenta, y luego vinculé la cuenta con IFTTT y Google Home. Lo hago todo con el Asistente, Home y Tasker.
clarividente
28/11/19, 20:39:06
Bueno, ya lo he configurado y funciona con una excepción. He creado dos tareas, ReleOn y ReleOff. Ambas funcionan correctamente cuando las ejecuto manualmente o como tarea principal de un perfil. Sin embargo, cuando las configuro como tarea de salida ninguna de las dos hace nada. Hay algún parámetro que pueda estar mal configurado?
WillyWeb
28/11/19, 20:49:43
Hay algún parámetro que pueda estar mal configurado?
Podría ser. :rolleyes:
Si pones aquí la descripción del proyecto [exportar descripción al portapapeles y pegar aquí] lo podemos mirar con calma.
clarividente
28/11/19, 21:35:35
Ahí va. He sustituido mi llave de IFTTT por el string "llave". Supongo que no es necesaria. También he añadido la extension txt al fichero porque sino no me deja subirlo.
WillyWeb
28/11/19, 22:18:23
Ahí va...
No. Así no me vale. Te lo puse antes ... Exportar > Descripción al Portapapeles
Lo que has exportado es la versión XML del proyecto.
Sigue estas instrucciones...
https://www.htcmania.com/showthread.php?t=615896
PD: Y sí. Quita la clave de IFTTT.
clarividente
29/11/19, 09:26:49
Perfil: Cale On Dia (6)
Estado: Conectado a Wifi [
SSID:miCasa_24EXT//miCasa_5EXT//miCasa//miCasa5 MAC:* IP:* Activo:Cualquiera ]
Hora: Desde 08:00 Hasta 00:00
Entrada: ReleOn (7)
A1: HTTP Request [ Method:GET
URL:https://maker.ifttt.com/trigger/ReleOn/with/key/clave
Headers: Query Parameters: Body: File To Send: File To Save With Output:
Cuenta atrás (segundos):30 Confiar en cualquier Certificado:Apagado ]
Salida: ReleOff (11)
A1: HTTP Request [ Method:GET
URL:https://maker.ifttt.com/trigger/ReleOff/with/key/clave
Headers: Query Parameters: Body: File To Send: File To Save With Output:
Cuenta atrás (segundos):30 Confiar en cualquier Certificado:Apagado ]
Espero que ahora sea correcto. Gracias por la ayuda.
Una idea que se me ha ocurrido es que al ser los dos comandos muy parecidos (ReleOn y ReleOff) quizá se genera algun error si hay queries tipo like por medio en algún punto. Puede ser?. Edito: He probado ha cambiar a Encendido y Apagado en IFTTT en lugar de ReleOn y ReleOff pero el problema persiste.
Vuelvo a editar:
He probado a cambiar también los nombres de las tareas en tasker a Encendido y Apagado y parecía que se solucionó el problema porque funcionó bien algunas veces. Luego he desinstalado IFTTT del teléfono ya que la configuración de IFTTT la he hecho desde un pc y ha vuelto a fallar aunque no creo que sea por desinstalar IFTTT del teléfono, no? De echo lo he vuelto a instalar y loginear y el problema sigue igual.
Otra cosa que he observado es que ambos Webhook Encendido y Apagado no funcionan desde IFTTT.
WillyWeb
29/11/19, 11:15:24
Yo dejaría el parámetro SSID del estado "Conectado a Wifi" asi...
miCasa_24EXT/miCasa_5EXT/miCasa/miCasa5
Esas barras tienen un significado muy concreto y poner dos puede ser contraproducente. En el resto no veo motivo para que no funcione, ni nada de lo que has intentado debería tener relación. :rolleyes:
Otra cosa que he observado es que ambos Webhook Encendido y Apagado no funcionan desde IFTTT.
Hombre, pues si eso ya no funciona mal vamos. :silbando:
He mirado mis webhooks por si veía algo que me diese una pista y resulta que tengo hechos dos muy parecidos a los que tú intentas crear...
https://maker.ifttt.com/trigger/termostato-on/with/key/mi-clave-webhook
https://maker.ifttt.com/trigger/termostato-off/with/key/mi-clave-webhook
https://maker.ifttt.com/trigger/ReleOn/with/key/tu-clave-webhook
https://maker.ifttt.com/trigger/ReleOff/with/key/tu-clave-webhook
Tú has puesto alguna mayúscula y yo lo pongo todo en minúsculas. No te garantizo que ese sea el problema, pero poco pierdes por probar (no es la primera vez que me encuentro un servidor web un poco "puntilloso" con las URLs).
Pon el "Event Name" de IFTTT en minúsculas para que las URLs queden así...
https://maker.ifttt.com/trigger/rele-on/with/key/tu-clave
https://maker.ifttt.com/trigger/rele-off/with/key/tu-clave
:palomitas:
clarividente
29/11/19, 12:35:20
Gracias por la ayuda WillyWeb. He quitado las dobles barras y he puesto todo en minúsculas pero el problema persiste. Lo de que los Webhooks no funcionen desde IFTTT no lo entiendo porque desde tasker sí que funcionan por lo menos ejecutando las tareas manualmente. A mi es que ésto de los web services siempre me ha parecido una solución muy inestable. Yo he trabajado muchos años en proyectos informáticos y no fallaba que cuando un proyecto incluía web services era un proyecto problemático.
Por cierto, tengo un proyecto en tasker parecido a éste para bajar el volumen de las notificaciones cuando estoy fuera de casa y funciona sin problemas.
Edito: Esta claro que tiene un funcionamiento errático. Me ha pasado un par de veces que de repente se arregla y funciona bien y al cabo de un rato deja de funcionar. Hay alguna alternativa al Webhook?
Edito de nuevo: He encontrado la causa del problema. He probado utilizando "Ubicación" en lugar de "Conectado a Wifi" y funciona correctamente. Luego he probado con "Wifi cercana" y también funciona. Supongo que lo que pasa al utilizar "Conectado a Wifi" es que la URL se envía inmediatamente al perder la conexión Wifi y, en este caso, supongo que hay un breve período de tiempo sin conexión hasta que el móvil se conecta a la red telefónica. Como la URL se envía en este lapso, el envío falla. Ésto también explicaría que alguna vez funcione pues este lapso de tiempo debe ser variable según lo que tarda el móvil en conectar a la red. Al utilizar "Wifi cercana" la detección o pérdida del Wifi no ocurre al mismo tiempo que la conexión o desconexión por lo que la URL se envía correctamente en este caso.
Perdón por el tocho.
WillyWeb
29/11/19, 19:56:44
Supongo que lo que pasa al utilizar "Conectado a Wifi" es que la URL se envía inmediatamente al perder la conexión Wifi y, en este caso, supongo que hay un breve período de tiempo sin conexión hasta que el móvil se conecta a la red telefónica.
Me ha fallado la bola de cristal, porque la pista estaba a la vista ... :pensando:
He creado dos tareas, ReleOn y ReleOff. Ambas funcionan correctamente cuando las ejecuto manualmente o como tarea principal de un perfil. Sin embargo, cuando las configuro como tarea de salida ninguna de las dos hace nada.
Bueno. Bien está lo que bien acaba. Me alegro de que ya te funcione y de que dieras con la causa. :D
clarividente
29/11/19, 20:35:29
Así es. Muchas gracias por la ayuda.
clarividente
01/12/19, 13:21:30
Bueno, al final he tenido que desistir de utilizar la función "Wifi cercano". El problema es que no se detecta que el wifi ya no está cercano si el teléfono está bloqueado con la pantalla apagada. Con el teléfono activo no hay problema pero bloqueado no he conseguido que funcione. El teléfono es un Xiaomi MI9 con Android 10 y MIUI 11.
O sea que he vuelto a la función "Wifi conectado". La solución era tan simple como añadir una acción "Esperar 1 minuto" antes del "HTTP request" en la tarea de salida. No se me ocurrió antes porque soy novato en Tasker y no sabía que se podían ejecutar varias acciones en la misma tarea. Al final el perfil funciona bien y quedó como sigue:
Perfil: Cale Wifi (17)
Estado: Conectado a Wifi [
SSID:miCasa_24EXT/miCasa_5EXT/miCasa/miCasa5 MAC:* IP:* Activo:Cualquiera ]
Entrada: Encendido (8)
A1: HTTP Request [ Method:GET
URL:https://maker.ifttt.com/trigger/encendido/with/key/clave
Headers: Query Parameters: Body: File To Send: File To Save With Output:
Cuenta atrás (segundos):30 Confiar en cualquier Certificado:Apagado ]
Salida: Apagado (10)
A1: Esperar [ MS:0 Segundos:0 Minutos:1 Horas:0 Días:0 ]
A2: HTTP Request [ Method:GET
URL:https://maker.ifttt.com/trigger/apagado/with/key/clave
Headers: Query Parameters: Body: File To Send: File To Save With Output:
Cuenta atrás (segundos):30 Confiar en cualquier Certificado:Apagado ]
WillyWeb
01/12/19, 13:57:38
Bueno, al final he tenido que desistir de utilizar la función "Wifi cercano". El problema es que no se detecta que el wifi ya no está cercano si el teléfono está bloqueado con la pantalla apagada.
Sí que funciona. Yo lo uso habitualmente. Lo que pasa es que el tiempo de reacción puede llegar a ser demasiado largo. Revisa lo que pone en "Preferencias > Monitor > Monitoreo con Pantalla Apagada". En la documentación dice que Tasker espera hasta "dos" periodos para determinar que el wifi realmente ya no está cerca.
Con el teléfono activo no hay problema pero bloqueado no he conseguido que funcione.
Puede que debas revisar los ajustes de Android para asegurarte de que Tasker funciona correctamente en todas las circunstancias.
Mira la primera pregunta de esta lista...
https://tasker.joaoapps.com/userguide/en/faqs/faq-problem.html
Y esto también te puede ayudar...
https://www.htcmania.com/showthread.php?t=1176026
La solución era tan simple como añadir una acción "Esperar 1 minuto" antes del "HTTP request" en la tarea de salida. No se me ocurrió antes porque soy novato en Tasker y no sabía que se podían ejecutar varias acciones en la misma tarea.
Pensaba que esa solución te resultaría bastante evidente una vez descubierto el motivo del fallo. Perdona por no sugerirlo antes. En cualquier caso, mira el lado positivo. Has conseguido hacer lo que querías y has aprendido cosas nuevas. :D
Gracias por compartir la solución. :ok:
clarividente
02/12/19, 11:56:55
Pues sí, he aprendido un montón. De echo ya he modificado el programa para que la tarea de salida espere para enviar la url a que el móvil esté conectado a la red de datos en lugar de esperar un minuto. De esta manera me aseguro de que no se envíe antes de tiempo en caso de que por alguna razón la conexión se retrase.
Lo que no entiendo es porque tasker y eWeLink no sacan un plugin o lo que sea para integrar las dos aplicaciones directamente sin necesidad de IFTTT.
De nuevo gracias por la ayuda.
WillyWeb
02/12/19, 14:51:06
Lo que no entiendo es porque tasker y eWeLink no sacan un plugin o lo que sea para integrar las dos aplicaciones directamente sin necesidad de IFTTT.
Lo ideal sería que los amigos de eWeLink proporcionasen un API pública que permitiese controlar los dispositivos sin necesidad de aplicaciones, servicios de terceros o modificaciones de firmware. Hace más o menos un año ya había mucha gente interesada en el tema, pero no encontré nada más que intentos particulares a base de ingeniería inversa y dejé el tema para un mejor momento que no termina de llegar ... no me llega vida ;-). El caso es que un API sí debe existir, porque IFTTT y Google controlan los dispositivos directamente con una simple validación de credenciales, pero me temo que no es pública.
Caravantes
13/12/21, 00:28:38
Lo que no entiendo es porque tasker y eWeLink no sacan un plugin o lo que sea para integrar las dos aplicaciones directamente sin necesidad de IFTTT.
Efectivamente, yo estaba pensando lo mismo.
Ya he visto que Willy ha respondido de forma negativa, pero... Esa respuesta es de hace dos años, y puede que en este tiempo la situación haya variado haciendo las cosas más fáciles.
Vengo de otro hilo
Los precios de la electricidad, hora a hora (https://www.htcmania.com/showthread.php?p=33388244#post33388244). https://www.htcmania.com/showthread.php?p=33388244#post33388244
Ahí, el compañero Willy nos explica (de forma muy resumida) cómo podríamos -desde Tasker- manejar un enchufe inteligente:
¿Con qué? Con un enchufe compatible con Tuya o Smart Life (son básicamente lo mismo)...
¿Cómo? Con algún perfil de hora y sus correspondientes variables que marquen el momento de encendido/apagado.
Yo tengo un enchufe inteligente que funciona con Smart Life. Desde el smartphone puedo encender o apagar, manualmente. Ok.
Lo fácil sería que Tasker integrase algún plugin a través del cual una acción de Tasker pudiera darle la orden a Smart Life, y a partir de ahí que Smart Life haga lo mismo (encender o apagar) que cuando yo le doy la orden manual a esa app. Pero parece que no; por lo que leo en este hilo, la cosa es bastante más complicada. Hay que pasar por aplicaciones o servicios de terceros. En la práctica, hay que pasar por IFTTT.
Sin embargo, Smart Life aporta una pantalla con información que tal vez pudiera ser útil para afrontar el problema directamente, si es que alguien sabe cómo aprovechar esta información, tal vez para lanzar un "comando" directo al dispositivo. ¿Creeís que sería posible?
1402512
WillyWeb
13/12/21, 07:54:33
Esa respuesta es de hace dos años, y puede que en este tiempo la situación haya variado haciendo las cosas más fáciles.
Pues siento decir que no. La integración entre IFTTT y eWeLink ahora requiere una cuenta premium (https://vip.ewelink.cc/spain) de pago por suscripción. Dudo que en estas circunstancias "regalen" un plugin que nos facilite la vida.
Smart Life aporta una pantalla con información que tal vez pudiera ser útil para afrontar el problema directamente, si es que alguien sabe cómo aprovechar esta información...
¿Has probado a poner esa IP en el navegador web de un dispositivo conectado a la misma red?
Caravantes
15/12/21, 22:56:46
¿Has probado a poner esa IP en el navegador web de un dispositivo conectado a la misma red?
Sip. No puedo conectar, el dispositivo no responde. Despues de intentarlo durante un ratito, el navegador, literalmente dice: "Problema al cargar la página. La conexión ha caducado. El servidor está tardando demasiado en responder."
WillyWeb
16/12/21, 07:23:49
Era lo esperado. El firmware por defecto no suele llevar un servidor web integrado y solo responde a los comandos que le llegan desde los servidores que Tuya o Smart Life.
Caravantes
17/12/21, 23:00:31
El firmware por defecto no suele llevar un servidor web integrado y solo responde a los comandos que le llegan desde los servidores que Tuya o Smart Life.
O sea que, por lo que sabemos, la única opción es una cuenta eWeLink Plan Avanzado (10 dólares anuales). ¿Correcto?
He estado husmeando un poco y (no estoy seguro de entender bien) quizá haya una alernativa utilizando Home Assistant, según interpreto en
https://www.rogerfrost.com/control-a-sonoff-switch-from-home-assistant-using-ifttt/
https://www.reddit.com/r/ifttt/comments/hp7274/problema_with_ewelink/
https://community.home-assistant.io/t/use-ifttt-trigger-for-sonoff-switch/34357/3
WillyWeb
18/12/21, 06:53:16
O sea que, por lo que sabemos, la única opción es una cuenta eWeLink Plan Avanzado (10 dólares anuales). ¿Correcto?
No necesariamente. Puedes combinar Webhooks y Smart Life en IFTTT. Se integra bien en Tasker y es gratis.
Caravantes
19/12/21, 00:59:58
Puedes combinar Webhooks y Smart Life en IFTTT. Se integra bien en Tasker y es gratis.
Vale, eso es de lo que hablan los primeros mensajes de este hilo. Pensé que esa opción ya no funcionaba, deduzco que lo deduje incorrectamente.
Aunque está explicado en los primeros mensajes del hilo (incluso con la transcripción de la tarea), no acabo de entender cómo hacerlo.
Además mi caso es ligeramente distinto porque el primer dispositivo que quiero controlar es un termostato.
https://www.amazon.es/gp/product/B07KJD4ZX7/ (https://www.htcmania.com/g.php?url=https%3A%2F%2Fwww.amazon.es%2Fgp%2Fprodu ct%2FB07KJD4ZX7%2F)
Desde la app Smart Life puedo controlar la temperatura a la que quiero que funcione este termostato (y he establecido un rango de temperaturas de 2 a 23 grados). Bajo la temperatura a 2 cuando quiero que el radiador se apague, y la subo a 20 o a 22 cuando quiero que el radiador mantenga la habitación "calentita". Funciona bien, en plan manual, y de momento no he necesitado más.
Supongo que para automatizar debo hacerme una receta IFTTT que ponga la temperatura a 22 grados, y otra receta IFTTT para que ponga la temperatura a 2 grados cuando corresponda.
Veamos hasta dónde soy capaz de avanzar.
Instalo la app IFTTT en el smartphone, y me identifico con mi usuario y contraseña correspondientes.
Me creo en IFTTT una receta en la que yo pueda activar/desactivar fácilmente el disparador:
If smartphone conectado a un dispositivo bluetooth (cualquiera, supongo)
then
Smart Life
Set AC temperature
[aquí tengo que conectar las dos apps, IFTTT y Smart Life (pide usuario y contraseña de esta última) y autorizar para que IFTTT controle los dispositivos. Ok, autorizo.
En la siguiente pantalla, lo primero que me pide es "Which device/group"; en la lista de opciones que supuestamente debo elegir aparece "Cargando". Supongo que sea porque de momento en Smart Life no tengo escenas ni habitaciones. Dejo este primer item sin concretar, y espero que con los dos siguientes sea suficiente:
"Turn on first?", pongo Yes; "Temperature", pongo 22 grados. Continuar.
No funciona. Me insiste en que debo seleccionar "Which device/group" donde no tengo opciones, como ya he explicado; quizá deba configurar una escena, una habitación o alguna otra cosa.
¿Alguien sabe por dónde debo seguir?
WillyWeb
19/12/21, 11:25:06
He instalado la aplicación de IFTTT (yo siempre uso la web) y vamos a crear un applet sencillo para verificar que IFTTT es capaz de controlar un dispositivo Smart Life...
Abres la aplicación IFTTT y te identificas si no lo habías hecho ya.
Pulsas el botón "Crear" y se muestra la pantalla de creación de applets.
Pulsas el botón "Añadir" junto al texto "If This" y se muestra la lista de selección de servicios.
En la lista de servicios buscas "button" y seleccionas el que tiene título "Button widget" (botón rojo).
Este servicio solo tiene un disparador que se llama "Button press". Lo seleccionas.
Vuelves a la pantalla de creación del applets.
Pulsas el botón "Añadir" junto al texto "Then That" y se muestra la lista de selección de servicios.
En la lista de servicios buscas "Smart Life" y lo seleccionas. Se abrirá su lista de selección de acciones.
En esa lista prueba con "Turn on" o "Trun off" para encender/apagar dispositivos o "Activate Scene" para activar una de las escenas que tengas creada en la aplicación de Smart Life.
Supongamos que has seleccionado "Turn on". Se abrirá la ventana de selección de dispositivos compatibles con esa acción (turn on). Espera a que se cargue la lista "Which device/group?" y selecciona el dispositivo que quieras encender. Pulsa el botón "Continuar".
Vuelves a la pantalla de creación del applets. Pulsa el botón "Continuar".
Pon un nombre descriptivo al applet... "Encender lo-que-sea" y pulsa el botón "Terminar".
El applet que acabas de crear debería aparecer en la lista, pero no lo puedes usar desde ese sitio. Cierra la aplicación IFTTT y añade un widget a tu escritorio. Busca IFTTT (botón pequeño 1x1) y selecciona el applet de antes. Acepta lo que haga falta y ya lo tienes. Haz pruebas para ver si tu enchufe/termostato se puede encender/apagar de esa forma, si lo puedes controlar cambiando la temperatura, o es mejor hacerlo con una escena.
Cuando tengas eso controlado ya puedes crear un nuevo applet que en vez de dispararse con un "button" se dispare con un "webhooks". La URL que genera un "Webhooks" es la que tienes que usar en la tarea de Tasker.
:palomitas:
Caravantes
20/12/21, 22:08:08
Willy, muchas gracias por tu ayuda.
En la lista de servicios buscas "Smart Life" y lo seleccionas. Se abrirá su lista de selección de acciones. En esa lista prueba con "Turn on" o "Trun off" para encender/apagar dispositivos
Elijo "Turn On" pero no funciona: "Not all Smart Life devices are supported by this service."
No me sorprende. Este termostato no tiene opción de apagado. Tiene tres modos de funcionamiento: manual (elijo manualmente la temperatura), programado (se pueden establecer programas con temperaturas específicas a diferentes horas, e incluso permite programar de forma distinta los fines de semana, si quieres) y por último tiene el modo "vacaciones" (he investigado un poco pero no he conseguido averiguar con certeza lo que hace este modo vacaciones). Yo lo uso en modo manual, pero normalmente solo elijo dos opciones: 22 grados o bien 2 grados para cuando quiero que no funcione: es el equivalente a "off" o radiador apagado.
... o "Activate Scene" para activar una de las escenas que tengas creada en la aplicación de Smart Life.
Bueno, vale. He tenido que estudiarme el tema de las escenas (no sabía qué era eso) y me he creado dos escenas que se llaman "22 grados" y "2 grados". He comprobado que ambas escenas funcionan correctamente, cada una pone el termostato en esa temperatura.
Luego he creado las dos recetas IFTTT ambas con el disparador "button" y asociadas a las respectivas escenas. Al crear la receta IFTTT, en la última pantalla hay un botón-opción que me permite añadir directamente el widget en la pantalla de inicio, superfacil. Y sí, al pulsar esos widgets veo que la temperatura del termostato se ajusta a 22 y 2 grados respectivamente. Ok.
De forma muy sorpendente, IFTTT me dice que no funcionará si no le doy acceso a la ubicación del dispositivo. No entiendo por qué necesita saber la ubicación del termostato; me parece un poco abusivo que quieran saber eso, que no es imprescindible para el servicio. Concedo el permiso porque sin él parece que IFTTT no funciona. Grrrr.
Continuemos.
Cuando tengas eso controlado ya puedes crear un nuevo applet que en vez de dispararse con un "button" se dispare con un "webhooks". La URL que genera un "Webhooks" es la que tienes que usar en la tarea de Tasker.
Creo que puedo abreviar editando las recetas que ya tengo, cambiando el disparador "button" por "Webhooks". En la configuración de este disparador me dice...
Integrate other services en IFTTT with your DIY proyects. You can create Applets that work whith any device OR app than can make or recibe a web request. If you'd like to uild your own service and Applets, check out the IFTTT platform.
Integre otros servicios en IFTTT con sus proyectos de bricolaje. Puede crear Applets que funcionen con cualquier dispositivo o aplicación que pueda realizar o recibir una solicitud web. Si desea crear su propio servicio y Applets, consulte la plataforma IFTTT.
Y las opciones son:
- Recibe a web request with a JSON playload.
- Recibe a web request.
Elijo la segunda.
Me pide e me conecte a Webhooks para continuar. No tenía ni idea de que Webhooks fuera otro servicio independiente, pero parece que no tengo que darme de alta ni nada. This trigger fires every time the Maker service receives a web request to notify it of an event. For information on triggering events, go to your Maker services settings and then the listed URL (web) or tap your username (mobile).
Este activador se activa cada vez que el servicio Maker recibe una solicitud web para notificarle de un evento. Para obtener información sobre la activación de eventos, vaya a la configuración de los servicios de Maker y luego a la URL que aparece en la lista (web) o toque su nombre de usuario (móvil).
Me pide que ponga un "Event Name". Pongo "22 grados". Actualizo la receta IFTTT. Ahora la receta es
IF Receive a web request then activate scene.
Curiosamente, en la pantalla IFTTT de la receta, al haber cambiado el disparador también ha desaparecido el botón-opción para añadir un widget en la pantalla de inicio. Y el widget que había creado antes ha dejado de funcionar porque estaba asociado al disparador "button". Intento crear otro widget de IFTTT, pero no me permite elegir la receta que he creado con el disparador Webhooks. Por otro lado, dentro de IFTTT no veo la forma de "ejecutar" esta receta ni tampoco encuentro la forma de obtener la URL prometida. Y tampoco entiendo a qué se refiere lo de "Maker services settings"/"configuración de los servicios de Maker" que citaba el texto anterior.
Vuelvo a estar atascado y necesito otro empujoncito. Gracias.
Osconse
20/12/21, 22:49:00
Hola Caravantes, aunque no escribo (porque no se qué decir), te puedo informar de que el modo vacaciones del termostato sirve para que no funciones durante un periodo de tiempo que tú determines, aunque si puedes configurar una temperatura mínima a la que salte la calefacción principalmente para evitar roturas de cañerías por congelación.
Yo tengo 6 aparatos de Smart Life y estoy muy contento con ellos. La app es intuitiva y sencilla de usar y una vez entiendes las "inteligencias" y las escenas consigues muuuuchas más cosas.
Yo los uso para manejar el cargador del coche eléctrico y la depuradora y varios radiadores eléctricos cuando la producción solar me da para ello.
De hecho tiene una opción en la que si está nublado hace x o si hace sol hacerlo contrario aunque no funciona muy bien porque la base de datos meteorológicos es china y falla más que una escopeta de feria.
Yo también pensé en Tasker pero me queda grande aún y además hablé con Smart Life por otro asunto y me dijeron que por motivos de seguridad ni tan siquiera dan opción a cambiar el icono del "enchufe" (tengo 5 iguales).
Pero me he buscado las vueltas y lo combino con Smart Things de Samsung donde el tiempo viene de The wheather Channel y es más preciso e incluso puedo manejarlo desde Android auto.
Así que si por ese camino necesitas ayuda te la puedo prestar pero no con Tasker.
Saludos.
WillyWeb
20/12/21, 22:54:01
Ya me imaginaba que ese tipo de dispositivo no se podría apagar. Y veo que lo has solventado usando las escenas. :aplausos:
Ni el dispositivo ni el applet requieren el permiso de ubicación, es la aplicación la que lo pide para que puedas usar el servicio "Location". Creo que el nombre lo dice todo. Pruébalo, es gratis. IFTTT tiene unos cuantos servicios integrados que ofrece de forma gratuita. Location, Button, Webhooks, Email, Date & Time, Battery, y alguno más.
Por cierto, es normal que el widget deje de funcionar al quitar el servicio/disparador "button". Esa es la forma de crear un widget que lance un applet de IFTTT manualmente. Si no usas "button" el widget simplemente no tiene sentido.
Volviendo a Webhooks...
Pon un nombre de evento simple, sin espacios, acentos o cualquier cosa que pueda complicar una URL. En tu caso yo usaría algo como "22grados" y "2grados".
Es normal que no encuentres una forma de "ejecutar" ese applet manualmente. No se puede. Para ejecutarlo tienes que usar una URL "especial" en la que se combina un "clave" personal y el nombre del "evento" que has creado antes.
En la página de configuración de webhooks (https://ifttt.com/maker_webhooks) tienes información detallada de cómo hacerlo pulsando en el botón "Documentation".
Básicamente se trata de una URL con esta forma...
https://maker.ifttt.com/trigger/nombre-evento/with/key/tu-clave-personal
Olvida todo el tema del JSON y los parámetros. Para esto no los necesitas.
Creo que con este empujón ya casi tienes que llegar al final. :pensando:
Caravantes
28/12/21, 01:31:20
Hola. Lamento la demora en mis respuestas, me siento como el Guadiana, que aparece y desaparece. Es por cuestiones personales variadas (como una jubilación con alguna complicación administrativa), otras de tipo familiar (incluyuendo viajes para estar con la familia en navidad) y para rematar estoy terminando una mudanza de casa. Pero no preocuparse, todo es para bien, sobre todo la jubilación y el salto de la ciudad a vivir en un pueblo de 500 habitantes donde el paisaje y las personas son igual de geniales.
Retomo el tema.
Soy muy organizado y sé que estas cosas terminan complicándose más de lo previsto, así que he decidido poner mucho orden desde el primer momento. Creo que voy a tener dispositivos inteligentes (gestinados remotamente) en más de un lugar, y voy a nombrar a los dispositivos comenzando por la ubicación. Así, unos estarán en la casa del pueblo cuyo nombre empieza por Villa (podría ser "Villapeineta" o algo parecido, prefiero no concretar más)... y esos dispositivos serán nombrados con la abreviatura Vill. Luego un número secuencia que también identifica el aparato (creo que tendré tres o cuatro, en todo caso no llegarán a 9, y con un solo dígito me vale); y por último algunas letras que sirven para indicar el tipo de dispositivo; por ejemplo TERM identificará los termostatos. Por tanto, en la app SMART LIFE, el primer dispositivo se llama "Vill1Term".
Como ya he dicho anteriormente, para este aparato, inicialmente voy a hacer dos escenas (o programas), que se llaman Vill1Term22g y Vill1Term2g, porque respectivamente ponen ese termostato a 22 y 2 grados (equivalentes a "confortable/calentito" y "calefacción apagada").
En IFTTT creo una receta a la que inicialmente pongo el disparador Webhooks (modalidad "Receive a web request"); me pide un nombre de Evento y pongo "vill1term22g" (tal como ha sugerido Willy, evito espacios, acentos e incluso mayúsculas que quizá también puedan complicar la URL). Esta receta activa la escena Vill1Term22g. En el título del apllet, IFTT me propone
If Maker Event "vill1term22g", then activate Vill1Term22g
pero quito todo eso y lo simplifico por "vill1term22g", el mismo nombre del evento. Además, activo la opción de "Recibir notificaciones cuando se ejecute".
Si lo he entendido bien, la URL para activar esta receta es
https://maker.ifttt.com/trigger/vill1term22g/with/key/mi-clave-personal-en-iftttLa tarea Tasker tiene una sola acción:
A1: Solicitud HTTP [
Método: GET
URL: https://maker.ifttt.com/trigger/vill1term22g/with/key/mi-clave-personal-en-ifttt
Tiempo Límite (Segundos): 30 ]Al ejecutar la tarea aparece un error: "You sent an invalid key". Por supuesto, no recibo notificación de que se haya ejecutado la receta IFTTT y la temperatura del termostato tampoco se ha subido a 22 (sigue en 2).
1404514
Estoy bastante seguro de que no he escrito mal la contraseña que tengo en IFTTT; incluso lo he comprobado abriendo IFTTT en el navegador y haciendo login con la contraseña, que es correcta.
Vuelvo a IFTTT; abro la receta que he creado (vill1term22g)
Hay un botón de "Ver actividad" y parece que la receta no se ha ejecutado nunca.
Hay otro botón de "Comprobar ahora"; lo pulso y no hace nada. Esto me lleva a sospechar que quizá no sea la URL lo que está mal.
En IFTTT creo la segunda receta a la que inicialmente pongo el disparador de botón. El nombre de la receta es "vill1term2g" y activa la escena Vill1Term2g. También activo la opción de "Recibir notificaciones cuando se ejecute". Con el botón funciona bien: cambia la temperatura del termostato a 2 grados y además recibo la notificación "Applet Run: vill1term2g". Reviso la receta y puedo ver cuántas veces se ha ejecutado y cuándo ha sido la última ejecución. Pero cuando pulso en el botón "Comprobar ahora", tampoco hace nada. ¿Para qué sirve este botón? ¿Qué comprueba?
Luego modifico esta receta cambiando el disparador; pongo Webhooks (modalidad "Receive a web request"); me pide un nombre de Evento y pongo "vill1term2g". Actualizo. Pulso el botón de "Comprobar ahora", pero sigue sin hacer nada, eso me parece. En Tasker, hago la correspondiente tarea, con una sola acción similar a la que he copiado antes (las URLs son muy similares), y obtengo el mismo error: "invalid key"
Quizá el problema sea que mi contraseña de IFTTT lleva alguna mayúscula y tal vez eso descabala la gestión de la URL.
Hoy estoy cansado y es tarde así que lo dejo; en otro momento cambiaré la contraseña IFTT para poner una sin mayúsculas que puedan complicar la URL, y volveré a probar.
WillyWeb
28/12/21, 08:50:12
Hola. Lamento la demora en mis respuestas...
No te preocupes hombre, yo cobro por horas. :risitas:
Soy muy organizado...
Me consta. :silbando:
Al ejecutar la tarea aparece un error: "You sent an invalid key".
Estoy bastante seguro de que no he escrito mal la contraseña que tengo en IFTTT...
Esa "key" de la URL no es la clave de acceso a IFTTT.
Abre la aplicación. Pulsa el botón "Explorar". En el campo de búsqueda escribe "webhooks". Pulsa el botón del servicio (será el primero de la lista). Pulsa el botón "Documentation". Se abrirá una página con mucha información útil. Lo primero es tu "key" del servicio Webhooks. Si te quedas pulsando sobre ella la podrás copiar en el portapapeles.
Por cierto, puedes hacer las pruebas que quieras desde esa misma página. Localiza el campo {event} y escribe "vill1term22g" (o el otro) y pulsa el botón "Test It" que tienes un poco más abajo.
...cuando pulso en el botón "Comprobar ahora", tampoco hace nada. ¿Para qué sirve este botón? ¿Qué comprueba?
Es para verificar que IFTTT puede comunicarse con los servicios que se usan en ese applet. Si todo va bien deberías ver un flash diciendo "Verificación completada".
Yo creo que ahora sí. :ok:
Caravantes
28/12/21, 13:01:58
Abre la aplicación. Pulsa el botón "Explorar". En el campo de búsqueda escribe "webhooks". Pulsa el botón del servicio (será el primero de la lista). Pulsa el botón "Documentation". Se abrirá una página con mucha información útil. Lo primero es tu "key" del servicio Webhooks.
Rayos :oh:
Había visto eso, pero lo interpreté mal, quizá por mi falta de soltura con el inglés. Creí que esa página era común para todo el mundo y la clave mostrada solo era un ejemplo. Interpreté algo así como - Supongamos que tu clave es HAEKSDSISENMSFIS.
- En tal caso tendrías que usar https://maker.ifttt.com/trigger/{event}/with/key/HAEKSDSISENMSFIS
Y todo el tiempo pensé que debía sustituir esa ristra de caracteres por mi contraseña de acceso a IFTTT. Ya veo que no, que lo que sale ahí es una clave personal y exclusiva para el uso de mis Webhooks.
Por cierto, puedes hacer las pruebas que quieras desde esa misma página. Localiza el campo {event} y escribe "vill1term22g" (o el otro) y pulsa el botón "Test It" que tienes un poco más abajo.
Esto tampoco lo había entendido, pero efectivamente funciona y es una gran ayuda. Lo mejor de todo es que poniendo el nombre del evento puedes comprobar que funciona, y además... la página te muestra la URL completa -incluyendo la clave personal- para copiar, y luego pegar en Tasker. Comentario lateral: desde el smartphone todo se ve un poco peor; por ejemplo, la clave personal que aparece arriba de la página está en caracteres grandes y no me cabe completa en la pantalla del teléfono (aunque sí es posible copiarla mediante una pulsación larga). Todo esto se me hace más legible a través de la web de IFTTT, en https://ifttt.com/maker_webhooks y luego picando en el botón DOCUMENTATION
Sobre el botón de "COMPROBAR AHORA"...
Es para verificar que IFTTT puede comunicarse con los servicios que se usan en ese applet. Si todo va bien deberías ver un flash diciendo "Verificación completada".
Joer, vaya flash superbreve, creo que dura como 250 milisegundos. He tenido que fijarme mucho para ver dónde salía el flash; y para poder leerlo he tenido que repetir más de una vez, y eso que solo son dos palabras.
Y sí, ya todo funciona. Las dos tareas de Tasker encienden y apagan la calefacción, como debe ser. Ha sido tortuoso pero al final funciona y he aprendido muchas cosas. Creo que ya no voy a tener dificultades con los otros dispositivos (otro termostato y un enchufe inteligente).
:platano::campeon:
El plátano es para mí. La copa, para tí, Willy: Muchisisimas gracias por todas las ayudas y explicaciones.
WillyWeb
28/12/21, 14:03:14
No tienes nada que agradecer. :-)
¡¡ Felices Fiestas !!
:nav3:
vBulletin® v3.8.1, Copyright ©2000-2025, Jelsoft Enterprises Ltd.