fix many bugs with notify
This commit is contained in:
		@@ -47,7 +47,7 @@ use JSON;
 | 
				
			|||||||
use Blocking;
 | 
					use Blocking;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
my $version = "1.2.3";
 | 
					my $version = "1.2.4";
 | 
				
			||||||
my %CallBatteryFirmwareAge = (  '8h'    => 28800,
 | 
					my %CallBatteryFirmwareAge = (  '8h'    => 28800,
 | 
				
			||||||
                                '16h'   => 57600,
 | 
					                                '16h'   => 57600,
 | 
				
			||||||
                                '24h'   => 86400,
 | 
					                                '24h'   => 86400,
 | 
				
			||||||
@@ -246,11 +246,13 @@ sub XiaomiFlowerSens_Notify($$) {
 | 
				
			|||||||
    return if (!$events);
 | 
					    return if (!$events);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    XiaomiFlowerSens_stateRequestTimer($hash) if( grep /^INITIALIZED$/,@{$events}
 | 
					    XiaomiFlowerSens_stateRequestTimer($hash) if( (grep /^DEFINED.$name$/,@{$events}
 | 
				
			||||||
 | 
					                                                    or grep /^INITIALIZED$/,@{$events}
 | 
				
			||||||
 | 
					                                                    or grep /^MODIFIED.$name$/,@{$events}
 | 
				
			||||||
                                                    or grep /^DELETEATTR.$name.disable$/,@{$events}
 | 
					                                                    or grep /^DELETEATTR.$name.disable$/,@{$events}
 | 
				
			||||||
 | 
					                                                    or grep /^ATTR.$name.disable.0$/,@{$events}
 | 
				
			||||||
                                                    or grep /^DELETEATTR.$name.interval$/,@{$events}
 | 
					                                                    or grep /^DELETEATTR.$name.interval$/,@{$events}
 | 
				
			||||||
                                                or grep /^ATTR.$name.interval.[0-9]+/,@{$events}
 | 
					                                                    or grep /^ATTR.$name.interval.[0-9]+/,@{$events} ) and $init_done );
 | 
				
			||||||
                                                or (grep /^DEFINED.$name$/,@{$events} and $init_done) );
 | 
					 | 
				
			||||||
    return;
 | 
					    return;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -302,6 +304,8 @@ sub XiaomiFlowerSens_stateRequestTimer($) {
 | 
				
			|||||||
    my $name        = $hash->{NAME};
 | 
					    my $name        = $hash->{NAME};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
 | 
					    RemoveInternalTimer($hash);
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
    if( $init_done and not IsDisabled($name) ) {
 | 
					    if( $init_done and not IsDisabled($name) ) {
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
        XiaomiFlowerSens_stateRequest($hash);
 | 
					        XiaomiFlowerSens_stateRequest($hash);
 | 
				
			||||||
@@ -769,6 +773,7 @@ sub XiaomiFlowerSens_CallBatteryFirmware_IsUpdateTimeAgeToOld($$) {
 | 
				
			|||||||
  <b>Attributes</b>
 | 
					  <b>Attributes</b>
 | 
				
			||||||
  <ul>
 | 
					  <ul>
 | 
				
			||||||
    <li>disable - disables the device</li>
 | 
					    <li>disable - disables the device</li>
 | 
				
			||||||
 | 
					    <li>disabledForIntervals - disable device for interval time (13:00-18:30 or 13:00-18:30 22:00-23:00)</li>
 | 
				
			||||||
    <li>interval - interval in seconds for statusRequest</li>
 | 
					    <li>interval - interval in seconds for statusRequest</li>
 | 
				
			||||||
    <li>minFertility - min fertility value for low warn event</li>
 | 
					    <li>minFertility - min fertility value for low warn event</li>
 | 
				
			||||||
    <li>maxFertility - max fertility value for High warn event</li>
 | 
					    <li>maxFertility - max fertility value for High warn event</li>
 | 
				
			||||||
@@ -845,6 +850,7 @@ sub XiaomiFlowerSens_CallBatteryFirmware_IsUpdateTimeAgeToOld($$) {
 | 
				
			|||||||
  <ul>
 | 
					  <ul>
 | 
				
			||||||
    <li>disable - deaktiviert das Device</li>
 | 
					    <li>disable - deaktiviert das Device</li>
 | 
				
			||||||
    <li>interval - Interval in Sekunden zwischen zwei Abfragen</li>
 | 
					    <li>interval - Interval in Sekunden zwischen zwei Abfragen</li>
 | 
				
			||||||
 | 
					    <li>disabledForIntervals - deaktiviert das Gerät für den angegebenen Zeitinterval (13:00-18:30 or 13:00-18:30 22:00-23:00)</li>
 | 
				
			||||||
    <li>minFertility - min Fruchtbarkeits-Grenzwert für ein Ereignis minFertility low </li>
 | 
					    <li>minFertility - min Fruchtbarkeits-Grenzwert für ein Ereignis minFertility low </li>
 | 
				
			||||||
    <li>maxFertility - max Fruchtbarkeits-Grenzwert für ein Ereignis maxFertility high </li>
 | 
					    <li>maxFertility - max Fruchtbarkeits-Grenzwert für ein Ereignis maxFertility high </li>
 | 
				
			||||||
    <li>minMoisture - min Feuchtigkeits-Grenzwert für ein Ereignis minMoisture low </li> 
 | 
					    <li>minMoisture - min Feuchtigkeits-Grenzwert für ein Ereignis minMoisture low </li> 
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user