Action On, quel séparateur entre deux commandes JSON ?
Action On, quel séparateur entre deux commandes JSON ?
Bonjour,
Tout est dans le titre .... Dans Action On d'un interrupteur, je souhaite envoyer deux commandes JSON, quel est le séparateur entre les deux commandes (http:\\...).
Merci d'avance.
Tout est dans le titre .... Dans Action On d'un interrupteur, je souhaite envoyer deux commandes JSON, quel est le séparateur entre les deux commandes (http:\\...).
Merci d'avance.
NUC sous Ubuntu Server / RFXCom / Domoticz Version: 2020.2
Re: Action On, quel séparateur entre deux commandes JSON ?
Bonsoir
A mon avis cela n'existe pas
tu fais un script et tu met l'appel à tes 2 htpp dedans
A mon avis cela n'existe pas
tu fais un script et tu met l'appel à tes 2 htpp dedans
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
Objectif : WAF > 1
-
Chrominator
- Messages : 1042
- Inscription : 19 déc. 2015, 07:29
- Localisation : France
Re: Action On, quel séparateur entre deux commandes JSON ?
La recommandation dans le wiki Domoticz est de faire un script shell par exemple qui lance en batch la commande qui lui est passée en paramètre.
Comme ça le bouton est tout de suite libéré et Domoticz ne passe pas de temps à attendre la fin de l'exécution du script.
cf le paragraphe "Non-Lua Scripts" dans le wiki.
Comme ça le bouton est tout de suite libéré et Domoticz ne passe pas de temps à attendre la fin de l'exécution du script.
cf le paragraphe "Non-Lua Scripts" dans le wiki.
Un bon frein vaut mieux que deux sparadraps.
Ubuntu 24.04.3 LTS - Domoticz 2025.1 (build 16782)
Pentium G3220T 2.6GHz - 4Go DDR3
RFXtrx433 USB Ver Pro1/1043
Z-Stick GEN5 Version: 1.6-1136-g07ea22bb
Rtl433 RTL-SDR receiver
RFLink Gateway
Zigbee SLZB-06
Ubuntu 24.04.3 LTS - Domoticz 2025.1 (build 16782)
Pentium G3220T 2.6GHz - 4Go DDR3
RFXtrx433 USB Ver Pro1/1043
Z-Stick GEN5 Version: 1.6-1136-g07ea22bb
Rtl433 RTL-SDR receiver
RFLink Gateway
Zigbee SLZB-06
Re: Action On, quel séparateur entre deux commandes JSON ?
Pas possible de faire un script lua ? j'y connais rien en shell.
NUC sous Ubuntu Server / RFXCom / Domoticz Version: 2020.2
-
Chrominator
- Messages : 1042
- Inscription : 19 déc. 2015, 07:29
- Localisation : France
Re: Action On, quel séparateur entre deux commandes JSON ?
LUA ? On pourrait, mais ce ne serait pas "naturel".
En réalité ce n'est pas très compliqué ;
Je pars du principe que tu es dans un environnement linux sur un raspberry pi.
A adapter pour d'autres *nux.
En réalité ce n'est pas très compliqué ;
Je pars du principe que tu es dans un environnement linux sur un raspberry pi.
A adapter pour d'autres *nux.
- Tu ouvres un terminal.
- Positionne toi dans le répertoire Domoticz réservé aux scripts :
(le chemin peut varier en fonction de ton installation).
Code : Tout sélectionner
cd /home/pi/domoticz/scripts - Crée un script shell :
Pour te simplifier la tâche on ne va pas utiliser d'éditeur, copie/colle le code suivant dans le terminal et fait entrée.Ce script est fait pour exécuter en tâche de fond toute commande qui lui est passée avec ses paramètres.Code : Tout sélectionner
echo -e '#!/bin/bash\n$@ &\n' > exec.sh - Rend le script exécutable :
Code : Tout sélectionner
chmod +x exec.sh - Dans Domoticz, tu modifies ton bouton dans Action On: avec le json qui va bien.
Par exemple, pour afficher dans le log deux petits textes consécutifs avec 2 json:C'est joli non ?Code : Tout sélectionner
script://execute.sh /usr/bin/curl --url "127.0.0.1:8080/json.htm?type=command¶m=addlogmessage&message=Ok%20Voici%20le%20premier. 127.0.0.1:8080/json.htm?type=command¶m=addlogmessage&message=Ok%20Voila%20le%20second."
Si l'url 127.0.0.1:8080 ne fonctionne pas pour toi, remplace-la par celle que tu utilises d'habitude.
Il est important de ne pas spécifier le protocole, c'est à dire http:// dans l'url sans quoi Domoticz se prend les pieds dans le tapis.
curl va essayer en premier le protocole http, donc on est tout bon.
Tu peux mettre autant de json que tu veux, ils seront exécutés dans l'ordre et en tâche de fond.
Par contre, si l'un deux échoue, les autres seront quand même exécutés.
Un bon frein vaut mieux que deux sparadraps.
Ubuntu 24.04.3 LTS - Domoticz 2025.1 (build 16782)
Pentium G3220T 2.6GHz - 4Go DDR3
RFXtrx433 USB Ver Pro1/1043
Z-Stick GEN5 Version: 1.6-1136-g07ea22bb
Rtl433 RTL-SDR receiver
RFLink Gateway
Zigbee SLZB-06
Ubuntu 24.04.3 LTS - Domoticz 2025.1 (build 16782)
Pentium G3220T 2.6GHz - 4Go DDR3
RFXtrx433 USB Ver Pro1/1043
Z-Stick GEN5 Version: 1.6-1136-g07ea22bb
Rtl433 RTL-SDR receiver
RFLink Gateway
Zigbee SLZB-06
Re: Action On, quel séparateur entre deux commandes JSON ?
Merci d'avoir pris le temps de répondre.
Je suis sous un NAS Synology. Je vais tenter de suivre tes indications. Merci encore.
Je suis sous un NAS Synology. Je vais tenter de suivre tes indications. Merci encore.
NUC sous Ubuntu Server / RFXCom / Domoticz Version: 2020.2
Re: Action On, quel séparateur entre deux commandes JSON ?
Merci , ça marche avec la commande suivante :
Code : Tout sélectionner
script://exec.sh /usr/bin/curl /volume1/@appstore/domoticz/var/scripts/exec.sh --url "xxx.xxx.x.xx:8084/json.htm?type=command¶m=udevice&idx=59&nvalue=0&svalue=16 xxx.xxx.x.xx:8084/json.htm?type=command¶m=udevice&idx=28&nvalue=0&svalue=16"NUC sous Ubuntu Server / RFXCom / Domoticz Version: 2020.2
Re: Action On, quel séparateur entre deux commandes JSON ?
Bonjour,
La commande ci-dessus fonctionnait parfaitement. J'ai procédé à la MAJ de Domoticz cet été (Version: 4.10717) et maintenant seul le premier IDX est impacté. Les autres ne sont pas modifié par l'action. Une idée ? La syntaxe aurait-elle changée ?
La commande ci-dessus fonctionnait parfaitement. J'ai procédé à la MAJ de Domoticz cet été (Version: 4.10717) et maintenant seul le premier IDX est impacté. Les autres ne sont pas modifié par l'action. Une idée ? La syntaxe aurait-elle changée ?
NUC sous Ubuntu Server / RFXCom / Domoticz Version: 2020.2
Re: Action On, quel séparateur entre deux commandes JSON ?
Cette commande marche parfaitement. Elle permet de mettre à 0, 4 compteurs.
Par contre, cette commande ne marche pas, seul le premier dispositif (idx 59) est modifié :
Je sèche .... 
Code : Tout sélectionner
script://exec.sh /usr/bin/curl /home/dd/domoticz/scripts/exec.sh --url "192.168.1.85:8080/json.htm?type=command¶m=udevice&idx=33&nvalue=0&svalue=POWER;ENERGY 192.168.1.85:8080/json.htm?type=command¶m=udevice&idx=50&nvalue=0&svalue=POWER;ENERGY 192.168.1.85:8080/json.htm?type=command¶m=udevice&idx=31&nvalue=0&svalue=POWER;ENERGY 192.168.1.85:8080/json.htm?type=command¶m=udevice&idx=32&nvalue=0&svalue=POWER;ENERGY"Code : Tout sélectionner
script://exec.sh /usr/bin/curl /home/dd/domoticz/scripts/exec.sh --url "192.168.1.85:8080/json.htm?type=command¶m=udevice&idx=59&nvalue=0&svalue=16 192.168.1.85:8080/json.htm?type=command¶m=udevice&idx=28&nvalue=0&svalue=16 192.168.1.85:8080/json.htm?type=command¶m=udevice&idx=60&nvalue=0&svalue=16 192.168.1.85:8080/json.htm?type=command¶m=udevice&idx=61&nvalue=0&svalue=16"NUC sous Ubuntu Server / RFXCom / Domoticz Version: 2020.2
Re: Action On, quel séparateur entre deux commandes JSON ?
Je up au cas où ....
NUC sous Ubuntu Server / RFXCom / Domoticz Version: 2020.2