domingo, 18 de agosto de 2024

Shelly Scripting: Introducción

Hace 2 años aproximadamente, y con la introducción de los dispositivos Plus y Pro, es decir, aquellos que disponen de un microcontrolador ESP32, Shelly introdujo una nueva funcionalidad en estos dispositivos denominada Scripting. Esta funcionalidad permite dotarlos de cierta "inteligencia" local, es decir, pueden realizar ciertos automatismos aunque el dispositivo no esté conectado ya sea la nube de Shelly o a cualquier otro sistema domótico como Home Assistant, Google Home, etc.


Esto puede ser muy interesante si necesitamos, por ejemplo, realizar ciertas funciones importantes aunque el dispositivo pierda conexión con internet o con la red de área local de tu casa. Por ejemplo, si se cuelga el router y el dispositivo pierde la conexión Wi-Fi, éste no podrá ejecutar los automatismos programados en la nube de Shelly.

Acceso al Scriptting

Esta funcionalidad no la encontraremos en Shelly Cloud ya que, como hemos dicho anteriormente, no depende de la nube por lo que para acceder a ella debemos hacerlo directamente sobre los dispositivos, ya sea a través de la app de Shelly o a través de conectarnos directamente con un navegador web al dispositivo.

En mi caso, voy a realizarlo de la segunda forma por comodidad. He de indicar que en la traducción al castellano de la app lo han denominado Guiones.

Para acceder al dispositivo vía web necesitamos conocer su dirección IP. Para ello, lo más sencillo es abrir la app Shelly Smart Control, seleccionar el dispositivo y en Ajustes - Información del dispositivo, nos aparece la IP del dispositivo. 

Accedemos a la IP del dispositivo con nuestro navegador y, en el menú de la izquierda, podemos ver la opción Script. Si la seleccionamos nos muestra otras dos opciones, Create Script y Library.

La primera opción nos permitirá crear un script desde cero y la segunda opción nos dará acceso a una serie de scripts desarrollados por Shelly que podemos utilizar.

Nota: En el dispositivo nos aparece un script ya instalado denominado aioshelly_ble_integration que es un script instalado automáticamente por Home Assistant para soporte de proxy Bluetooth. Por tanto, esto me hace pensar que es posible añadir scripts de forma remota en los dispositivos Shelly Plus y Pro.

El lenguaje utilizado para realizar los script se denomina mJS, que es un subconjunto de instrucciones de JavaScript por lo que no contiene todas las instrucción de este lenguaje de programación.

Además, estos scripts se pueden cargar remotamente en el dispositivo, como hemos visto que ha hecho Home Assistant. 

Resumen

Si necesitamos que un automatismo se ejecute sí o sí (a no ser que el dispositivo pierda la alimentación) la solución pasa por la función Script de Shelly.


No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.