Hauptmenü

DOIF-Timer nie löschen?

Begonnen von FFHEM, 05 Mai 2019, 17:53:57

Vorheriges Thema - Nächstes Thema

FFHEM

Hallo zusammen,
ich habe jetzt einen Fall, bei dem ich in einem DOIF einen Timer unbedingt ausführen lassen will, dieser (im cmd_2) soll nicht durch andere Events gelöscht werden können.
Gelöst ist jetzt mit einem "at":
### Regen -> Stop!
([Regensensor_Regen] eq "rain" )
  (set shaun changeCfgTimeExtend -100;
  set nexus7 ttsSay Es fängt an zu regnen;)
 
### Mäht -> nach 1,5 h sperren, Feierabend für heute
DOELSEIF ([shaun:mowerStatusTxt] eq "Start sequence")
(define t_robot_feierabend at +1:30:00 setreading $SELF HeuteSchonGemaeht Feierabend)
   
### Morgens Sperre für Mähen entfernen
DOELSEIF ([08:00])
  (setreading $SELF HeuteSchonGemaeht BereitZumMähen;
  set shaun changeCfgTimeExtend 0;)

### Nach Verzögerung wieder trocken
DOELSE
   (IF ([$SELF:HeuteSchonGemaeht] eq "BereitZumMähen") (set shaun changeCfgTimeExtend 0))


Die Doku habe ich schon mehrfach rauf und runter gelesen, ich habe leider nichts gefunden, was den Befehl, s. oben:
(define t_robot_feierabend at +1:30:00 setreading $SELF HeuteSchonGemaeht Feierabend)
ersetzen könnte.

Was habe ich übersehen/nicht verstanden?

Vielen Dank für einen Hinweis!
Gruß,
Friedhelm

Raspberry Pi 4B, Homematic, Sonoff, Shelly, Worx, Arduino, ESP8266

Damian

sleep sollte hierfür ausreichen:

DOELSEIF ([shaun:mowerStatusTxt] eq "Start sequence")
(sleep 90; setreading $SELF HeuteSchonGemaeht Feierabend)


wait wird immer unterbrochen, es sei denn man lagert diesen Fall in einen separaten DOIF ohne DOELSE aus.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

amenomade

@Damian: warum hier ein ";" und nicht "," ?
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Damian

Zitat von: amenomade am 05 Mai 2019, 19:59:01
@Damian: warum hier ein ";" und nicht "," ?

weil ; zum sleep dazugehört, was danach kommt kann man als Übergabeparameter von sleep ansehen
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

amenomade

Danke, schon wieder was gelernt :)
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus