Müllkalender - Nächste Abholung

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

joe73
Beiträge: 16
Registriert: 26. Sep 2021 17:12
Answers: 0

Re: Müllkalender - Nächste Abholung

Beitrag von joe73 »

Ach ja.... Danke für den Link! Da muss ich mich morgen mal intensiv mit beschäftigen, habe heute nur mal kurz drüber geschaut, sieht aber nach einem sehr guten Einstieg ins Thema aus!

Benutzeravatar
udo1toni
Beiträge: 15248
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Müllkalender - Nächste Abholung

Beitrag von udo1toni »

Also, es ist eigentlich ein einfacher Fehler... .state liefert den Status eines Items. Ein Status ist kein String (auch wenn es in diesem Fall eigentlich einer ist). Mein Tipp wäre also, mal .state.toString zu probieren.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

joe73
Beiträge: 16
Registriert: 26. Sep 2021 17:12
Answers: 0

Re: Müllkalender - Nächste Abholung

Beitrag von joe73 »

Das Seltsame ist aber, das "message" den korrekten Text enthält... ich bekomme die Meldung ja per Telegram... und da ist der korrekte Text enthalten .

joe73
Beiträge: 16
Registriert: 26. Sep 2021 17:12
Answers: 0

Re: Müllkalender - Nächste Abholung

Beitrag von joe73 »

ich schaue mir das morgen noch einmal in aller Ruhe an, jetzt ist es so langsam zu spät... irgendetwas übersehe ich.

joe73
Beiträge: 16
Registriert: 26. Sep 2021 17:12
Answers: 0

Re: Müllkalender - Nächste Abholung

Beitrag von joe73 »

So.... alles nochmals durchgetestet, der folgende Code funktioniert nun fehlerfrei:

Code: Alles auswählen

    timer_Muell?.cancel
    if (Kalender_Muell_1_Name.state != UNDEF) {        
        val myAlarm = (Kalender_Muell_1_Beginn.state as DateTimeType).getZonedDateTime.with(LocalTime.MIDNIGHT).minusHours(3)
        timer_Muell = createTimer(myAlarm, [|
            timer_Muell = null
            var String message
            message = Kalender_Muell_1_Name.state.toString + " schon an die Straße gestellt?"
            if (KodiOnline.state==ON) { Kodi_Muell_Notification.sendCommand(message) }
            telegramAction_Warn.sendTelegram(message)
        ]), 
    }
Somit war deine Anmerkung (.state muss verwendet werden) absolut richtig!
Ohne wurde der Variablen "message" zwar auch der korrekte Wert zugewiesen, gleichzeitg aber auch die vielen Fehler im Log ausgeworfen.

Benutzeravatar
udo1toni
Beiträge: 15248
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Müllkalender - Nächste Abholung

Beitrag von udo1toni »

.toString... ;) ja, wie gesagt, .state ist ein Objekt, welches nicht vom Typ String ist, selbst wenn es inhaltlich ein String ist. Das ist für den normalen User erst mal seltsam, ein "echter" Programmierer könnte es Dir mit Sicherheit auch erklären (ich bin ja keiner und muss das also auch nicht wirklich können :lol: )
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Antworten