Autor Thema: Abfallsteuerung: funktionierendes Beispiel für Anfänger  (Gelesen 6233 mal)

Offline Gunther

  • Hero Member
  • *****
  • Beiträge: 1357
Ich möchte zum Thema Abfall meine funktionierende Lösung vorstellen.
Dazu habe ich mich auf das erweiterte Beispiel im Wiki bezogen: https://wiki.fhem.de/wiki/ABFALL

Da ich länger gefrickelt habe, kann ggf. der ein oder andere den Kram gebrauchen.
Wenn es für gut befunden wird, können wir überlegen, wo es ins Wiki passt.

Es gibt auf meiner Übersichtsseite ein Abfallsymbol, dass die erweiterte Lösung gemäß Wiki darstellt. (Abfallbutton_Uebersicht)

Das Popup zeigt dann die Details. (Abfall_Popup)

Wichtige Punkte zur Umsetzung:
  • Einen Kalender für die Mülltermine anlegen
  • Den Kalender gemäß Wiki in FHEM eintragen
  • Modul Abfall installieren
  • 99_myUtils wie im Wiki beschrieben ergänzen
  • Userreading aufbauen (ebenfalls im Wiki beschrieben)

Die Termine im Kalender habe ich so gepflegt:
00:00-08:00 Uhr
Bezeichnungen: Altpapier, Biomuell, GelberSack, Restmuell

So wird gemäß der erweiterten Wiki-Lösung bis 08:00 Uhr im Übersichtsbutton ein drehendes Icon am Tag der Leerung angezeigt. Ab 08:01 wird die nächste Leerung angezeigt.
Im Popup blinkt das entsprechende Icon bis 08:00 Uhr an dem Tag der Leerung (und am Vortag).

Ein
list myAbfall
 sieht so aus

Internals:
   DEF        Abfall 3600
   KALENDER   Abfall
   NAME       myAbfall
   NR         2646
   NTFY_ORDER 50-myAbfall
   STATE      6
   TYPE       ABFALL
   Readings:
     2017-03-11 12:03:05   Abfall_Altpapier_datum 17.03.17
     2017-03-11 12:03:05   Abfall_Altpapier_tage 6
     2017-03-11 12:03:05   Abfall_Altpapier_text   Altpapier
     2017-03-11 12:03:05   Abfall_Altpapier_wochentag Freitag
     2017-03-11 12:03:05   Abfall_Biomuell_datum 24.03.17
     2017-03-11 12:03:05   Abfall_Biomuell_tage 13
     2017-03-11 12:03:05   Abfall_Biomuell_text   Biomüll
     2017-03-11 12:03:05   Abfall_Biomuell_wochentag Freitag
     2017-03-11 12:03:05   Abfall_GelberSack_datum 23.03.17
     2017-03-11 12:03:05   Abfall_GelberSack_tage 12
     2017-03-11 12:03:05   Abfall_GelberSack_text   Gelber Sack
     2017-03-11 12:03:05   Abfall_GelberSack_wochentag Donnerstag
     2017-03-11 12:03:05   Abfall_Restmuell_datum 31.03.17
     2017-03-11 12:03:05   Abfall_Restmuell_tage 20
     2017-03-11 12:03:05   Abfall_Restmuell_text   Restmüll
     2017-03-11 12:03:05   Abfall_Restmuell_wochentag Freitag
     2017-03-11 12:03:05   ftui_datum      17.03.17
     2017-03-11 12:03:05   ftui_next       Abfall_Altpapier_6
     2017-03-11 12:03:05   next            Abfall_Altpapier_6
     2017-03-11 12:03:05   next_datum      17.03.17
     2017-03-11 12:03:05   next_tage       6
     2017-03-11 12:03:05   next_text         Altpapier
     2017-03-11 12:03:05   next_wochentag  Freitag
     2017-03-11 12:03:05   state           6
Attributes:
   room       Kalender
   userReadings ftui_datum {ReadingsVal("myAbfall","now_text","") eq "" ? datumHeuteMorgen(ReadingsVal("myAbfall","next_datum","")) : "heute";},ftui_next {ReadingsVal("myAbfall","now_text","") eq "" ? ReadingsVal("myAbfall","next","") : ReadingsVal("myAbfall","now","")."_0";}

Hier mein Tablet UI Code. Entsprechend Eurer Einträge im "list myAbfall" müsst Ihr natürlich anpassen:

        <header><div data-type="label" class="medium orange">Abfall</div></header>
       
             <div data-type="popup" data-draggable="false" data-height="350px" data-width="550px">
<div data-type="symbol"
data-device="myAbfall"
                     data-get="ftui_next"
                     data-get-on='["Abfall_Biomuell_0","Abfall_Biomuell_1","Abfall_Biomuell_.*","Abfall_GelberSack_0","Abfall_GelberSack_1","Abfall_GelberSack_.*","Abfall_Altpapier_0","Abfall_Altpapier_1","Abfall_Altpapier_.*","Abfall_Restmuell_0","Abfall_Restmuell_1","Abfall_Restmuell_.*"]'
                     data-get-warn=".*([0|1|2]).*"
                     data-on-colors='["#32a054","#32a054","#32a054","#E6E600","#E6E600","#E6E600","#6699FF","#6699FF","#6699FF","gray","gray","gray"]'
                     class="large warn narrow"
                     data-icons='["fa-trash-o fa-spin","fa-trash-o blink","fa-trash-o","fa-trash-o fa-spin","fa-trash-o blink","fa-trash-o","fa-trash-o fa-spin","fa-trash-o blink","fa-trash-o","fa-trash-o fa-spin","fa-trash-o blink","fa-trash-o"]'
                     />             
                <div data-device="myAbfall" data-get="ftui_datum" data-type="label" class="darker"/>   
                <div data-device="myAbfall" data-get="next_text" data-type="label" class="darker"/> 
                <div class="dialog"> 
                    <header>Abfall</header>
    <div class="cell">
    <div class="inline">
<div data-type="symbol"  data-off-background-color="#7A7A7A" data-on-background-color="#7A7A7A" data-device="myAbfall" data-get='Abfall_GelberSack_tage' data-off-color="#E6E600" data-get-on='["off","^[01]$","^[1-9][0-9]|[2-9]$"]' data-icons='["fs-bag warn","fs-bag warn blink","fs-bag warn"]' data-on-colors='["#E6E600","#E6E600","#E6E600"]' class="bigger"></div>
    <div data-device="myAbfall" data-get="Abfall_GelberSack_wochentag" data-type="label" class="darker"/>               
                <div data-device="myAbfall" data-get="Abfall_GelberSack_datum" data-type="label" class="darker"/>
                <div data-type="label" class="darker">Gelber Sack</div>
</div>

<div class="inline">
<div data-type="symbol"  data-off-background-color="#7A7A7A" data-on-background-color="#7A7A7A" data-device="myAbfall" data-get='Abfall_Biomuell_tage' data-off-color="#32a054" data-get-on='["off","^[01]$","^[1-9][0-9]|[2-9]$"]' data-icons='["fs-dustbin warn","fs-dustbin warn blink","fs-dustbin warn"]' data-on-colors='["#32a054","#32a054","#32a054"]' class="bigger"></div>
    <div data-device="myAbfall" data-get="Abfall_Biomuell_wochentag" data-type="label" class="darker"/>               
                <div data-device="myAbfall" data-get="Abfall_Biomuell_datum" data-type="label" class="darker"/>
                <div data-type="label" class="darker">Biomüll</div>
</div>

<div class="inline">
<div data-type="symbol"  data-off-background-color="#7A7A7A" data-on-background-color="#7A7A7A" data-device="myAbfall" data-get='Abfall_Altpapier_tage' data-off-color="#6699FF" data-get-on='["off","^[01]$","^[1-9][0-9]|[2-9]$"]' data-icons='["fs-dustbin warn","fs-dustbin warn blink","fs-dustbin warn"]' data-on-colors='["#6699FF","#6699FF","#6699FF"]' class="bigger"></div>
    <div data-device="myAbfall" data-get="Abfall_Altpapier_wochentag" data-type="label" class="darker"/>               
                <div data-device="myAbfall" data-get="Abfall_Altpapier_datum" data-type="label" class="darker"/>
                <div data-type="label" class="darker">Altpapier</div>
</div>

<div class="inline">
<div data-type="symbol"  data-off-background-color="#7A7A7A" data-on-background-color="#7A7A7A" data-device="myAbfall" data-get='Abfall_Restmuell_tage' data-off-color="grey" data-get-on='["off","^[01]$","^[1-9][0-9]|[2-9]$"]' data-icons='["fs-dustbin warn","fs-dustbin warn blink","fs-dustbin warn"]' data-on-colors='["gray","gray","gray"]'   class="bigger"></div>
    <div data-device="myAbfall" data-get="Abfall_Restmuell_wochentag" data-type="label" class="darker"/>               
                <div data-device="myAbfall" data-get="Abfall_Restmuell_datum" data-type="label" class="darker"/>
                <div data-type="label" class="darker">Restmüll</div>   
    </div>
   
    </div>
   
    <div class="cell">
    <div data-type="label" class="bold big top-space">Öffnungszeiten Wertstoffhof</div>
    <div data-type="label" class="normal top-space">Sperrmüll, Elektroaltgeräte, Elektroschrott</div>
   
    <div class="col-1-2 top-space">
    <div data-type="label" class="normal left-align">Recyclinghof Detmold AGA gGmbH</div>
    <div data-type="label" class="normal left-align">Orbker Straße 75</div>
    <div data-type="label" class="normal left-align">32758 Detmold</div>
    </div>
   
    <div class="col-1-2 top-space">
    <div class="col-1-2">
    <div data-type="label" class="normal left-align">Mo., Di., Mi., Fr.:</div>
    <div data-type="label" class="normal left-align">Do.:</div>
    <div data-type="label" class="normal left-align">Sa.:</div>
    </div>
   
    <div class="col-1-2">
    <div data-type="label" class="normal left-align">8:00 - 16:30 Uhr</div>
    <div data-type="label" class="normal left-align">8:00 - 18:00 Uhr</div>
    <div data-type="label" class="normal left-align">8:00 - 12:00 Uhr</div>
    </div>
    </div>
    </div>

       
                </div>
               </div>
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden
Gefällt mir Gefällt mir x 4 Liste anzeigen

Offline Martin

  • Jr. Member
  • **
  • Beiträge: 99
Antw:Abfallsteuerung: funktionierendes Beispiel für Anfänger
« Antwort #1 am: 08 April 2017, 00:42:00 »
Hallo ich komme da nicht weiter bekomme in der Config   Unknown command },ftui_next, try help.
Angezeigt beim Speichern wenn ich aus dem Wiki das erste beispiel einfüge bekomme ich ja nur 1 Tonne angezeigt
ich möchte aber Papier Gelbe und Restmüll angezeigt bekommen


Kannst du mir da helfen Bitte
Gruß
Martin


Offline Gunther

  • Hero Member
  • *****
  • Beiträge: 1357
Antw:Abfallsteuerung: funktionierendes Beispiel für Anfänger
« Antwort #2 am: 08 April 2017, 01:04:57 »
Hast Du ggf. noch einen unbeabsichtigten Zeilenumbruch in der fhem.cfg

poste doch mal das was Du in der fhem.cfg hast.

Bei mir sieht es so aus:
# Definition des Kalenders
define Abfall Calendar ical url https://www.google.com/calendar/ical/.......group.calendar.google.com/public/basic.ics 600
attr Abfall room Kalender

# "Abfall" ist der vorher im Kalendermodul Calendar eingerichtete Kalender
define myAbfall ABFALL Abfall 3600
attr myAbfall room Kalender
attr myAbfall userReadings ftui_datum {ReadingsVal("myAbfall","now_text","") eq "" ? datumHeuteMorgen(ReadingsVal("myAbfall","next_datum","")) : "heute";;},ftui_next {ReadingsVal("myAbfall","now_text","") eq "" ? ReadingsVal("myAbfall","next","") : ReadingsVal("myAbfall","now","")."_0";;}

Dann in der 99_myUtils
sub datumHeuteMorgen($){
my $compareDate = shift;
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
$year += 1900; $mon += 1;
my $heute = sprintf('%02d.%02d.%04d', $mday, $mon, $year);
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time+86400);
$year += 1900; $mon += 1;
my $morgen = sprintf('%02d.%02d.%04d', $mday, $mon, $year);
return "heute" if $compareDate eq $heute;
return "morgen" if $compareDate eq $morgen;
return $compareDate;
}

FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

Offline Martin

  • Jr. Member
  • **
  • Beiträge: 99
Antw:Abfallsteuerung: funktionierendes Beispiel für Anfänger
« Antwort #3 am: 08 April 2017, 18:22:06 »
Danke die Fehlermeldung ist weg wenn ich das von dir in die cofig einfüge leider klappst nicht mit der anzeige


myAbfall
Abfall_GelbeTonne_datum
   
11.04.17
   
2017-04-08 18:09:37
Abfall_GelbeTonne_tage
   
3
   
2017-04-08 18:09:37
Abfall_GelbeTonne_text
   
Gelbe Tonne
   
2017-04-08 18:09:37
Abfall_GelbeTonne_wochentag
   
Dienstag
   
2017-04-08 18:09:37
Abfall_Papier_datum
   
24.04.17
   
2017-04-08 18:09:37
Abfall_Papier_tage
   
16
   
2017-04-08 18:09:37
Abfall_Papier_text
   
Papier
   
2017-04-08 18:09:37
Abfall_Papier_wochentag
   
Montag
   
2017-04-08 18:09:37
Abfall_Restmuell_datum
   
10.04.17
   
2017-04-08 18:09:37
Abfall_Restmuell_tage
   
2
   
2017-04-08 18:09:37
Abfall_Restmuell
   
Restmüll
   
2017-04-08 18:09:37


Gruß
Martin

Offline Gunther

  • Hero Member
  • *****
  • Beiträge: 1357
Antw:Abfallsteuerung: funktionierendes Beispiel für Anfänger
« Antwort #4 am: 09 April 2017, 14:15:14 »
Wenn Du etwas genauer beschreibst, was nicht klappt, hilft das beim Fehlersuchen.
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

Offline Martin

  • Jr. Member
  • **
  • Beiträge: 99
Antw:Abfallsteuerung: funktionierendes Beispiel für Anfänger
« Antwort #5 am: 09 April 2017, 19:07:34 »
ja ich möchte es so wie in deinem popup als Dauer anzeige Angezeigt bekommen kriege ich aber nicht hin
bei mir wird das popup nicht mal so angezeigt wie bei dir


Gruß
Martin

Offline Gunther

  • Hero Member
  • *****
  • Beiträge: 1357
Antw:Abfallsteuerung: funktionierendes Beispiel für Anfänger
« Antwort #6 am: 11 April 2017, 10:57:37 »
mach mal ein list von Deinem Abfalldevice.

Außerdem Deine Definition des Abfalldevices in der fhem.cfg
Und Deinen html code in der Tablet UI.

Ohne ist das ein Blick in die Glaskugel.

Bitte nimm Dir ein wenig Zeit das sauber und detailliert zu beschreiben. Anders macht helfen nicht soviel Spaß.  ;)
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

Offline Martin

  • Jr. Member
  • **
  • Beiträge: 99
Antw:Abfallsteuerung: funktionierendes Beispiel für Anfänger
« Antwort #7 am: 11 April 2017, 13:23:16 »
Hallo ich habe noch garnix wollte das mit dem Tablett UI mal ausprobieren und dachte ich nehme deine
funktionierende Lösung und schau mir das mal an.
Habe natürlich den Googele Kalender ( Abfall )


Fhem Config
define Abfall Calendar ical url https://calendar.google.com/calendar/ical/bkkat67qv5mdssmlt1rmhonjuo%40group.calendar.google.com/private-xxxxxxxxxxxxxxx/basic.ics 600
attr Abfall room Kalender

# "Abfall" ist der vorher im Kalendermodul Calendar eingerichtete Kalender
define myAbfall ABFALL Abfall 3600
attr myAbfall room Kalender
attr myAbfall userReadings ftui_datum {ReadingsVal("myAbfall","now_text","") eq "" ? datumHeuteMorgen(ReadingsVal("myAbfall","next_datum","")) : "heute";;},ftui_next {ReadingsVal("myAbfall","now_text","") eq "" ? ReadingsVal("myAbfall","next","") : ReadingsVal("myAbfall","now","")."_0";;}

Offline en-trust

  • Full Member
  • ***
  • Beiträge: 444
Antw:Abfallsteuerung: funktionierendes Beispiel für Anfänger
« Antwort #8 am: 12 April 2017, 11:37:41 »
Kann man sich auch einen Tag vorher via Pushover Message informieren lassen, welche Tonne heute rausgestellt weden muss damit sie morgen abgeholt werden kann ?
Vermutlich mit if 1 Tag dann notify ...

Offline Gunther

  • Hero Member
  • *****
  • Beiträge: 1357
Antw:Abfallsteuerung: funktionierendes Beispiel für Anfänger
« Antwort #9 am: 12 April 2017, 15:39:23 »
Bitte sei mir nicht böse und nimm den folgenden Absatz als Hilfe an:
Ein "bei mir wird das popup nicht mal so angezeigt wie bei dir" hilft mir nicht, um Dir zu helfen.
Ich wurstel mich auch mit viel Mühe durch die Themen und muss oft fragen. Trotzdem formuliere ich mein Problem so gut ich kann und helfe meinen Helfern mit so gut zu helfen wie möglich. Das bedeutet auch, dass ich deren gefragten Input liefere. Wenn ich nicht verstehe, was die wollen, frage ich nach.
 
Daher bitte immer:
1.) Eine ausführliche Beschreibung machen. Wir stecken nicht in Deinem Kopf drin (Ich kann zumindest nicht hellsehen)
2.) zeigen, wie es aussieht (1-2 Screenshots)
3.) die Definitionen in FHEM zeigen (in code-Tags)
4.) den verwendeten HTML-Code zeigen (in code-Tags)
5.) ein "list" des betroffenen Devices machen und hier posten (in code-Tags)


So und nun nochmal zu Deinem Problem.

Bitte mache mal ein
list myAbfallund poste das Ergebnis hier, indem Du die code-Tags des Forums benutzt (so wie ich unten in diesem Beitrag).
Das was dort angezeigt wird, schnappt sich Deine Einträge aus dem Google-Kalender.

Im HTML-Code (vgl. mein erster Post) nutzt Du dann die in Deinem "list"-Ergebnis angezeigten Werte,
z. B.
data-get: da kommt das "reading" rein, das Du nutzen möchtest, z. B. ftui_next
data-get-on: da packst Du die Werte aus Deinem Reading rein, auf die Du reagieren möchtest, z.B. Abfall_Biomuell_0"...
die weiteren tags, wie data-colors beschreiben dann, wie damit umgegangen wird.

DAHER IST ES SO WICHTIG, DASS DU MAL EIN L-I-S-T machst ;-)
(und das bitte sauber mit code-Tags (Button mit der #) hier postest.

Poste bitte noch Deinen html-Code (code tags nutzen!) und einen Screenshot vom Popup.

Vielleicht hilft Dir das weiter, wenn Du Dir dazu meinen HTML-Code aus dem ersten Post anschaust:

wenn ich ein
list myAbfallmachen, sieht das so aus:
Internals:
   DEF        Abfall 3600
   KALENDER   Abfall
   NAME       myAbfall
   NR         2881
   NTFY_ORDER 50-myAbfall
   STATE      1
   TYPE       ABFALL
   Readings:
     2017-04-12 15:17:01   Abfall_Altpapier_datum 13.04.17
     2017-04-12 15:17:01   Abfall_Altpapier_tage 1
     2017-04-12 15:17:01   Abfall_Altpapier_text   Altpapier
     2017-04-12 15:17:01   Abfall_Altpapier_wochentag Donnerstag
     2017-04-12 15:17:01   Abfall_Biomuell_datum 22.04.17
     2017-04-12 15:17:01   Abfall_Biomuell_tage 10
     2017-04-12 15:17:01   Abfall_Biomuell_text   Biomüll
     2017-04-12 15:17:01   Abfall_Biomuell_wochentag Samstag
     2017-04-12 15:17:01   Abfall_GelberSack_datum 21.04.17
     2017-04-12 15:17:01   Abfall_GelberSack_tage 9
     2017-04-12 15:17:01   Abfall_GelberSack_text   Gelber Sack
     2017-04-12 15:17:01   Abfall_GelberSack_wochentag Freitag
     2017-04-12 15:17:01   Abfall_Restmuell_datum 28.04.17
     2017-04-12 15:17:01   Abfall_Restmuell_tage 16
     2017-04-12 15:17:01   Abfall_Restmuell_text   Restmüll
     2017-04-12 15:17:01   Abfall_Restmuell_wochentag Freitag
     2017-04-12 15:17:01   ftui_datum      13.04.17
     2017-04-12 15:17:01   ftui_next       Abfall_Altpapier_1
     2017-04-12 15:17:01   next            Abfall_Altpapier_1
     2017-04-12 15:17:01   next_datum      13.04.17
     2017-04-12 15:17:01   next_tage       1
     2017-04-12 15:17:01   next_text         Altpapier
     2017-04-12 15:17:01   next_wochentag  Donnerstag
     2017-04-12 15:17:01   state           1
Attributes:
   room       Kalender
   userReadings ftui_datum {ReadingsVal("myAbfall","now_text","") eq "" ? datumHeuteMorgen(ReadingsVal("myAbfall","next_datum","")) : "heute";},ftui_next {ReadingsVal("myAbfall","now_text","") eq "" ? ReadingsVal("myAbfall","next","") : ReadingsVal("myAbfall","now","")."_0";}

« Letzte Änderung: 12 April 2017, 15:57:52 von Gunther »
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

Offline Gunther

  • Hero Member
  • *****
  • Beiträge: 1357
Antw:Abfallsteuerung: funktionierendes Beispiel für Anfänger
« Antwort #10 am: 12 April 2017, 15:54:37 »
Kann man sich auch einen Tag vorher via Pushover Message informieren lassen, welche Tonne heute rausgestellt weden muss damit sie morgen abgeholt werden kann ?
Vermutlich mit if 1 Tag dann notify ...

Denke das geht. Da ich nicht mit pushover arbeite, kann ich Dir da nicht exakt helfen.

So als reiner Gedankengang zum weiterverfolgen:
Du könntest z.B. ein notify bauen, das sich ftui_next anschaut und dann immer auslöst wenn Du einen Tag Rest dort drinstehen hast, was ja in meinem Beispiel folgendes wäre:
Abfall_Biomuell_1
Abfall_Altpapier_1
Abfall_Restmuell_1
Abfall_GelberSack_1

Dann fragst Du hier ab auf Abfall_.*_1 und löst dann Dein event aus.
Da könntest Du mit if auf die Art des Mülls abfragen und dann die Message entsprechend anpassen

oder Du machst einfach vier notifys, die hart auf
Abfall_Biomuell_1
Abfall_Altpapier_1
Abfall_Restmuell_1
Abfall_GelberSack_1
abfragen und dann jeweils eine Message ausgeben, in der die Müllart hart verdrahtet ist, z. B. "Morgen ist der Papiermüll fällig."

Grob so:
define notify_muellpushover_biomuell notify ftui_next:Abfall_Biomuell_1 set PushoverAlarm msg 'Morgen ist der Biomüll fällig.'
und das dann noch 3x
« Letzte Änderung: 12 April 2017, 16:00:32 von Gunther »
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

Offline maraka

  • Jr. Member
  • **
  • Beiträge: 55
Antw:Abfallsteuerung: funktionierendes Beispiel für Anfänger
« Antwort #11 am: 21 April 2017, 19:31:24 »
Hab alles soweit hinbekommen. Ist es richtig, dass sich das Mülleimericon dreht?
Wenn ja, könnte man es ändern?

Offline bmwfan

  • Full Member
  • ***
  • Beiträge: 328
Antw:Abfallsteuerung: funktionierendes Beispiel für Anfänger
« Antwort #12 am: 22 April 2017, 19:50:42 »
Hallo,

schönes Modul. Wollte ich auch installieren, aber FHEM stürzt nach define myAbfall Abfall abfallkalender ab. Nur durch Neustart des Raspi bekomme ich wieder Zugriff auf FHEM. Das define ist nicht eingetragen.
Vorgegangen bin ich wie im ersten Thread beschrieben.

Das log zeigt:
2017.04.22 19:42:32.663 4: CUL_Parse: CUL_0 A 14 ED A270 B2F1D3 31AE26 0083300000006400C80D48EF -82.5
2017.04.22 19:42:41.032 1: Perfmon: possible freeze starting at 19:42:40, delay is 1.031
Missing argument in sprintf at (eval 19108) line 1.
Invalid conversion in sprintf: end of string at (eval 19108) line 1.
Use of uninitialized value $SplitDate[1] in subtraction (-) at ./FHEM/57_ABFALL.pm line 260.
Month '-1' out of range 0..11 at ./FHEM/57_ABFALL.pm line 260
2017.04.22 19:43:53 2: Perfmon: ready to watch out for delays greater than one second
2017.04.22 19:43:53.990 1: Including fhem.cfg

Der Abfallkalender ist vom Typ holiday angelegt.
# AHA Abfuhrkalender 2017
#
# Restabfall
# Papier
# GelberSack
# Problem
# Gartenabfall
# Monats-abhängiges Datum. Argument: <X> <Wochentag> <Monat> <Feiertag-Name>.
# Beispiel:
# 3 1 Mon 05 Erster Montag In Mai
# 3 2 Mon 05 Zweiter Montag In Mai
# 3 -1 Mon 05 Letzter Montag In Mai
# 3 0 Mon 05 Jeder Montag In Mai

1 01-02 Papier
1 01-03 GelberSack
1 01-12 Restabfall
1 01-26 Restabfall


Gruß Jürgen
CUL auf Raspi 2 B, HW-LAN, HMW_LC_Bl1_DR für Jalousien, HM_LC_Bl1_DR für Rolläden, Umweltsensoren

Offline Kusselin

  • Sr. Member
  • ****
  • Beiträge: 811
Antw:Abfallsteuerung: funktionierendes Beispiel für Anfänger
« Antwort #13 am: 22 April 2017, 21:02:29 »
Hab alles soweit hinbekommen. Ist es richtig, dass sich das Mülleimericon dreht?
Wenn ja, könnte man es ändern?

Ja durch das Drehen soll dir ja angezeigt werden welche Tonnen dran sind...
hm-mod-rpi-pcb, CUL433, HM,

Offline chris76e

  • New Member
  • *
  • Beiträge: 34
Antw:Abfallsteuerung: funktionierendes Beispiel für Anfänger
« Antwort #14 am: 24 April 2017, 17:55:32 »
Hallo,

bekomme die Darstellung nicht hin. Habe mich an die Anleitung gehalten, aber es wird nicht richtig angezeigt. Versuche seit heute morgen das hinzubekommen, finden den Fehler einfach nicht.

Kann mir da jemand helfen?

So sieht bei mir das list myAbfall aus:

Internals:
   DEF        Abfall 3600
   KALENDER   Abfall
   NAME       myAbfall
   NR         135
   NTFY_ORDER 50-myAbfall
   STATE      1
   TYPE       ABFALL
   Readings:
     2017-04-24 17:37:16   Abfall_GelbeTonne_datum 17.05.17
     2017-04-24 17:37:16   Abfall_GelbeTonne_tage 23
     2017-04-24 17:37:16   Abfall_GelbeTonne_text   GelbeTonne
     2017-04-24 17:37:16   Abfall_GelbeTonne_wochentag Mittwoch
     2017-04-24 17:37:16   Abfall_Glas_datum 19.06.17
     2017-04-24 17:37:16   Abfall_Glas_tage 56
     2017-04-24 17:37:16   Abfall_Glas_text   Glas
     2017-04-24 17:37:16   Abfall_Glas_wochentag Montag
     2017-04-24 17:37:16   Abfall_Hausmuell_datum 25.04.17
     2017-04-24 17:37:16   Abfall_Hausmuell_tage 1
     2017-04-24 17:37:16   Abfall_Hausmuell_text   Hausmuell
     2017-04-24 17:37:16   Abfall_Hausmuell_wochentag Dienstag
     2017-04-24 17:37:16   Abfall_Papier_datum 17.05.17
     2017-04-24 17:37:16   Abfall_Papier_tage 23
     2017-04-24 17:37:16   Abfall_Papier_text   Papier
     2017-04-24 17:37:16   Abfall_Papier_wochentag Mittwoch
     2017-04-24 17:37:16   ftui_datum      25.04.17
     2017-04-24 17:37:16   ftui_next       Abfall_Hausmuell_1
     2017-04-24 17:37:16   next            Abfall_Hausmuell_1
     2017-04-24 17:37:16   next_datum      25.04.17
     2017-04-24 17:37:16   next_tage       1
     2017-04-24 17:37:16   next_text         Hausmuell
     2017-04-24 17:37:16   next_wochentag  Dienstag
     2017-04-24 17:37:16   state           1
Attributes:
   room       Kalender
   userReadings ftui_datum {ReadingsVal("myAbfall","now_text","") eq "" ? datumHeuteMorgen(ReadingsVal("myAbfall","next_datum","")) : "heute";},ftui_next {ReadingsVal("myAbfall","now_text","") eq "" ? ReadingsVal("myAbfall","next","") : ReadingsVal("myAbfall","now","")."_0";}

Das steht in der fhem.cfg

define Abfall Calendar ical url https://calendar.google.com/calendar/i.../basic.ics 600
attr Abfall room Kalender
define myAbfall ABFALL Abfall 3600
attr myAbfall room Kalender
attr myAbfall userReadings ftui_datum {ReadingsVal("myAbfall","now_text","") eq "" ? datumHeuteMorgen(ReadingsVal("myAbfall","next_datum","")) : "heute";;},ftui_next {ReadingsVal("myAbfall","now_text","") eq "" ? ReadingsVal("myAbfall","next","") : ReadingsVal("myAbfall","now","")."_0";;}


das ist die 99_myUtils.pm

##############################################
# $Id: myUtilsTemplate.pm 7570 2015-01-14 18:31:44Z rudolfkoenig $
#
# Save this file as 99_myUtils.pm, and create your own functions in the new
# file. They are then available in every Perl expression.

package main;

use strict;
use warnings;
use POSIX;

sub
myUtils_Initialize($$)
{
  my ($hash) = @_;
}

# Enter you functions below _this_ line.

sub datumHeuteMorgen($){
my $compareDate = shift;
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
$year += 1900; $mon += 1;
my $heute = sprintf('%02d.%02d.%04d', $mday, $mon, $year);
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time+86400);
$year += 1900; $mon += 1;
my $morgen = sprintf('%02d.%02d.%04d', $mday, $mon, $year);
return "heute" if $compareDate eq $heute;
return "morgen" if $compareDate eq $morgen;
return $compareDate;
}

1;
Das ist der html Part

<li data-row="2" data-col="5" data-sizex="1" data-sizey="4">
<header><div data-type="label" class="medium orange">Abfall</div></header>
       
             <div data-type="popup" data-draggable="false" data-height="350px" data-width="550px">
<div data-type="symbol"
data-device="myAbfall"
                     data-get="ftui_next"
                     data-get-on='["Abfall_Glas_0","Abfall_Glas_1","Abfall_Glas_.*","Abfall_GelbeTonne_0","Abfall_GelbeTonne_1","Abfall_GelbeTonne_.*","Abfall_Papier_0","Abfall_Papier_1","Abfall_Papier_.*","Abfall_Hausmuell_0","Abfall_Hausmuell_1","Abfall_Hausmuell_.*"]'
                     data-get-warn=".*([0|1|2]).*"
                     data-on-colors='["#32a054","#32a054","#32a054","#E6E600","#E6E600","#E6E600","#6699FF","#6699FF","#6699FF","gray","gray","gray"]'
                     class="large warn narrow"
                     data-icons='["fa-trash-o fa-spin","fa-trash-o blink","fa-trash-o","fa-trash-o fa-spin","fa-trash-o blink","fa-trash-o","fa-trash-o fa-spin","fa-trash-o blink","fa-trash-o","fa-trash-o fa-spin","fa-trash-o blink","fa-trash-o"]'
                     />             
                <div data-device="myAbfall" data-get="ftui_datum" data-type="label" class="darker"/>   
                <div data-device="myAbfall" data-get="next_text" data-type="label" class="darker"/>
                <div class="dialog">
                    <header>Abfall</header>
    <div class="cell">
    <div class="inline">
<div data-type="symbol"  data-off-background-color="#7A7A7A" data-on-background-color="#7A7A7A" data-device="myAbfall" data-get='Abfall_GelbeTonne_tage' data-off-color="#E6E600" data-get-on='["off","^[01]$","^[1-9][0-9]|[2-9]$"]' data-icons='["fs-bag warn","fs-bag warn blink","fs-bag warn"]' data-on-colors='["#E6E600","#E6E600","#E6E600"]' class="bigger"></div>
    <div data-device="myAbfall" data-get="Abfall_GelbeTonne_wochentag" data-type="label" class="darker"/>               
                <div data-device="myAbfall" data-get="Abfall_GelbeTonne_datum" data-type="label" class="darker"/>
                <div data-type="label" class="darker">Gelber Sack</div>
</div>

<div class="inline">
<div data-type="symbol"  data-off-background-color="#7A7A7A" data-on-background-color="#7A7A7A" data-device="myAbfall" data-get='Abfall_Glas_tage' data-off-color="#32a054" data-get-on='["off","^[01]$","^[1-9][0-9]|[2-9]$"]' data-icons='["fs-dustbin warn","fs-dustbin warn blink","fs-dustbin warn"]' data-on-colors='["#32a054","#32a054","#32a054"]' class="bigger"></div>
    <div data-device="myAbfall" data-get="Abfall_Glas_wochentag" data-type="label" class="darker"/>               
                <div data-device="myAbfall" data-get="Abfall_Glas_datum" data-type="label" class="darker"/>
                <div data-type="label" class="darker">Biomüll</div>
</div>

<div class="inline">
<div data-type="symbol"  data-off-background-color="#7A7A7A" data-on-background-color="#7A7A7A" data-device="myAbfall" data-get='Abfall_Papier_tage' data-off-color="#6699FF" data-get-on='["off","^[01]$","^[1-9][0-9]|[2-9]$"]' data-icons='["fs-dustbin warn","fs-dustbin warn blink","fs-dustbin warn"]' data-on-colors='["#6699FF","#6699FF","#6699FF"]' class="bigger"></div>
    <div data-device="myAbfall" data-get="Abfall_Papier_wochentag" data-type="label" class="darker"/>               
                <div data-device="myAbfall" data-get="Abfall_Papier_datum" data-type="label" class="darker"/>
                <div data-type="label" class="darker">Papier</div>
</div>

<div class="inline">
<div data-type="symbol"  data-off-background-color="#7A7A7A" data-on-background-color="#7A7A7A" data-device="myAbfall" data-get='Abfall_Hausmuell_tage' data-off-color="grey" data-get-on='["off","^[01]$","^[1-9][0-9]|[2-9]$"]' data-icons='["fs-dustbin warn","fs-dustbin warn blink","fs-dustbin warn"]' data-on-colors='["gray","gray","gray"]'   class="bigger"></div>
    <div data-device="myAbfall" data-get="Abfall_Hausmuell_wochentag" data-type="label" class="darker"/>               
                <div data-device="myAbfall" data-get="Abfall_Hausmuell_datum" data-type="label" class="darker"/>
                <div data-type="label" class="darker">Restmüll</div>   
    </div>
   
    </div>
   
    <div class="cell">
    <div data-type="label" class="bold big top-space">Öffnungszeiten Wertstoffhof</div>
    <div data-type="label" class="normal top-space">Sperrmüll, Elektroaltgeräte, Elektroschrott</div>
   
    <div class="col-1-2 top-space">
    <div data-type="label" class="normal left-align">Recyclinghof Detmold AGA gGmbH</div>
    <div data-type="label" class="normal left-align">Orbker Straße 75</div>
    <div data-type="label" class="normal left-align">32758 Detmold</div>
    </div>
   
    <div class="col-1-2 top-space">
    <div class="col-1-2">
    <div data-type="label" class="normal left-align">Mo., Di., Mi., Fr.:</div>
    <div data-type="label" class="normal left-align">Do.:</div>
    <div data-type="label" class="normal left-align">Sa.:</div>
    </div>
   
    <div class="col-1-2">
    <div data-type="label" class="normal left-align">8:00 - 16:30 Uhr</div>
    <div data-type="label" class="normal left-align">8:00 - 18:00 Uhr</div>
    <div data-type="label" class="normal left-align">8:00 - 12:00 Uhr</div>
    </div>
    </div>
    </div>

       
                </div>
               </div>
</li>


Das ist meine gesamte Index.html

<!DOCTYPE html>
<html>

<head>
    <!--
     /* FHEM tablet ui */
     /*
     * UI builder framework for FHEM
     *
     * Version: 2.5.*
     * URL: https://github.com/knowthelist/fhem-tablet-ui
     *
     * Copyright (c) 2015-2017 Mario Stephan <mstephan@shared-files.de>
     * Under MIT License (http://www.opensource.org/licenses/mit-license.php)
     *
     * - create a new folder named 'tablet' in /<fhem-path>/www
     * - copy all files incl. sub folders into /<fhem-path>/www/tablet
     * - add 'define TABLETUI HTTPSRV ftui ./www/tablet Tablet' in fhem.cfg
     * - Tadaaa! A new fhem ui in http://<fhem-url>:8083/fhem/tablet/
     */
    -->
    <link rel="icon" href="favicon.ico" type="image/x-icon" />

    <!-- define your personal style here, it wont be overwritten  -->
    <!-- link rel="stylesheet" href="css/fhem-green-ui.css" / -->
    <!-- link rel="stylesheet" href="css/fhem-tablet-ui-user.css" / -->
<!-- <link rel="stylesheet" type="text/css" href="css/fhem-grayblue-user-ui.css" />
<link rel="stylesheet" type="text/css" href="css/fhem-tablet-ui-user.css" />/ -->
<link rel="stylesheet" href="/fhem/tablet/css/ftui_weekprofile.css" />
    <script src="js/fhem-tablet-ui.js" defer></script>
<meta name="longpoll_type" content="websocket"> <!-- 1=longpoll;0=shortpoll every 30sec; "ajax" -> HTTP AJAX; websocket-->
<meta name="debug" content="0"> <!-- 1=output to console;0=not output -->
<meta name="toast" content="0"> <!-- 1=Toast messages deaktivieren ;0=not output -->
<meta name="lang" content="de">

    <!-- Remove this line to enable for usage with WebViewControl
    <script defer>var wvcDevices = {'12345': 'Tablet'}; var wvcUserCssFile="webviewcontrol.css"</script>
    <script src="../pgm2/cordova-2.3.0.js" defer></script>
    <script src="../pgm2/webviewcontrol.js" defer></script>
    <!-- End for WebViewControl -->

    <title>FHEM-Tablet-UI</title>
</head>

<body>

    <div class="gridster">
        <ul>
            <li data-row="1" data-col="1" data-sizey="1" data-sizex="1">
                <header>Uhrzeit</header>
<div class="cell">
<div data-type="clock" class="cell top-space-1x big yellow semitransparenttext"></div>
<div data-type="clock" data-format="l d.m.Y" class="large semitransparenttext"></div></div>
</li>
           
<li class="" data-row="1" data-col="7" data-sizex="1" data-sizey="1">
<header class="" >Sonne</header>
<div class="vbox">
<div class="hbox">
<div class="compressed  normal shadow" data-type="symbol" data-icon="wi wi-sunrise" data-off-color="#999"></div>&nbsp; &nbsp; &nbsp;
<div class="w1x  normal semitransparenttext" data-type="label" data-device="Sonnenaufgang" data-color="#FAA460"></div>
</div>
<div class="hbox">
<div class="compressed  normal top-narrow shadow" data-type="symbol" data-icon="wi wi-sunset" data-off-color="#999"></div>&nbsp; &nbsp; &nbsp;
<div class="w1x  normal top-narrow semitransparenttext" data-type="label" data-device="Sonnenuntergang" data-color="#FAA460"></div>
</div>
</div>
</li>

<li data-row="1" data-col="8" data-sizex="1" data-sizey="5">
<header>Wetter</header>

<div class="row">


<div data-type="label"
class="darker large top-space">Heute
</div>

<div data-type="weather"
data-device="Wetter"
data-get="fc1_condition"
class="big">
</div>
<div data-type="label"
data-device="Wetter"
data-get="fc1_condition">
</div>
<div data-type="label"
data-device="Wetter"
data-get="fc1_high_c"
data-unit="%B0C%0A"
class="large">
</div>

<div data-type="label"
class="darker large top-space">Morgen
</div>
<div data-type="weather"
data-device="Wetter"
data-get="fc2_condition"
class="big">
</div>
<div data-type="label"
data-device="Wetter"
data-get="fc2_condition">
</div>
<div data-type="label"
data-device="Wetter"
data-get="fc2_high_c"
data-unit="%B0C%0A"
class="large">
</div>

<div data-type="label"
class="darker large top-space">Übermorgen
</div>
<div data-type="weather"
data-device="Wetter"
data-get="fc3_condition"
class="big">
</div>
<div data-type="label"
data-device="Wetter"
data-get="fc3_condition">
</div>
<div data-type="label"
data-device="Wetter"
data-get="fc3_high_c"
data-unit="%B0C%0A"
class="large">
</div>
<li class="" data-row="2" data-col="7" data-sizex="1" data-sizey="1">
<header class="" >Windrichtung</header>

<div class="cell center-align normal" data-type="wind_direction" data-device="Wetter" data-direction="wind_direction" data-speed="wind_speed" data-calm="-" data-part="1" data-size="80" data-tickstep="45" data-angleoffset="0"></div>

</li>
</li>
           
            <li data-row="2" data-col="1" data-sizex="1" data-sizey="4">
                <header>GARTEN</header>
               
            </li>
            <li data-row="1" data-col="2" data-sizey="3" data-sizex="2">
                <header>Temperaturen</header>
                <div class="sheet">
                    <div class="row">
                        <div class="cell"
data-type="thermostat"
data-device="Wohn_Wandthermostat"
data-valve="valveposition"
data-get="desiredTemperature"
></div>
<div class="cell">
<div data-type="label" data-device="Wohn_Wandthermostat" data-get="temperature" data-limits='[-73,19,23]' data-colors='["#6699FF","#aa6900","#bb6242"]' data-unit="%B0C%0A" class="big"></div>
<div>Wohnzimmer</div>
</div>
</div>

<div class="row">
                        <div class="cell" data-type="thermostat"
data-device="Bad_Wandthermostat"
data-valve="valveposition"
                                            data-get="desiredTemperature"
                        ></div>
<div class="cell">
<div data-type="label" data-device="Bad_Wandthermostat" data-get="temperature" data-limits='[-73,19,23]' data-colors='["#6699FF","#aa6900","#bb6242"]' data-unit="%B0C%0A" class="big"></div>
                                <div>Badezimmer</div>
                                            </div>
</div>

<div class="row">
                        <div class="cell" data-type="thermostat"
data-device="Kueche_Wandthermostat"
data-valve="valveposition"
                                            data-get="desiredTemperature"
                        ></div>
<div class="cell">
<div data-type="label" data-device="Kueche_Wandthermostat" data-get="temperature" data-limits='[-73,19,23]' data-colors='["#6699FF","#aa6900","#bb6242"]' data-unit="%B0C%0A"
class="big"></div>
<div>Küche</div>
</div>
</div>


            </li>
            <li data-row="4" data-col="2" data-sizey="3" data-sizex="1">
                <header>Fenster und Tür</header>
                <div class="sheet">
<div class="row">
<div class="cell">
<div class="big"
data-type="symbol"
data-device="Wohn_Fensterkontakt"
data-states='["opened","closed"]'
data-icons='["ftui-window warn","ftui-window"]'
data-colors='["#999","#555"]'>
</div>

<div>Wohnzimmerfenster Rechts</div>
                        </div>
</div>




<div class="row">
<div class="cell">
<div class="big"
data-type="symbol"
data-device="Kueche_Fensterkontakt1"
data-states='["opened","closed"]'
data-icons='["ftui-window warn","ftui-window"]'
data-colors='["#999","#555"]'>
</div>

<div>Küchenfenster</div>
                        </div>
</div>
<div class="row">
<div class="cell">
                            <div class="big"
data-type="symbol"
data-device="Kueche_Tuerkontakt"
data-states='["opened","closed"]'
data-icons='["ftui-door warn","ftui-door"]'
data-colors='["#999","#555"]'>
</div>

<div>Küchentür</div>
                        </div>
</div>
                                   
            </li>
           
            <li data-row="4" data-col="3" data-sizey="3" data-sizex="1">
                <header>Wohnzimmer</header>
                <div class="sheet">
                    <div class="row">
                                     
                        <div class="cell">
    <div
data-type="switch"
data-on-background-color="GREEN"
data-on-color="GREEN"
data-off-background-color="GREEN"
data-off-color="GREEN"
data-device="wz_tvwand"
data-set-states='["on"]'
data-states='["on"]'
data-background-icon="fa-square-o"
data-icon="fa-power-off"
class="normal shadow" ></div>
                    <div>TV-Wand</div>
                        </div>
</div>
<div class="row">
<div class="cell"> 
<div
data-type="switch"
data-on-background-color="RED"
data-on-color="RED"
data-off-background-color="RED"
data-off-color="RED"
data-device="WZ" 
data-set-states='["off"]'
data-states='["off"]'
data-background-icon="fa-square-o"
data-icon="fa-power-off"
class="normal shadow" ></div>                       
                    <div>Alles Aus</div>
                        </div>
                    </div>
<div class="row">
<div class="cell"> 
<div
data-type="switch"
data-on-background-color="RED"
data-on-color="RED"
data-off-background-color="GREEN"
data-off-color="GREEN"
data-device="buerolicht" 
data-background-icon="fa-square-o"
data-icon="fa-lightbulb-o"
class="normal shadow" ></div>                       
                    <div>Bürolicht</div>
                        </div>
                    </div>

                   
                </div>
            </li>
<li data-row="2" data-col="5" data-sizex="1" data-sizey="4">
<header><div data-type="label" class="medium orange">Abfall</div></header>
       
             <div data-type="popup" data-draggable="false" data-height="350px" data-width="550px">
<div data-type="symbol"
data-device="myAbfall"
                     data-get="ftui_next"
                     data-get-on='["Abfall_Glas_0","Abfall_Glas_1","Abfall_Glas_.*","Abfall_GelbeTonne_0","Abfall_GelbeTonne_1","Abfall_GelbeTonne_.*","Abfall_Papier_0","Abfall_Papier_1","Abfall_Papier_.*","Abfall_Hausmuell_0","Abfall_Hausmuell_1","Abfall_Hausmuell_.*"]'
                     data-get-warn=".*([0|1|2]).*"
                     data-on-colors='["#32a054","#32a054","#32a054","#E6E600","#E6E600","#E6E600","#6699FF","#6699FF","#6699FF","gray","gray","gray"]'
                     class="large warn narrow"
                     data-icons='["fa-trash-o fa-spin","fa-trash-o blink","fa-trash-o","fa-trash-o fa-spin","fa-trash-o blink","fa-trash-o","fa-trash-o fa-spin","fa-trash-o blink","fa-trash-o","fa-trash-o fa-spin","fa-trash-o blink","fa-trash-o"]'
                     />             
                <div data-device="myAbfall" data-get="ftui_datum" data-type="label" class="darker"/>   
                <div data-device="myAbfall" data-get="next_text" data-type="label" class="darker"/>
                <div class="dialog">
                    <header>Abfall</header>
    <div class="cell">
    <div class="inline">
<div data-type="symbol"  data-off-background-color="#7A7A7A" data-on-background-color="#7A7A7A" data-device="myAbfall" data-get='Abfall_GelbeTonne_tage' data-off-color="#E6E600" data-get-on='["off","^[01]$","^[1-9][0-9]|[2-9]$"]' data-icons='["fs-bag warn","fs-bag warn blink","fs-bag warn"]' data-on-colors='["#E6E600","#E6E600","#E6E600"]' class="bigger"></div>
    <div data-device="myAbfall" data-get="Abfall_GelbeTonne_wochentag" data-type="label" class="darker"/>               
                <div data-device="myAbfall" data-get="Abfall_GelbeTonne_datum" data-type="label" class="darker"/>
                <div data-type="label" class="darker">Gelber Sack</div>
</div>

<div class="inline">
<div data-type="symbol"  data-off-background-color="#7A7A7A" data-on-background-color="#7A7A7A" data-device="myAbfall" data-get='Abfall_Glas_tage' data-off-color="#32a054" data-get-on='["off","^[01]$","^[1-9][0-9]|[2-9]$"]' data-icons='["fs-dustbin warn","fs-dustbin warn blink","fs-dustbin warn"]' data-on-colors='["#32a054","#32a054","#32a054"]' class="bigger"></div>
    <div data-device="myAbfall" data-get="Abfall_Glas_wochentag" data-type="label" class="darker"/>               
                <div data-device="myAbfall" data-get="Abfall_Glas_datum" data-type="label" class="darker"/>
                <div data-type="label" class="darker">Biomüll</div>
</div>

<div class="inline">
<div data-type="symbol"  data-off-background-color="#7A7A7A" data-on-background-color="#7A7A7A" data-device="myAbfall" data-get='Abfall_Papier_tage' data-off-color="#6699FF" data-get-on='["off","^[01]$","^[1-9][0-9]|[2-9]$"]' data-icons='["fs-dustbin warn","fs-dustbin warn blink","fs-dustbin warn"]' data-on-colors='["#6699FF","#6699FF","#6699FF"]' class="bigger"></div>
    <div data-device="myAbfall" data-get="Abfall_Papier_wochentag" data-type="label" class="darker"/>               
                <div data-device="myAbfall" data-get="Abfall_Papier_datum" data-type="label" class="darker"/>
                <div data-type="label" class="darker">Papier</div>
</div>

<div class="inline">
<div data-type="symbol"  data-off-background-color="#7A7A7A" data-on-background-color="#7A7A7A" data-device="myAbfall" data-get='Abfall_Hausmuell_tage' data-off-color="grey" data-get-on='["off","^[01]$","^[1-9][0-9]|[2-9]$"]' data-icons='["fs-dustbin warn","fs-dustbin warn blink","fs-dustbin warn"]' data-on-colors='["gray","gray","gray"]'   class="bigger"></div>
    <div data-device="myAbfall" data-get="Abfall_Hausmuell_wochentag" data-type="label" class="darker"/>               
                <div data-device="myAbfall" data-get="Abfall_Hausmuell_datum" data-type="label" class="darker"/>
                <div data-type="label" class="darker">Restmüll</div>   
    </div>
   
    </div>
   
    <div class="cell">
    <div data-type="label" class="bold big top-space">Öffnungszeiten Wertstoffhof</div>
    <div data-type="label" class="normal top-space">Sperrmüll, Elektroaltgeräte, Elektroschrott</div>
   
    <div class="col-1-2 top-space">
    <div data-type="label" class="normal left-align">Recyclinghof Detmold AGA gGmbH</div>
    <div data-type="label" class="normal left-align">Orbker Straße 75</div>
    <div data-type="label" class="normal left-align">32758 Detmold</div>
    </div>
   
    <div class="col-1-2 top-space">
    <div class="col-1-2">
    <div data-type="label" class="normal left-align">Mo., Di., Mi., Fr.:</div>
    <div data-type="label" class="normal left-align">Do.:</div>
    <div data-type="label" class="normal left-align">Sa.:</div>
    </div>
   
    <div class="col-1-2">
    <div data-type="label" class="normal left-align">8:00 - 16:30 Uhr</div>
    <div data-type="label" class="normal left-align">8:00 - 18:00 Uhr</div>
    <div data-type="label" class="normal left-align">8:00 - 12:00 Uhr</div>
    </div>
    </div>
    </div>

       
                </div>
               </div>
</li>

            <li data-row="1" data-col="4" data-sizex="3" data-sizey="1">
                <header class="">Aussentemperatur</header>

<div class="sheet">
<div class="row">
<div class="cell-1-3">
<div class="row">
<div class="hbox">
<div class="compressed  normal shadow inline" data-type="symbol" data-icon="wi wi-thermometer" data-off-color="#999"></div>
<div class="large inline semitransparenttext" data-type="label" data-device="Wetter" data-get="temp_c" data-limits='[-73,0,30]' data-colors='["#6699FF","#FAA460","#FF0000"]' data-unit="%B0C%0A" ></div>
</div>
<div data-type="label" class="inline shadow darker">Temperatur</div>
<div class="hbox">
<div data-type="klimatrend" data-device="Wetter" data-get="fc1_high_c" data-refperiod="1" class="inline large"></div>
<div data-type="klimatrend" data-device="Wetter" data-get="fc2_high_c" data-refperiod="2" class="inline large"></div>
<div data-type="klimatrend" data-device="Wetter" data-get="fc3_high_c" data-refperiod="3" class="inline large"></div>
</div>
</div>
</div>
<div class="cell-1-3">
<div class="row">
<div class="hbox">
<div class="compressed  normal shadow inline" data-type="symbol" data-icon="wi wi-humidity" data-off-color="#999"></div>
<div class="large inline semitransparenttext" data-type="label" data-device="Wetter" data-limits='[-73,0,100]' data-colors='["#6699FF","#FAA460","#FF0000"]' data-get="humidity" data-unit="%"></div>
</div>
<div data-type="label" class="inline shadow darker">Luftfeuchte</div>
<div class="hbox">
<div data-type="klimatrend" data-device="Wetter" data-get="statHumidityTendency" data-refperiod="1" class="inline large"></div>
<div data-type="klimatrend" data-device="Wetter" data-get="statHumidityTendency" data-refperiod="2" class="inline large"></div>
<div data-type="klimatrend" data-device="Wetter" data-get="statHumidityTendency" data-refperiod="3" class="inline large"></div>
</div>
</div>
</div>
<div class="cell-1-3">
<div class="row">
<div class="hbox">
<div class="compressed  normal shadow inline " data-type="symbol" data-icon="wi wi-thermometer-exterior" data-off-color="#999"></div>
<div class="compressed  normal shadow inline left-narrow" data-type="symbol" data-icon="wi wi-raindrops" data-off-color="#999"></div>
<div class="large inline semitransparenttext" data-type="label" data-device="Wetter" data-get="dewpoint" data-limits='[-73,0,100]' data-colors='["#6699FF","#FAA460","#FF0000"]' data-unit="%B0C%0A"></div>
</div>

            </li>


            <li data-row="2" data-col="8" data-sizey="4" data-sizex="1">
                <header>LIGHTS</header>
               
<div class="cell"> 
<div
data-type="switch"
data-on-background-color="RED"
data-on-color="RED"
data-off-background-color="GREEN"
data-off-color="GREEN" 
data-device="kuchenlicht" 
data-background-icon="fa-square-o"
data-icon="fa-lightbulb-o"
class="normal shadow" ></div>                       
                    <div>Küchenlicht</div>
                        </div>

                                     
                        <div class="cell">
    <div
data-type="switch"
data-on-background-color="RED"
data-on-color="RED"
data-off-background-color="GREEN"
data-off-color="GREEN"
data-device="PC"
data-background-icon="fa-square-o"
data-icon="fa-desktop"
class="normal shadow" ></div>
                    <div>PC</div>
</div>

<div id="weekprofile_ftui" style="position:absolute; bottom:0; right:0;"
       data-type="weekprofile"
   data-profile="master"
       data-device="Wohnzimmer_Wochenplan"   
       data-style="round"
       data-theme="dark"
       data-title="Heizung Wohnzimmer" >
     <div data-type="button" class="cell small readonly" data-icon="oa-edit_settings"
            data-background-icon="fa-square-o"
    data-on-color="#505050" data-on-background-color="#505050">
     </div>
</div>
                   

                   
                </div>

            </li>
        </ul>
    </div>
</body>

</html>

 

decade-submarginal