Ich hänge mich hier mal mit rein - habe heute von 4.2.3 auf 4.3.2 upgedatet
allerdings habe ich in einer Rule auch ein Problem mit getZonedDateTime
Code: Alles auswählen
rule "eMail Timestamp"
when
Member of gTimestamp changed
then
if (!(gTimestamp.state instanceof DateTimeType)) return;
if (Emailblocker_Timestamp.state != ON) {
if (now.isAfter((gTimestamp.state as DateTimeType).getZonedDateTime.plusHours(8))) {
getActions("mail","mail:smtp:MAILPROVIDER").sendHtmlMail("USER@DOMAIN:DE", "OpenHAB Alarm - Statusänderung "+triggeringItem.name+ " überfällig", "HINWEIS! Bitte: "+triggeringItem.name+ " prüfen! ...letzte Statusänderung ist länger als 8 Stunden her...")
logInfo("myLog", "Timestamp - E-MAIL verschickt!")
Emailblocker_Timestamp.postUpdate(ON)
}
}
end
alle meine Versuche
Code: Alles auswählen
if (now.isAfter((gTimestamp.state as DateTimeType).getZonedDateTime.plusHours(8))) {
entsprechend den Empfehlungen im OpenHAB Forum abzuändern schlagen fehl. Was ich schon probiert habe:
Code: Alles auswählen
if (now.isAfter((gTimestamp.state as DateTimeType).getZonedDateTime(ZoneId.systemDefault().plusHours(8)))) {
Fehler: Script execution of rule with UID 'email-2' failed: 'plusHours' is not a member of 'java.time.ZoneId'; line 40, column 71, length 35 in email
Code: Alles auswählen
if (now.isAfter((gTimestamp.state as DateTimeType).getInstant().plusHours(8))) {
Fehler: Script execution of rule with UID 'email-2' failed: 'plusHours' is not a member of 'java.time.Instant'; line 40, column 19, length 60 in email
insgesamt habe ich alle möglichen Varianten (welche mir logisch erscheinen) von hier
https://community.openhab.org/t/the-met ... ted/160763 probiert
bekomme aber immer wieder
'plusHours' is not a member of 'java.time.ZoneId' - ich denke ich muss den Aufbau der Zeile grundsätzlich ändern und wäre für eine Hilfestellung diesbzgl. sehr dankbar
ich bin schon auf Java21 (zulu21) falls das irgendwie von Belang ist