In meinem alten Setup mit FHEM hatte ich einen Müllkalender. Dieser hat mir immer bescheid gegeben, wenn wir die Tonnen rausstellen mussten.

Das ganze konnte ich damals mit MyMüll umsetzen, da diese Ihre Daten auf Anfrage auch per API zur Verfügung stellen.

Nach dem Wechsel auf Loxone, wollte ich das ganze auch umsetzen, man will ja nicht auf den Komfort verzichten :)

Also wieder an den Hersteller geschrieben: "ich brauche bitte mal die neue API URL... ich bin umgezogen und habe nun Loxone". Die Antwort kam postwendend und was für ein Zufall, der Herr Junker nutzt auch Loxone! Und es gibt sogar eine Loxone API - was für ein Glück!

Aktuelles Layout

Layout

Pro Abfallkategorie (Bio, Altpapier, Restmüll) wird das nächste Datum angezeigt. Zusätzlich gibt es ein Statuselement, dass mir die nächste Leerung ankündigt.

Umsetzung

Die Daten werden per virtuellem HTTP Eingang abgerufen und anschließend geparsed. Es wird ein Unix Timestamp übermittelt der die nächste Leerung ankündigt. Dieser muss umgewandelt werden und kann dann entsprechend dargestellt werden.

Virtuelle HTTP Eingänge

Der Eingang ruft regelmäßig ein JSON ab, das durch die Befehle geparst wird. HTTP EIngang

Die hinterlegte URL:

URL: https://mymuell.jumomind.com/mmapp/loxone/lox.php?r=dates/0&city_id=xxxx&area_id=xxx

Für den Bio-Müll müssen wir das Datum des Wertes "SZ_BIO" herausfiltern, dafür nutzen wir diese Befehlserkennung:

"trash_name":"SZ_BIO","day2":\v

In meinem Fall akutell folgender Zeitstamp: 1560463200 in Realzeit ist das: 14.06.2019 - 00:00:00

Wie können wir das nun Umrechnen?

Formeln

Bausteine

Der Loxone Miniserver kennt leider das Unixformat nicht vollständig. Für ihn fängt die Zeitrechnung am 1.1.2009 und nicht am 1.1.1970 an. Daher müssen wir als erstes diese Zeistpanne (1.1.1970 bis 1.1.2009) von dem Zeitstempel abziehen:

I1-1230742800

Als nächsten möchten wir die Differenz zwischen dem aktuellen Tag und der Leerung ausrechnen. Dazu berechnen wir zunächste die Sekunden die seit dem 1.1.2009 vergangen sind und speichern uns dies in einem Merker:

Sekunden seit 2009

Formel: I1*86400

Nun ziehen wir die Sekunden von dem gelieferten Zeitstempel ab und teilen dies durch 86400 (so viele Sekunden hat ein Tag) um die Anzahl der Tage zu bekommen.

((I1-I2)/86400)

Nun runden wir das ganze noch auf eine Ganzzahl. Dabei ist es wichtig, das kaufmännische Runden zu aktivieren! (Parameter "R")

Und anschließend geben wir diesen Wert in einen Statusbaustein. Parallel dazu speichen wir jeweils noch die Zeit aus der ersten Formel in einem Merker, bei diesem muss die Einheit auf <v.u> angepasst werden:

Merker Biomüll

Statuselement

Status

Nun das Herzstück - der Status. Hier wird je nach Müllart angezeigt, was als nächstes abgeholt wird. Hierbei wird ab 5 Tagen vorher diese Müllabfuhr avisiert. Am Tag davor wird aufgefordert die Tonne herauszustellen und am Tag der Leerung wird diese angekündigt.

Durch die Icons wird das ganze noch schön visualisiert.

Danke

Danke an dieser Stelle an Lars Junker von MyMüll für die API und die Unterstützung bei der Ersteinrichung sowie "Albert" aus dem Loxforum für die Symbole.

Download der Symbole: Klick