FHEM Forum

FHEM => Automatisierung => Thema gestartet von: bastelfeak am 13 Februar 2020, 18:26:19

Titel: if Bedingung mit Zeitdifferenz
Beitrag von: bastelfeak am 13 Februar 2020, 18:26:19
Hallo,
ich habe einen S50 Saugroboter, der immer fahren soll, sobald die Wohnung verlassen wird und die letzte Reinigung länger her ist als 12h (43200 sek).
Daher habe ich in das Homemode Modul beim trigger absent folgendes hinterlegt:

if (ReadingsVal("SaugRobo","last_timestamp","") < (time() + 43200)){fhem"set SaugRobo start"};


Leider fährt der S50 jedes mal los. Also stimmt irgendetwas nicht. Da meine Kentnisse leider in dieser Hinsicht zu begrenzt sind, hoffe ich auf eure Hilfe.

Viele Grüße
Titel: Antw:if Bedingung mit Zeitdifferenz
Beitrag von: xenos1984 am 13 Februar 2020, 18:57:21
time() + 43200

Wäre es dann nicht sinnvoller zu prüfen, ob die letzte Fahrt vor jetzt - 12h war, statt vor jetzt + 12h (was immer der Fall ist)?
Titel: Antw:if Bedingung mit Zeitdifferenz
Beitrag von: amenomade am 13 Februar 2020, 19:08:32
Zitat von: xenos1984 am 13 Februar 2020, 18:57:21
time() + 43200

Wäre es dann nicht sinnvoller zu prüfen, ob die letzte Fahrt vor jetzt - 12h war, statt vor jetzt + 12h (was immer der Fall ist)?

Bestimmt ;)
Titel: Antw:if Bedingung mit Zeitdifferenz
Beitrag von: dk3572 am 13 Februar 2020, 19:36:16
Ich hatte zu ähnlicher Frage diesen Tipp bekommen.

if (ReadingsAge('SaugRobo','last_timestamp',0) > 43200)
Titel: Antw:if Bedingung mit Zeitdifferenz
Beitrag von: bastelfeak am 13 Februar 2020, 23:13:33
Zitat von: xenos1984 am 13 Februar 2020, 18:57:21
time() + 43200

Wäre es dann nicht sinnvoller zu prüfen, ob die letzte Fahrt vor jetzt - 12h war, statt vor jetzt + 12h (was immer der Fall ist)?

Manchmal ist es einfach zu spät...Vielen Dank!