expand API documantation
This commit is contained in:
parent
7a0aad9ff7
commit
47066ea068
@ -312,8 +312,7 @@ sub ascAPIset {
|
||||
if ( defined($shutterDev)
|
||||
&& $shutterDev
|
||||
&& defined($value)
|
||||
&& $value
|
||||
)
|
||||
&& $value )
|
||||
{
|
||||
$shutters->setShuttersDev($shutterDev);
|
||||
$shutters->$setter($value);
|
||||
@ -660,7 +659,8 @@ sub Set {
|
||||
my $aArg = shift // return;
|
||||
|
||||
my $name = shift @$aArg;
|
||||
my $cmd = shift @$aArg // return qq{"set $name" needs at least one argument};
|
||||
my $cmd = shift @$aArg
|
||||
// return qq{"set $name" needs at least one argument};
|
||||
|
||||
if ( lc $cmd eq 'renewalltimer' ) {
|
||||
return "usage: $cmd" if ( scalar( @{$aArg} ) != 0 );
|
||||
@ -736,7 +736,11 @@ sub Set {
|
||||
elsif ( lc $cmd eq 'wiggle' ) {
|
||||
return "usage: $cmd" if ( scalar( @{$aArg} ) > 1 );
|
||||
|
||||
( $aArg->[0] eq 'all' ? wiggleAll($hash) : wiggle( $hash, $aArg->[0] ) );
|
||||
(
|
||||
$aArg->[0] eq 'all'
|
||||
? wiggleAll($hash)
|
||||
: wiggle( $hash, $aArg->[0] )
|
||||
);
|
||||
}
|
||||
else {
|
||||
my $list = 'scanForShutters:noArg';
|
||||
@ -764,7 +768,8 @@ sub Get {
|
||||
my $aArg = shift // return;
|
||||
|
||||
my $name = shift @$aArg // return;
|
||||
my $cmd = shift @$aArg // return qq{"get $name" needs at least one argument};
|
||||
my $cmd = shift @$aArg
|
||||
// return qq{"get $name" needs at least one argument};
|
||||
|
||||
if ( lc $cmd eq 'shownotifydevsinformations' ) {
|
||||
return "usage: $cmd" if ( scalar( @{$aArg} ) != 0 );
|
||||
@ -811,8 +816,12 @@ sub ShuttersDeviceScan {
|
||||
#### Gleichlautende Attribute wo lediglich die Parameter geändert werden sollen müssen hier gelöscht und die Parameter in der Funktion renewSetSunriseSunsetTimer gesetzt werden,
|
||||
#### vorher empfiehlt es sich die dort vergebenen Parameter aus zu lesen um sie dann hier wieder neu zu setzen. Dazu wird das shutters Objekt um einen Eintrag
|
||||
#### 'AttrUpdateChanges' erweitert
|
||||
if ( ReadingsVal( $shuttersDev, '.ASC_AttrUpdateChanges_' . $hash->{VERSION}, 0 )
|
||||
== 0 )
|
||||
if (
|
||||
ReadingsVal(
|
||||
$shuttersDev, '.ASC_AttrUpdateChanges_' . $hash->{VERSION},
|
||||
0
|
||||
) == 0
|
||||
)
|
||||
{
|
||||
# $shutters->setAttrUpdateChanges( 'ASC_Up',
|
||||
# AttrVal( $shuttersDev, 'ASC_Up', 'none' ) );
|
||||
@ -888,10 +897,14 @@ sub WriteReadingsShuttersList {
|
||||
for my $shuttersDev ( @{ $hash->{helper}{shuttersList} } ) {
|
||||
readingsBulkUpdate(
|
||||
$hash,
|
||||
'room_' . makeReadingName( AttrVal( $shuttersDev, 'room', 'unsorted' ) ),
|
||||
'room_'
|
||||
. makeReadingName( AttrVal( $shuttersDev, 'room', 'unsorted' ) ),
|
||||
ReadingsVal(
|
||||
$name,
|
||||
'room_' . makeReadingName( AttrVal( $shuttersDev, 'room', 'unsorted' ) ),
|
||||
'room_'
|
||||
. makeReadingName(
|
||||
AttrVal( $shuttersDev, 'room', 'unsorted' )
|
||||
),
|
||||
''
|
||||
)
|
||||
. ','
|
||||
@ -900,17 +913,27 @@ sub WriteReadingsShuttersList {
|
||||
if (
|
||||
ReadingsVal(
|
||||
$name,
|
||||
'room_' . makeReadingName( AttrVal( $shuttersDev, 'room', 'unsorted' ) ),
|
||||
'room_'
|
||||
. makeReadingName(
|
||||
AttrVal( $shuttersDev, 'room', 'unsorted' )
|
||||
),
|
||||
'none'
|
||||
) ne 'none'
|
||||
);
|
||||
|
||||
readingsBulkUpdate( $hash,
|
||||
'room_' . makeReadingName( AttrVal( $shuttersDev, 'room', 'unsorted' ) ), $shuttersDev )
|
||||
readingsBulkUpdate(
|
||||
$hash,
|
||||
'room_'
|
||||
. makeReadingName( AttrVal( $shuttersDev, 'room', 'unsorted' ) ),
|
||||
$shuttersDev
|
||||
)
|
||||
if (
|
||||
ReadingsVal(
|
||||
$name,
|
||||
'room_' . makeReadingName( AttrVal( $shuttersDev, 'room', 'unsorted' ) ),
|
||||
'room_'
|
||||
. makeReadingName(
|
||||
AttrVal( $shuttersDev, 'room', 'unsorted' )
|
||||
),
|
||||
'none'
|
||||
) eq 'none'
|
||||
);
|
||||
@ -936,15 +959,24 @@ sub UserAttributs_Readings_ForShutters {
|
||||
## https://github.com/LeonGaultier/fhem-AutoShuttersControl/commit/e33d3cc7815031b087736c1054b98c57817e7083
|
||||
if ( $cmd eq 'add' ) {
|
||||
if ( ref($attribValue) ne 'ARRAY' ) {
|
||||
$attr{$shuttersDev}{ ( split( ':', $attrib ) )[0] } = $attribValue
|
||||
if ( !defined( $attr{$shuttersDev}{ ( split( ':', $attrib ) )[0] } )
|
||||
&& $attribValue ne '-' );
|
||||
$attr{$shuttersDev}{ ( split( ':', $attrib ) )[0] } =
|
||||
$attribValue
|
||||
if (
|
||||
!defined(
|
||||
$attr{$shuttersDev}{ ( split( ':', $attrib ) )[0] }
|
||||
)
|
||||
&& $attribValue ne '-'
|
||||
);
|
||||
}
|
||||
else {
|
||||
$attr{$shuttersDev}{ ( split( ':', $attrib ) )[0] } =
|
||||
$attribValue->[ AttrVal( $shuttersDev, 'ASC', 2 ) ]
|
||||
if ( !defined( $attr{$shuttersDev}{ ( split( ':', $attrib ) )[0] } )
|
||||
&& $attrib eq 'ASC_Pos_Reading' );
|
||||
if (
|
||||
!defined(
|
||||
$attr{$shuttersDev}{ ( split( ':', $attrib ) )[0] }
|
||||
)
|
||||
&& $attrib eq 'ASC_Pos_Reading'
|
||||
);
|
||||
}
|
||||
|
||||
### associatedWith damit man sieht das der Rollladen mit einem ASC Device verbunden ist
|
||||
@ -985,7 +1017,10 @@ sub UserAttributs_Readings_ForShutters {
|
||||
readingsSingleUpdate( $defs{$shuttersDev},
|
||||
'associatedWith', join( ',', sort keys %hash ), 0 );
|
||||
}
|
||||
else { CommandDeleteReading( undef, $shuttersDev . ' associatedWith' ); }
|
||||
else {
|
||||
CommandDeleteReading( undef,
|
||||
$shuttersDev . ' associatedWith' );
|
||||
}
|
||||
###################################
|
||||
}
|
||||
}
|
||||
@ -1259,10 +1294,11 @@ sub EventProcessingRoommate {
|
||||
my $getModeDown = $shutters->getModeDown;
|
||||
my $getRoommatesStatus = $shutters->getRoommatesStatus;
|
||||
my $getRoommatesLastStatus = $shutters->getRoommatesLastStatus;
|
||||
my $event = $1;
|
||||
my $posValue;
|
||||
|
||||
if (
|
||||
( $1 eq 'home' || $1 eq 'awoken' )
|
||||
( $event eq 'home' || $event eq 'awoken' )
|
||||
&& ( $getRoommatesStatus eq 'home'
|
||||
|| $getRoommatesStatus eq 'awoken' )
|
||||
&& ( $ascDev->getAutoShuttersControlMorning eq 'on'
|
||||
@ -1274,9 +1310,17 @@ sub EventProcessingRoommate {
|
||||
"AutoShuttersControl ($name) - EventProcessingRoommate_1: $shuttersDev und Events $events"
|
||||
);
|
||||
if (
|
||||
(
|
||||
(
|
||||
$getRoommatesLastStatus eq 'asleep'
|
||||
|| $getRoommatesLastStatus eq 'awoken'
|
||||
&& ( $shutters->getModeUp eq 'always'
|
||||
or $shutters->getModeUp eq $event )
|
||||
)
|
||||
|| (
|
||||
$getRoommatesLastStatus eq 'awoken'
|
||||
&& ( $shutters->getModeUp eq 'always'
|
||||
or $shutters->getModeUp eq $event )
|
||||
)
|
||||
)
|
||||
&& ( $shutters->getIsDay
|
||||
|| $shutters->getUp eq 'roommate' )
|
||||
@ -1387,7 +1431,7 @@ sub EventProcessingRoommate {
|
||||
}
|
||||
}
|
||||
elsif (
|
||||
( $1 eq 'gotosleep' || $1 eq 'asleep' )
|
||||
( $event eq 'gotosleep' || $event eq 'asleep' )
|
||||
&& ( $ascDev->getAutoShuttersControlEvening eq 'on'
|
||||
|| $shutters->getDown eq 'roommate' )
|
||||
&& ( IsAfterShuttersManualBlocking($shuttersDev)
|
||||
@ -1414,7 +1458,7 @@ sub EventProcessingRoommate {
|
||||
ShuttersCommandSet( $hash, $shuttersDev, $posValue );
|
||||
}
|
||||
elsif (
|
||||
$1 eq 'absent'
|
||||
$event eq 'absent'
|
||||
&& ( !$shutters->getIsDay
|
||||
|| $shutters->getDown eq 'roommate'
|
||||
|| $shutters->getShadingMode eq 'absent'
|
||||
@ -2209,7 +2253,9 @@ sub EventProcessingShadingBrightness {
|
||||
my $name = $hash->{NAME};
|
||||
$shutters->setShuttersDev($shuttersDev);
|
||||
my $reading = $shutters->getBrightnessReading;
|
||||
my $outTemp = $ascDev->getOutTemp;
|
||||
my $outTemp = $$shutters->getOutTemp;
|
||||
$outTemp = $ascDev->getOutTemp
|
||||
if ($outTemp == -100);
|
||||
|
||||
Log3( $name, 4,
|
||||
"AutoShuttersControl ($shuttersDev) - EventProcessingShadingBrightness"
|
||||
@ -2243,8 +2289,6 @@ sub EventProcessingShadingBrightness {
|
||||
&& $shutters->getRainProtectionStatus eq 'unprotected'
|
||||
&& $shutters->getWindProtectionStatus eq 'unprotected' )
|
||||
{
|
||||
$outTemp = $shutters->getOutTemp
|
||||
if ( $shutters->getOutTemp != -100 );
|
||||
ShadingProcessing(
|
||||
$hash,
|
||||
$shuttersDev,
|
||||
@ -2283,8 +2327,10 @@ sub EventProcessingTwilightDevice {
|
||||
|
||||
if ( $events =~ m{(azimuth|elevation|SunAz|SunAlt):\s(\d+.\d+)}xms ) {
|
||||
my $name = $device;
|
||||
my $outTemp = $$shutters->getOutTemp;
|
||||
$outTemp = $ascDev->getOutTemp
|
||||
if ($outTemp == -100);
|
||||
my ( $azimuth, $elevation );
|
||||
my $outTemp = $ascDev->getOutTemp;
|
||||
|
||||
$azimuth = $2 if ( $1 eq 'azimuth' || $1 eq 'SunAz' );
|
||||
$elevation = $2 if ( $1 eq 'elevation' || $1 eq 'SunAlt' );
|
||||
@ -2537,6 +2583,8 @@ sub ShadingProcessing {
|
||||
|| $shutters->getShadingMode eq $homemode )
|
||||
&& ( $shutters->getModeUp eq 'always'
|
||||
|| $shutters->getModeUp eq $homemode
|
||||
|| ( $shutters->getModeUp eq 'home'
|
||||
&& $homemode ne 'asleep' )
|
||||
|| $shutters->getModeUp eq 'off' )
|
||||
&& (
|
||||
( int( gettimeofday() ) - $shutters->getShadingStatusTimestamp ) < 2
|
||||
@ -3081,9 +3129,10 @@ sub RenewSunRiseSetShuttersTimer {
|
||||
#### 'AttrUpdateChanges' erweitert
|
||||
if (
|
||||
( int( gettimeofday() ) - $::fhem_started ) < 60
|
||||
and
|
||||
ReadingsVal( $shuttersDev, '.ASC_AttrUpdateChanges_' . $hash->{VERSION},
|
||||
0 ) == 0
|
||||
and ReadingsVal(
|
||||
$shuttersDev, '.ASC_AttrUpdateChanges_' . $hash->{VERSION},
|
||||
0
|
||||
) == 0
|
||||
)
|
||||
{
|
||||
# $attr{$shuttersDev}{'ASC_Up'} = $shutters->getAttrUpdateChanges('ASC_Up')
|
||||
@ -3100,12 +3149,12 @@ sub RenewSunRiseSetShuttersTimer {
|
||||
# $shutters->getAttrUpdateChanges('ASC_Self_Defense_Exclude') eq
|
||||
# 'on' );
|
||||
|
||||
CommandDeleteReading( undef, $shuttersDev . ' .ASC_AttrUpdateChanges_.*' )
|
||||
CommandDeleteReading( undef,
|
||||
$shuttersDev . ' .ASC_AttrUpdateChanges_.*' )
|
||||
if (
|
||||
ReadingsVal(
|
||||
$shuttersDev, '.ASC_AttrUpdateChanges_' . $hash->{VERSION},
|
||||
ReadingsVal( $shuttersDev,
|
||||
'.ASC_AttrUpdateChanges_' . $hash->{VERSION}, 'none' ) eq
|
||||
'none'
|
||||
) eq 'none'
|
||||
);
|
||||
readingsSingleUpdate( $dhash,
|
||||
'.ASC_AttrUpdateChanges_' . $hash->{VERSION},
|
||||
@ -3411,18 +3460,24 @@ sub CreateNewNotifyDev {
|
||||
CommandDeleteReading( undef, $name . ' .monitoredDevs' );
|
||||
my $shuttersList = '';
|
||||
for my $shuttersDev ( @{ $hash->{helper}{shuttersList} } ) {
|
||||
AddNotifyDev( $hash, AttrVal( $shuttersDev, 'ASC_Roommate_Device', 'none' ),
|
||||
AddNotifyDev( $hash,
|
||||
AttrVal( $shuttersDev, 'ASC_Roommate_Device', 'none' ),
|
||||
$shuttersDev, 'ASC_Roommate_Device' )
|
||||
if ( AttrVal( $shuttersDev, 'ASC_Roommate_Device', 'none' ) ne 'none' );
|
||||
if (
|
||||
AttrVal( $shuttersDev, 'ASC_Roommate_Device', 'none' ) ne 'none' );
|
||||
AddNotifyDev( $hash, AttrVal( $shuttersDev, 'ASC_WindowRec', 'none' ),
|
||||
$shuttersDev, 'ASC_WindowRec' )
|
||||
if ( AttrVal( $shuttersDev, 'ASC_WindowRec', 'none' ) ne 'none' );
|
||||
AddNotifyDev( $hash, AttrVal( $shuttersDev, 'ASC_BrightnessSensor', 'none' ),
|
||||
AddNotifyDev( $hash,
|
||||
AttrVal( $shuttersDev, 'ASC_BrightnessSensor', 'none' ),
|
||||
$shuttersDev, 'ASC_BrightnessSensor' )
|
||||
if ( AttrVal( $shuttersDev, 'ASC_BrightnessSensor', 'none' ) ne 'none' );
|
||||
AddNotifyDev( $hash, AttrVal( $shuttersDev, 'ASC_ExternalTrigger', 'none' ),
|
||||
if (
|
||||
AttrVal( $shuttersDev, 'ASC_BrightnessSensor', 'none' ) ne 'none' );
|
||||
AddNotifyDev( $hash,
|
||||
AttrVal( $shuttersDev, 'ASC_ExternalTrigger', 'none' ),
|
||||
$shuttersDev, 'ASC_ExternalTrigger' )
|
||||
if ( AttrVal( $shuttersDev, 'ASC_ExternalTrigger', 'none' ) ne 'none' );
|
||||
if (
|
||||
AttrVal( $shuttersDev, 'ASC_ExternalTrigger', 'none' ) ne 'none' );
|
||||
|
||||
$shuttersList = $shuttersList . ',' . $shuttersDev;
|
||||
}
|
||||
@ -3520,7 +3575,8 @@ sub ShuttersInformation {
|
||||
$ret .= "<td>" . $shutters->getLockOut . "</td>";
|
||||
$ret .= "<td> </td>";
|
||||
$ret .= "<td>"
|
||||
. ReadingsVal( $shuttersDev, 'ASC_ShuttersLastDrive', 'none' ) . "</td>";
|
||||
. ReadingsVal( $shuttersDev, 'ASC_ShuttersLastDrive', 'none' )
|
||||
. "</td>";
|
||||
$ret .= "<td> </td>";
|
||||
$ret .= "<td>" . $shutters->getStatus . "</td>";
|
||||
$ret .= "<td> </td>";
|
||||
@ -3561,7 +3617,8 @@ sub GetMonitoredDevs {
|
||||
my $linecount = 1;
|
||||
for my $notifydev ( sort keys( %{$notifydevs} ) ) {
|
||||
if ( ref( $notifydevs->{$notifydev} ) eq "HASH" ) {
|
||||
for my $shuttersDev ( sort keys( %{ $notifydevs->{$notifydev} } ) )
|
||||
for my $shuttersDev (
|
||||
sort keys( %{ $notifydevs->{$notifydev} } ) )
|
||||
{
|
||||
if ( $linecount % 2 == 0 ) { $ret .= '<tr class="even">'; }
|
||||
else { $ret .= '<tr class="odd">'; }
|
||||
@ -4561,6 +4618,9 @@ sub _SetCmdFn {
|
||||
. $posValue . ' '
|
||||
. $driveCommand );
|
||||
|
||||
InternalTimer(
|
||||
gettimeofday() + 3,
|
||||
sub() {
|
||||
CommandSet(
|
||||
undef,
|
||||
(
|
||||
@ -4571,6 +4631,9 @@ sub _SetCmdFn {
|
||||
. ' '
|
||||
. $shutters->getSlatPosCmd . ' '
|
||||
. $slatPos
|
||||
);
|
||||
},
|
||||
$shuttersDev
|
||||
)
|
||||
if ( $slatPos > -1
|
||||
&& $shutters->getSlatPosCmd ne 'none' );
|
||||
@ -5812,12 +5875,7 @@ sub _setAttributs {
|
||||
my $attr = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
CommandAttr(undef,$shuttersDev
|
||||
. ' '
|
||||
. $attr
|
||||
. ' '
|
||||
. $attrVal
|
||||
);
|
||||
CommandAttr( undef, $shuttersDev . ' ' . $attr . ' ' . $attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -5971,7 +6029,8 @@ sub setSlatPosCmd {
|
||||
my $self = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
_setAttributs($self->{shuttersDev},'ASC_SlatPosCmd_SlatDevice',$attrVal);
|
||||
_setAttributs( $self->{shuttersDev}, 'ASC_SlatPosCmd_SlatDevice',
|
||||
$attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -6033,7 +6092,8 @@ sub setPrivacyUpTime {
|
||||
my $self = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
_setAttributs($self->{shuttersDev},'ASC_PrivacyUpValue_beforeDayOpen',$attrVal);
|
||||
_setAttributs( $self->{shuttersDev}, 'ASC_PrivacyUpValue_beforeDayOpen',
|
||||
$attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -6107,7 +6167,8 @@ sub setPrivacyDownTime {
|
||||
my $self = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
_setAttributs($self->{shuttersDev},'ASC_PrivacyDownValue_beforeNightClose',$attrVal);
|
||||
_setAttributs( $self->{shuttersDev},
|
||||
'ASC_PrivacyDownValue_beforeNightClose', $attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -6241,7 +6302,8 @@ sub setSelfDefenseAbsentDelay {
|
||||
my $self = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
_setAttributs($self->{shuttersDev},'ASC_Self_Defense_AbsentDelay',$attrVal);
|
||||
_setAttributs( $self->{shuttersDev}, 'ASC_Self_Defense_AbsentDelay',
|
||||
$attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -6377,7 +6439,8 @@ sub setIdleDetectionReading {
|
||||
my $self = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
_setAttributs($self->{shuttersDev},'ASC_Shutter_IdleDetection',$attrVal);
|
||||
_setAttributs( $self->{shuttersDev}, 'ASC_Shutter_IdleDetection',
|
||||
$attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -6568,7 +6631,8 @@ sub setShadingMinOutsideTemperature {
|
||||
my $self = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
_setAttributs($self->{shuttersDev},'ASC_Shading_Min_OutsideTemperature',$attrVal);
|
||||
_setAttributs( $self->{shuttersDev}, 'ASC_Shading_Min_OutsideTemperature',
|
||||
$attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -6584,7 +6648,8 @@ sub setShadingMinMaxElevation {
|
||||
my $self = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
_setAttributs($self->{shuttersDev},'ASC_Shading_MinMax_Elevation',$attrVal);
|
||||
_setAttributs( $self->{shuttersDev}, 'ASC_Shading_MinMax_Elevation',
|
||||
$attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -6645,7 +6710,8 @@ sub setShadingStateChangeSunnyCloudy {
|
||||
my $self = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
_setAttributs($self->{shuttersDev},'ASC_Shading_StateChange_SunnyCloudy',$attrVal);
|
||||
_setAttributs( $self->{shuttersDev}, 'ASC_Shading_StateChange_SunnyCloudy',
|
||||
$attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -6733,7 +6799,8 @@ sub setShadingWaitingPeriod {
|
||||
my $self = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
_setAttributs($self->{shuttersDev},'ASC_Shading_WaitingPeriod',$attrVal);
|
||||
_setAttributs( $self->{shuttersDev}, 'ASC_Shading_WaitingPeriod',
|
||||
$attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -6979,7 +7046,8 @@ sub setBlockingTimeAfterManual {
|
||||
my $self = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
_setAttributs($self->{shuttersDev},'ASC_BlockingTime_afterManual',$attrVal);
|
||||
_setAttributs( $self->{shuttersDev}, 'ASC_BlockingTime_afterManual',
|
||||
$attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -6995,7 +7063,8 @@ sub setBlockingTimeBeforNightClose {
|
||||
my $self = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
_setAttributs($self->{shuttersDev},'ASC_BlockingTime_beforNightClose',$attrVal);
|
||||
_setAttributs( $self->{shuttersDev}, 'ASC_BlockingTime_beforNightClose',
|
||||
$attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -7011,7 +7080,8 @@ sub setBlockingTimeBeforDayOpen {
|
||||
my $self = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
_setAttributs($self->{shuttersDev},'ASC_BlockingTime_beforDayOpen',$attrVal);
|
||||
_setAttributs( $self->{shuttersDev}, 'ASC_BlockingTime_beforDayOpen',
|
||||
$attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -7089,7 +7159,8 @@ sub setVentilatePosAfterDayClosed {
|
||||
my $self = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
_setAttributs($self->{shuttersDev},'ASC_WindowRec_PosAfterDayClosed',$attrVal);
|
||||
_setAttributs( $self->{shuttersDev}, 'ASC_WindowRec_PosAfterDayClosed',
|
||||
$attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -7150,7 +7221,8 @@ sub setVentilateOpen {
|
||||
my $self = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
_setAttributs($self->{shuttersDev},'ASC_Ventilate_Window_Open',$attrVal);
|
||||
_setAttributs( $self->{shuttersDev}, 'ASC_Ventilate_Window_Open',
|
||||
$attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -7447,7 +7519,8 @@ sub setAutoAstroModeMorningHorizon {
|
||||
my $self = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
_setAttributs($self->{shuttersDev},'ASC_AutoAstroModeMorningHorizon',$attrVal);
|
||||
_setAttributs( $self->{shuttersDev}, 'ASC_AutoAstroModeMorningHorizon',
|
||||
$attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -7463,7 +7536,8 @@ sub setAutoAstroModeEveningHorizon {
|
||||
my $self = shift;
|
||||
my $attrVal = shift;
|
||||
|
||||
_setAttributs($self->{shuttersDev},'ASC_AutoAstroModeEveningHorizon',$attrVal);
|
||||
_setAttributs( $self->{shuttersDev}, 'ASC_AutoAstroModeEveningHorizon',
|
||||
$attrVal );
|
||||
|
||||
return;
|
||||
}
|
||||
@ -9322,7 +9396,7 @@ sub getBlockAscDrivesAfterManual {
|
||||
<li><strong>ASC_Shading_Min_OutsideTemperature</strong> - ab welcher Temperatur soll Beschattet werden, immer in Abhängigkeit der anderen einbezogenen Sensorwerte (default: 18)</li>
|
||||
<li><strong>ASC_Shading_Mode - absent,always,off,home</strong> / wann soll die Beschattung nur stattfinden. (default: off)</li>
|
||||
<li><strong>ASC_Shading_Pos</strong> - Position des Rollladens für die Beschattung (Default: ist abhängig vom Attribut<em>ASC</em> 80/20) !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss eine positive Zahl/Dezimalzahl sein!!!</li>
|
||||
<li><strong>ASC_Shading_StateChange_SunnyCloudy</strong> - Brightness Wert ab welchen die Beschattung stattfinden und aufgehoben werden soll, immer in Abhängigkeit der anderen einbezogenen Sensorwerte. Ein optionaler dritter Wert gibt an wie, viele Brightnesswerte für den aktuellen Brightness-Durchschnitt berücksichtigt werden. Standard ist 3, es sollte nicht höher wie 5 genommen werden. (default: 35000:20000 [3])</li>
|
||||
<li><strong>ASC_Shading_StateChange_SunnyCloudy</strong> - Brightness Wert ab welchen die Beschattung stattfinden und aufgehoben werden soll, immer in Abhängigkeit der anderen einbezogenen Sensorwerte. Ein optionaler dritter Wert gibt an wie, viele Brightnesswerte für den aktuellen Brightness-Durchschnitt berücksichtigt werden. Standard ist 3, es sollten nicht mehr als 5 berücksichtigt werden. (default: 35000:20000 [3])</li>
|
||||
<li><strong>ASC_Shading_WaitingPeriod</strong> - wie viele Sekunden soll gewartet werden bevor eine weitere Auswertung der Sensordaten für die Beschattung stattfinden soll (default: 1200)</li>
|
||||
</ul></p>
|
||||
<li><strong>ASC_ShuttersPlace - window/terrace</strong> - Wenn dieses Attribut auf terrace gesetzt ist, das Residence Device in den Status "gone" geht und SelfDefense aktiv ist (ohne das das Reading selfDefense gesetzt sein muss), wird das Rollo geschlossen (default: window)</li>
|
||||
@ -9352,6 +9426,65 @@ sub getBlockAscDrivesAfterManual {
|
||||
<table>
|
||||
<tr><th>Getter</th><th>Erläuterung</th></tr>
|
||||
<tr><td>FreezeStatus</td><td>1=soft, 2=Daytime, 3=hard</td></tr>
|
||||
<tr><td>AntiFreezePos</td><td>konfigurierte Position beim AntiFreeze Status</td></tr>
|
||||
<tr><td>AntiFreezePosAssignment</td><td>konfigurierte Lamellen Position bei der AntiFreeze Position</td></tr>
|
||||
<tr><td>AntiFreeze</td><td>aktuelle Konfiguration für AntiFreeze</td></tr>
|
||||
<tr><td>ShuttersPlace</td><td>aktuelle Konfiguration an welchem Platz sich das Rollo befindet, Fenster oder Terrasse</td></tr>
|
||||
<tr><td>SlatPosCmd</td><td>welcher PosCmd ist aktuell für den Lamellen Befehl konfiguriert</td></tr>
|
||||
<tr><td>SlatDevice</td><td>welches Device aktuell für die Lamellen Steuerung konfiguriert ist</td></tr>
|
||||
<tr><td>PrivacyUpTime</td><td>Privacy Zeit in Sekunden zum fahren in die Privacy Pos vor dem vollen öffnen</td></tr>
|
||||
<tr><td>PrivacyUpBrightnessVal</td><td>Privacy Brightness Wert zum fahren in die Privacy Pos</td></tr>
|
||||
<tr><td>PrivacyUpPos</td><td>Position für die Privacy Up Fahrt</td></tr>
|
||||
<tr><td>PrivacyUpPositionAssignment</td><td>Position für die Lamellenfahrt von Privacy Up</td></tr>
|
||||
<tr><td>PrivacyDownTime</td><td>Privacy Zeit in Sekunden zum fahren in die Privacy Pos vor dem vollen schließ</td></tr>
|
||||
<tr><td>PrivacyDownBrightnessVal</td><td>Privacy Brightness Wert zum fahren in die Privacy Pos</td></tr>
|
||||
<tr><td>PrivacyDownPos</td><td>Position für die Privacy Down Fahrt</td></tr>
|
||||
<tr><td>PrivacyDownPositionAssignment</td><td>Position für die Lamellenfahrt von Privacy Down</td></tr>
|
||||
<tr><td>SelfDefenseMode</td><td>Modus für den SelfDefense</td></tr>
|
||||
<tr><td>SelfDefenseAbsentDelay</td><td>Verzögerungszeit der SelfDefense Fahrt bei absent</td></tr>
|
||||
<tr><td>WiggleValue</td><td>um welchen Wert soll das Rollo bei einer wiggle Fahrt fahren</td></tr>
|
||||
<tr><td>Adv</td><td>Ist es in der definierten Weihnachtszeit</td></tr>
|
||||
<tr><td>ShadingPos</td><td>konfigurierte Position für die Beschattungsfahrt</td></tr>
|
||||
<tr><td>ShadingPositionAssignment</td><td>Position für die Lamellenfahrt für die Beschattungsfahrt</td></tr>
|
||||
<tr><td>ShadingMode</td><td>welcher aktuelle Modus für das Beschatten ist konfiguriert</td></tr>
|
||||
<tr><td>IdleDetectionValue</td><td>welcher Wert im IdleDetectionRading zeigt an dass das Rollo aktuell nicht in Bewegung ist</td></tr>
|
||||
<tr><td>ShadingAzimuthLeft</td><td>ab welchem Azimut beginnt die Beschattung</td></tr>
|
||||
<tr><td>ShadingAzimuthRight</td><td>ab welchem Azimut endet die Beschattung</td></tr>
|
||||
<tr><td>ShadingMinOutsideTemperature</td><td>über welchem Temperaturwert beginnt die Beschattung</td></tr>
|
||||
<tr><td>ShadingMinElevation</td><td>über welchem Elevationwert beginnt die Beschattung</td></tr>
|
||||
<tr><td>ShadingMaxElevation</td><td>über welchem Elevationwert endet die Beschattung</td></tr>
|
||||
<tr><td>ShadingStateChangeSunny</td><td>über welchem Brightnesswert beginnt die Beschattung</td></tr>
|
||||
<tr><td>ShadingStateChangeCloudy</td><td>unter welchem Brightnesswert endet die Beschattung</td></tr>
|
||||
<tr><td>ShadingWaitingPeriod</td><td>nach welcher Wartezeit werden Beschattungsrelevante Sensorwerte wieder beachtet und die Beschattungsroutine abgearbeitet</td></tr>
|
||||
<tr><td>ExternalTriggerDevice</td><td>konfiguriertes Triggerdevice</td></tr>
|
||||
<tr><td>ExternalTriggerReading</td><td>kofiguriertes Triggerdevice Reading</td></tr>
|
||||
<tr><td>ExternalTriggerValueActive</td><td>Wert mit welchen der externe Trigger Prozess ausgel&uoml;st werden soll.</td></tr>
|
||||
<tr><td>ExternalTriggerValueActive2</td><td>weiterer Wert mit welchen der externe zweite Trigger Prozess ausgel&uoml;st werden soll.</td></tr>
|
||||
<tr><td>ExternalTriggerValueInactive</td><td>Wert mit welchen der externe Trigger Prozess beendet werden soll</td></tr>
|
||||
<tr><td>ExternalTriggerPosActive</td><td>Rolloposition welche angefahren werden soll wenn der erste externe Trigger aktiv wird.</td></tr>
|
||||
<tr><td>ExternalTriggerPosActive2</td><td>Rolloposition welche angefahren werden soll wenn der zweite externe Trigger aktiv wird.</td></tr>
|
||||
<tr><td>ExternalTriggerPosInactive</td><td>Rolloposition welche angefahren werden soll wenn der externe Trigger inaktiv wird.</td></tr>
|
||||
<tr><td>ExternalTriggerState</td><td>aktueller Status des externen Triggers, 0 oder 1</td></tr>
|
||||
<tr><td>Delay</td><td>konfigurierte Verzögerungswert welcher für die Zufallsberechnung werwendet werden soll</td></tr>
|
||||
<tr><td>DelayStart</td><td>konfigurierter fester Verzögerungswert</td></tr>
|
||||
<tr><td>BlockingTimeAfterManual</td><td>konfigurierte Blockzeit nach einer manuellen Fahrt</td></tr>
|
||||
<tr><td>BlockingTimeBeforNightClose</td><td>konfigurierte Blockzeit vor dem nächtlichen schließen</td></tr>
|
||||
<tr><td>BlockingTimeBeforDayOpen</td><td>konfigurierte Blockzeit vor dem morgendlichen öffnen</td></tr>
|
||||
<tr><td>PosCmd</td><td> </td></tr>
|
||||
<tr><td>OpenPos</td><td> </td></tr>
|
||||
<tr><td>OpenPositionAssignment</td><td> </td></tr>
|
||||
<tr><td>VentilatePos</td><td> </td></tr>
|
||||
<tr><td>VentilatePositionAssignment</td><td> </td></tr>
|
||||
<tr><td>VentilatePosAfterDayClosed</td><td> </td></tr>
|
||||
<tr><td>ClosedPos</td><td> </td></tr>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<tr><td>NoDelay</td><td>Wurde die Behandlung von Offset deaktiviert (Beispiel bei Fahrten über Fensterevents)</td></tr>
|
||||
<tr><td>LastDrive</td><td>Grund des letzten Fahrens</td></tr>
|
||||
<tr><td>LastPos</td><td>die letzte Position des Rollladens</td></tr>
|
||||
@ -9422,7 +9555,7 @@ sub getBlockAscDrivesAfterManual {
|
||||
],
|
||||
"release_status": "testing",
|
||||
"license": "GPL_2",
|
||||
"version": "v0.9.16",
|
||||
"version": "v0.9.17",
|
||||
"author": [
|
||||
"Marko Oldenburg <leongaultier@gmail.com>"
|
||||
],
|
||||
|
@ -1,6 +1,7 @@
|
||||
--- In den Rolläden ---
|
||||
AntiFreezePos
|
||||
AntiFreezePosAssignment - nur getter
|
||||
AntiFreeze
|
||||
ShuttersPlace
|
||||
SlatPosCmd
|
||||
SlatDevice - nur getter
|
||||
@ -27,8 +28,8 @@ ShadingAzimuthRight - nur getter
|
||||
ShadingAzimuthLeft - nur getter
|
||||
ShadingMinOutsideTemperature
|
||||
ShadingMinMaxElevation - nur setter
|
||||
getShadingMinElevation - nur getter
|
||||
getShadingMaxElevation - nur getter
|
||||
ShadingMinElevation - nur getter
|
||||
ShadingMaxElevation - nur getter
|
||||
ShadingStateChangeSunnyCloudy - nur setter
|
||||
ShadingStateChangeSunny - nur getter
|
||||
ShadingStateChangeCloudy - nur getter
|
||||
@ -76,7 +77,6 @@ ModeUp
|
||||
ModeDown
|
||||
LockOut
|
||||
LockOutCmd
|
||||
AntiFreeze
|
||||
AutoAstroModeMorning
|
||||
AutoAstroModeEvening
|
||||
AutoAstroModeMorningHorizon
|
||||
@ -95,7 +95,6 @@ Homemode - nur getter
|
||||
PrivacyDownStatus - nur getter
|
||||
PrivacyUpStatus - nur getter
|
||||
IsDay - nur getter
|
||||
AntiFreezeStatus - nur getter
|
||||
SelfDefenseState - nur getter
|
||||
LastDrive - nur getter
|
||||
LastPos - nur getter
|
||||
|
Loading…
Reference in New Issue
Block a user