Nachlese zum RSS Workshop - Zeigt her Eure Ergebnisse!

Begonnen von betateilchen, 18 April 2014, 20:09:20

Vorheriges Thema - Nächstes Thema

betateilchen

Du musst den Text von utf8 nach latin1 konvertieren.

text .50 425 { utf8ToLatin1(ReadingsVal("gds","a_headline","")) }
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

JoMe

Hallo,

DANKESCHÖN.......

das war's,

Gruß,
Joachim
CubieTruck, Fhem 5.5, 2x CUL(868), FHZ1350, Wlan, FS20, HM-LAN, HM, KS300, MAX!, EM1000, Hue, LW12, Sonos

betateilchen

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

JoWiemann

Hallo,

und hier jetzt meine Müll-Lösung.

Eine kleine Sub in der myUtils.pm


# ------------------------------------------------------------------------------------
# Funktion für Müllkalender in RSS
# 1. Parameter für Tag
# 2. Parameter für Rückgabebereich
# 3. Index des Muellereignisses. Normalerweise eines pro Tag
# ------------------------------------------------------------------------------------
sub
muell_da($$$)
{
  my $tag = shift; # [H]eute, [M]orgen, [U]ebermorgen, [E]Ueberuebermorgen
  my $ret = shift; # Rückgabewert: [T]est ob Muell; 0 == Kein Muell oder Index, [D]ateiname der Grafik, [H]ilfstext für Müll
  my $ind = shift; # [1..5]
  my $datei ="/usr/share/fhem/www/images/muell/"; # Pfad zum Clipart
  my $text = "";
  my $Ergebnis = "";
  my @muell;
 
  if ($tag eq "H") {
      $Ergebnis = fhem("get Abfall ".strftime("%m-%d",localtime(time)));
  } elsif ($tag eq "M") {
      $Ergebnis = fhem("get Abfall ".strftime("%m-%d",localtime(time + 86400))); 
  } elsif ($tag eq "U") {
      $Ergebnis = fhem("get Abfall ".strftime("%m-%d",localtime(time + 172800)));
  } elsif ($tag eq "E") {
      $Ergebnis = fhem("get Abfall ".strftime("%m-%d",localtime(time + 259200))); 
  } else {
      $Ergebnis = "Bio-Tonne,Restmuell"; # zum Testen
  }

  @muell=split(/\,/,$Ergebnis);
  my $arrSize = @muell;
 
  $ind = $ind - 1;
  if ($ind < 0) {
    return 0;
  }
  $Ergebnis = @muell[$ind];

  if ($Ergebnis ne 'none') {
    if ($ret eq "T") {
      return $arrSize;
    }
    if ($Ergebnis =~ m/Alt/i) {
      $datei = $datei . "gt_blau.png";
      $text = 'Blau';
    } elsif ($Ergebnis =~ m/Gelb/i) {
      $datei = $datei . "gt_gelb.png";
      $text = 'Gelb';
    } elsif ($Ergebnis =~ m/Rest/i) {
      $datei = $datei . "gt_rest.png";
      $text = 'Rest';
    } elsif ($Ergebnis =~ m/Bio/i) {
      $datei = $datei . "gt_braun.png";
      $text = 'Bio';
    } elsif ($Ergebnis =~ m/Schad/i) {
      $datei = $datei . "gt_wert.png";
      $text = 'Wert';
    } else {
      $datei = '';
      $text = '';
    }
    if ($ret eq "D") {
      return $datei;
    } else {
      return $text;
    }
  } else {
    return 0
  }
  return 0
}


Und folgende Einträge in der rss.layout


#--------------------
# Mülltonne
#
condition 1
#text 80 600 "heute"
#text 150 600 "morgen"

ihalign "center"
ivalign "bottom"
halign "center"

img 50 140 0.8 png file "/usr/share/fhem/www/images/muell/mwagen.png"

# Muell Heute
condition {(muell_da("H","T",1) == 1)}
img 210 140 0.8 png file {muell_da("H","D",1)}
text 210 120 {muell_da("H","H",1)}

condition {(muell_da("H","T",1) == 2)}
img 190 140 0.8 png file {muell_da("H","D",1)}
text 190 120 {muell_da("H","H",1)}
img 220 140 0.8 png file {muell_da("H","D",2)}
text 220 120 {muell_da("H","H",2)}

# Muell Morgen
condition {(muell_da("M","T",1) == 1)}
img 500 140 0.8 png file {muell_da("M","D",1)}
text 500 120 {muell_da("M","H",1)}

condition {(muell_da("M","T",1) == 2)}
img 480 140 0.8 png file {muell_da("M","D",1)}
text 480 120 {muell_da("M","H",1)}
img 510 140 0.8 png file {muell_da("M","D",2)}
text 510 120 {muell_da("M","H",2)}

# Muell Uebermorgen
condition {(muell_da("U","T",1) == 1)}
img 600 140 0.8 png file {muell_da("U","D",1)}
text 600 120 {muell_da("U","H",1)}

condition {(muell_da("U","T",1) == 2)}
img 580 140 0.8 png file {muell_da("U","D",1)}
text 580 120 {muell_da("U","H",1)}
img 610 140 0.8 png file {muell_da("U","D",2)}
text 610 120 {muell_da("U","H",2)}

# Muell Ueber-Uebermorgen
condition {(muell_da("E","T",1) == 1)}
img 700 140 0.8 png file {muell_da("E","D",1)}
text 700 120 {muell_da("E","H",1)}

condition {(muell_da("E","T",1) == 2)}
img 680 140 0.8 png file {muell_da("E","D",2)}
text 680 120 {muell_da("E","H",1)}
img 710 140 0.8 png file {muell_da("E","D",2)}
text 710 120 {muell_da("E","H",1)}

condition 1


Damit werden bei zwei Leerungen am Tag auch zwei Mülltonnen dargestellt.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

betateilchen

halign und valign sollte man nicht mehr verwenden, die sind nur noch aus Kompatibilitätsgründen vorhanden.

Es ist immer sicherer, mit den für Images und Text getrennt zu definierenden ihalign und thalign zu arbeiten.

(und irgendwie hab ich das Gefühl, das mit den zwei Leerungen pro Tag könnte man auch einfacher lösen...)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

JoWiemann

Danke für den Hinweis zu halign / valign.

Dein Gefühl teile ich, allerdings fehlt noch der Geistesblitz

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

peterli1961

Hallo
hier meine zusammen geklickte schweizer Lösung
mir gefälltes  :D

Dank dem Workshop und anderen Beiträgen war es mir möglich, ohne Fragen, dies zu realisieren.  ;)

Als Tablett setzte ich einen Prestigio 8" ein mit einer Auflösung von 1024 x 720
Der Browser ist Dolphin mit Tab Reload 

flocki

Hallo

hier ist mein "Werk" nach mehreren Tagen Arbeit, muss zwar noch ein wenig dran geschliffen werden, aber ..

Mit Wetterwarnungen, Wetterkarten, Müllabholterminen.

Eine eigene Seite zum Schalten aller Funksteckdosen und den Floorplan einzubinden (für beide Seiten generiere ich eine png Datei mit RSS wo nur der Kopf als Inhalt ist und der Rest ist schwarz, damit passen die beiden Seiten zum Rest)

Das ganze hat bei mir eine Auflösung von 975x560 pixeln und läuft mit der APP Webviewcontrol auf einem Archos Tablett.
(Leider funktioniert damit IFRAME scheinbar nicht da der Floorplan nicht angezeigt wird)

moonsorrox

#38
Hallo

ich habe nun nach einigen Stunden/Tagen zwei (fast) fertige Seiten nur muss noch einiges an Arbeit rein gesteckt werden...
Die Wetterwarnungen funktionieren schon, die Wetterkarten werde ich noch gesondert machen, weil ich noch nicht weiß welche hier für mich sinnvoll sind... sieht ja schick aus diese Karten  8)

Was ich noch gar nicht so richtig auf die Reihe bekomme sind die Müllabholtermine, da weiß ich noch nicht richtig wo ich anfangen soll und nach welchen Kalender ich mich da richten soll... steht zwar schon etwas in der Anzeige, aber da habe ich nur als Text, funktioniert noch nicht automatisch... ;)

Aktualisierter Screenshot mit Fhem Up und Cubie Up Time sowie funktionierenden Müllkalender... der mir einen Sack anzeigt wenn Müll morgen und einen zweiten Sack dazu wenn Müll heute, dazu erscheint die Schrift für heute dann in "grün"
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

flocki

#39

Hallo Moonsorrox
Wo hast du die Grafiken der Säcke  her? Die gefallen mir gut.

Zitat
Was ich noch gar nicht so richtig auf die Reihe bekomme sind die Müllabholtermine, da weiß ich noch nicht richtig wo ich anfangen soll und nach welchen Kalender ich mich da richten soll... steht zwar schon etwas in der Anzeige, aber da habe ich nur als Text, funktioniert noch nicht automatisch... ;)

Ist doch eigentlich ganz Einfach, hie rmal wie ich es gemacht habe.

1. du erstellst dir eine abfall.holiday Datei mit Inhalt (z.B tippst du hier deine Tage aus dem Abfuhrkalener ein)
# Format für einzelne Tage: 1 MM-DD
1 05-27 blau-grau
.........

2. define abfall holiday (um die Readings in der RSS Datei zu benutzen)

3. Die Readings deiner abfall.holiday in RSS ausgeben lassen
# Grafiken Termine in abfall.holiday
condition { (ReadingsVal("abfall","tomorrow","") eq 'blau') }
img x y 0.8 png file "/opt/fhem/www/images/eigene/t_blau.png"

So habe ich es gemacht, eigentlich ganz einfach wenn man mal "dahinter gestiegen ist"
VG flocki

P.S. Für Abholung von 2 Mülltonnen am Tag habe ich einfach eine Grafik Blau-grau erstellt die ich dann Abfrage ( Papier und Restmüll), bis mir was besseres einfällt reicht das.

moonsorrox

Zitat von: flocki am 05 Juni 2014, 21:08:09
Hallo Moonsorrox
Wo hast du die Grafiken der Säcke  her? Die gefallen mir gut.

weiß ich nicht mehr kann ich dir aber geben..! den gelben habe ich raus geladen und den grauen angepasst von der Farbe her, der ist aber nicht so gut geworden weil ich nicht das richtige Programm dafür hatte.
Ich habe jetzt mal im Diskussions Thread weiter geschrieben weil etwas mit dem Müll noch nicht geht..
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

StefanP

Hallo,
spät aber doch: nach viel Bastelei möchte ich nun auch mal mein RSS vorzeigen.
In der oberen Infozeile tauchen neben dem fhem-Icon bei Bedarf Warnsymbole für Batterie und Humidor auf.
Hinter den drei Bildern liegen Links zu den zugrundeliegenden Seiten.
Die Infos der drei unteren Kästen sind noch nicht so richtig schön und werden sich auch wahrscheinlich noch mindestens um Verbrauchsdaten von Gas/Heizung/KWK/Wasser erweitern (irgendwann).
Im unteren Bereich ist der Kurztext der DWD-Warnung (leider immer nur die erste) und die Müll-Erinnerung zu sehen. Je nach abgeholten Tonnen werden verschiedene Hintergründe eingeblendet. Da die Müllanzeige nur von Sonntagmittag bis Montagmittag aktiv ist habe ich auf einen Hinweis à la "heute"/"morgen" verzichtet. Nur der Grünabfall und der Sperrmüll hat einen Countdown mit sieben Tagen. Ich habe zur Vorführung mal den Müll-Gau mit allem simuliert. Die Konstellation gleichzeitige Abholung grüner Punkt und Altpapier gleichzeitig existiert bei uns nicht, deshalb hat die gelbe und blaue "Aura" denselben Durchmesser. Sollte das in Zukunft jemals vorkommen, mache ich aus der gelben Ellipse vielleicht eine Sonne.
Neben den Fenster-Status können noch Symbole für Batterie und Sabotage auftauchen; die Schrift wird dann Rot. Ebenso ändert sich die Schriftfarbe für den Humidor bei zu großer Abweichung vom Idealwert nach gelb oder rot.
Gut, dass es den Workshop gab, sonst hätte ich das niemals angefangen.

Hoffe es gefällt.

Gruß StefanP

DJ-Mix

so hier mal mein Ergebnis . . . . . (Bisher)  :D

Erst mal die Übersicht und das Panel

alle weiteren Unterseiten folgen . . . .

Gruß
Markus
FHEM - RaspberryPi/Fritz!Box 7390 - 1x HM-CFG-LAN - 3x HM-CC-RT-DN - 3x HM-LC-Bl1PBU-FM - 1x HM-LC-Sw1PBU-FM

earkle

Hier mal mein erster Versuch.

Schlicht und einfach. Im Bereich "Heizung" verfärben sich die Räume Gelb je nachdem welches der Regelraum ist (wenn die Heizung an ist- Nachts das Schlafzimmer unseres Sohnes und Tagsüber das Wohnzimmer). Wenn die Therme aktiv ist wird auch noch das Wort Heizung Gelb.
Im rechten Bereich erscheinen dann noch verschiedene Meldungen und unten erscheinen Icons wenn Waschmaschine, etc. aktiv sind.

Gruß

Andreas
Rspberry Pi, Cul, FHEM, Relaiskarte, mehrere DS1820 zur Temperaturmessung, HMS 100 TF, FS20st, FS20 S16

moonsorrox

so ich habe auch noch ein wenig gebastelt und mein bisheriges "Panel" fertig gemacht...
sieht hier auf dem Forumbild etwas unscharf aus... ist aber gestochen scharf auf dem Tablet  ;) 8)
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM