Hi,
ich hoffe es kann mir jemand von Euch helfen. Ich versuche nun schon seit einigen Tagen aus einem Reading eine Tabelle zu erstellen. Dazu habe ich mir eine ReadingGroup erstellt und es funktioniert soweit auch alles. Ich habe nur ein kleines Problem wenn ein Leerzeichen im Reading vorkommt. Dann wird nämlich das Icon nicht dargestellt. Ist kein Leerzeichen im Reading funktioniert alles so wie es soll.
Hier mal ein paar Copy & Paste Beispiele von einem Reading die ich gerne als Icons darstellen würde....
fc0_weatherDay: stark bewoelkt ---> funktioniert nicht
fc1_weatherNight: Nebel ---> funktioniert
fc1_weatherMorning: bedeckt ---> funktioniert
Und hier wäre die Definition in fhem....
valueIcon { if( ( $VALUE =~ /bedeckt|wolkig|heiter|Schneefall|Nebel|Regen|stark bewoelkt/ ) && (index($READING,"Day") >= 0 || index($READING,"Evening") >= 0 || index($READING,"Morning") >= 0) ){$VALUE = "Tag_$VALUE"}elsif( ( $VALUE =~ /bedeckt|wolkig|heiter|Schneefall|Nebel|Regen|stark bewoelkt/ ) && (index($READING,"Night") >= 0 || index($READING,"Evening") >= 0 || index($READING,"Morning") >= 0) ){$VALUE = "Nacht_$VALUE"} }
So heißen die Files die ich gerne als Icons darstellen würde...
pi@raspberrypi /opt/fhem/www/images/openautomation $ ls -l *bewoelkt.gif
-rw-rw-rw- 1 fhem root 624 Jan 1 01:26 Nacht_stark bewoelkt.gif
-rw-rw-rw- 1 fhem root 624 Jan 1 00:24 Nacht_stark_bewoelkt.gif
-rw-rw-rw- 1 fhem root 637 Jan 1 01:26 Tag_stark bewoelkt.gif
-rw-rw-rw- 1 fhem root 637 Jan 1 00:25 Tag_stark_bewoelkt.gif
Dargestellt wird das ganze so wie im Attachment (Wetter1.jpg) zu sehen ist.
Ich hab das auch schon mit Underlines probiert. Da würde der Code in etwa so aussehen
valueIcon { if( ( $VALUE =~ /bedeckt|wolkig|heiter|Schneefall|Nebel|Regen|stark bewoelkt/ ) && (index($READING,"Day") >= 0 || index($READING,"Evening") >= 0 || index($READING,"Morning") >= 0) ){$VALUE = "Tag_$VALUE"; $VALUE =~ s/ /_/}elsif( ( $VALUE =~ /bedeckt|wolkig|heiter|Schneefall|Nebel|Regen|stark bewoelkt/ ) && (index($READING,"Night") >= 0 ) ){$VALUE = "Nacht_$VALUE"; $VALUE =~ s/ /_/} }
Aber da komme ich auch nicht weiter.
Danke schonmal im vorhinein für jede Hilfe.
lg Karl.
Leerzeichen im Text lassen sich am einfachsten mit
 
darstellen. Einfach anstatt der Leerstelle verwenden.
gruß
nobbi
Hi,
danke für die schnelle Antwort. Dein Tip hat zwar nicht direkt geholfen aber ich hab dadurch eine andere Idee gehabt wie ich das lösen könnte.
Ich hab den Code umgeändert und jetzt funktioniert.
{ if( ( $VALUE =~ /bedeckt|wolkig|heiter|Schneefall|Nebel|Regen/ ) && ( $READING =~ /Morning|Day|Evening/ ) ){$VALUE = "Tag_$VALUE"}elsif( ( $VALUE =~ /bedeckt|wolkig|heiter|Schneefall|Nebel|Regen/ ) && ( $READING =~ /Night/ ) ){$VALUE = "Nacht_$VALUE"}elsif( ( $VALUE =~ /stark bewoelkt/ ) && ( $READING =~ /Morning|Day|Evening/ ) ){$VALUE = "Tag_stark_bewoelkt"}elsif( ( $VALUE =~ /stark bewoelkt/ ) && ( $READING =~ /Night/ ) ){$VALUE = "Nacht_stark_bewoelkt"} }
Trotzdem danke für Deine Hilfe sonst wär ich wahrscheinlich noch ein paar Tag davor gesessen :D.
lg Karl.