I have a rule where I’m looking on the time of the last update. I always get the following error:
2018-03-02 18:41:19.248 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'BLNet Raw auswerten': cannot invoke method public abstract long org.joda.time.ReadableInstant.getMillis() on null
I toggled the value of the item several times to be sure that there is a last value, but the error still occurs.
The code where it happens is in the first code line:
// nach ca. 60 Minuten, danach alle 24 Stunden Nachricht versenden
val LastReset = swi_Heiz_ResetBLNet.lastUpdate.getMillis
val Jetzt = now.millis
val Number Diff = Minutes::minutesBetween(new DateTime(LastReset), new DateTime(Jetzt)).getMinutes()
if (Diff.intValue % (24 * 60) == 60)
sendTelegram("HausWartung", "BLnet benötigt Reset!")
The Item is defined as
Switch swi_Heiz_ResetBLNet "BLnet: Reset nötig" <none> (gRestoreOnStartup)
The group gRestoreOnStartup defines persistence via mapdb. This works for other items without problems.
Can you help me?