fix coming home and self defense
This commit is contained in:
		| @@ -1212,13 +1212,8 @@ sub EventProcessingResidents($@) { | |||||||
|             if ( |             if ( | ||||||
|                     $ascDev->getSelfDefense eq 'on' |                     $ascDev->getSelfDefense eq 'on' | ||||||
|                 and $shutters->getSelfDefenseExclude eq 'off' |                 and $shutters->getSelfDefenseExclude eq 'off' | ||||||
|                 or ( |                 or (   $getModeDown eq 'absent' | ||||||
|                     ( |                     or $getModeDown eq 'always' | ||||||
|                            $getModeDown eq 'absent' |  | ||||||
|                         or $getModeDown eq 'always' |  | ||||||
|                     ) |  | ||||||
|                     and not IsDay($shuttersDev) |  | ||||||
|                     and IsAfterShuttersTimeBlocking($shuttersDev) |  | ||||||
|                 ) |                 ) | ||||||
|               ) |               ) | ||||||
|             { |             { | ||||||
| @@ -1236,10 +1231,19 @@ sub EventProcessingResidents($@) { | |||||||
|                       ) # der erste Wert ist ob der timer schon läuft, der zweite ist ob self defense aktiv ist durch die Bedingungen |                       ) # der erste Wert ist ob der timer schon läuft, der zweite ist ob self defense aktiv ist durch die Bedingungen | ||||||
|                       if ( CheckIfShuttersWindowRecOpen($shuttersDev) == 0 |                       if ( CheckIfShuttersWindowRecOpen($shuttersDev) == 0 | ||||||
|                         and $shutters->getSelfDefenseMode eq 'absent' ); |                         and $shutters->getSelfDefenseMode eq 'absent' ); | ||||||
|  |                     $shutters->setDriveCmd( $shutters->getClosedPos ); | ||||||
|  |                 } | ||||||
|  |                 elsif ( | ||||||
|  |                     (   $getModeDown eq 'absent' | ||||||
|  |                      or $getModeDown eq 'always' | ||||||
|  |                     ) | ||||||
|  |                     and not IsDay($shuttersDev) | ||||||
|  |                     and IsAfterShuttersTimeBlocking($shuttersDev) | ||||||
|  |                   ) | ||||||
|  |                 { | ||||||
|  |                     $shutters->setLastDrive('residents absent'); | ||||||
|  |                     $shutters->setDriveCmd( $shutters->getClosedPos ); | ||||||
|                 } |                 } | ||||||
|                 else { $shutters->setLastDrive('residents absent'); } |  | ||||||
|  |  | ||||||
|                 $shutters->setDriveCmd( $shutters->getClosedPos ); |  | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
| @@ -1322,6 +1326,7 @@ sub EventProcessingResidents($@) { | |||||||
|                 and not $shutters->getIfInShading |                 and not $shutters->getIfInShading | ||||||
|                 and (  $getResidentsLastStatus eq 'gone' |                 and (  $getResidentsLastStatus eq 'gone' | ||||||
|                     or $getResidentsLastStatus eq 'absent' ) |                     or $getResidentsLastStatus eq 'absent' ) | ||||||
|  |                 and $shutters->getLastDrive eq 'selfDefense active' | ||||||
|               ) |               ) | ||||||
|             { |             { | ||||||
|                 RemoveInternalTimer( $shutters->getSelfDefenseAbsentTimerhash ) |                 RemoveInternalTimer( $shutters->getSelfDefenseAbsentTimerhash ) | ||||||
| @@ -6363,7 +6368,7 @@ sub getblockAscDrivesAfterManual { | |||||||
|   "release_status": "under develop", |   "release_status": "under develop", | ||||||
|   "license": "GPL_2", |   "license": "GPL_2", | ||||||
|   "version": "v0.6.19", |   "version": "v0.6.19", | ||||||
|   "x_developmentversion": "v0.6.19.17", |   "x_developmentversion": "v0.6.19.18", | ||||||
|   "author": [ |   "author": [ | ||||||
|     "Marko Oldenburg <leongaultier@gmail.com>" |     "Marko Oldenburg <leongaultier@gmail.com>" | ||||||
|   ], |   ], | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user