change condition for GetUp roommate. no shutters drive if you have been on absent or gone
This commit is contained in:
parent
0255be94b5
commit
301fd32048
@ -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 =
|
my $event = $1;
|
||||||
$FHEM::Automation::ShuttersControl::shutters->getModeDown;
|
my $getModeUp = $FHEM::Automation::ShuttersControl::shutters->getModeUp;
|
||||||
my $getRoommatesStatus =
|
my $getModeDown = $FHEM::Automation::ShuttersControl::shutters->getModeDown;
|
||||||
$FHEM::Automation::ShuttersControl::shutters->getRoommatesStatus;
|
my $getRoommatesStatus = $FHEM::Automation::ShuttersControl::shutters->getRoommatesStatus;
|
||||||
my $getRoommatesLastStatus =
|
my $getRoommatesLastStatus = $FHEM::Automation::ShuttersControl::shutters->getRoommatesLastStatus;
|
||||||
$FHEM::Automation::ShuttersControl::shutters->getRoommatesLastStatus;
|
my $getUp = $FHEM::Automation::ShuttersControl::shutters->getUp;
|
||||||
my $event = $1;
|
my $getDown = $FHEM::Automation::ShuttersControl::shutters->getDown;
|
||||||
my $posValue = $FHEM::Automation::ShuttersControl::shutters->getStatus;
|
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,16 +876,12 @@ 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(
|
||||||
$FHEM::Automation::ShuttersControl::shutters->getShadingPos
|
$FHEM::Automation::ShuttersControl::shutters->getShadingPos
|
||||||
)
|
)
|
||||||
&& $FHEM::Automation::ShuttersControl::shutters->getShadingMode
|
&& $FHEM::Automation::ShuttersControl::shutters->getShadingMode
|
||||||
eq 'absent'
|
eq 'absent'
|
||||||
)
|
)
|
||||||
@ -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' )
|
||||||
|
Loading…
x
Reference in New Issue
Block a user