Müllkalender via openHAB

Für welche Projekte verwendet Ihr OpenHAB? Was habt Ihr automatisiert? Stellt eure Projekte hier vor.

Moderatoren: Cyrelian, seppy

Lactobacillus
Beiträge: 158
Registriert: 1. Mär 2019 09:13
Wohnort: Untergruppenbach BaWü

Re: Müllkalender via openHAB

Beitrag von Lactobacillus »

CHUluck4 hat geschrieben: 7. Apr 2021 20:16
Lactobacillus hat geschrieben: 7. Apr 2021 18:38 Habe jetzt mal versucht meinen google Kalender überhaupt in OH3 einzufügen doch leider bleibt dieser offline. Beim Link muss doch die Webadresse rein wie wenn ich den Kalender per Browser aufrufe oder? Ubd bei Benutzer und PW dann die Google Daten?
Die Webadresse reicht in dem Fall nicht. Führe in deinem Google Kalender mal links die Maus über deinen Kalender. Daneben hast du dann 3 Punkte.
Dort wählst du Einstellungen und Freigabe. Scrolle dann bis zur Kategorie "Kalender integrieren". Da findest du eine Privatadresse im ICAL Format.
Diesen Link benötigst du.
Benutzer und Passwort benötigst du nicht.
Was muss ich tun um nur den Müllkalender zu erhalten? Den Landkreis befragen?
Am besten mal nach Googeln (Abfallkalender + dein Landkreis) oder den Landkreis befragen.
Ok, das habe ich nun hinbekommen Kalender ist nun Online in OH allerdings ist da im Moment noch der komplette Googlekalender drin mit Ferien, Geburtstagen usw. Im Augenblick will ich eigentlich nur den Müllkalender aber komme nicht ganz klar wo ich da ansetzen muß. ich befürchte in VS Code?

CHUluck4
Beiträge: 7
Registriert: 23. Mär 2021 22:30

Re: Müllkalender via openHAB

Beitrag von CHUluck4 »

Ich hab mir einfach einen extra Kalender mit einem anderen Benutzer angelegt, damit ich den Datenmüll nicht im Hauptkalender habe.

CHUluck4
Beiträge: 7
Registriert: 23. Mär 2021 22:30

Re: Müllkalender via openHAB

Beitrag von CHUluck4 »

StefanH. hat geschrieben: 3. Jan 2021 20:03 Per Telegram schicke ich mir ab 15Uhr vom Vortag eine Nachricht, die mich fragt, ob ich die Tonnen schon vors Haus gestellt habe. Wenn ich diese Telegram Nachricht nicht beantworte, wird weiterhin zur vollen Stunde eine Nachricht geschickt. Die Auswertung der Telegramantwort habe ich jetzt hier nicht extra erläutert. Kann ich aber gerne machen, falls da Bedarf besteht.
Wäre super wenn du mir die Auswertung der Telegramantwort einmal erläutern könntest.
Bin da leider noch totaler Anfänger und hab mich schon gefragt wie das genau geht.

Danke für die tolle Umsetzung des Abfallkalenders. Den konnte ich super implementieren.

dr_vergleich
Beiträge: 10
Registriert: 31. Jul 2017 11:59
Wohnort: Lörrach

Re: Müllkalender via openHAB

Beitrag von dr_vergleich »

Liebe Community,

vielen Dank für die Idee mit dem Müllkalender. Ich habe zwischenzeitlich geschafft, den Kalender in Openhab zu integrieren.

Was mir aber Probleme macht ist diese Datumsrechnerei. Ich habe also das Datum, an dem die nächste Leerung einer Tonne erfolgt. Über das iCalendar Binding sehe ich sehe ich auch, dass sich an dem Tag, wenn eine Leerung stattfindet, dann aus dem Binding der Channel

current_presence Switch

auf "ON" aktiviert. An anderen Tagen (ohne Leerung) ist er "OFF".

Ich brauche aber die Meldung am Tag vorher, da die Leerung bei mir zu Hause oft schon vor 8.00 Uhr erfolgt.

Ich habe ja ein Item mit dem Tag, wann das nächste Müllereignis stattfindet:

Channel im Icalendar Bindung:
next_start DateTime Start of the next event

Ich sehe in dem DateTime Item auch das korrekte Datum.

Ich komme aber leider nicht weiter, dieses Datum mit dem heutigen Datum zu vergleichen, so dass am Tag vor der Leerung eine Mitteilung an mich per Telegram rausgeht.

1. Frage:
Kann ich das heutige Datum in Openhab direkt abfragen und in einem DateTime - Item hinterlegen oder bedarf es dazu das NTP Binding, welches das aktuelle Datum beinhaltet?

2. Frage:
Wie kann ich konkret die "Vergleichsberechnung" von zwei Daten anstellen (quasi weniger als ein Tag vor dem Ereignis)?

Ich habe ja schon versucht über das Forum weiterzukommen, aber ich komme immer wieder zu dem Problem, dass DateTime unterschiedlich ist, ob man ein Item hat oder in einer Rule damit rechnen/etwas regeln möchte. Anscheinend ist auch das Datum Format vom iCalendar und vom NTP Binding schon nicht gleich.

Wäre toll, wenn mir jemand einen Tipp dazu geben könnte.

Gruß

dr_vergleich

Lactobacillus
Beiträge: 158
Registriert: 1. Mär 2019 09:13
Wohnort: Untergruppenbach BaWü

Re: Müllkalender via openHAB

Beitrag von Lactobacillus »

CHUluck4 hat geschrieben: 8. Apr 2021 10:29 Ich hab mir einfach einen extra Kalender mit einem anderen Benutzer angelegt, damit ich den Datenmüll nicht im Hauptkalender habe.
Ja das ist eine sehr gute Idee da hätte ich eigentlich auch selbst drauf kommen können :shock:

Aber nun da der Kalender nur aus Müllterminen besteht wie differenziere ich da Müll, Biomüll ,Papier und evtl schadstoffe um vielleicht sogar noch die jeweilige Tonnenfarbe anzeigen zu können?

CHUluck4
Beiträge: 7
Registriert: 23. Mär 2021 22:30

Re: Müllkalender via openHAB

Beitrag von CHUluck4 »

Lactobacillus hat geschrieben: 9. Apr 2021 20:48 Ja das ist eine sehr gute Idee da hätte ich eigentlich auch selbst drauf kommen können :shock:

Aber nun da der Kalender nur aus Müllterminen besteht wie differenziere ich da Müll, Biomüll ,Papier und evtl schadstoffe um vielleicht sogar noch die jeweilige Tonnenfarbe anzeigen zu können?
Das realisierst du über die Eventfilter im ICAL Binding. Jede Tonne bekommt einen eigenen Eventfilter. Im Eventfilter musst du noch die richtige Bridge auswählen, also deinen Abfallkalender den du per ICAL eingebunden hast. Filtern nach Betreff/Titel und im Suchfeld den Titel des Kalendereintrages, der gefiltert werden soll, eintragen.

Lactobacillus
Beiträge: 158
Registriert: 1. Mär 2019 09:13
Wohnort: Untergruppenbach BaWü

Re: Müllkalender via openHAB

Beitrag von Lactobacillus »

Gibts da beispiele? :oops: :roll:

Will es dann auch noch ins Habpanel bringen :cry:

StefanH.
Beiträge: 162
Registriert: 28. Dez 2017 11:37

Re: Müllkalender via openHAB

Beitrag von StefanH. »

CHUluck4 hat geschrieben: 8. Apr 2021 16:12 Wäre super wenn du mir die Auswertung der Telegramantwort einmal erläutern könntest.
Ich hab die glaube ich wichtigen Teile mal extrahiert:

Code: Alles auswählen

import org.openhab.core.model.script.ScriptServiceUtil

rule "telegram.rules - Telegram Reply handler"
when
        Item telegramReplyId received update
then
        val ReplyMessage = telegramMsg.state.toString
        val ReplySender = telegramMsgName.state.toString
        val ReplyId = telegramReplyId.state.toString
        logInfo("telegram.rules", "Telegram Query Reply, ID=" + ReplyId + ", Value=" + ReplyMessage)
        val telegramAction = getActions("telegram","telegram:telegramBot:c492a03354")
        //abfall
        if(ReplyId == "Abfall") {
            if (ReplyMessage == "Ja")
            {
                    ABFALL_ERINNERUNG_NOTWENDIG.sendCommand("OFF")
                    telegramAction.sendTelegram(Long.valueOf(telegramChat_Gruppe.label),  "Ok, " + ReplySender + " ich werde keine weitere Erinnerung senden.")
                    logInfo("telegram.rules", "Abfallerinnerung ausgeschaltet.")
            }
        }
end

StefanH.
Beiträge: 162
Registriert: 28. Dez 2017 11:37

Re: Müllkalender via openHAB

Beitrag von StefanH. »

dr_vergleich hat geschrieben: 9. Apr 2021 13:52
1. Frage:
Kann ich das heutige Datum in Openhab direkt abfragen und in einem DateTime - Item hinterlegen oder bedarf es dazu das NTP Binding, welches das aktuelle Datum beinhaltet?

2. Frage:
Wie kann ich konkret die "Vergleichsberechnung" von zwei Daten anstellen (quasi weniger als ein Tag vor dem Ereignis)?
Schau dir mal an wie ich das umgesetzt habe. Ich lasse mich einen Tag vorher per Telegram benachrichtigen. Jede Stunde wird mir eine Nachricht geschickt, die ich per Telegram bestaetigen muss. Ansonsten sendet er mir weiterhin Erinnerungen (ich glaube bis Mitternacht).

viewtopic.php?p=28031#p28031

Stefan

StefanH.
Beiträge: 162
Registriert: 28. Dez 2017 11:37

Re: Müllkalender via openHAB

Beitrag von StefanH. »

Lactobacillus hat geschrieben: 10. Apr 2021 03:58 Gibts da beispiele? :oops: :roll:

Will es dann auch noch ins Habpanel bringen :cry:
So hab ich das damals gelöst, nicht super schön, aber funktional :-)
Das war noch am Anfang, als ich von dem Code nix verstanden hab. Ich also auf jeden Fall schöner und kürzer umzusetzen. Habs jedoch nie aktualisiert.
2021-04-10_12h17_44.png
Code:

Code: Alles auswählen

<div style="height: 100%; padding: 10px;">
  <h2>Abfallentsorgung</h2>
  <div class="row" style="height: 100%; align-items: center; justify-items: center; padding: 3px 5px;">
    <div class="col-xs-4 text-center" style="color: #41c4f4; padding: 2px; font-size: 25px; flex: 1;">
    	HEUTE
    </div>
    <div class="col-xs-8 text-left" style="padding: 2px; font-size: 25px; flex: 1;" ng-show="itemValue('ABFALL_ISTHEUTE_AKTIV') == 'OFF'">
    	---
    </div>
    <div class="col-xs-8 text-left" style="padding: 2px; font-size: 25px; flex: 1;" ng-show="itemValue('ABFALL_ISTHEUTE_AKTIV') == 'ON'">
    	{{itemValue('ABFALLTONNEN_HEUTE')}}
    </div>
    <div class="col-xs-4 text-center" style="color: #41c4f4; padding: 2px; font-size: 25px; flex: 1;">
    	MORGEN
    </div>
    <div class="col-xs-8 text-left" style="padding: 2px; font-size: 25px; flex: 1;" ng-show="itemValue('ABFALL_ISTMORGEN_AKTIV') == 'OFF'">
    	---
    </div>
    <div class="col-xs-8 text-left" style="padding: 2px; font-size: 25px; flex: 1;" ng-show="itemValue('ABFALL_ISTMORGEN_AKTIV') == 'ON'">
    	{{itemValue('ABFALLTONNEN_MORGEN')}}
    </div>
    <div class="col-xs-4 text-center" style="color: #41c4f4; padding: 2px; font-size: 25px; flex: 1;">
    	Schwarz
    </div>
    <div class="col-xs-8 text-left" style="padding: 2px; font-size: 25px; flex: 1;">
      {{itemValue('ABFALL_TERMIN_SCHWARZ') | date:'dd.MM.yyyy'}}
    </div>
    <div class="col-xs-4 text-center" style="color: #41c4f4; padding: 2px; font-size: 25px; flex: 1;">
    	Gelb
    </div>
    <div class="col-xs-8 text-left" style="padding: 2px; font-size: 25px; flex: 1;">
    	{{itemValue('ABFALL_TERMIN_GELB') | date:'dd.MM.yyyy'}}
    </div>
    <div class="col-xs-4 text-center" style="color: #41c4f4; padding: 2px; font-size: 25px; flex: 1;">
    	Grün
    </div>
    <div class="col-xs-8 text-left" style="padding: 2px; font-size: 25px; flex: 1;">
    	{{itemValue('ABFALL_TERMIN_GRUEN') | date:'dd.MM.yyyy'}}
    </div>
    <div class="col-xs-4 text-center" style="color: #41c4f4; padding: 2px; font-size: 25px; flex: 1;">
    	Blau
    </div>
    <div class="col-xs-8 text-left" style="padding: 2px; font-size: 25px; flex: 1;">
    	{{itemValue('ABFALL_TERMIN_BLAU') | date:'dd.MM.yyyy'}}
    </div>
  </div>
 </div>
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Antworten