patch-regen #106
@@ -1462,7 +1462,7 @@ __END__
 | 
			
		||||
  ],
 | 
			
		||||
  "release_status": "stable",
 | 
			
		||||
  "license": "GPL_2",
 | 
			
		||||
  "version": "v0.10.23",
 | 
			
		||||
  "version": "v0.10.24",
 | 
			
		||||
  "author": [
 | 
			
		||||
    "Marko Oldenburg <fhemdevelopment@cooltux.net>"
 | 
			
		||||
  ],
 | 
			
		||||
 
 | 
			
		||||
@@ -1,11 +1,11 @@
 | 
			
		||||
UPD 2022-03-24_09:53:42 116177 FHEM/73_AutoShuttersControl.pm
 | 
			
		||||
UPD 2022-04-06_09:20:00 76255 lib/FHEM/Automation/ShuttersControl.pm
 | 
			
		||||
UPD 2022-06-20_15:54:48 116177 FHEM/73_AutoShuttersControl.pm
 | 
			
		||||
UPD 2022-06-20_12:59:11 76466 lib/FHEM/Automation/ShuttersControl.pm
 | 
			
		||||
UPD 2022-01-14_08:49:13 2691 lib/FHEM/Automation/ShuttersControl/Dev.pm
 | 
			
		||||
UPD 2022-01-14_08:49:13 2677 lib/FHEM/Automation/ShuttersControl/Roommate.pm
 | 
			
		||||
UPD 2022-03-05_09:12:41 32016 lib/FHEM/Automation/ShuttersControl/Shutters.pm
 | 
			
		||||
UPD 2022-01-14_08:49:13 25452 lib/FHEM/Automation/ShuttersControl/Shading.pm
 | 
			
		||||
UPD 2022-04-06_09:20:46 112362 lib/FHEM/Automation/ShuttersControl/EventProcessingFunctions.pm
 | 
			
		||||
UPD 2022-03-24_09:53:22 40705 lib/FHEM/Automation/ShuttersControl/Helper.pm
 | 
			
		||||
UPD 2022-06-20_15:50:59 112421 lib/FHEM/Automation/ShuttersControl/EventProcessingFunctions.pm
 | 
			
		||||
UPD 2022-04-07_21:31:16 40705 lib/FHEM/Automation/ShuttersControl/Helper.pm
 | 
			
		||||
UPD 2022-01-14_08:49:13 2209 lib/FHEM/Automation/ShuttersControl/Window.pm
 | 
			
		||||
UPD 2022-01-14_08:49:13 11857 lib/FHEM/Automation/ShuttersControl/Dev/Attr.pm
 | 
			
		||||
UPD 2022-01-14_08:49:13 7265 lib/FHEM/Automation/ShuttersControl/Dev/Readings.pm
 | 
			
		||||
@@ -13,4 +13,4 @@ UPD 2022-03-05_09:12:39 52751 lib/FHEM/Automation/ShuttersControl/Shutters/Attr.
 | 
			
		||||
UPD 2022-01-14_08:49:13 2799 lib/FHEM/Automation/ShuttersControl/Shutters/Readings.pm
 | 
			
		||||
UPD 2022-01-14_08:49:13 3887 lib/FHEM/Automation/ShuttersControl/Window/Attr.pm
 | 
			
		||||
UPD 2022-01-14_08:49:13 2200 lib/FHEM/Automation/ShuttersControl/Window/Readings.pm
 | 
			
		||||
UPD 2022-01-14_08:49:13 7113 lib/FHEM/Automation/ShuttersControl/Rainprotection.pm
 | 
			
		||||
UPD 2022-06-20_15:49:47 7396 lib/FHEM/Automation/ShuttersControl/Rainprotection.pm
 | 
			
		||||
 
 | 
			
		||||
@@ -1764,7 +1764,11 @@ sub SetCmdFn {
 | 
			
		||||
    return
 | 
			
		||||
      if ( $shutters->getASCenable eq 'off'
 | 
			
		||||
        || $ascDev->getASCenable eq 'off'
 | 
			
		||||
        || $idleDetection !~ m{^$idleDetectionValue$}xms );
 | 
			
		||||
        || $idleDetection !~ m{^$idleDetectionValue$}xms
 | 
			
		||||
        || $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
        ->getWindProtectionStatus eq 'protected'
 | 
			
		||||
        || $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
        ->getRaindProtectionStatus eq 'protected' );
 | 
			
		||||
 | 
			
		||||
    if ( $shutters->getStatus != $posValue ) {
 | 
			
		||||
        $shutters->setLastPos( $shutters->getStatus );
 | 
			
		||||
 
 | 
			
		||||
@@ -1363,6 +1363,7 @@ sub EventProcessingWind {
 | 
			
		||||
 | 
			
		||||
    my $name = $hash->{NAME};
 | 
			
		||||
    $FHEM::Automation::ShuttersControl::shutters->setShuttersDev($shuttersDev);
 | 
			
		||||
    my $targetPos = $FHEM::Automation::ShuttersControl::shutters->getLastPos;
 | 
			
		||||
 | 
			
		||||
    my $reading =
 | 
			
		||||
      $FHEM::Automation::ShuttersControl::ascDev->getWindSensorReading
 | 
			
		||||
@@ -1414,35 +1415,41 @@ sub EventProcessingWind {
 | 
			
		||||
            {
 | 
			
		||||
                $FHEM::Automation::ShuttersControl::shutters->setLastDrive(
 | 
			
		||||
                    'wind un-protected');
 | 
			
		||||
                $FHEM::Automation::ShuttersControl::shutters->setDriveCmd(
 | 
			
		||||
                    (
 | 
			
		||||
                          $FHEM::Automation::ShuttersControl::shutters->getIsDay
 | 
			
		||||
 | 
			
		||||
                if ( $FHEM::Automation::ShuttersControl::shutters->getIsDay
 | 
			
		||||
                    && !$FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                    ->getIfInShading
 | 
			
		||||
                    && $FHEM::Automation::ShuttersControl::shutters->getLastPos
 | 
			
		||||
                    == $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                    ->getShadingPos )
 | 
			
		||||
                {
 | 
			
		||||
                    $targetPos =
 | 
			
		||||
                      $FHEM::Automation::ShuttersControl::shutters->getOpenPos;
 | 
			
		||||
                }
 | 
			
		||||
                else {
 | 
			
		||||
                    $targetPos =
 | 
			
		||||
                      $FHEM::Automation::ShuttersControl::shutters->getLastPos;
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                if (  !$FHEM::Automation::ShuttersControl::shutters->getIsDay
 | 
			
		||||
                    && $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                    ->getShuttersPlace ne 'awning' )
 | 
			
		||||
                {
 | 
			
		||||
                    $targetPos = (
 | 
			
		||||
                        $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                          ->getPrivacyDownStatus == 2
 | 
			
		||||
                        ? $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                          ->getLastPos
 | 
			
		||||
                        : (
 | 
			
		||||
                            $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                              ->getShuttersPlace eq 'awning'
 | 
			
		||||
                            ? $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                              ->getOpenPos
 | 
			
		||||
                            : (
 | 
			
		||||
                                $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                                  ->getPrivacyDownStatus == 2
 | 
			
		||||
                                ? $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                                  ->getPrivacyDownPos
 | 
			
		||||
                                : (
 | 
			
		||||
                                    $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                                      ->getSleepPos > 0
 | 
			
		||||
                                    ? $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                                      ->getSleepPos
 | 
			
		||||
                                    : $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                                      ->getClosedPos
 | 
			
		||||
                                )
 | 
			
		||||
                            )
 | 
			
		||||
                        )
 | 
			
		||||
                    )
 | 
			
		||||
                );
 | 
			
		||||
                          ->getPrivacyDownPos
 | 
			
		||||
                        : $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                          ->getClosedPos
 | 
			
		||||
                    );
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                  ->setWindProtectionStatus('unprotected');
 | 
			
		||||
 | 
			
		||||
                $FHEM::Automation::ShuttersControl::shutters->setDriveCmd(
 | 
			
		||||
                    $targetPos);
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            FHEM::Automation::ShuttersControl::ASC_Debug(
 | 
			
		||||
 
 | 
			
		||||
@@ -153,7 +153,8 @@ sub _RainProtected {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
sub _RainUnprotected {
 | 
			
		||||
    my $h = shift;
 | 
			
		||||
    my $h         = shift;
 | 
			
		||||
    my $targetPos = $FHEM::Automation::ShuttersControl::shutters->getLastPos;
 | 
			
		||||
 | 
			
		||||
    my $shuttersDev = $h->{shuttersdevice};
 | 
			
		||||
    $FHEM::Automation::ShuttersControl::shutters->setShuttersDev($shuttersDev);
 | 
			
		||||
@@ -170,29 +171,35 @@ sub _RainUnprotected {
 | 
			
		||||
          ->setRainUnprotectionDelayObj('none');
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    $FHEM::Automation::ShuttersControl::shutters->setDriveCmd(
 | 
			
		||||
        (
 | 
			
		||||
              $FHEM::Automation::ShuttersControl::shutters->getIsDay
 | 
			
		||||
            ? $FHEM::Automation::ShuttersControl::shutters->getLastPos
 | 
			
		||||
            : (
 | 
			
		||||
                $FHEM::Automation::ShuttersControl::shutters->getShuttersPlace
 | 
			
		||||
                  eq 'awning'
 | 
			
		||||
                ? $FHEM::Automation::ShuttersControl::shutters->getOpenPos
 | 
			
		||||
                : (
 | 
			
		||||
                    $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                      ->getPrivacyDownStatus == 2
 | 
			
		||||
                    ? $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                      ->getPrivacyDownPos
 | 
			
		||||
                    : $FHEM::Automation::ShuttersControl::shutters
 | 
			
		||||
                      ->getClosedPos
 | 
			
		||||
                )
 | 
			
		||||
            )
 | 
			
		||||
        )
 | 
			
		||||
    ) if ( IsAfterShuttersTimeBlocking($shuttersDev) );
 | 
			
		||||
    if (   $FHEM::Automation::ShuttersControl::shutters->getIsDay
 | 
			
		||||
        && !$FHEM::Automation::ShuttersControl::shutters->getIfInShading
 | 
			
		||||
        && $FHEM::Automation::ShuttersControl::shutters->getLastPos ==
 | 
			
		||||
        $FHEM::Automation::ShuttersControl::shutters->getShadingPos )
 | 
			
		||||
    {
 | 
			
		||||
        $targetPos = $FHEM::Automation::ShuttersControl::shutters->getOpenPos;
 | 
			
		||||
    }
 | 
			
		||||
    else {
 | 
			
		||||
        $targetPos = $FHEM::Automation::ShuttersControl::shutters->getLastPos;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (  !$FHEM::Automation::ShuttersControl::shutters->getIsDay
 | 
			
		||||
        && $FHEM::Automation::ShuttersControl::shutters->getShuttersPlace ne
 | 
			
		||||
        'awning' )
 | 
			
		||||
    {
 | 
			
		||||
        $targetPos = (
 | 
			
		||||
            $FHEM::Automation::ShuttersControl::shutters->getPrivacyDownStatus
 | 
			
		||||
              == 2
 | 
			
		||||
            ? $FHEM::Automation::ShuttersControl::shutters->getPrivacyDownPos
 | 
			
		||||
            : $FHEM::Automation::ShuttersControl::shutters->getClosedPos
 | 
			
		||||
        );
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    $FHEM::Automation::ShuttersControl::shutters->setRainProtectionStatus(
 | 
			
		||||
        'unprotected');
 | 
			
		||||
 | 
			
		||||
    $FHEM::Automation::ShuttersControl::shutters->setDriveCmd($targetPos)
 | 
			
		||||
      if ( IsAfterShuttersTimeBlocking($shuttersDev) );
 | 
			
		||||
 | 
			
		||||
    return;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user