dev #85
@@ -1,10 +1,10 @@
 | 
				
			|||||||
UPD 2021-11-29_15:18:18 115678 FHEM/73_AutoShuttersControl.pm
 | 
					UPD 2021-12-04_08:08:23 115678 FHEM/73_AutoShuttersControl.pm
 | 
				
			||||||
UPD 2021-11-29_15:01:56 75264 lib/FHEM/Automation/ShuttersControl.pm
 | 
					UPD 2021-11-29_15:01:56 75264 lib/FHEM/Automation/ShuttersControl.pm
 | 
				
			||||||
UPD 2021-10-09_07:12:54 2657 lib/FHEM/Automation/ShuttersControl/Dev.pm
 | 
					UPD 2021-10-09_07:12:54 2657 lib/FHEM/Automation/ShuttersControl/Dev.pm
 | 
				
			||||||
UPD 2021-10-09_07:12:54 2494 lib/FHEM/Automation/ShuttersControl/Roommate.pm
 | 
					UPD 2021-10-09_07:12:54 2494 lib/FHEM/Automation/ShuttersControl/Roommate.pm
 | 
				
			||||||
UPD 2021-10-24_07:33:53 31900 lib/FHEM/Automation/ShuttersControl/Shutters.pm
 | 
					UPD 2021-10-24_07:33:53 31900 lib/FHEM/Automation/ShuttersControl/Shutters.pm
 | 
				
			||||||
UPD 2021-10-09_07:12:54 25333 lib/FHEM/Automation/ShuttersControl/Shading.pm
 | 
					UPD 2021-10-09_07:12:54 25333 lib/FHEM/Automation/ShuttersControl/Shading.pm
 | 
				
			||||||
UPD 2021-11-25_11:58:42 110681 lib/FHEM/Automation/ShuttersControl/EventProcessingFunctions.pm
 | 
					UPD 2021-12-04_08:36:32 110189 lib/FHEM/Automation/ShuttersControl/EventProcessingFunctions.pm
 | 
				
			||||||
UPD 2021-11-14_14:03:06 40094 lib/FHEM/Automation/ShuttersControl/Helper.pm
 | 
					UPD 2021-11-14_14:03:06 40094 lib/FHEM/Automation/ShuttersControl/Helper.pm
 | 
				
			||||||
UPD 2021-10-09_07:12:54 2173 lib/FHEM/Automation/ShuttersControl/Window.pm
 | 
					UPD 2021-10-09_07:12:54 2173 lib/FHEM/Automation/ShuttersControl/Window.pm
 | 
				
			||||||
UPD 2021-10-09_07:12:54 11739 lib/FHEM/Automation/ShuttersControl/Dev/Attr.pm
 | 
					UPD 2021-10-09_07:12:54 11739 lib/FHEM/Automation/ShuttersControl/Dev/Attr.pm
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -588,15 +588,18 @@ sub EventProcessingRoommate {
 | 
				
			|||||||
"AutoShuttersControl ($name) - EventProcessingRoommate: $shuttersDev und Events $events"
 | 
					"AutoShuttersControl ($name) - EventProcessingRoommate: $shuttersDev und Events $events"
 | 
				
			||||||
        );
 | 
					        );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        my $getModeUp = $FHEM::Automation::ShuttersControl::shutters->getModeUp;
 | 
					        
 | 
				
			||||||
        my $getModeDown =
 | 
					 | 
				
			||||||
          $FHEM::Automation::ShuttersControl::shutters->getModeDown;
 | 
					 | 
				
			||||||
        my $getRoommatesStatus =
 | 
					 | 
				
			||||||
          $FHEM::Automation::ShuttersControl::shutters->getRoommatesStatus;
 | 
					 | 
				
			||||||
        my $getRoommatesLastStatus =
 | 
					 | 
				
			||||||
          $FHEM::Automation::ShuttersControl::shutters->getRoommatesLastStatus;
 | 
					 | 
				
			||||||
        my $event                   = $1;
 | 
					        my $event                   = $1;
 | 
				
			||||||
        my $posValue = $FHEM::Automation::ShuttersControl::shutters->getStatus;
 | 
					        my $getModeUp               = $FHEM::Automation::ShuttersControl::shutters->getModeUp;
 | 
				
			||||||
 | 
					        my $getModeDown             = $FHEM::Automation::ShuttersControl::shutters->getModeDown;
 | 
				
			||||||
 | 
					        my $getRoommatesStatus      = $FHEM::Automation::ShuttersControl::shutters->getRoommatesStatus;
 | 
				
			||||||
 | 
					        my $getRoommatesLastStatus  = $FHEM::Automation::ShuttersControl::shutters->getRoommatesLastStatus;
 | 
				
			||||||
 | 
					        my $getUp                   = $FHEM::Automation::ShuttersControl::shutters->getUp;
 | 
				
			||||||
 | 
					        my $getDown                 = $FHEM::Automation::ShuttersControl::shutters->getDown;
 | 
				
			||||||
 | 
					        my $getIsDay                = $FHEM::Automation::ShuttersControl::shutters->getIsDay;
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
 | 
					        my $posValue                = $FHEM::Automation::ShuttersControl::shutters->getStatus;          # !!! ACHTUNG!!!
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (
 | 
					        if (
 | 
				
			||||||
            ( $event eq 'home' || $event eq 'awoken' )
 | 
					            ( $event eq 'home' || $event eq 'awoken' )
 | 
				
			||||||
@@ -604,8 +607,10 @@ sub EventProcessingRoommate {
 | 
				
			|||||||
                || $getRoommatesStatus eq 'awoken' )
 | 
					                || $getRoommatesStatus eq 'awoken' )
 | 
				
			||||||
            && ( $FHEM::Automation::ShuttersControl::ascDev
 | 
					            && ( $FHEM::Automation::ShuttersControl::ascDev
 | 
				
			||||||
                ->getAutoShuttersControlMorning eq 'on'
 | 
					                ->getAutoShuttersControlMorning eq 'on'
 | 
				
			||||||
                || $FHEM::Automation::ShuttersControl::shutters->getUp eq
 | 
					                || ( $getUp eq 'roommate'
 | 
				
			||||||
                'roommate' )
 | 
					                  &&  $getRoommatesLastStatus ne 'absent'
 | 
				
			||||||
 | 
					                  &&  $getRoommatesLastStatus ne 'gone' )
 | 
				
			||||||
 | 
					               )
 | 
				
			||||||
            && IsAfterShuttersManualBlocking($shuttersDev)
 | 
					            && IsAfterShuttersManualBlocking($shuttersDev)
 | 
				
			||||||
          )
 | 
					          )
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
@@ -629,12 +634,10 @@ sub EventProcessingRoommate {
 | 
				
			|||||||
                            ->getModeUp eq $event )
 | 
					                            ->getModeUp eq $event )
 | 
				
			||||||
                    )
 | 
					                    )
 | 
				
			||||||
                )
 | 
					                )
 | 
				
			||||||
                && (   $FHEM::Automation::ShuttersControl::shutters->getIsDay
 | 
					                && (   $getIsDay
 | 
				
			||||||
                    || $FHEM::Automation::ShuttersControl::shutters->getUp eq
 | 
					                    || $getUp eq 'roommate' )
 | 
				
			||||||
                    'roommate' )
 | 
					 | 
				
			||||||
                && ( IsAfterShuttersTimeBlocking($shuttersDev)
 | 
					                && ( IsAfterShuttersTimeBlocking($shuttersDev)
 | 
				
			||||||
                    || $FHEM::Automation::ShuttersControl::shutters->getUp eq
 | 
					                    || $getUp eq 'roommate' )
 | 
				
			||||||
                    'roommate' )
 | 
					 | 
				
			||||||
              )
 | 
					              )
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                Log3( $name, 4,
 | 
					                Log3( $name, 4,
 | 
				
			||||||
@@ -675,7 +678,7 @@ sub EventProcessingRoommate {
 | 
				
			|||||||
              )
 | 
					              )
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                if (
 | 
					                if (
 | 
				
			||||||
                       $FHEM::Automation::ShuttersControl::shutters->getIsDay
 | 
					                       $getIsDay
 | 
				
			||||||
                    && $FHEM::Automation::ShuttersControl::shutters
 | 
					                    && $FHEM::Automation::ShuttersControl::shutters
 | 
				
			||||||
                    ->getIfInShading
 | 
					                    ->getIfInShading
 | 
				
			||||||
                    && $FHEM::Automation::ShuttersControl::shutters->getStatus
 | 
					                    && $FHEM::Automation::ShuttersControl::shutters->getStatus
 | 
				
			||||||
@@ -695,11 +698,11 @@ sub EventProcessingRoommate {
 | 
				
			|||||||
                    ShadingProcessingDriveCommand( $hash, $shuttersDev, 1 );
 | 
					                    ShadingProcessingDriveCommand( $hash, $shuttersDev, 1 );
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
                elsif (
 | 
					                elsif (
 | 
				
			||||||
                       !$FHEM::Automation::ShuttersControl::shutters->getIsDay
 | 
					                       !$getIsDay
 | 
				
			||||||
                    && IsAfterShuttersTimeBlocking($shuttersDev)
 | 
					                    && IsAfterShuttersTimeBlocking($shuttersDev)
 | 
				
			||||||
                    && (   $getModeDown eq 'home'
 | 
					                    && (   $getModeDown eq 'home'
 | 
				
			||||||
                        || $getModeDown eq 'always' )
 | 
					                        || $getModeDown eq 'always' )
 | 
				
			||||||
                    && $FHEM::Automation::ShuttersControl::shutters->getDown ne
 | 
					                    && $getDown ne
 | 
				
			||||||
                    'roommate'
 | 
					                    'roommate'
 | 
				
			||||||
                  )
 | 
					                  )
 | 
				
			||||||
                {
 | 
					                {
 | 
				
			||||||
@@ -739,9 +742,8 @@ sub EventProcessingRoommate {
 | 
				
			|||||||
                }
 | 
					                }
 | 
				
			||||||
                elsif (
 | 
					                elsif (
 | 
				
			||||||
                    (
 | 
					                    (
 | 
				
			||||||
                        $FHEM::Automation::ShuttersControl::shutters->getIsDay
 | 
					                        $getIsDay
 | 
				
			||||||
                        || $FHEM::Automation::ShuttersControl::shutters->getUp
 | 
					                        || $getUp eq 'roommate'
 | 
				
			||||||
                        eq 'roommate'
 | 
					 | 
				
			||||||
                    )
 | 
					                    )
 | 
				
			||||||
                    && IsAfterShuttersTimeBlocking($shuttersDev)
 | 
					                    && IsAfterShuttersTimeBlocking($shuttersDev)
 | 
				
			||||||
                    && (   $getModeUp eq 'home'
 | 
					                    && (   $getModeUp eq 'home'
 | 
				
			||||||
@@ -824,10 +826,10 @@ sub EventProcessingRoommate {
 | 
				
			|||||||
                'absent'
 | 
					                'absent'
 | 
				
			||||||
            && ( $FHEM::Automation::ShuttersControl::ascDev
 | 
					            && ( $FHEM::Automation::ShuttersControl::ascDev
 | 
				
			||||||
                ->getAutoShuttersControlEvening eq 'on'
 | 
					                ->getAutoShuttersControlEvening eq 'on'
 | 
				
			||||||
                || $FHEM::Automation::ShuttersControl::shutters->getDown eq
 | 
					                || $getDown eq
 | 
				
			||||||
                'roommate' )
 | 
					                'roommate' )
 | 
				
			||||||
            && ( IsAfterShuttersManualBlocking($shuttersDev)
 | 
					            && ( IsAfterShuttersManualBlocking($shuttersDev)
 | 
				
			||||||
                || $FHEM::Automation::ShuttersControl::shutters->getDown eq
 | 
					                || $getDown eq
 | 
				
			||||||
                'roommate' )
 | 
					                'roommate' )
 | 
				
			||||||
          )
 | 
					          )
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
@@ -858,8 +860,8 @@ sub EventProcessingRoommate {
 | 
				
			|||||||
        }
 | 
					        }
 | 
				
			||||||
        elsif (
 | 
					        elsif (
 | 
				
			||||||
            $event eq 'absent'
 | 
					            $event eq 'absent'
 | 
				
			||||||
            && (  !$FHEM::Automation::ShuttersControl::shutters->getIsDay
 | 
					            && (  !$getIsDay
 | 
				
			||||||
                || $FHEM::Automation::ShuttersControl::shutters->getDown eq
 | 
					                || $getDown eq
 | 
				
			||||||
                'roommate'
 | 
					                'roommate'
 | 
				
			||||||
                || $FHEM::Automation::ShuttersControl::shutters->getShadingMode
 | 
					                || $FHEM::Automation::ShuttersControl::shutters->getShadingMode
 | 
				
			||||||
                eq 'absent'
 | 
					                eq 'absent'
 | 
				
			||||||
@@ -874,11 +876,7 @@ sub EventProcessingRoommate {
 | 
				
			|||||||
            );
 | 
					            );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            if (
 | 
					            if (
 | 
				
			||||||
                (
 | 
					                   $getIsDay
 | 
				
			||||||
                       $FHEM::Automation::ShuttersControl::shutters->getIsDay
 | 
					 | 
				
			||||||
                    || $FHEM::Automation::ShuttersControl::shutters->getUp eq
 | 
					 | 
				
			||||||
                    'roommate'
 | 
					 | 
				
			||||||
                )
 | 
					 | 
				
			||||||
                && $FHEM::Automation::ShuttersControl::shutters->getIfInShading
 | 
					                && $FHEM::Automation::ShuttersControl::shutters->getIfInShading
 | 
				
			||||||
                && !$FHEM::Automation::ShuttersControl::shutters
 | 
					                && !$FHEM::Automation::ShuttersControl::shutters
 | 
				
			||||||
                  ->getQueryShuttersPos(
 | 
					                  ->getQueryShuttersPos(
 | 
				
			||||||
@@ -902,8 +900,8 @@ sub EventProcessingRoommate {
 | 
				
			|||||||
            }
 | 
					            }
 | 
				
			||||||
            elsif (
 | 
					            elsif (
 | 
				
			||||||
                (
 | 
					                (
 | 
				
			||||||
                      !$FHEM::Automation::ShuttersControl::shutters->getIsDay
 | 
					                      !$getIsDay
 | 
				
			||||||
                    || $FHEM::Automation::ShuttersControl::shutters->getDown eq
 | 
					                    || $getDown eq
 | 
				
			||||||
                    'roommate'
 | 
					                    'roommate'
 | 
				
			||||||
                )
 | 
					                )
 | 
				
			||||||
                && $getModeDown eq 'absent'
 | 
					                && $getModeDown eq 'absent'
 | 
				
			||||||
@@ -922,7 +920,7 @@ sub EventProcessingRoommate {
 | 
				
			|||||||
                    $FHEM::Automation::ShuttersControl::shutters->getClosedPos
 | 
					                    $FHEM::Automation::ShuttersControl::shutters->getClosedPos
 | 
				
			||||||
                );
 | 
					                );
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
            elsif ($FHEM::Automation::ShuttersControl::shutters->getIsDay
 | 
					            elsif ($getIsDay
 | 
				
			||||||
                && $FHEM::Automation::ShuttersControl::shutters->getModeUp eq
 | 
					                && $FHEM::Automation::ShuttersControl::shutters->getModeUp eq
 | 
				
			||||||
                'absent'
 | 
					                'absent'
 | 
				
			||||||
                && $getRoommatesStatus eq 'absent' )
 | 
					                && $getRoommatesStatus eq 'absent' )
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user