Controladores domóticos por Hardware => Jeedom => Mensaje iniciado por: Apose en Abril 19, 2019, 13:41:05 pm

Título: Duda en escenario
Publicado por: Apose en Abril 19, 2019, 13:41:05 pm
Hola.

Como pongo en un bloque Si/Entonces la condición de si una bombilla estuvo encendida hace X minutos?

Gracias
Título: Re:Duda en escenario
Publicado por: Apose en Abril 25, 2019, 15:38:44 pm
Se puede hacer?
Título: Re:Duda en escenario
Publicado por: phroc en Abril 26, 2019, 08:43:55 am
Esto, desde mi punto de vista, es mejor hacerlo con "Acciones sobre valores".

En resumen le dices a ese periférico que cuando lleve x minutos encendido, que te ejecute una escena concreta.

Está explicado aquí:

http://www.domoticadomestica.com/las-acciones-sobre-valores-en-jeedom/

Título: Re:Duda en escenario
Publicado por: adriansinho en Abril 27, 2019, 12:54:35 pm
Si te es imprescindible hacerlo desde un escenario, siempre puedes usar la función lastChangeStateDuration.

lastChangeStateDuration (comando, valor): devuelve la duración en segundos desde que el último cambio de estado al valor pasado en el parámetro. Devuelve -1 si no existe un historial o el valor no existe en el historial. Devuelve -2 si el comando no está historizado.

Ejemplo en mi caso:

round(lastChangeStateDuration(#[Sensores][Salón][Movimiento]#,1)/60,0)

En mi caso, lo tengo para controlar el tiempo de ausencia en el salón. En principio el valor se te devuelve en segundos, por eso lo divido entre 60 y luego uso el round para redondear.
Título: Re:Duda en escenario
Publicado por: Neos en Junio 02, 2019, 22:19:07 pm
Si te es imprescindible hacerlo desde un escenario, siempre puedes usar la función lastChangeStateDuration.

lastChangeStateDuration (comando, valor): devuelve la duración en segundos desde que el último cambio de estado al valor pasado en el parámetro. Devuelve -1 si no existe un historial o el valor no existe en el historial. Devuelve -2 si el comando no está historizado.

Ejemplo en mi caso:

round(lastChangeStateDuration(#[Sensores][Salón][Movimiento]#,1)/60,0)

En mi caso, lo tengo para controlar el tiempo de ausencia en el salón. En principio el valor se te devuelve en segundos, por eso lo divido entre 60 y luego uso el round para redondear.

Una duda, como lo haces para que muestre el tiempo que esta sin cambiar de estado?

Me gustaría ver el tiempo, y tambien usar ese tiempo para crear una accion en el escenario.

Por ejemplo: Con un sensor de movimiento aqara, que si no hay movimiento en X minutos haga una accion..
Título: Re:Duda en escenario
Publicado por: Bull en Junio 03, 2019, 10:40:17 am
Te debes de crear un dispositivo virtual donde copiaras todos los comandos que quieres reproducir mas uno que será exactamente el lastchange.

Si te es imprescindible hacerlo desde un escenario, siempre puedes usar la función lastChangeStateDuration.

lastChangeStateDuration (comando, valor): devuelve la duración en segundos desde que el último cambio de estado al valor pasado en el parámetro. Devuelve -1 si no existe un historial o el valor no existe en el historial. Devuelve -2 si el comando no está historizado.

Ejemplo en mi caso:

round(lastChangeStateDuration(#[Sensores][Salón][Movimiento]#,1)/60,0)

En mi caso, lo tengo para controlar el tiempo de ausencia en el salón. En principio el valor se te devuelve en segundos, por eso lo divido entre 60 y luego uso el round para redondear.

Una duda, como lo haces para que muestre el tiempo que esta sin cambiar de estado?

Me gustaría ver el tiempo, y tambien usar ese tiempo para crear una accion en el escenario.

Por ejemplo: Con un sensor de movimiento aqara, que si no hay movimiento en X minutos haga una accion..