Forum eedomus
http://forum.eedomus.fr/

Macro
http://forum.eedomus.fr/viewtopic.php?f=18&t=3858
Page 1 sur 1
Auteur:  fullpower [ 17 Fév 2016 15:28 ]
Sujet du message:  Macro

Bonjour,

Est il possible qu'une macro ne se ré-exécute pas si elle est déjà en cours d’exécution ?
Je m'explique :
J'ai une macro sur un FGS222 qui m'active par une impulsion l'ouverture d'un portail durant 5 min.
J’exécute cette commande depuis mon smartphone via macrodroid (en utilisant l'API du périphérique de l'EEDOMUSet une commande HTTP).

-> Le pb se pose si ma femme rentre peu de temps après moi et sans savoir que le portail est déjà ouvert, elle lance, elle aussi cette commande :
Le portail reçoit donc l'impulsion et ce dernier du coup se referme ! (c'est un portail avec une seule impulsion pour ouvrir/fermer).

Donc ce que je cherche à faire c'est que si la macro est en cours et que j'appuie (ou ma femme) depuis son raccourci http de macro ...et bien rien ne se passe ...
Un peu comme l’exécution d'une règle toutes les x min ..sauf que là c'est pour une macro ...
:?:
Auteur:  Arno [ 17 Fév 2016 16:08 ]
Sujet du message:  Re: Macro

Il y a de nombreuses façon de faire ça.

par exemple :

En passant par exemple par un état virtuel : porte ouverte/fermé
avec une macro : attente 0 seconde, porte ouverte
attente 5 minutes, porte fermée
celle-ci est commandée par la commande http

Ensuite c'est une règle qui dit :
si porte devient maintenant ouverte
-> macro ouverture de porte
autoriser le redéclenchement après 5 minutes

Il y a plein d'autres solutions, dont des plus élaborées, mais ça dépend aussi un peu du fonctionnement
de la gestion de l'ouverture du portail.
Auteur:  fullpower [ 17 Fév 2016 16:17 ]
Sujet du message:  Re: Macro

Ah oui c'est une piste à explorer effectivement !
Je vais essayer de voir de ce soté là, merci !

Je pensais + à qq chose sur laquelle je n'ai pas trouvé bcp de doc : les fonctions "arrêter/démarrer" qui apparaissent en dessous des macro..
J'ignore le fonctionnement ...
Auteur:  aurique [ 17 Fév 2016 16:18 ]
Sujet du message:  Re: Macro

IL y a plus simple :

Dans les critères d’exécution d'une règle, tu as l’élément " En cours de Macro" (ou l'inverse "Non en cours de Macro" ) .

A mon sens , il suffit que tu ajoutes le critère "Non en cours de Macro" dans la règle qui ouvre ton portail comme ça, si ta femme exécute la commande , comme le portait est en cours de macro (a condition que ta macro soit assez longue), la commande n'est pas exécutée.

Tu peux aussi crer un périphérique "Etat" qui se met a jour selon l'ouverture de la porte et que tu vérifie lors de l’exécution des règles.
Auteur:  fullpower [ 17 Fév 2016 17:06 ]
Sujet du message:  Re: Macro

En fait ce qui serait nettement + simple, c'est que je puisse exécuter une règle depuis l'API..comme sur la Zibase.
Ainsi j’exécutais le scénario d'ouverture du portail avec une "non exécution" en deçà de 5 min ...

J'ai essayé vos 2 méthodes mais ça ne veux pas ...ou alors je n'ai pas tout capté.
:|
Auteur:  Arno [ 17 Fév 2016 22:29 ]
Sujet du message:  Re: Macro

Ma "méthode" revient au même, puisque tu actionne un interrupteur virtuel qui actionne une règle.
Donc ça doit marcher.
Poste une copie d'écran de tes macros et règles concernées, afin qu'on y voit plus clair.
Auteur:  fullpower [ 18 Fév 2016 09:59 ]
Sujet du message:  Re: Macro

Bah j'ai tout effacé ...pour mieux reprendre ..
déjà je bloque là :
"En passant par exemple par un état virtuel : porte ouverte/fermé
avec une macro : attente 0 seconde, porte ouverte
attente 5 minutes, porte fermée
celle-ci est commandée par la commande http "

- 1/ je crée un état virtuel
- 2/ avec pour valeurs 0 : "portail fermé" et 100 ou 1 : "portail ouvert"
- 3/ j'y crée une macro comme ci dessus ...

-> Comment je commande cet état virtuel par http ?

Pour le moment c'est configuré comme tel :
Image

Image
(Il n'y'a qu'une valeur car mon portail s'ouvre et se ferme que par une seule et même impulsion)

Et enfin la macro que j'active par une commande HTTP via l'API de l'Eedomus :

Image

puis il y'a les règles qui sont rattachées mais sans grand intérêt là ...
Auteur:  fullpower [ 25 Fév 2016 14:36 ]
Sujet du message:  Re: Macro

Bonjour,

Ok pb réglé.

J'ai suivi vos idées...et je vous en remercie !
Là j'ai suivi le post initial d'Arno..simple et fonctionnel...il m'a fallu un peu de temps libre pour cogiter dessus ...

1/ Création d'un état "Portail en ouverture" et "Portail fermé" (son état par défaut)
Image

2/ une règle simple qui, lorsque mon état passe à "Portail en ouverture" via la commande API de la Macro, ouvre simplement une macro préparée du module FGS222 pour une ouverture/fermeture à 5 min.
Image

3/ Le portail s'ouvre donc pour une durée de 5 min, l'état du portail s'affiche en ouverture pendant 5 minutes (via sa macro) à titre indicatif puis re-bascule en "portail fermé"

4/ Durant l’exécution de la règle, un tiers peut relancer une demande d'ouverture du portail : ce dernier restera ouvert car la règle ne se ré exécutera pas avant 5 min.

:)
Auteur:  Arno [ 25 Fév 2016 17:50 ]
Sujet du message:  Re: Macro

Désole, je t'avais un peu zappé et donc abandonné à ton triste sort... :?

Mais bon, je vois que tu as finalement retranscrit ma "méthode" avec succès.

Nickel !
Auteur:  fullpower [ 25 Fév 2016 18:32 ]
Sujet du message:  Re: Macro

PAs grave, ça permet de cogiter et faire fonctionner les neurones ! :)
J'avais pas mal de taf' du coup j'ai fait ça à "tête reposée" car j'avais un peu de mal à comprendre au départ ta méthode...
J'en ai profité pour illustrer tout ça, on ne sait jamais ça pourra servir à d'autres ...
Page 1 sur 1 Le fuseau horaire est UTC+1 heure