Forum KNX francophone / English KNX forum
Linknx forcer execution d'un script - Version imprimable

+- Forum KNX francophone / English KNX forum (https://www.knx-fr.com)
+-- Forum : Français (https://www.knx-fr.com/forumdisplay.php?fid=3)
+--- Forum : Archives eib-domotique (https://www.knx-fr.com/forumdisplay.php?fid=8)
+--- Sujet : Linknx forcer execution d'un script (/showthread.php?tid=342)



Linknx forcer execution d'un script - kraven - 31/12/2010

Bonjour,

J'ai un bouton poussoir qui envoie une valeur de 1 dans une adresse de
groupe.
Dans linknx j'ai cette objet :

<object id="music_cuisine_PLAY_TOPMUSIC" gad="8/0/3"
flags="cwtuf">Musique cuisine play Top Music</object>

et cette règle :

<rule id="radio cuisine play Top Music">
<condition type="object" id="music_cuisine_PLAY_TOPMUSIC" value="1"
trigger="true"/>
<actionlist>
<action type="script">
socket = require('socket');
client = socket.connect('192.168.1.150',9090);
clientConfusedend("00:04:20:17:38:0c favorites playlist play item_id:
1.1\n");
client:close();
</action>
</actionlist>
</rule>

La première pression sur le poussoir lance bien ma radio mais les fois
suivante non. Existe t-il une astuce pour que Linknx exécute le script
chaque fois que j'envoie la valeur sur le bus même si celle-ci ne
change pas?

Merci,

Christophe


Linknx forcer execution d'un script - Anthony PENHARD - 31/12/2010

Bonjour,

si je ne me trompe pas ton objet est de type type="1.001"
donc les valeurs son on/off (a priori avec "1" ça a l'air de fonctionner)
essai en forçant à off ton objet comme ça :

<rule id="radio cuisine play Top Music">
<condition type="object" id="music_cuisine_PLAY_ TOPMUSIC" value="on"
trigger="true"/>
<actionlist>
<action type="script">socket = require('socket'); client =
socket.connect('192.168.1.150',9090); clientConfusedend("00:04:20:17:38:0c
favorites playlist play item_id: 1.1\n"); client:close();</action>
<action type="set-value" id="music_cuisine_PLAY_TOPMUSIC" value="off"/>
</actionlist>
</rule>

@+
Anthony.

Le 31 décembre 2010 10:16, kraven <ohl.christophe@gmail.com> a écrit :

> Bonjour,
>
> J'ai un bouton poussoir qui envoie une valeur de 1 dans une adresse de
> groupe.
> Dans linknx j'ai cette objet :
>
> <object id="music_cuisine_PLAY_TOPMUSIC" gad="8/0/3"
> flags="cwtuf">Musique cuisine play Top Music</object>
>
> et cette règle :
>
> <rule id="radio cuisine play Top Music">
> <condition type="object"
> id="music_cuisine_PLAY_TOPMUSIC" value="1"
> trigger="true"/>
> <actionlist>
> <action type="script">
> socket = require('socket');
> client = socket.connect('192.168.1.150',9090);
> clientConfusedend("00:04:20:17:38:0c favorites playlist
> play item_id:
> 1.1\n");
> client:close();
> </action>
> </actionlist>
> </rule>
>
> La première pression sur le poussoir lance bien ma radio mais les fois
> suivante non. Existe t-il une astuce pour que Linknx exécute le script
> chaque fois que j'envoie la valeur sur le bus même si celle-ci ne
> change pas?
>
> Merci,
>
> Christophe
>


Linknx forcer execution d'un script - kraven - 31/12/2010

Super merci ca marche pour le cas présent.

Par contre il faudrait quand meme que je puisse forcer le script si la
valeur ne change pas pour la gestion du volume.

A+

On 31 déc, 10:50, Anthony PENHARD <a.penh...@gmail.com> wrote:
> Bonjour,
>
> si je ne me trompe pas ton objet est de type type="1.001"
> donc les valeurs son on/off (a priori avec "1" ça a l'air de fonctionner)
> essai en forçant à off ton objet comme ça :
>
> <rule id="radio cuisine play Top Music">
>   <condition type="object" id="music_cuisine_PLAY_ TOPMUSIC" value="on"
> trigger="true"/>
>   <actionlist>
>     <action type="script">socket = require('socket'); client =
> socket.connect('192.168.1.150',9090); clientConfusedend("00:04:20:17:38:0c
> favorites playlist play item_id: 1.1\n"); client:close();</action>
>     <action type="set-value" id="music_cuisine_PLAY_TOPMUSIC" value="off"/>
>   </actionlist>
> </rule>
>
> @+
> Anthony.
>
> Le 31 décembre 2010 10:16, kraven <ohl.christo...@gmail.com> a écrit :
>
>
>
> > Bonjour,
>
> > J'ai un bouton poussoir qui envoie une valeur de 1 dans une adresse de
> > groupe.
> > Dans linknx j'ai cette objet  :
>
> > <object id="music_cuisine_PLAY_TOPMUSIC" gad="8/0/3"
> > flags="cwtuf">Musique cuisine play Top Music</object>
>
> > et cette règle :
>
> > <rule id="radio cuisine play Top Music">
> >                        <condition type="object"
> > id="music_cuisine_PLAY_TOPMUSIC" value="1"
> > trigger="true"/>
> >                        <actionlist>
> >                        <action type="script">
> >                        socket = require('socket');
> >                        client = socket.connect('192.168.1.150',9090);
> >                        clientConfusedend("00:04:20:17:38:0c favorites playlist
> > play item_id:
> > 1.1\n");
> >                        client:close();
> >                        </action>
> >                        </actionlist>
> > </rule>
>
> > La première pression sur le poussoir lance bien ma radio mais les fois
> > suivante non. Existe t-il une astuce pour que Linknx exécute le script
> > chaque fois que j'envoie la valeur sur le bus même si celle-ci ne
> > change pas?
>
> > Merci,
>
> > Christophe- Masquer le texte des messages précédents -
>
> - Afficher le texte des messages précédents -


Linknx forcer execution d'un script - jef2000 - 31/12/2010

Salut,

Si tu as la version 0.0.1.27, tu peux utiliser <actionlist type="if-
true"> a la place de <actionlist>, de cette manière, la liste
d'actions est exécutée chaque fois que la condition est évaluée à
"true" et pas uniquement lorsque la condition passe de "false" a
"true"

Bonne année 2011 avec un peu d'avance,

Jean-François

On 31 déc, 15:11, kraven <ohl.christo...@gmail.com> wrote:
> Super merci ca marche pour le cas présent.
>
> Par contre il faudrait quand meme que je puisse forcer le script si la
> valeur ne change pas pour la gestion du volume.
>
> A+
>
> On 31 déc, 10:50, Anthony PENHARD <a.penh...@gmail.com> wrote:
>
> > Bonjour,
>
> > si je ne me trompe pas ton objet est de type type="1.001"
> > donc les valeurs son on/off (a priori avec "1" ça a l'air de fonctionner)
> > essai en forçant à off ton objet comme ça :
>
> > <rule id="radio cuisine play Top Music">
> >   <condition type="object" id="music_cuisine_PLAY_ TOPMUSIC" value="on"
> > trigger="true"/>
> >   <actionlist>
> >     <action type="script">socket = require('socket'); client =
> > socket.connect('192.168.1.150',9090); clientConfusedend("00:04:20:17:38:0c
> > favorites playlist play item_id: 1.1\n"); client:close();</action>
> >     <action type="set-value" id="music_cuisine_PLAY_TOPMUSIC" value="off"/>
> >   </actionlist>
> > </rule>
>
> > @+
> > Anthony.
>
> > Le 31 décembre 2010 10:16, kraven <ohl.christo...@gmail.com> a écrit :
>
> > > Bonjour,
>
> > > J'ai un bouton poussoir qui envoie une valeur de 1 dans une adresse de
> > > groupe.
> > > Dans linknx j'ai cette objet  :
>
> > > <object id="music_cuisine_PLAY_TOPMUSIC" gad="8/0/3"
> > > flags="cwtuf">Musique cuisine play Top Music</object>
>
> > > et cette règle :
>
> > > <rule id="radio cuisine play Top Music">
> > >                        <condition type="object"
> > > id="music_cuisine_PLAY_TOPMUSIC" value="1"
> > > trigger="true"/>
> > >                        <actionlist>
> > >                        <action type="script">
> > >                        socket = require('socket');
> > >                        client = socket.connect('192.168.1.150',9090);
> > >                        clientConfusedend("00:04:20:17:38:0c favorites playlist
> > > play item_id:
> > > 1.1\n");
> > >                        client:close();
> > >                        </action>
> > >                        </actionlist>
> > > </rule>
>
> > > La première pression sur le poussoir lance bien ma radio mais les fois
> > > suivante non. Existe t-il une astuce pour que Linknx exécute le script
> > > chaque fois que j'envoie la valeur sur le bus même si celle-ci ne
> > > change pas?
>
> > > Merci,
>
> > > Christophe- Masquer le texte des messages précédents -
>
> > - Afficher le texte des messages précédents -
>
>


Linknx forcer execution d'un script - kraven - 01/01/2011

Merci Jeff ta solution fonctionne à merveille.
A priori le wiki de linknx n'est pas à jour car je n'ai pas trouvé
cette fonction. Existe t'il un fichier reprenant toute les
fonctionnalité de Linknx?

A+ et bonne année 2011 à tous.

On 31 déc 2010, 16:23, jef2000 <jef2...@ouaye.net> wrote:
> Salut,
>
> Si tu as la version 0.0.1.27, tu peux utiliser <actionlist type="if-
> true"> a la place de <actionlist>, de cette manière, la liste
> d'actions est exécutée chaque fois que la condition est évaluée à
> "true" et pas uniquement lorsque la condition passe de "false" a
> "true"
>
> Bonne année 2011 avec un peu d'avance,
>
> Jean-François
>
> On 31 déc, 15:11, kraven <ohl.christo...@gmail.com> wrote:
>
>
>
>
>
>
>
> > Super merci ca marche pour le cas présent.
>
> > Par contre il faudrait quand meme que je puisse forcer le script si la
> > valeur ne change pas pour la gestion du volume.
>
> > A+
>
> > On 31 déc, 10:50, Anthony PENHARD <a.penh...@gmail.com> wrote:
>
> > > Bonjour,
>
> > > si je ne me trompe pas ton objet est de type type="1.001"
> > > donc les valeurs son on/off (a priori avec "1" ça a l'air de fonctionner)
> > > essai en forçant à off ton objet comme ça :
>
> > > <rule id="radio cuisine play Top Music">
> > >   <condition type="object" id="music_cuisine_PLAY_ TOPMUSIC" value="on"
> > > trigger="true"/>
> > >   <actionlist>
> > >     <action type="script">socket = require('socket'); client =
> > > socket.connect('192.168.1.150',9090); clientConfusedend("00:04:20:17:38:0c
> > > favorites playlist play item_id: 1.1\n"); client:close();</action>
> > >     <action type="set-value" id="music_cuisine_PLAY_TOPMUSIC" value="off"/>
> > >   </actionlist>
> > > </rule>
>
> > > @+
> > > Anthony.
>
> > > Le 31 décembre 2010 10:16, kraven <ohl.christo...@gmail.com> a écrit :
>
> > > > Bonjour,
>
> > > > J'ai un bouton poussoir qui envoie une valeur de 1 dans une adresse de
> > > > groupe.
> > > > Dans linknx j'ai cette objet  :
>
> > > > <object id="music_cuisine_PLAY_TOPMUSIC" gad="8/0/3"
> > > > flags="cwtuf">Musique cuisine play Top Music</object>
>
> > > > et cette règle :
>
> > > > <rule id="radio cuisine play Top Music">
> > > >                        <condition type="object"
> > > > id="music_cuisine_PLAY_TOPMUSIC" value="1"
> > > > trigger="true"/>
> > > >                        <actionlist>
> > > >                        <action type="script">
> > > >                        socket = require('socket');
> > > >                        client = socket.connect('192.168.1.150',9090);
> > > >                        clientConfusedend("00:04:20:17:38:0c favorites playlist
> > > > play item_id:
> > > > 1.1\n");
> > > >                        client:close();
> > > >                        </action>
> > > >                        </actionlist>
> > > > </rule>
>
> > > > La première pression sur le poussoir lance bien ma radio mais les fois
> > > > suivante non. Existe t-il une astuce pour que Linknx exécute le script
> > > > chaque fois que j'envoie la valeur sur le bus même si celle-ci ne
> > > > change pas?
>
> > > > Merci,
>
> > > > Christophe- Masquer le texte des messages précédents -
>
> > > - Afficher le texte des messages précédents -


Linknx forcer execution d'un script - jef2000 - 01/01/2011

> A priori le wiki de linknx n'est pas à jour car  je n'ai pas trouvé
> cette fonction. Existe t'il un fichier reprenant toute les
> fonctionnalité de Linknx?

Non, c'est bien ça le souci ;-)