Merci Neutrino pour ton commentaire.
Je souhaitais éviter de me lancer dans l'étude des scripts bash et autres, mais je crois que je ne pouvais pas y couper..
Du coup, j'ai commencé à étudier ce language de script et en m'inspirant du tien, j'ai pu produire ce script, qui marche (à peu près):
Code : Tout sélectionner
#!/bin/bash
# Settings - Edit to your situation
DOMO_IP="192.168.1.123" # Domoticz IP Address
DOMO_PORT="8080" # Domoticz Port
Monter_IDX=11 # numéro ID de l interrupteur du relais
Droit_IDX=12
Descendre_IDX=13
Stop_IDX=14
duree=1
num_volet=$1
commande=$2
COUNTER=1
while [ $COUNTER -le $num_volet ]; do
#echo The counter is $COUNTER
#Bouton droit On
curl -s "http://$DOMO_IP:$DOMO_PORT/json.htm?type=command¶m=switchlight&idx=$Droit_IDX&switchcmd=On"
# tempo de longueur duree
perl -e "select(undef,undef,undef,$duree);"
let COUNTER=COUNTER+1
done
#if [commande = "Monter" ]
# then
# action=Monter_IDX
#fi
case $commande in
Monter)
action=$Monter_IDX
;;
Descendre)
action=$Descendre_IDX
;;
Stop)
action=$Stop_IDX
;;
*)
echo 'inconnu'
;;
esac
#Bouton Haut/Bas/Stop On
curl -s "http://$DOMO_IP:$DOMO_PORT/json.htm?type=command¶m=switchlight&idx=$action&switchcmd=On"
Je lance le script avec des arguments (numéro du volet puis commande à exécuter), du style:
script:///home/pi/domoticz/scripts/bash/volets.sh 6 Monter
Ca pourra peut-être aider d'autres personnes qui comme moi ont une télécommande NICE ERGO6.
Ca marche pas mal, mais j'ai tout de même quelques ratés. Par exemple, j'entends parfois que les "clic" de mes relais ne sont pas réguliers, comme si le raspberry était occupé à autre chose et envoyait la commande avec retard.. Du coup, il arrive que certaines commandes soient ratées. D'ailleurs, si je diminue le délai entre 2 commandes, ça augmente les ratées.. et si j'augmente, pareil.. (alors que le ZK1PA indique le mode "push button" dure 0.5s entre le "clic" et le "clac")
Je savais que ma bidouille n'était pas fiable à 100%, mais je suis étonné que le raspberry puisse être "saturé" avec mon installation domotique somme toute assez sommaire. Y at-t-il des choses que je puisse vérifier pour m'assurer que mon raspberry est en bonne santé ? (un truc bizarre, d'ailleurs: quand je me connecte via putty, le login apparaît très vite, mais le prompt de mot de passe met plusieurs secondes à s'afficher.. normal ?)
Autre question: la commande "perl -e "select(undef,undef,undef,$duree);" est-elle meilleure que d'autres (je crois avoir vu des Sleep() ou Wait() , ou alors je mélange avec d'autres scripts) ? ESt-ce qu'elle "gèle" tout le raspberry, ou bien le raspberry continue de tourner en parallèle ?
Merci,
Ricorico94