diff --git a/fhem/FHEM/30_tradfri.pm b/fhem/FHEM/30_tradfri.pm index 58e15c461..2988f1304 100644 --- a/fhem/FHEM/30_tradfri.pm +++ b/fhem/FHEM/30_tradfri.pm @@ -7,7 +7,6 @@ use strict; use warnings; use CoProcess; -#require "30_HUEBridge.pm"; require "$attr{global}{modpath}/FHEM/30_HUEBridge.pm"; use JSON; @@ -78,7 +77,7 @@ tradfri_Define($$) tradfri_AttrDefaults($hash); - $hash->{NOTIFYDEV} = "global"; + $hash->{NOTIFYDEV} = "global,global:npmjs.*tradfri-fhem.*"; if( !AttrVal($name, 'devStateIcon', undef ) ) { CommandAttr(undef, "$name createGroupReadings 0"); @@ -107,9 +106,19 @@ tradfri_Notify($$) my ($hash,$dev) = @_; return if($dev->{NAME} ne "global"); - return if(!grep(m/^INITIALIZED|REREADCFG$/, @{$dev->{CHANGED}})); - CoProcess::start($hash); + if( grep(m/^npmjs:BEGIN.*tradfri-fhem.*/, @{$dev->{CHANGED}}) ) { + CoProcess::stop($hash); + return undef; + + } elsif( grep(m/^npmjs:FINISH.*tradfri-fhem.*/, @{$dev->{CHANGED}}) ) { + CoProcess::start($hash); + return undef; + + } elsif( grep(m/^INITIALIZED|REREADCFG$/, @{$dev->{CHANGED}}) ) { + CoProcess::start($hash); + return undef; + } return undef; } diff --git a/fhem/FHEM/39_alexa.pm b/fhem/FHEM/39_alexa.pm index 91c0a42d1..005c5ffe8 100644 --- a/fhem/FHEM/39_alexa.pm +++ b/fhem/FHEM/39_alexa.pm @@ -129,7 +129,7 @@ alexa_Define($$) alexa_AttrDefaults($hash); - $hash->{NOTIFYDEV} = "global"; + $hash->{NOTIFYDEV} = "global,global:npmjs.*alexa-fhem.*"; if( $attr{global}{logdir} ) { CommandAttr(undef, "$name alexaFHEM-log %L/alexa-%Y-%m-%d.log") if( !AttrVal($name, 'alexaFHEM-log', undef ) ); @@ -163,9 +163,19 @@ alexa_Notify($$) my ($hash,$dev) = @_; return if($dev->{NAME} ne "global"); - return if(!grep(m/^INITIALIZED|REREADCFG$/, @{$dev->{CHANGED}})); - CoProcess::start($hash); + if( grep(m/^npmjs:BEGIN.*alexa-fhem.*/, @{$dev->{CHANGED}}) ) { + CoProcess::stop($hash); + return undef; + + } elsif( grep(m/^npmjs:FINISH.*alexa-fhem.*/, @{$dev->{CHANGED}}) ) { + CoProcess::start($hash); + return undef; + + } elsif( grep(m/^INITIALIZED|REREADCFG$/, @{$dev->{CHANGED}}) ) { + CoProcess::start($hash); + return undef; + } return undef; }