Uhrzeit von letzter "Switch" Aktion in Sitemap anzeigen

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
sonic
Beiträge: 74
Registriert: 19. Jan 2020 10:39

Uhrzeit von letzter "Switch" Aktion in Sitemap anzeigen

Beitrag von sonic »

Guten Morgen Community,

Ich würde gerne in meiner Sitemap die Zeit der letzten Switch Aktion anzeigen lassen.

Folgendes ist der Aufbau:
mittels Magnetsensoren überwache ich den Briefkasten. Öffnet der Postbote also die Klappe, sendet der Magnetsensor eine 0 an eine NodeMCU mit EspEasy, diese sendet der Status via MQTT an meinen Raspi mit Openhabian. Das funktioniert auch tadellos.
Jetzt möchte ich aber gerne in der Sitemap die Uhrzeit dieser Aktion anzeigen lassen. Vielleicht kann mir hier jemand helfen.

Die entsprechenden Codezeilen:

briefkasten.rules

Code: Alles auswählen

rule "Briefkasten"
when
        Item Briefkasten changed to 0 // Sobald die Klappe geöffnet wird und der Kontakt unterbrochen wird
then
        logInfo("RULE", "--> Es ist Post gekommen")
        postUpdate(vBriefkasten, ON)        
        sendBroadcastNotification("Es ist Post gekommen!")
end
briefkasten.items

Code: Alles auswählen

Switch  vBriefkasten   "Briefkasten"
xxx.sitemaps (Der Bereich ist noch nicht fertig, bis jetzt habe ich den von meiner Klingel einfach übernommen. Es soll halt statt den mappings einfach die Uhrzeit des letzten Switch angezeigt werden)!

Code: Alles auswählen

Frame label="Briefkasten" {
        Switch item=vBriefkasten mappings=[ "ON"="Post ist da", "OFF"="Briefkasten geschlossen"] icon=motion
    }

Viele Grüße
Bernhard

P.S.: Eine entsprechende Vorstellung meinerseits und meines Smarthome werde ich selbstverständlich im Bereich "Projekte" posten.
---------------------------------
OpenHAB 3 auf Dell ThinClient unter Debian Bullseye und ConBee II
RaspberryPi 4b 2GB in Din Rail Gehäuse mit PiVCCU3
Allerlei Sonoff, Shelly, NodeMCU, Sensoren, Aqara Krams und und und.

violine21
Beiträge: 589
Registriert: 20. Sep 2019 05:49
Answers: 7

Re: Uhrzeit von letzter "Switch" Aktion in Sitemap anzeigen

Beitrag von violine21 »

Ich habe für solche Fälle den Zeitpunkt in der Sitemap an zu zeigen ein Item angelegt.
z.B. bei meiner Wetterstation

Code: Alles auswählen

String					virtual_wetterereignis							"Auslöser[%s]"
In der Rule dann folgende Zeile

Code: Alles auswählen

virtual_wetterereignis.postUpdate(now.toString("HH:mm"))
In deiner Sitemap (dann mit deinen Items)

Code: Alles auswählen

Frame label="Briefkasten" {
        Switch item=vBriefkasten mappings=[ "ON"="Post ist da", "OFF"="Briefkasten geschlossen"] icon=motion
        Text   item=virtual_wetterereignis
    }
Für die Nachricht kannst du mal das probieren:

Code: Alles auswählen

sendBroadcastNotification("Es ist Post gekommen!" + (now.toString("HH:mm")) +" Uhr")

sonic
Beiträge: 74
Registriert: 19. Jan 2020 10:39

Re: Uhrzeit von letzter "Switch" Aktion in Sitemap anzeigen

Beitrag von sonic »

Ganz ganz herzlichen Dank schonmal für die Antwort.
Ich werde es kommenden Mittwoch direkt testen, dann kommen leider erst meine Bausteine um 12v auf 5v bzw. 3,3v zu drosseln. Da die Teile schon verbaut sind kann ich vorher nicht testen.

Ich werde aber natürlich sofort Rückmeldung geben ob es geklappt hat. Davon gehe ich allerdings aus.
Noch einen schönen RestSonntag :-)
---------------------------------
OpenHAB 3 auf Dell ThinClient unter Debian Bullseye und ConBee II
RaspberryPi 4b 2GB in Din Rail Gehäuse mit PiVCCU3
Allerlei Sonoff, Shelly, NodeMCU, Sensoren, Aqara Krams und und und.

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

Re: Uhrzeit von letzter "Switch" Aktion in Sitemap anzeigen

Beitrag von udo1toni »

Weil hier eventuell die Uhrzeit nicht ausreichend ist:

Code: Alles auswählen

"yyyy/MM/dd HH:mm:ss"
wäre ein komplettes Datum, Jahr/Monat/Tag Stunde:Minute:Sekunde...
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

sonic
Beiträge: 74
Registriert: 19. Jan 2020 10:39

Re: Uhrzeit von letzter "Switch" Aktion in Sitemap anzeigen

Beitrag von sonic »

Hervorragend. Es hat alles funktioniert. BESTEN DANK.

ESPEasy auf den NodeMcu's lief allerdings nicht wirklich stabil. Gleiches geht aber auch mit Tasmota habe ich festgestellt.
---------------------------------
OpenHAB 3 auf Dell ThinClient unter Debian Bullseye und ConBee II
RaspberryPi 4b 2GB in Din Rail Gehäuse mit PiVCCU3
Allerlei Sonoff, Shelly, NodeMCU, Sensoren, Aqara Krams und und und.

Jojo
Beiträge: 206
Registriert: 5. Mär 2019 21:13
Answers: 2
Wohnort: Ingolstadt

Re: Uhrzeit von letzter "Switch" Aktion in Sitemap anzeigen

Beitrag von Jojo »

Servus,

das hätte ich auch gern,
klappt aber nicht.
Rule:

Code: Alles auswählen

rule "Zeit der Aktualisierung"
 
when 
Item ptotaltv received update 
then
Zeitaktuell.postUpdate(now.toString("HH:mm"))
end
Item:

Code: Alles auswählen

String Zeitaktuell "aktualisiert um: " <time>
Sitemap:

Code: Alles auswählen

Text item=Zeitaktuell
Mag mir jemand helfen ?


Danke schonmal
--

Gruß

Jojo

Benutzeravatar
PeterA
Beiträge: 1052
Registriert: 8. Feb 2019 12:12
Answers: 13

Re: Uhrzeit von letzter "Switch" Aktion in Sitemap anzeigen

Beitrag von PeterA »

Dein Item muss vom "Typ" DateTime sein.

Also z.B. so:

item:

Code: Alles auswählen

DateTime Filterwechsel_last	"Letzter Filterwechsel [%1$ta, %1$td.%1$tm.%1$ty, %1$tH:%1$tM Uhr]" <time>
rule:

Code: Alles auswählen

rule "Letzter Filterwechsel"
when
    Item FiltertimerReset changed from ON to OFF
then
    FiltertimerReset.state == OFF  // Filter wurde gewechselt
    Filterwechsel_last.postUpdate(now.toString())
end
sitemap:

Code: Alles auswählen

Default   item=Filterwechsel_last
- OpenHab 2.4
#PWRUP

Benutzeravatar
peter-pan
Beiträge: 2568
Registriert: 28. Nov 2018 12:03
Answers: 25
Wohnort: Schwäbisch Gmünd

Re: Uhrzeit von letzter "Switch" Aktion in Sitemap anzeigen

Beitrag von peter-pan »

Du könntest es aber auch so machen:

Code: Alles auswählen

String Zeitaktuell "aktualisiert um: [%s Std/Min] " <time>
Die Umwandlung in einen String geht schon auch. Du musst nur auch ein Format definieren, das macht OH nicht immer automatisch.
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.2 openhabian

Jojo
Beiträge: 206
Registriert: 5. Mär 2019 21:13
Answers: 2
Wohnort: Ingolstadt

Re: Uhrzeit von letzter "Switch" Aktion in Sitemap anzeigen

Beitrag von Jojo »

Servus Peters,
die erste Lösung funktioniert traumhaft.
Danke euch beiden !!!
--

Gruß

Jojo

Antworten