add get brightness Value from shutters
This commit is contained in:
parent
07672efcb7
commit
6a91eacabd
@ -38,8 +38,7 @@ package main;
|
|||||||
use strict;
|
use strict;
|
||||||
use warnings;
|
use warnings;
|
||||||
|
|
||||||
my $version = "0.1.79.12";
|
my $version = "0.1.80";
|
||||||
|
|
||||||
|
|
||||||
sub AutoShuttersControl_Initialize($) {
|
sub AutoShuttersControl_Initialize($) {
|
||||||
my ($hash) = @_;
|
my ($hash) = @_;
|
||||||
@ -193,6 +192,8 @@ my %userAttrList = (
|
|||||||
'ASC_Roommate_Device' => 'none',
|
'ASC_Roommate_Device' => 'none',
|
||||||
'ASC_Roommate_Reading' => 'state',
|
'ASC_Roommate_Reading' => 'state',
|
||||||
'ASC_Self_Defense_Exclude:on,off' => 'off',
|
'ASC_Self_Defense_Exclude:on,off' => 'off',
|
||||||
|
'ASC_BrightnessMinVal' => -1,
|
||||||
|
'ASC_BrightnessMaxVal' => -1,
|
||||||
);
|
);
|
||||||
|
|
||||||
my $shutters = new ASC_Shutters();
|
my $shutters = new ASC_Shutters();
|
||||||
@ -700,10 +701,11 @@ sub WindowRecEventProcessing($@) {
|
|||||||
|
|
||||||
if ( $events =~ m#state:\s(open|closed|tilted)# ) {
|
if ( $events =~ m#state:\s(open|closed|tilted)# ) {
|
||||||
$shutters->setShuttersDev($shuttersDev);
|
$shutters->setShuttersDev($shuttersDev);
|
||||||
my $queryShuttersPosWinRecTilted =
|
my $queryShuttersPosWinRecTilted = (
|
||||||
( ShuttersPosCmdValueNegieren($shuttersDev)
|
ShuttersPosCmdValueNegieren($shuttersDev)
|
||||||
? $shutters->getStatus > $shutters->getVentilatePos
|
? $shutters->getStatus > $shutters->getVentilatePos
|
||||||
: $shutters->getStatus < $shutters->getVentilatePos );
|
: $shutters->getStatus < $shutters->getVentilatePos
|
||||||
|
);
|
||||||
|
|
||||||
if ( $shutters->getDelayCmd ne 'none' )
|
if ( $shutters->getDelayCmd ne 'none' )
|
||||||
{ # Es wird geschaut ob wärend der Fenster offen Phase ein Fahrbefehl über das Modul kam,wenn ja wird dieser aus geführt
|
{ # Es wird geschaut ob wärend der Fenster offen Phase ein Fahrbefehl über das Modul kam,wenn ja wird dieser aus geführt
|
||||||
@ -850,6 +852,14 @@ sub BrightnessEventProcessing($@) {
|
|||||||
|
|
||||||
my $reading = $shutters->getShadingBrightnessReading;
|
my $reading = $shutters->getShadingBrightnessReading;
|
||||||
if ( $events =~ m#$reading:\s(\d+)# ) {
|
if ( $events =~ m#$reading:\s(\d+)# ) {
|
||||||
|
my $brightnessMinVal;
|
||||||
|
if ( $shutters->getBrightnessMinVal > -1 ) {
|
||||||
|
$brightnessMinVal = $shutters->getBrightnessMinVal;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$brightnessMinVal = $ascDev->getBrightnessMinVal;
|
||||||
|
}
|
||||||
|
|
||||||
if (
|
if (
|
||||||
int( gettimeofday() / 86400 ) != int(
|
int( gettimeofday() / 86400 ) != int(
|
||||||
computeAlignTime( '24:00', $shutters->getTimeUpEarly ) / 86400
|
computeAlignTime( '24:00', $shutters->getTimeUpEarly ) / 86400
|
||||||
@ -857,7 +867,7 @@ sub BrightnessEventProcessing($@) {
|
|||||||
and int( gettimeofday() / 86400 ) == int(
|
and int( gettimeofday() / 86400 ) == int(
|
||||||
computeAlignTime( '24:00', $shutters->getTimeUpLate ) / 86400
|
computeAlignTime( '24:00', $shutters->getTimeUpLate ) / 86400
|
||||||
)
|
)
|
||||||
and $1 > $ascDev->getBrightnessMinVal
|
and $1 > $brightnessMinVal
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
Log3( $name, 4,
|
Log3( $name, 4,
|
||||||
@ -872,7 +882,7 @@ sub BrightnessEventProcessing($@) {
|
|||||||
and int( gettimeofday() / 86400 ) == int(
|
and int( gettimeofday() / 86400 ) == int(
|
||||||
computeAlignTime( '24:00', $shutters->getTimeDownLate ) / 86400
|
computeAlignTime( '24:00', $shutters->getTimeDownLate ) / 86400
|
||||||
)
|
)
|
||||||
and $1 < $ascDev->getBrightnessMinVal
|
and $1 < $brightnessMinVal
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
Log3( $name, 4,
|
Log3( $name, 4,
|
||||||
@ -1610,10 +1620,11 @@ sub IsWe() {
|
|||||||
sub IsWeTomorrow() {
|
sub IsWeTomorrow() {
|
||||||
my ( undef, undef, undef, undef, undef, undef, $wday, undef, undef ) =
|
my ( undef, undef, undef, undef, undef, undef, $wday, undef, undef ) =
|
||||||
localtime( gettimeofday() );
|
localtime( gettimeofday() );
|
||||||
my $we =
|
my $we = (
|
||||||
( ( ( ( $wday + 1 == 7 ? 0 : $wday + 1 ) ) == 0 || ( $wday + 1 ) == 6 )
|
( ( ( $wday + 1 == 7 ? 0 : $wday + 1 ) ) == 0 || ( $wday + 1 ) == 6 )
|
||||||
? 1
|
? 1
|
||||||
: 0 );
|
: 0
|
||||||
|
);
|
||||||
|
|
||||||
if ( !$we ) {
|
if ( !$we ) {
|
||||||
foreach my $h2we ( split( ",", AttrVal( "global", "holiday2we", "" ) ) )
|
foreach my $h2we ( split( ",", AttrVal( "global", "holiday2we", "" ) ) )
|
||||||
@ -2008,6 +2019,20 @@ sub getTimeUpWeHoliday {
|
|||||||
return AttrVal( $shuttersDev, 'ASC_Time_Up_WE_Holiday', '04:00:00' );
|
return AttrVal( $shuttersDev, 'ASC_Time_Up_WE_Holiday', '04:00:00' );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sub getBrightnessMinVal {
|
||||||
|
my $self = shift;
|
||||||
|
my $shuttersDev = $self->{shuttersDev};
|
||||||
|
|
||||||
|
return AttrVal( $shuttersDev, 'ASC_BrightnessMinVal', -1 );
|
||||||
|
}
|
||||||
|
|
||||||
|
sub getBrightnessMaxVal {
|
||||||
|
my $self = shift;
|
||||||
|
my $shuttersDev = $self->{shuttersDev};
|
||||||
|
|
||||||
|
return AttrVal( $shuttersDev, 'ASC_BrightnessMaxVal', -1 );
|
||||||
|
}
|
||||||
|
|
||||||
## Subklasse Readings von ASC_Shutters ##
|
## Subklasse Readings von ASC_Shutters ##
|
||||||
package ASC_Shutters::Readings;
|
package ASC_Shutters::Readings;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user