#!/bin/bash #Rapatriement des valeurs depuis api.wunderground.com #D�finition des param�tres de base apikey=48a08328a93a18a1 #pwsid=pws:ILAGACIL2 #trouver le votre sur https://www.wunderground.com/ #pwsid=pws:IBRITTAN2 pwsid=pws:ISAINTGR13 # A adapter selon que vous ayez param�tr� une authentification IPDomoticz=localhost:81 #IPDomoticz=username:password@192.168.x.y:8080 # D�claration des idx des devices cr��s idxTempHumBar=94 idxVent=95 idxPluie=305 idxVisi=97 idxUV=99 idxHum=332 ########################## NE RIEN MODIFIER EN DESSOUS DE CETTE LIGNE ############################### #R�cup�ration des donn�es et isolement des variables temp/relative_hum/pressure_mb #curl -s http://api.wunderground.com/api/48a08328a93a18a1/conditions/q/pws:ISAINTGR13.json? capture=`curl -s http://api.wunderground.com/api/$apikey/conditions/q/$pwsid.json? | grep -E 'temp_c|relative_humidity|wind_dir|wind_degrees|wind_kph|wind_gust_kph|pressure_mb|feelslike_c|visibility_km|UV|precip_1hr_metric|precip_today_metric' | cut -d ':' -f 2 | tr -d '"' | tr -d ','` #D�composition des �l�ments TEMP=`echo $capture | cut -d ' ' -f 1` HUM=`echo $capture | cut -d ' ' -f 2 | cut -d '%' -f 1` WD=`echo $capture | cut -d ' ' -f 3` WB=`echo $capture | cut -d ' ' -f 4` WS=`echo $capture | cut -d ' ' -f 5` WG=`echo $capture | cut -d ' ' -f 6` BAR=`echo $capture | cut -d ' ' -f 7` TEMP_R=`echo $capture | cut -d ' ' -f 8` VISIBILITE=`echo $capture | cut -d ' ' -f 9` UV=`echo $capture | cut -d ' ' -f 10` PLUIE_1H=`echo $capture | cut -d ' ' -f 11` PLUIE_TOTAL=`echo $capture | cut -d ' ' -f 12` echo "La temp�rature est de : "$TEMP" �C" echo "L'humidit� relative est de : "$HUM" %" echo "La pression atmosph�rique est de : "$BAR" hPa" echo "Le vent vient de "$WD" � une vitesse moyenne de "$WS" km/h avec des rafales � "$WG" km/h" echo "La temp�rature ressentie est de : "$TEMP_R" �C" echo "La visibilité est de : "$VISIBILITE" C" #Humidit� relative : indicatif de confort (pourcentage) # 00-040 : sec # 40-065 : confortable # 65-100 : humide if [ "$HUM" -lt 40 ]; then HUM_STAT="2" elif [ "$HUM" -lt 65 ]; then HUM_STAT="1" else HUM_STAT="3" fi # Affichage du r�sultat echo $HUM_STAT #Pression atmosph�rique : tendance m�t�orologique # <1000 hPa : Pluie "4" # 1000-1010 hPa : Nuageux "3" # 1010-1010 hPa : Partiellement nuageux "2" # >1020 hPa : Ensoleill� "1" if [ "$BAR" -lt 1000 ]; then BAR_STAT="4" elif [ "$BAR" -lt 1010 ]; then BAR_STAT="3" elif [ "$BAR" -lt 1020 ]; then BAR_STAT="2" else BAR_STAT="1" fi # Affichage du r�sultat echo $BAR_STAT #Mise � jour du capteur TempHumBar curl -s "http://"$IPDomoticz"/json.htm?type=command¶m=udevice&idx="$idxTempHumBar"&nvalue=0&svalue="$TEMP";"$HUM";"$HUM_STAT";"$BAR";"$BAR_STAT #Mise � jour du capteur Vent curl -s "http://"$IPDomoticz"/json.htm?type=command¶m=udevice&idx="$idxVent"&nvalue=0&svalue="$WB";"$WD";"$WS";"$WG";"$TEMP";"$TEMP_R #Mise � jour du capteur Pluie curl -s "http://"$IPDomoticz"/json.htm?type=command¶m=udevice&idx="$idxPluie"&nvalue=0&svalue="$PLUIE_1H";"$PLUIE_TOTAL #Mise � jour du visibilité curl -s "http://"$IPDomoticz"/json.htm?type=command¶m=udevice&idx="$idxVisi"&nvalue=0&svalue="$VISIBILITE";0" #$VISIBILITE #Mise � jour de UV curl -s "http://"$IPDomoticz"/json.htm?type=command¶m=udevice&idx="$idxUV"&nvalue=0&svalue="$UV";0" #Mise a jour de humidit� curl -s "http://"$IPDomoticz"/json.htm?type=command¶m=udevice&idx="$idxHum"&nvalue="$HUM"&svalue="$HUM_STAT