Bonjour,
J'ai une telecommande hager identifié :
<object id="telecomande1_v1" gad="0/1/0">Telecomande 1 voie1</object>
et j'ai une rule :
<rule id="telecomande1butt1">
<condition type="and">
<condition type="object" id="telecomande1_v1" value="on"
trigger="true"/>
</condition>
<actionlist>
<action type="set-value" id="garage1_o" value="on" flags="f"/>
</actionlist>
</rule>
Cela fonctionne très bien la première exécution, mais pas ensuite,
j'imagine que linknx garde en mémoire le dernier etat du gad et
n'estime que la rule ne doit pas être interprète de nouveau.
Comment faire pour empêcher ce phénomène?
cldt,
yannick
Bonjour,
Quelle version de linknx utilises-tu ?
Si c'est la 1.27, essaye de rajouter ces flags sur ton objet :
<object id="telecomande1_v1" gad="0/1/0" flags="cwtus">Telecomande 1
voie1</object>
Tiens nous au courant.
Ben
Yannick JUPIN
Unregistered
Bonjour
J'ai esseyer de rajouter ces flahd mais ça ne change rien
Cordialement,
Yannick
Le 28 mai 2010 à 07:55, Ben <tmt.ben@gmail.com> a écrit :
> Bonjour,
>
> Quelle version de linknx utilises-tu ?
>
> Si c'est la 1.27, essaye de rajouter ces flags sur ton objet :
> <object id="telecomande1_v1" gad="0/1/0" flags="cwtus">Telecomande 1
> voie1</object>
>
> Tiens nous au courant.
>
> Ben
Yannick JUPIN
Unregistered
Sinon j utilise en effet la v 1.27
Cordialement,
Yannick
Le 28 mai 2010 à 07:55, Ben <tmt.ben@gmail.com> a écrit :
> Bonjour,
>
> Quelle version de linknx utilises-tu ?
>
> Si c'est la 1.27, essaye de rajouter ces flags sur ton objet :
> <object id="telecomande1_v1" gad="0/1/0" flags="cwtus">Telecomande 1
> voie1</object>
>
> Tiens nous au courant.
>
> Ben
Dans ton actionlist rajoute <action type="set-value"
id="telecomande1_v1" value="off" /> pour réinitialiser l'état de ta
télécommande.
Yannick JUPIN
Unregistered
Hmmm bien vu, jessai ça ce soir
Cordialement,
Yannick
Le 28 mai 2010 à 13:42, Ben <tmt.ben@gmail.com> a écrit :
> Dans ton actionlist rajoute <action type="set-value"
> id="telecomande1_v1" value="off" /> pour réinitialiser l'état de ta
> télécommande.
Bonjour,
Si la télécommande envoie un ON sur l'objet telecomande1_v1 chaque
fois qu'on appui dessus et n'envoie jamais de OFF, il faut
effectivement ajouter le flag 's' sur l'objet sinon il filtrera les ON
succcessifs.
De la même manière, si rien ne remets systématiquement l'objet
garage1_o sur OFF après l'ouverture, il faut ajouter le flag 's' dans
la définition de l'objet garage1_o. (par exemple si la porte s'ouvre à
moitié, il n'est pas possible d'envoyer un second ON pour relancer
l'ouverture si le flag 's' est absent)
Le paramètre flags="f" dans le tag <action ....> n'a aucun effet.
Il reste un point qui peut encore poser problème dans ce cas ci, c'est
le fait que l'actionlist est, par défaut, de type "on-true", ce qui
veut dire qu'elle n'est exécutée que lorsque la condition passe de
"faux" à "vrai", or dans ce cas ci la condition est vraie en
permanence puisqu'on ne reçoit que des ON.
Deux solutions à ce problème:
1) Utiliser <actionlist type="if-true"> à la place de <actionlist> (ce
dernier étant équivalent à <actionlist type="on-true">). Dans ce cas
l'actionlist sera exécutée à chaque fois que la condition est évaluée
et que le résultat est "vrai". Et comme grâce au flag 's' sur
telecomande1_v1, la condition est évaluée à chaque fois qu'un
télégramme est reçu pour cet objet, l'actionlist sera exécutée à
chaque fois qu'un ON est reçu.
2) Comme Ben propose, rajouter <action type="set-value"
id="telecomande1_v1" value="off" /> dans l'actionlist pour
réinitialiser l'état de telecomande1_v1.
J'espère que ça clarifie les choses. Je sais que c'est un peu tordu
parfois, mais c'est le seul moyen que j'ai trouvé pour pouvoir couvrir
tous les comportements possibles.
A+
Jean-François
On 28 mai, 13:54, Yannick JUPIN <yann...@magikdo.com> wrote:
> Hmmm bien vu, jessai ça ce soir
>
> Cordialement,
> Yannick
>
> Le 28 mai 2010 à 13:42, Ben <tmt....@gmail.com> a écrit :
>
> > Dans ton actionlist rajoute <action type="set-value"
> > id="telecomande1_v1" value="off" /> pour réinitialiser l'état de ta
> > télécommande.
Yannick JUPIN
Unregistered
Merci pour ces informations utiles
Cela résoud en effet le problème
Cordialement,
Yannick
Le 28 mai 2010 à 20:16, jef2000 <jef2000@ouaye.net> a écrit :
> Bonjour,
>
> Si la télécommande envoie un ON sur l'objet telecomande1_v1 chaque
> fois qu'on appui dessus et n'envoie jamais de OFF, il faut
> effectivement ajouter le flag 's' sur l'objet sinon il filtrera les ON
> succcessifs.
> De la même manière, si rien ne remets systématiquement l'objet
> garage1_o sur OFF après l'ouverture, il faut ajouter le flag 's' dans
> la définition de l'objet garage1_o. (par exemple si la porte s'ouvre
> Ã
> moitié, il n'est pas possible d'envoyer un second ON pour relancer
> l'ouverture si le flag 's' est absent)
>
> Le paramètre flags="f" dans le tag <action ....> n'a aucun effet.
>
> Il reste un point qui peut encore poser problème dans ce cas ci, c'e
> st
> le fait que l'actionlist est, par défaut, de type "on-true", ce qui
> veut dire qu'elle n'est exécutée que lorsque la condition passe de
> "faux" Ã "vrai", or dans ce cas ci la condition est vraie en
> permanence puisqu'on ne reçoit que des ON.
> Deux solutions à ce problème:
> 1) Utiliser <actionlist type="if-true"> Ã la place de <actionlist> (
> ce
> dernier étant équivalent à <actionlist type="on-true">). Dans ce c
> as
> l'actionlist sera exécutée à chaque fois que la condition est
> évaluée
> et que le résultat est "vrai". Et comme grâce au flag 's' sur
> telecomande1_v1, la condition est évaluée à chaque fois qu'un
> télégramme est reçu pour cet objet, l'actionlist sera exécutée Ã
> chaque fois qu'un ON est reçu.
> 2) Comme Ben propose, rajouter <action type="set-value"
> id="telecomande1_v1" value="off" /> dans l'actionlist pour
> réinitialiser l'état de telecomande1_v1.
>
> J'espère que ça clarifie les choses. Je sais que c'est un peu tordu
> parfois, mais c'est le seul moyen que j'ai trouvé pour pouvoir couvr
> ir
> tous les comportements possibles.
>
> A+
>
> Jean-François
>
> On 28 mai, 13:54, Yannick JUPIN <yann...@magikdo.com> wrote:
>> Hmmm bien vu, jessai ça ce soir
>>
>> Cordialement,
>> Yannick
>>
>> Le 28 mai 2010 à 13:42, Ben <tmt....@gmail.com> a écrit :
>>
>>> Dans ton actionlist rajoute <action type="set-value"
>>> id="telecomande1_v1" value="off" /> pour réinitialiser l'état d
>>> e ta
>>> télécommande.
|