Hallo Leute
ich nutze einen Reciver mit Linux, leider funktioniert ein plugin nicht mehr da der anbieter sein Angebot eingestellt hat.
es ist ein script was schon fertig ist und funktioniert hat, ich denke mir mit ein paar kleine Änderungen sollte das wieder laufen.
es handelt sich um ein wetterscript.
Ich bin schon soweit das vom neuen anbieter die daten geladen werden und auf der box gespeichert werden, leider funktioniert das script nicht mehr um in der datei die richtig stelle auszulesen und zu übergeben, ich habe in der telenet console ein systax error.
hier mal das script:
VERSION=Neu
LIC=-1
TRate=0
RATE=60
CITY=Berlin
ICON=
cd /tmp
cp /var/plugins/tuxwet/mybmps.tar.gz /tmp/
while [ -e /tmp/.lcdwetter ]
do
time=`date +'%H:%M'`
[ ! -e /tmp/.lcd_epg.on ] && touch lcd.locked
if [ $TRate -gt 0 ]
then
if [ -e /var/etc/.lcdwetter_time ]; then
wget -q -O /dev/null 'http://localhost/control/lcd?rect=0,0,58,20,1,0&xpos=2&ypos=18&size=30&font=2&text=$time&update=1'
fi
TRate=`expr $TRate - 1`
else
# Wetterdaten holen und uebersetzen
wget -q -O /tmp/lcdwetter.list http://www.google.com/ig/api?weather=$CITY?=&hl=de
sleep 1
sed -i /'prmo'/,/'\/lnks'/d /tmp/lcdwetter.list
sed -i -e s/','/''/g -e s/'\/'/'#'/g -e s/'<'/';'/g -e s/'>'/';'/g /tmp/lcdwetter.list
if [ ! -f /tmp/lcdwetter.list ]; then
echo 'Datei /tmp/lcdwetter.list fehlt'
rm -f /tmp/.lcdwetter
rm -f /tmp/lcd.locked
exit 1
fi
IC=`echo $(cat /tmp/lcdwetter.list) | cut -f 99 -d ';'`
mztemp=`grep 'temp_c' /tmp/lcdwetter.list | cut -d';' -f3`
mlength=`expr length $mztemp`
[ $mlength -eq 1 ] && mztemp='%C2%A0%C2%A0$mztemp'
[ $mlength -eq 2 ] && mztemp='%C2%A0$mztemp'
# LCD-Grafik holen
if [ $LIC -ne $IC -o ! -e /tmp/$ICON$IC.png ]
then
LIC=$IC
cd /tmp
tar -xzf mybmps.tar.gz $ICON$IC.png
fi
if [ -e /var/etc/.lcdwetter_time ]; then
wget -q -O /dev/null 'http://localhost/control/lcd?png=/tmp/$ICON$IC.png&rect=0,28,60,63,0,0&xpos=0&ypos=57&size=43&font=2&text=$mztemp%C2%B0C'
else
wget -q -O /dev/null 'http://localhost/control/lcd?png=/tmp/$ICON$IC.png&rect=0,28,60,63,0,0&xpos=0&ypos=57&size=43&font=2&text=$mztemp%C2%B0C&update=1'
fi
TRate=$RATE
fi
sleep 1
done
# Temporaee Dateien loeschen
rm -f /tmp/lcd.locked
rm -f /tmp/lcdwetter*
rm -f /tmp/mybmps.tar.gz
rm -f /tmp/*.png
das ist die dazugehörige lcdwetter.list:
;?xml version='1.0'?;;xml_api_reply version='1';;weather module_id='0' tab_id='0' mobile_row='0' mobile_zipped='1' row='0' section='0' ;;forecast_information;;city data='Berlin Berlin'#;;postal_code data='Berlin?='#;;latitude_e6 data=''#;;longitude_e6 data=''#;;forecast_date data='2011-11-21'#;;current_date_time data='1970-01-01 00:00:00 +0000'#;;unit_system data='US'#;;#forecast_information;;current_conditions;;condition data='Fog'#;;temp_f data='27'#;;temp_c data='-3'#;;humidity data='Humidity: 100%'#;;icon data='#ig#images#weather#fog.gif'#;;wind_condition data='Wind: NE at 1 mph'#;;#current_conditions;;forecast_conditions;;day_of_week data='Mon'#;;low data='32'#;;high data='41'#;;icon data='#ig#images#weather#mostly_sunny.gif'#;;condition data='Mostly Sunny'#;;#forecast_conditions;;forecast_conditions;;day_of_week data='Tue'#;;low data='30'#;;high data='39'#;;icon data='#ig#images#weather#mostly_sunny.gif'#;;condition data='Mostly Sunny'#;;#forecast_conditions;;forecast_conditions;;day_of_week data='Wed'#;;low data='30'#;;high data='39'#;;icon data='#ig#images#weather#sunny.gif'#;;condition data='Clear'#;;#forecast_conditions;;forecast_conditions;;day_of_week data='Thu'#;;low data='32'#;;high data='39'#;;icon data='#ig#images#weather#fog.gif'#;;condition data='Fog'#;;#forecast_conditions;;#weather;;#xml_api_reply;
der fehler liegt hier irgendwo denke ich:
IC=`echo $(cat /tmp/lcdwetter.list) | cut -f 99 -d ';'`
mztemp=`grep 'temp_c' /tmp/lcdwetter.list | cut -d';' -f1`
die zeile in der lcdwetter.list enthält die daten:
;temp_c data='0'#;
die übergeben werden müssen.
Wer kennt sich da besser aus und kann mit helfen das es wieder seine arbeit tut?
Dennis2424 Gast |