Page 1 sur 2

Prévisions de pluie

Publié : 10 mai 2016, 11:26
par totof60
Bonjour à tous .

Je suis nouveau sur ce forum, et y a un truc que je ne comprends pas.
Pour ne pas polluer l'article original http://easydomoticz.com/prvision-pluie/, je me permet de poster ici.

Suite au script de prévision de pluie, je me suis lancé dans l'installation de ce script sur mon Domoticz.
Le script est nommé : pluie.sh et il se trouve dans mon répertoire de Scripts.

Code : Tout sélectionner

#!/bin/bash

pluie=$(curl -s "http://www.meteofrance.com/mf3-rpc-portlet/rest/pluie/604020"|jq -r .niveauPluieText|cut -d ' ' -f7|tr -d '['|tr -d ']'|tr -d ' '|sed 's/ //g')

#echo $pluie

if [ $pluie == "Pas" ]; then
    curl 'http://192.168.1.92:8080/json.htm?type=command&param=switchlight&idx=8&switchcmd=Off&level=0'
else
    curl 'http://192.168.1.92:8080/json.htm?type=command&param=switchlight&idx=8&switchcmd=On&level=0'

fi
Je l'ai activé avec la commande :

Code : Tout sélectionner

 chmod +x pluie.sh
Lorsque je le lance avec la commande ./pluie depuis Putty , l’interrupteur virtuel que j'ai créé passe à "off".
Pour automatiser cela il faut un crontab :

Code : Tout sélectionner

 * * * * *    /home/pi/domoticz/scripts/pluie.sh
Par contre lorsqu'il est lancé en automatique le résultat est "on "
Image

Et je comprend pas pourquoi ?? :roll:

Re: Prévisions de pluie

Publié : 10 mai 2016, 22:20
par Pyrrhus
Salut,
ben déjà je vois pas de paramètre dans ton cron...
Tu veux l'exécuter toutes les minutes ?

Code : Tout sélectionner

 */1 * * * *    /home/pi/domoticz/scripts/pluie.sh
toutes les heures?

Code : Tout sélectionner

 * */1 * * *    /home/pi/domoticz/scripts/pluie.sh
Le script en lui même me semble correct

Re: Prévisions de pluie

Publié : 11 mai 2016, 06:56
par totof60
Merci pour la réponse .
Oui le script semble bon puisqu'il s'exécute avec la commande " ./pluie.sh"
Sur la photo jointe j'ai fait un test de cron toutes les minutes pour voir sur le log le resultat.
La seule fois où le resultat change c'est lorsque je lance le script depuis Putty.

En résumé : le resultat est bon lorsque je lance le script via Putty et est faux lorsque c'est le crontab qui exécute le script.

Re: Prévisions de pluie

Publié : 11 mai 2016, 07:44
par patrice
Oui curieux
Pour debugger dans le script il y a un #$echo pluie
change cette ligne par
$echo pluie >> resultat.txt
qui a pour but de mettre le resultat dans le fichier resultat.txt

puis tu met ca dans crontab tt les minutes (/1)
apres qq temps tu va voir ce que contient resultat.txt et on en reparle

Re: Prévisions de pluie

Publié : 11 mai 2016, 07:45
par patrice
Autoréponse ,

Dans le cas de pluie prevue il y a des valeurs en plus qui font planter le script
"niveauPluieText" : [ "De07h45 à 08h00 : Précipitations faibles", "De08h00 à 08h25 : Précipitations modérées", "De08h25 à 08h45 : Pas de pluie"

, c'est bizarre que je n'ai pas vu cela avant mais je corrige ça des que possible

Re: Prévisions de pluie

Publié : 11 mai 2016, 08:21
par Pyrrhus
Oui, cron est limité dans ses possibilités de lecture de script par rapport au "user"... C'est pour cela que le script marche quand c'est toi qui le lance, et moins bien avec cron. Enlève les caractères spéciaux à coup de "sed" ! Peut etre qu'il faudra aussi remplacer les lettres accentuées par les lettres sans accent...

Re: Prévisions de pluie

Publié : 11 mai 2016, 08:48
par totof60
J'ai modifié le script avec :

Code : Tout sélectionner

 #$echo pluie > resultat.txt

ou

Code : Tout sélectionner

 $echo pluie > resultat.txt
ou

Code : Tout sélectionner

#$echo pluie >> resultat.txt
Le fichier resultat.txt se crée bien mais il est vide à chaque fois.





ps : ce qu'il y a bien dans ce petit exercice c'est que je vais apprendre plein de truc !!

Re: Prévisions de pluie

Publié : 11 mai 2016, 09:23
par Pyrrhus
C'est

Code : Tout sélectionner

echo "$pluie" >/resultat.txt
pour avoir juste le dernier log

Code : Tout sélectionner

echo "$pluie" >>/resultat.txt
pour avoir tous les log de chaque minute

Re: Prévisions de pluie

Publié : 11 mai 2016, 09:28
par totof60
Pyrrhus a écrit :Salut,
ben déjà je vois pas de paramètre dans ton cron...
Tu veux l'exécuter toutes les minutes ?
oui pour les tests j'ai choisis toutes les minutes

Re: Prévisions de pluie

Publié : 11 mai 2016, 20:46
par patrice
Bonsoir
J'ai modifié le script pour qu'il prenne en compte les multiples valeurs renvoyées en cas de pluis , je n'ai pas pu tester ce soir car je n'ai pas de pluie annocée chez moi
a vous de me dire si ça marche
j'ai mis l'article du blog à jour http://easydomoticz.com/prvision-pluie/