91_watchdog.pm: trigger w . will abort an activated trigger (Forum #43957)

git-svn-id: https://svn.fhem.de/fhem/trunk/fhem@10789 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
rudolfkoenig 2016-02-10 18:24:20 +00:00
parent f8776afc01
commit 25dfba5b21

View File

@ -94,6 +94,12 @@ watchdog_Notify($$)
if($watchdog->{STATE} =~ m/Next:/) { if($watchdog->{STATE} =~ m/Next:/) {
if($dotTrigger) {
RemoveInternalTimer($watchdog);
$watchdog->{STATE} = "defined";
return;
}
if($n =~ m/^$re2$/ || "$n:$s" =~ m/^$re2$/) { if($n =~ m/^$re2$/ || "$n:$s" =~ m/^$re2$/) {
RemoveInternalTimer($watchdog); RemoveInternalTimer($watchdog);
@ -112,8 +118,7 @@ watchdog_Notify($$)
} }
} elsif($watchdog->{STATE} eq "defined") { } elsif($watchdog->{STATE} eq "defined") {
if($dotTrigger || # trigger w . if($dotTrigger || ($n =~ m/^$re1$/ || "$n:$s" =~ m/^$re1$/)) {
($n =~ m/^$re1$/ || "$n:$s" =~ m/^$re1$/)) {
watchdog_Activate($watchdog) watchdog_Activate($watchdog)
} }
@ -251,9 +256,10 @@ watchdog_Attr(@)
regexp, and it will be reactivated, when it is received. regexp, and it will be reactivated, when it is received.
</li> </li>
<li>trigger &lt;watchdogname&gt; . will activate the trigger if its state <li>trigger &lt;watchdogname&gt; . will activate the trigger if its state
is defined, and set it into state defined if its state is is defined, and set it into state defined if its state is active
triggered. You always have to reactivate the watchdog with this (Next:...) or triggered. You always have to reactivate the watchdog
command once it has triggered (unless you restart fhem)</li> with this command once it has triggered (unless you restart
fhem)</li>
<li>a generic watchdog (one watchdog responsible for more devices) is <li>a generic watchdog (one watchdog responsible for more devices) is
currently not possible.</li> currently not possible.</li>
<li>with modify all parameters are optional, and will not be changed if <li>with modify all parameters are optional, and will not be changed if
@ -354,7 +360,7 @@ watchdog_Attr(@)
<li>trigger &lt;watchdogname&gt; . aktiviert den Trigger wenn dessen <li>trigger &lt;watchdogname&gt; . aktiviert den Trigger wenn dessen
Status defined ist und setzt ihn in den Status defined wenn sein status Status defined ist und setzt ihn in den Status defined wenn sein status
triggered ist.<br> triggered oder aktiviert (Next:...) ist.<br>
Der Watchdog musst immer mit diesem Befehl reaktiviert werden wenn er Der Watchdog musst immer mit diesem Befehl reaktiviert werden wenn er
getriggert wurde.</li> getriggert wurde.</li>