change attribut Fn

This commit is contained in:
Marko Oldenburg 2017-10-17 15:24:09 +02:00
parent 96f0bc4fde
commit 1c58b0d86c

View File

@ -181,9 +181,7 @@ sub XiaomiFlowerSens_Attr(@) {
} }
elsif( $cmd eq "del" ) { elsif( $cmd eq "del" ) {
readingsSingleUpdate ( $hash, "state", "active", 1 );
Log3 $name, 3, "XiaomiFlowerSens ($name) - enabled"; Log3 $name, 3, "XiaomiFlowerSens ($name) - enabled";
XiaomiFlowerSens_stateRequestTimer($hash);
} }
} }
@ -192,12 +190,12 @@ sub XiaomiFlowerSens_Attr(@) {
return "check disabledForIntervals Syntax HH:MM-HH:MM or 'HH:MM-HH:MM HH:MM-HH:MM ...'" return "check disabledForIntervals Syntax HH:MM-HH:MM or 'HH:MM-HH:MM HH:MM-HH:MM ...'"
unless($attrVal =~ /^((\d{2}:\d{2})-(\d{2}:\d{2})\s?)+$/); unless($attrVal =~ /^((\d{2}:\d{2})-(\d{2}:\d{2})\s?)+$/);
Log3 $name, 3, "XiaomiFlowerSens ($name) - disabledForIntervals"; Log3 $name, 3, "XiaomiFlowerSens ($name) - disabledForIntervals";
readingsSingleUpdate ( $hash, "state", "Unknown", 1 ); readingsSingleUpdate ( $hash, "state", "disabled", 1 );
} }
elsif( $cmd eq "del" ) { elsif( $cmd eq "del" ) {
readingsSingleUpdate ( $hash, "state", "active", 1 );
Log3 $name, 3, "XiaomiFlowerSens ($name) - enabled"; Log3 $name, 3, "XiaomiFlowerSens ($name) - enabled";
readingsSingleUpdate ( $hash, "state", "active", 1 );
} }
} }
@ -209,14 +207,12 @@ sub XiaomiFlowerSens_Attr(@) {
} else { } else {
$hash->{INTERVAL} = $attrVal; $hash->{INTERVAL} = $attrVal;
Log3 $name, 3, "XiaomiFlowerSens ($name) - set interval to $attrVal"; Log3 $name, 3, "XiaomiFlowerSens ($name) - set interval to $attrVal";
XiaomiFlowerSens_stateRequestTimer($hash) if($init_done);
} }
} }
elsif( $cmd eq "del" ) { elsif( $cmd eq "del" ) {
$hash->{INTERVAL} = 300; $hash->{INTERVAL} = 300;
Log3 $name, 3, "XiaomiFlowerSens ($name) - set interval to default"; Log3 $name, 3, "XiaomiFlowerSens ($name) - set interval to default";
XiaomiFlowerSens_stateRequestTimer($hash);
} }
} }
@ -235,7 +231,8 @@ sub XiaomiFlowerSens_Notify($$) {
return if (!$events); return if (!$events);
XiaomiFlowerSens_stateRequestTimer($hash) if( grep /^INITIALIZED$/,@{$events} ); XiaomiFlowerSens_stateRequestTimer($hash) if( grep /^INITIALIZED$/,@{$events}
or grep /^DELETEATTR.$name.disable$/,@{$events} );
return; return;
} }
@ -285,11 +282,9 @@ sub XiaomiFlowerSens_stateRequestTimer($) {
my ($hash) = @_; my ($hash) = @_;
my $name = $hash->{NAME}; my $name = $hash->{NAME};
if( $init_done and not IsDisabled($name) ) {
RemoveInternalTimer($hash);
if( not IsDisabled($name) ) {
XiaomiFlowerSens_stateRequest($hash); XiaomiFlowerSens_stateRequest($hash);