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 alwayswaitsame <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.