You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

57 lines
1.6 KiB

#!/bin/sh
eXit() {
echo .
exit $1
}
test -e /var/etc/.lcd-weather || eXit 1
DATA_DIR=/tmp/lcd
DATA_XML=/tmp/weather.xml
if [ -e /var/tuxbox/config/tuxwetter/tuxwetter.conf ]; then
DATA_LOC=$(grep -m1 "Stadt=" /var/tuxbox/config/tuxwetter/tuxwetter.conf | cut -d= -f2 | cut -d, -f2,3)
fi
test -z $DATA_LOC && eXit 1
if [ -e /var/tuxbox/config/tuxwetter/tuxwetter.mcfg ]; then
#MCFG_KEY=$(grep "^LicenseKey=" /var/tuxbox/config/tuxwetter/tuxwetter.mcfg | cut -d= -f2)
MCFG_KEY="32z7znf5z7bwm2nednkyevb7"
fi
test -z $MCFG_KEY && eXit 1
test -d $DATA_DIR || mkdir -p $DATA_DIR
wget -q -O $DATA_XML "http://api.worldweatheronline.com/free/v1/weather.ashx?q=${DATA_LOC}&format=xml&num_of_days=2&key=${MCFG_KEY}"
if [ -e $DATA_XML ]; then
query=$(sed -n 's/.*<query>\(.*\)<\/query>.*/\1\n/p' $DATA_XML)
temp=$(sed -n 's/.*<temp_C>\(.*\)<\/temp_C>.*/\1\n/p' $DATA_XML)
tempmax=$(sed -e 's/<\/tempMaxC>/<\/tempMaxC>\n/g' $DATA_XML | \
sed -n 's/.*<tempMaxC>\(.*\)<\/tempMaxC>.*/\1/p')
iconurls=$(sed -e 's/<\/weatherIconUrl>/<\/weatherIconUrl>\n/g' $DATA_XML | \
sed -n 's/.*<weatherIconUrl>\(.*\)<\/weatherIconUrl>.*/\1/p' | \
sed -e 's/<!\[CDATA\[//g' -e 's/\]\]>//g')
echo "$query" > $DATA_DIR/location
echo "$temp" > $DATA_DIR/temperatures
echo "$tempmax" >> $DATA_DIR/temperatures
rm -f $DATA_DIR/weathericons
for url in $iconurls; do
icon=${url##*/}
echo ${icon:8:4}.png >> $DATA_DIR/weathericons
done
#TODO: fix lan/lon-entrys in $DATA_DIR/location
#http://maps.google.com/maps/geo?output=xml&oe=utf8&ll=(LAT),(LON)&key=asdad&hl=de
rm -f $DATA_XML
fi
eXit 0