Execution des regles?

Échangez ici vos astuces sur la gestion des règles eedomus

Execution des regles?

Messagepar jwozniak » 06 Déc 2017 14:58

Salut,

Quelqu’un peut expliquer comment marche exactement les conditions sur les réglés?

J'ai une règle qui dit:

Si:
remote-control1 "becomes" pushed (C1)
OR
remote-control2 "becomes" pushed (C2)
AND
security "is" activated (C3)

Action:
security = deactivated.

Alors on peut dire que la conditions sont comme ca: ((C1 or C2) and C3)?

La regle parfois actionne en disant que le RULE_TRIGGER == C3...
J'ai pense que seulement les conditions avec "becomes" qui signifie "changement d'etat" + vérification de valeur égal a X qui pourraient trigger et pas les conditions avec "is"? Comment C3 peut trigger? Les C1 et C2 n'ont pas était changé depuis des heures (meme si C1 etait dans l'etat "pushed" mais depuis 10h).

C'est que je voudrais obtenir c'est de déactiver "security" si on appuie sur le remote mais seulement quand securite == activee...

Deuxième question:
Quelles sont les différences exactes entre "is", "is now", "becomes", "becomes now", "was", etc?
"Now" ca veut dire combien de temps? Si pas avec "now" c'est combien de temps alors? "Was" dans combien de temps? Quelle conditions actionne est quelle n'actionne pas?

Troisième question:
Est-ce évaluation de condition logique "lazy" ou pas?
https://en.wikipedia.org/wiki/Short-circuit_evaluation

Je trouve que la documentations n'est pas suffisamment claire en ce sujet...

Merci d'avance,
Jakub
jwozniak
 
Messages : 22
Inscription : 01 Déc 2017

Re: Execution des regles?

Messagepar jwozniak » 08 Déc 2017 19:11

Ok, peut-être cela était trop difficile...
Question simple, quelle est la différence entre "devient" et "devient maintenant"?
jwozniak
 
Messages : 22
Inscription : 01 Déc 2017

Re: Execution des regles?

Messagepar rover820i » 09 Déc 2017 10:12

Salut,

Dans ton cas de figure :

C1 devient maintenant appuyé
OU
c2 devient maintenant appuyé
ET
c3 est = à actif

Je programmerai plutôt comme ça :

c3 est = à actif
ET
C1 devient maintenant appuyé
OU
c2 devient maintenant appuyé

Et là ça devrait marcher... Toutes mes règles sont programmées comme ça et fonctionnent sans faille depuis 18 mois.

Quant à la différence entre DEVIENT et DEVIENT MAINTENANT... Grande question :mrgreen:
rover820i
 
Messages : 3363
Inscription : 23 Juil 2016

Re: Execution des regles?

Messagepar Patskins » 09 Déc 2017 10:48

rover820i a écrit:Salut,

Je programmerai plutôt comme ça :

c3 est = à actif
ET
C1 devient maintenant appuyé
OU
c2 devient maintenant appuyé


Bonjour,

Pas d'accord, ce que tu écrits donne ( C3 & C1) OR C2, dans ce cas C2 ne tient pas compte de l'état de C3

La règle devrait être :
C1 devient maintenant égal à actif
OU C2 devient maintenant égal à actif
Et C3 est égal à actif (ou C3 est inactif pour l'autre sens de fonctionnement)

Pour moi, "devient maintenant" s'active dès le changement d'état ; "devient" ne s'active que suivant une contrainte horaire ou autre (il n'était pas dans cet état lors de la précédente exécution mais il l'est au moment de la contrainte)
Eedomus+
DI-O / Zwave / Zwave + / Thermostat et station Netamo / Smappee / Sondes Oregon
Tablette dédiée avec Impérihome pro pour la gestion, un dashboard à l'aide d'un Raspberry
Patskins
 
Messages : 260
Inscription : 26 Oct 2015
Localisation : Bretagne (35), France

Re: Execution des regles?

Messagepar rover820i » 09 Déc 2017 10:55

Tu peux ne pas être d'accord.

Quoiqu'il en soit, ça fonctionne comme ça chez moi depuis 18 mois et sur une multitude de règles aussi différentes que variées :mrgreen:

Et je précise que j'ai testé tous les cas de figure possible de ces règles et qu'elles n'ont jamais failli.

Je t'invite à faire le test sur une règle d'essai ;)
rover820i
 
Messages : 3363
Inscription : 23 Juil 2016

Re: Execution des regles?

Messagepar Patskins » 09 Déc 2017 11:02

Je maintiens et j'ai 40 ans d'expérience en d'automatismes. De plus, la doc eedomus est très claire et correspond parfaitement à ce cas de figure :
Autre exemple :

Capteur1=mouvement
OU Capteur2=mouvement
OU Capteur3=mouvement
ET Alarme=activée

Dans cet exemple, il suffit qu'un des capteurs soit égale à mouvement, et que l'alarme soit activée, pour que la règle se déclenche. Un autre ordre des parenthèses ne produira pas le résultat escompté.
Eedomus+
DI-O / Zwave / Zwave + / Thermostat et station Netamo / Smappee / Sondes Oregon
Tablette dédiée avec Impérihome pro pour la gestion, un dashboard à l'aide d'un Raspberry
Patskins
 
Messages : 260
Inscription : 26 Oct 2015
Localisation : Bretagne (35), France

Re: Execution des regles?

Messagepar rover820i » 09 Déc 2017 11:17

Patskins a écrit:Je maintiens et j'ai 40 ans d'expérience en d'automatismes.

Moi je t'invite juste à faire le test :mrgreen:

La théorie ne fait pas tout :mrgreen:

Et en l'occurrence, notre ami a testé, et ça ne fonctionne pas... Après tu sais je m'en fiche un peu, je ne jouerai pas à kikikalaplugrosse, je donne juste mon expérience, la réalité de ce que j'ai fait et qui fonctionne parfaitement sans aucune faille. Et la documentation ne fait pas tout. La pratique est bien plus fiable que la théorie...
rover820i
 
Messages : 3363
Inscription : 23 Juil 2016

Re: Execution des regles?

Messagepar influman » 09 Déc 2017 11:25

rover820i a écrit:Tu peux ne pas être d'accord.

Quoiqu'il en soit, ça fonctionne comme ça chez moi depuis 18 mois et sur une multitude de règles aussi différentes que variées :mrgreen:

Et je précise que j'ai testé tous les cas de figure possible de ces règles et qu'elles n'ont jamais failli.

Je t'invite à faire le test sur une règle d'essai ;)


T'as essayé avec C3 inactif, en appuyant sur C2 ?
Parce que chez moi ca marche pas dans ton sens.

La vrai reponse c'est qu'il faut, en tant que Jc Vandamme, des "becomes now" pour que ca marche.
viewtopic.php?f=18&t=5073
Dernière édition par influman le 09 Déc 2017 11:30, édité 1 fois.
influman
 
Messages : 2324
Inscription : 30 Oct 2013

Re: Execution des regles?

Messagepar rover820i » 09 Déc 2017 11:28

influman a écrit:
rover820i a écrit:Tu peux ne pas être d'accord.

Quoiqu'il en soit, ça fonctionne comme ça chez moi depuis 18 mois et sur une multitude de règles aussi différentes que variées :mrgreen:

Et je précise que j'ai testé tous les cas de figure possible de ces règles et qu'elles n'ont jamais failli.

Je t'invite à faire le test sur une règle d'essai ;)


T'as essayé avec C3 inactif, en appuyant sur C2 ?
Parce que chez moi ca marche pas dans ton sens.

Oui.

Pour faire court, une règle comme ça :

SI alarme = activée
ET désactivation temporaire = non
ET détecteur porte 1 DEVIENT MAINTENANT = ouvert
OU détecteur porte 2 DEVIENT MAINTENANT = ouvert
OU détecteur porte 3 DEVIENT MAINTENANT = ouvert
OU détecteur porte 4 DEVIENT MAINTENANT = ouvert

ALORS

blabla

Fonctionne parfaitement suivant les différents changements d'état de "alarme" et de "désactivation temporaire" (et bien sûr des états des portes).

Toutes mes règles sont construites de la même manière et toutes fonctionnent sans problème.
rover820i
 
Messages : 3363
Inscription : 23 Juil 2016

Re: Execution des regles?

Messagepar jwozniak » 11 Déc 2017 23:24

Merci, c'est plus claire maintenant. :D
jwozniak
 
Messages : 22
Inscription : 01 Déc 2017


Retour vers Règles et programmations

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 3 invité(s)