From 7f4bd01e532b931ca3a1147a7bc0687b6313b6ee Mon Sep 17 00:00:00 2001 From: rudolfkoenig <> Date: Tue, 16 Jun 2015 17:12:39 +0000 Subject: [PATCH] 98_autocreate.pm: fix autocreateThreshold warnings (Forum #36040) git-svn-id: https://svn.fhem.de/fhem/trunk@8758 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/98_autocreate.pm | 32 ++++++++++++++++++-------------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/fhem/FHEM/98_autocreate.pm b/fhem/FHEM/98_autocreate.pm index 1b4a7455f..84d26da28 100644 --- a/fhem/FHEM/98_autocreate.pm +++ b/fhem/FHEM/98_autocreate.pm @@ -144,8 +144,8 @@ autocreate_Notify($$) if( !@v ) { if( my $fp = $modules{$t}{AutoCreate} ) { foreach my $k (keys %{$fp}) { - next if($name !~ m/^$k$/); - (undef, $interval) = split( ':', $fp->{$k}{autocreateThreshold} ); + next if($name !~ m/^$k$/ || !$fp->{$k}{autocreateThreshold}); + (undef, $interval) = split( ':',$fp->{$k}{autocreateThreshold}); last; } } @@ -155,12 +155,13 @@ autocreate_Notify($$) foreach my $a (keys %{$hash->{received}{$t}}) { foreach my $time (keys %{$hash->{received}{$t}{$a}}) { if( $time < $now - $interval ) { - #Log3 $me, 5, "autocreate: removed event for '$t $a' with timestamp $time"; + #Log3 $me, 5, + # "autocreate: removed event for '$t $a' with timestamp $time"; delete( $hash->{received}{$t}{$a}{$time} ); } } - delete( $hash->{received}{$t}{$a} ) if( !%{$hash->{received}{$t}{$a}} ); + delete($hash->{received}{$t}{$a}) if(!%{$hash->{received}{$t}{$a}}); } delete( $hash->{received}{$t} ) if( !%{$hash->{received}{$t}} ); @@ -176,8 +177,9 @@ autocreate_Notify($$) if( !@v ) { if( my $fp = $modules{$type}{AutoCreate} ) { foreach my $k (keys %{$fp}) { - next if($name !~ m/^$k$/); - ($min_count, $interval) = split( ':', $fp->{$k}{autocreateThreshold} ); + next if($name !~ m/^$k$/ || !$fp->{$k}{autocreateThreshold}); + ($min_count, $interval) = + split(':', $fp->{$k}{autocreateThreshold}); last; } } @@ -189,11 +191,12 @@ autocreate_Notify($$) $hash->{received}{$type}{$arg}{$now} = 1; my $count = keys %{$hash->{received}{$type}{$arg}}; - Log3 $me, 4, "autocreate: received $count event(s) for '$type $arg' during the last $interval seconds"; + Log3 $me, 4, "autocreate: received $count event(s) for ". + "'$type $arg' during the last $interval seconds"; if( $count < $min_count ) { - Log3 $me, 4, "autocreate: ignoring event for '$type $arg': at least $min_count needed"; - + Log3 $me, 4, "autocreate: ignoring event for ". + "'$type $arg': at least $min_count needed"; next; } @@ -666,9 +669,10 @@ autocreate_Attr(@)
count
events
- of TYPE type
in the last interval
seconds.attr autocreateThreshold LaCrosse:2:30,EMT7110:2:60
+ device is only created if there have been at least count
+ events of TYPE type
in the last interval
+ seconds.attr autocreateThreshold
+ LaCrosse:2:30,EMT7110:2:60
count
- Events für den TYPE type
in den letzten interval
- Sekunden gegeben hat.type
in den letzten
+ interval
Sekunden gegeben hat.attr autocreateThreshold LaCrosse:2:30,EMT7110:2:60