diff --git a/fhem/FHEM/98_DOIF.pm b/fhem/FHEM/98_DOIF.pm
index 07efa5bc7..c28fb2da8 100644
--- a/fhem/FHEM/98_DOIF.pm
+++ b/fhem/FHEM/98_DOIF.pm
@@ -556,7 +556,7 @@ DOIF_cmd ($$$)
}
readingsSingleUpdate ($hash, "cmd_count", $repeatnr,1);
} else {
- return undef if ($last_cmd == $nr and AttrVal($pn,"do","") ne "always");
+ return undef if ($last_cmd == $nr and (AttrVal($pn,"do","") ne "always" and AttrVal($pn,"do","") ne "resetwait"));
delete ($defs{$hash->{NAME}}{READINGS}{cmd_count});
}
}
@@ -1237,9 +1237,11 @@ DOELSEIF ([light] eq "off" and [sensor:humidity]<60)
do always
wird ein Waittimer mit dem Attribut do resetwait
auch dann zurückgesetzt, wenn die gleiche Bedingung wiederholt wahr wird.do resetwait
impliziert eine beliebige Wiederholung wie do always
. Diese lässt sich allerdings mit dem Attribut repeatsame
einschränken s. u.repeatsame <maximale Anzahl von cmd_1>:<maximale Anzahl von cmd_2>:...
wird die maximale Anzahl hintereinander folgenden Ausführungen festgelegt.define di_washer DOIF ([Watt]<2) (set pushmeldung "washer finished")
attr di_washer repeatsame 3
attr di_washer cmdpause 600
repeatsame
lässt sich mit do always
oder do resetwait
kombinieren.
+Wenn die maximale Anzahl für ein Kommando ausgelassen oder auf Null gesetzt wird, so gilt für dieses Kommando der Defaultwert "einmalige Wiederholung";
+in Kombination mit do always
bzw. do resetwait
gilt für dieses Kommando "beliebige Wiederholung".attr di_repeat repeatsame 0:2
+attr di_repeat do always
waitsame <Zeitspanne in Sekunden für cmd_1>:<Zeitspanne in Sekunden für das cmd_2>:...
wird ein Kommando erst dann ausgeführt, wenn innerhalb einer definierten Zeitspanne die entsprechende Bedingung zwei mal hintereinander wahr wird.waitsame <Zeitspanne in Sekunden für cmd_1>:<Zeitspanne in Sekunden für das cmd_2>:...
wird ein Kommando erst dann ausgeführt, wenn innerhalb einer definierten Zeitspanne die entsprechende Bedingung zweimal hintereinander wahr wird.