add support for perl value in attributs
This commit is contained in:
parent
2e92283a65
commit
7f78529215
@ -3817,6 +3817,20 @@ sub _averageBrightness(@) {
|
||||
return int( sum(@input) / @input );
|
||||
}
|
||||
|
||||
sub _perlCodeCheck($$) {
|
||||
my ( $exec, $default ) = @_;
|
||||
my $val = undef;
|
||||
|
||||
if ( $exec =~ /^\{(.+)\}$/ ) {
|
||||
$val = eval $1;
|
||||
if ($@) {
|
||||
$val = $default;
|
||||
}
|
||||
}
|
||||
|
||||
return $val;
|
||||
}
|
||||
|
||||
######################################
|
||||
######################################
|
||||
########## Begin der Klassendeklarierungen für OOP (Objektorientierte Programmierung) #########################
|
||||
@ -4538,10 +4552,28 @@ BEGIN {
|
||||
|
||||
sub getAntiFreezePos {
|
||||
my $self = shift;
|
||||
my $val = AttrVal(
|
||||
$self->{shuttersDev},
|
||||
'ASC_Antifreeze_Pos',
|
||||
$userAttrList{
|
||||
'ASC_Antifreeze_Pos:5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100'
|
||||
}[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ]
|
||||
);
|
||||
|
||||
return AttrVal( $self->{shuttersDev}, 'ASC_Antifreeze_Pos',
|
||||
$userAttrList{ASC_Antifreeze_Pos}
|
||||
[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ] );
|
||||
if ( FHEM::AutoShuttersControl::_perlCodeCheck( $val, 'none' ) ) {
|
||||
$val = FHEM::AutoShuttersControl::_perlCodeCheck(
|
||||
$val,
|
||||
$userAttrList{
|
||||
'ASC_Antifreeze_Pos:5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100'
|
||||
}[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ]
|
||||
);
|
||||
}
|
||||
|
||||
return (
|
||||
$val =~ /^\d+(\.\d+)?$/ ? $val : $userAttrList{
|
||||
'ASC_Antifreeze_Pos:5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100'
|
||||
}[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ]
|
||||
);
|
||||
}
|
||||
|
||||
sub getShuttersPlace {
|
||||
@ -4559,8 +4591,13 @@ sub getPrivacyDownTime {
|
||||
|
||||
sub getPrivacyDownPos {
|
||||
my $self = shift;
|
||||
my $val = AttrVal( $self->{shuttersDev}, 'ASC_PrivacyDown_Pos', 50 );
|
||||
|
||||
return AttrVal( $self->{shuttersDev}, 'ASC_PrivacyDown_Pos', 50 );
|
||||
if ( FHEM::AutoShuttersControl::_perlCodeCheck( $val, 'none' ) ) {
|
||||
$val = FHEM::AutoShuttersControl::_perlCodeCheck( $val, 50 );
|
||||
}
|
||||
|
||||
return ( $val =~ /^\d+(\.\d+)?$/ ? $val : 50 );
|
||||
}
|
||||
|
||||
sub getSelfDefenseMode {
|
||||
@ -4584,10 +4621,20 @@ sub getWiggleValue {
|
||||
### Begin Beschattung
|
||||
sub getShadingPos {
|
||||
my $self = shift;
|
||||
|
||||
return AttrVal( $self->{shuttersDev}, 'ASC_Shading_Pos',
|
||||
my $val = AttrVal( $self->{shuttersDev}, 'ASC_Shading_Pos',
|
||||
$userAttrList{'ASC_Shading_Pos:10,20,30,40,50,60,70,80,90,100'}
|
||||
[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ] );
|
||||
|
||||
if ( FHEM::AutoShuttersControl::_perlCodeCheck( $val, 'none' ) ) {
|
||||
$val = FHEM::AutoShuttersControl::_perlCodeCheck( $val,
|
||||
$userAttrList{'ASC_Shading_Pos:10,20,30,40,50,60,70,80,90,100'}
|
||||
[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ] );
|
||||
}
|
||||
|
||||
return ( $val =~ /^\d+(\.\d+)?$/
|
||||
? $val
|
||||
: $userAttrList{'ASC_Shading_Pos:10,20,30,40,50,60,70,80,90,100'}
|
||||
[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ] );
|
||||
}
|
||||
|
||||
sub getShadingMode {
|
||||
@ -4841,18 +4888,38 @@ sub getPosCmd {
|
||||
|
||||
sub getOpenPos {
|
||||
my $self = shift;
|
||||
|
||||
return AttrVal( $self->{shuttersDev}, 'ASC_Open_Pos',
|
||||
my $val = AttrVal( $self->{shuttersDev}, 'ASC_Open_Pos',
|
||||
$userAttrList{'ASC_Open_Pos:0,10,20,30,40,50,60,70,80,90,100'}
|
||||
[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ] );
|
||||
|
||||
if ( FHEM::AutoShuttersControl::_perlCodeCheck( $val, 'none' ) ) {
|
||||
$val = FHEM::AutoShuttersControl::_perlCodeCheck( $val,
|
||||
$userAttrList{'ASC_Open_Pos:0,10,20,30,40,50,60,70,80,90,100'}
|
||||
[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ] );
|
||||
}
|
||||
|
||||
return ( $val =~ /^\d+(\.\d+)?$/
|
||||
? $val
|
||||
: $userAttrList{'ASC_Open_Pos:0,10,20,30,40,50,60,70,80,90,100'}
|
||||
[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ] );
|
||||
}
|
||||
|
||||
sub getVentilatePos {
|
||||
my $self = shift;
|
||||
|
||||
return AttrVal( $self->{shuttersDev}, 'ASC_Ventilate_Pos',
|
||||
my $val = AttrVal( $self->{shuttersDev}, 'ASC_Ventilate_Pos',
|
||||
$userAttrList{'ASC_Ventilate_Pos:10,20,30,40,50,60,70,80,90,100'}
|
||||
[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ] );
|
||||
|
||||
if ( FHEM::AutoShuttersControl::_perlCodeCheck( $val, 'none' ) ) {
|
||||
$val = FHEM::AutoShuttersControl::_perlCodeCheck( $val,
|
||||
$userAttrList{'ASC_Ventilate_Pos:10,20,30,40,50,60,70,80,90,100'}
|
||||
[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ] );
|
||||
}
|
||||
|
||||
return ( $val =~ /^\d+(\.\d+)?$/
|
||||
? $val
|
||||
: $userAttrList{'ASC_Ventilate_Pos:10,20,30,40,50,60,70,80,90,100'}
|
||||
[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ] );
|
||||
}
|
||||
|
||||
sub getVentilatePosAfterDayClosed {
|
||||
@ -4864,16 +4931,33 @@ sub getVentilatePosAfterDayClosed {
|
||||
|
||||
sub getClosedPos {
|
||||
my $self = shift;
|
||||
|
||||
return AttrVal( $self->{shuttersDev}, 'ASC_Closed_Pos',
|
||||
my $val = AttrVal( $self->{shuttersDev}, 'ASC_Closed_Pos',
|
||||
$userAttrList{'ASC_Closed_Pos:0,10,20,30,40,50,60,70,80,90,100'}
|
||||
[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ] );
|
||||
|
||||
if ( FHEM::AutoShuttersControl::_perlCodeCheck( $val, 'none' ) ) {
|
||||
$val = FHEM::AutoShuttersControl::_perlCodeCheck( $val,
|
||||
$userAttrList{'ASC_Closed_Pos:0,10,20,30,40,50,60,70,80,90,100'}
|
||||
[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ] );
|
||||
}
|
||||
|
||||
return (
|
||||
$val =~ /^\d+(\.\d+)?$/
|
||||
? $val
|
||||
: $userAttrList{'ASC_Closed_Pos:0,10,20,30,40,50,60,70,80,90,100'}
|
||||
[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ]
|
||||
);
|
||||
}
|
||||
|
||||
sub getSleepPos {
|
||||
my $self = shift;
|
||||
my $val = AttrVal( $self->{shuttersDev}, 'ASC_Sleep_Pos', -1 );
|
||||
|
||||
return AttrVal( $self->{shuttersDev}, 'ASC_Sleep_Pos', -1 );
|
||||
if ( FHEM::AutoShuttersControl::_perlCodeCheck( $val, 'none' ) ) {
|
||||
$val = FHEM::AutoShuttersControl::_perlCodeCheck( $val, -1 );
|
||||
}
|
||||
|
||||
return ( $val =~ /^\d+(\.\d+)?$/ ? $val : -1 );
|
||||
}
|
||||
|
||||
sub getVentilateOpen {
|
||||
@ -4884,10 +4968,21 @@ sub getVentilateOpen {
|
||||
|
||||
sub getComfortOpenPos {
|
||||
my $self = shift;
|
||||
|
||||
return AttrVal( $self->{shuttersDev}, 'ASC_ComfortOpen_Pos',
|
||||
my $val = AttrVal( $self->{shuttersDev}, 'ASC_ComfortOpen_Pos',
|
||||
$userAttrList{'ASC_ComfortOpen_Pos:0,10,20,30,40,50,60,70,80,90,100'}
|
||||
[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ] );
|
||||
|
||||
if ( FHEM::AutoShuttersControl::_perlCodeCheck( $val, 'none' ) ) {
|
||||
$val = FHEM::AutoShuttersControl::_perlCodeCheck( $val,
|
||||
$userAttrList{
|
||||
'ASC_ComfortOpen_Pos:0,10,20,30,40,50,60,70,80,90,100'}
|
||||
[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ] );
|
||||
}
|
||||
|
||||
return ( $val =~ /^\d+(\.\d+)?$/
|
||||
? $val
|
||||
: $userAttrList{'ASC_ComfortOpen_Pos:0,10,20,30,40,50,60,70,80,90,100'}
|
||||
[ AttrVal( $self->{shuttersDev}, 'ASC', 2 ) ] );
|
||||
}
|
||||
|
||||
sub getPartyMode {
|
||||
@ -5057,32 +5152,68 @@ sub getDown {
|
||||
|
||||
sub getTimeUpEarly {
|
||||
my $self = shift;
|
||||
my $val = AttrVal( $self->{shuttersDev}, 'ASC_Time_Up_Early', '05:00' );
|
||||
|
||||
return AttrVal( $self->{shuttersDev}, 'ASC_Time_Up_Early', '05:00' );
|
||||
if ( FHEM::AutoShuttersControl::_perlCodeCheck( $val, 'none' ) ) {
|
||||
$val = FHEM::AutoShuttersControl::_perlCodeCheck( $val, '05:00' );
|
||||
}
|
||||
|
||||
return ( $val =~ /^(?:[01]\d|2[0-3]):(?:[0-5]\d)(:(?:[0-5]\d))?$/
|
||||
? $val
|
||||
: '05:00' );
|
||||
}
|
||||
|
||||
sub getTimeUpLate {
|
||||
my $self = shift;
|
||||
my $val = AttrVal( $self->{shuttersDev}, 'ASC_Time_Up_Late', '08:30' );
|
||||
|
||||
return AttrVal( $self->{shuttersDev}, 'ASC_Time_Up_Late', '08:30' );
|
||||
if ( FHEM::AutoShuttersControl::_perlCodeCheck( $val, 'none' ) ) {
|
||||
$val = FHEM::AutoShuttersControl::_perlCodeCheck( $val, '08:30' );
|
||||
}
|
||||
|
||||
return ( $val =~ /^(?:[01]\d|2[0-3]):(?:[0-5]\d)(:(?:[0-5]\d))?$/
|
||||
? $val
|
||||
: '08:30' );
|
||||
}
|
||||
|
||||
sub getTimeDownEarly {
|
||||
my $self = shift;
|
||||
my $val = AttrVal( $self->{shuttersDev}, 'ASC_Time_Down_Early', '16:00' );
|
||||
|
||||
return AttrVal( $self->{shuttersDev}, 'ASC_Time_Down_Early', '16:00' );
|
||||
if ( FHEM::AutoShuttersControl::_perlCodeCheck( $val, 'none' ) ) {
|
||||
$val = FHEM::AutoShuttersControl::_perlCodeCheck( $val, '16:00' );
|
||||
}
|
||||
|
||||
return ( $val =~ /^(?:[01]\d|2[0-3]):(?:[0-5]\d)(:(?:[0-5]\d))?$/
|
||||
? $val
|
||||
: '16:00' );
|
||||
}
|
||||
|
||||
sub getTimeDownLate {
|
||||
my $self = shift;
|
||||
my $val = AttrVal( $self->{shuttersDev}, 'ASC_Time_Down_Late', '22:00' );
|
||||
|
||||
return AttrVal( $self->{shuttersDev}, 'ASC_Time_Down_Late', '22:00' );
|
||||
if ( FHEM::AutoShuttersControl::_perlCodeCheck( $val, 'none' ) ) {
|
||||
$val = FHEM::AutoShuttersControl::_perlCodeCheck( $val, '22:00' );
|
||||
}
|
||||
|
||||
return ( $val =~ /^(?:[01]\d|2[0-3]):(?:[0-5]\d)(:(?:[0-5]\d))?$/
|
||||
? $val
|
||||
: '22:00' );
|
||||
}
|
||||
|
||||
sub getTimeUpWeHoliday {
|
||||
my $self = shift;
|
||||
my $val =
|
||||
AttrVal( $self->{shuttersDev}, 'ASC_Time_Up_WE_Holiday', '08:00' );
|
||||
|
||||
return AttrVal( $self->{shuttersDev}, 'ASC_Time_Up_WE_Holiday', '08:00' );
|
||||
if ( FHEM::AutoShuttersControl::_perlCodeCheck( $val, 'none' ) ) {
|
||||
$val = FHEM::AutoShuttersControl::_perlCodeCheck( $val, '08:00' );
|
||||
}
|
||||
|
||||
return ( $val =~ /^(?:[01]\d|2[0-3]):(?:[0-5]\d)(:(?:[0-5]\d))?$/
|
||||
? $val
|
||||
: '08:00' );
|
||||
}
|
||||
|
||||
sub getBrightnessMinVal {
|
||||
@ -6577,7 +6708,7 @@ sub getblockAscDrivesAfterManual {
|
||||
<ul>
|
||||
<li><strong>ASC - 0/1/2</strong> 0 = "kein Anlegen der Attribute beim ersten Scan bzw. keine Beachtung eines Fahrbefehles",1 = "Inverse oder Rollo - Bsp.: Rollo oben 0, Rollo unten 100 und der Befehl zum prozentualen Fahren ist position",2 = "Homematic Style - Bsp.: Rollo oben 100, Rollo unten 0 und der Befehl zum prozentualen Fahren ist pct</li>
|
||||
<li><strong>ASC_Antifreeze - soft/am/pm/hard/off</strong> - Frostschutz, wenn soft fährt der Rollladen in die ASC_Antifreeze_Pos und wenn hard/am/pm wird gar nicht oder innerhalb der entsprechenden Tageszeit nicht gefahren (default: off)</li>
|
||||
<li><strong>ASC_Antifreeze_Pos</strong> - Position die angefahren werden soll, wenn der Fahrbefehl komplett schließen lautet, aber der Frostschutz aktiv ist (Default: ist abhängig vom Attribut<em>ASC</em> 85/15)</li>
|
||||
<li><strong>ASC_Antifreeze_Pos</strong> - Position die angefahren werden soll, wenn der Fahrbefehl komplett schließen lautet, aber der Frostschutz aktiv ist (Default: ist abhängig vom Attribut<em>ASC</em> 85/15) !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss eine positive Zahl/Dezimalzahl sein!!!</li>
|
||||
<li><strong>ASC_AutoAstroModeEvening</strong> - aktuell REAL,CIVIL,NAUTIC,ASTRONOMIC (default: none)</li>
|
||||
<li><strong>ASC_AutoAstroModeEveningHorizon</strong> - Höhe über Horizont, wenn beim Attribut ASC_autoAstroModeEvening HORIZON ausgewählt (default: none)</li>
|
||||
<li><strong>ASC_AutoAstroModeMorning</strong> - aktuell REAL,CIVIL,NAUTIC,ASTRONOMIC (default: none)</li>
|
||||
@ -6586,10 +6717,10 @@ sub getblockAscDrivesAfterManual {
|
||||
<li><strong>ASC_BlockingTime_beforDayOpen</strong> - wie viel Sekunden vor dem morgendlichen öffnen soll keine schließen Fahrt mehr stattfinden. (default: 3600)</li>
|
||||
<li><strong>ASC_BlockingTime_beforNightClose</strong> - wie viel Sekunden vor dem nächtlichen schließen soll keine öffnen Fahrt mehr stattfinden. (default: 3600)</li>
|
||||
<li><strong>ASC_BrightnessSensor - DEVICE[:READING] WERT-MORGENS:WERT-ABENDS</strong> / 'Sensorname[:brightness [400:800]]' Angaben zum Helligkeitssensor mit (Readingname, optional) für die Beschattung und dem Fahren der Rollladen nach brightness und den optionalen Brightnesswerten für Sonnenauf- und Sonnenuntergang. (default: none)</li>
|
||||
<li><strong>ASC_Closed_Pos</strong> - in 10 Schritten von 0 bis 100 (Default: ist abhängig vom Attribut<em>ASC</em> 0/100)</li>
|
||||
<li><strong>ASC_Open_Pos</strong> - in 10 Schritten von 0 bis 100 (default: ist abhängig vom Attribut<em>ASC</em> 100/0)</li>
|
||||
<li><strong>ASC_Sleep_Pos</strong> - in 10 Schritten von 0 bis 100 (default: ist abhängig vom Attribut<em>ASC</em> 75/25)</li>
|
||||
<li><strong>ASC_ComfortOpen_Pos</strong> - in 10 Schritten von 0 bis 100 (Default: ist abhängig vom Attribut<em>ASC</em> 20/80)</li>
|
||||
<li><strong>ASC_Closed_Pos</strong> - in 10 Schritten von 0 bis 100 (Default: ist abhängig vom Attribut<em>ASC</em> 0/100) !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss eine positive Zahl/Dezimalzahl sein!!!</li>
|
||||
<li><strong>ASC_Open_Pos</strong> - in 10 Schritten von 0 bis 100 (default: ist abhängig vom Attribut<em>ASC</em> 100/0) !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss eine positive Zahl/Dezimalzahl sein!!!</li>
|
||||
<li><strong>ASC_Sleep_Pos</strong> - in 10 Schritten von 0 bis 100 (default: ist abhängig vom Attribut<em>ASC</em> 75/25) !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss eine positive Zahl/Dezimalzahl sein!!!</li>
|
||||
<li><strong>ASC_ComfortOpen_Pos</strong> - in 10 Schritten von 0 bis 100 (Default: ist abhängig vom Attribut<em>ASC</em> 20/80) !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss eine positive Zahl/Dezimalzahl sein!!!</li>
|
||||
<li><strong>ASC_Down - astro/time/brightness</strong> - bei astro wird Sonnenuntergang berechnet, bei time wird der Wert aus ASC_Time_Down_Early als Fahrzeit verwendet und bei brightness muss ASC_Time_Down_Early und ASC_Time_Down_Late korrekt gesetzt werden. Der Timer läuft dann nach ASC_Time_Down_Late Zeit, es wird aber in der Zeit zwischen ASC_Time_Down_Early und ASC_Time_Down_Late geschaut, ob die als Attribut im Moduldevice hinterlegte ASC_brightnessDriveUpDown der Down Wert erreicht wurde. Wenn ja, wird der Rollladen runter gefahren (default: astro)</li>
|
||||
<li><strong>ASC_DriveUpMaxDuration</strong> - die Dauer des Hochfahrens des Rollladens plus 5 Sekunden (default: 60)</li>
|
||||
<li><strong>ASC_Drive_Offset</strong> - maximaler Wert für einen zufällig ermittelte Verzögerungswert in Sekunden bei der Berechnung der Fahrzeiten, 0 bedeutet keine Verzögerung, -1 bedeutet, dass das gleichwertige Attribut aus dem ASC Device ausgewertet werden soll. (default: -1)</li>
|
||||
@ -6601,7 +6732,7 @@ sub getblockAscDrivesAfterManual {
|
||||
<li><strong>ASC_Partymode - on/off</strong> - schaltet den Partymodus an oder aus. Wird am ASC Device set ASC-DEVICE partyMode on geschalten, werden alle Fahrbefehle an den Rollläden, welche das Attribut auf on haben, zwischengespeichert und später erst ausgeführt (default: off)</li>
|
||||
<li><strong>ASC_Pos_Reading</strong> - Name des Readings, welches die Position des Rollladen in Prozent an gibt; wird bei unbekannten Device Typen auch als set Befehl zum fahren verwendet</li>
|
||||
<li><strong>ASC_PrivacyDownTime_beforNightClose</strong> - wie viele Sekunden vor dem abendlichen schließen soll der Rollladen in die Sichtschutzposition fahren, -1 bedeutet das diese Funktion unbeachtet bleiben soll (default: -1)</li>
|
||||
<li><strong>ASC_PrivacyDown_Pos</strong> - Position den Rollladens für den Sichtschutz (default: 50)</li>
|
||||
<li><strong>ASC_PrivacyDown_Pos</strong> - Position den Rollladens für den Sichtschutz (default: 50) !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss eine positive Zahl/Dezimalzahl sein!!!</li>
|
||||
<li><strong>ASC_WindProtection - on/off</strong> - soll der Rollladen beim Regenschutz beachtet werden. on=JA, off=NEIN.</li>
|
||||
<li><strong>ASC_Roommate_Device</strong> - mit Komma getrennte Namen des/der Roommate Device/s, welche den/die Bewohner des Raumes vom Rollladen wiedergibt. Es macht nur Sinn in Schlaf- oder Kinderzimmern (default: none)</li>
|
||||
<li><strong>ASC_Roommate_Reading</strong> - das Reading zum Roommate Device, welches den Status wieder gibt (default: state)</li>
|
||||
@ -6620,19 +6751,19 @@ sub getblockAscDrivesAfterManual {
|
||||
<li><strong>ASC_Shading_MinMax_Elevation</strong> - ab welcher min Höhe des Sonnenstandes soll beschattet und ab welcher max Höhe wieder beendet werden, immer in Abhängigkeit der anderen einbezogenen Sensorwerte (default: 25.0:100.0)</li>
|
||||
<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)</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_Cloudy</strong> - Brightness Wert ab welchen die Beschattung aufgehoben werden soll, immer in Abhängigkeit der anderen einbezogenen Sensorwerte (default: 20000)</li>
|
||||
<li><strong>ASC_Shading_StateChange_Sunny</strong> - Brightness Wert ab welchen Beschattung stattfinden soll, immer in Abhängigkeit der anderen einbezogenen Sensorwerte (default: 35000)</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>
|
||||
<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>
|
||||
<li><strong>ASC_Time_Down_Early</strong> - Sonnenuntergang frühste Zeit zum Runterfahren (default: 16:00)</li>
|
||||
<li><strong>ASC_Time_Down_Late</strong> - Sonnenuntergang späteste Zeit zum Runterfahren (default: 22:00)</li>
|
||||
<li><strong>ASC_Time_Up_Early</strong> - Sonnenaufgang frühste Zeit zum Hochfahren (default: 05:00)</li>
|
||||
<li><strong>ASC_Time_Up_Late</strong> - Sonnenaufgang späteste Zeit zum Hochfahren (default: 08:30)</li>
|
||||
<li><strong>ASC_Time_Up_WE_Holiday</strong> - Sonnenaufgang frühste Zeit zum Hochfahren am Wochenende und/oder Urlaub (holiday2we wird beachtet). (default: 08:00) ACHTUNG!!! in Verbindung mit Brightness für <em>ASC_Up</em> muss die Uhrzeit kleiner sein wie die Uhrzeit aus <em>ASC_Time_Up_Late</em></li>
|
||||
<li><strong>ASC_Time_Down_Early</strong> - Sonnenuntergang frühste Zeit zum Runterfahren (default: 16:00) !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss ein Zeitformat in Form HH:MM[:SS] sein!!!</li>
|
||||
<li><strong>ASC_Time_Down_Late</strong> - Sonnenuntergang späteste Zeit zum Runterfahren (default: 22:00) !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss ein Zeitformat in Form HH:MM[:SS] sein!!!</li>
|
||||
<li><strong>ASC_Time_Up_Early</strong> - Sonnenaufgang frühste Zeit zum Hochfahren (default: 05:00) !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss ein Zeitformat in Form HH:MM[:SS] sein!!!</li>
|
||||
<li><strong>ASC_Time_Up_Late</strong> - Sonnenaufgang späteste Zeit zum Hochfahren (default: 08:30) !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss ein Zeitformat in Form HH:MM[:SS] sein!!!</li>
|
||||
<li><strong>ASC_Time_Up_WE_Holiday</strong> - Sonnenaufgang frühste Zeit zum Hochfahren am Wochenende und/oder Urlaub (holiday2we wird beachtet). (default: 08:00) ACHTUNG!!! in Verbindung mit Brightness für <em>ASC_Up</em> muss die Uhrzeit kleiner sein wie die Uhrzeit aus <em>ASC_Time_Up_Late</em> !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss ein Zeitformat in Form HH:MM[:SS] sein!!!</li>
|
||||
<li><strong>ASC_Up - astro/time/brightness</strong> - bei astro wird Sonnenaufgang berechnet, bei time wird der Wert aus ASC_Time_Up_Early als Fahrzeit verwendet und bei brightness muss ASC_Time_Up_Early und ASC_Time_Up_Late korrekt gesetzt werden. Der Timer läuft dann nach ASC_Time_Up_Late Zeit, es wird aber in der Zeit zwischen ASC_Time_Up_Early und ASC_Time_Up_Late geschaut, ob die als Attribut im Moduldevice hinterlegte Down Wert von ASC_brightnessDriveUpDown erreicht wurde. Wenn ja, wird der Rollladen hoch gefahren (default: astro)</li>
|
||||
<li><strong>ASC_Ventilate_Pos</strong> - in 10 Schritten von 0 bis 100 (default: ist abhängig vom Attribut <em>ASC</em> 70/30)</li>
|
||||
<li><strong>ASC_Ventilate_Pos</strong> - in 10 Schritten von 0 bis 100 (default: ist abhängig vom Attribut <em>ASC</em> 70/30) !!!Verwendung von Perlcode ist möglich, dieser muss in {} eingeschlossen sein. Rückgabewert muss eine positive Zahl/Dezimalzahl sein!!!</li>
|
||||
<li><strong>ASC_Ventilate_Window_Open</strong> - auf lüften, wenn das Fenster gekippt/geöffnet wird und aktuelle Position unterhalb der Lüften-Position ist (default: on)</li>
|
||||
<li><strong>ASC_WiggleValue</strong> - Wert um welchen sich die Position des Rollladens ändern soll (default: 5)</li>
|
||||
<li><strong>ASC_WindParameters - TRIGGERMAX[:HYSTERESE] [DRIVEPOSITION]</strong> / Angabe von Max Wert ab dem für Wind getriggert werden soll, Hytsrese Wert ab dem der Windschutz aufgehoben werden soll TRIGGERMAX - HYSTERESE / Ist es bei einigen Rollläden nicht gewünscht das gefahren werden soll, so ist der TRIGGERMAX Wert mit -1 an zu geben. (default: '50:20 ClosedPosition')</li>
|
||||
@ -6722,7 +6853,7 @@ sub getblockAscDrivesAfterManual {
|
||||
],
|
||||
"release_status": "under develop",
|
||||
"license": "GPL_2",
|
||||
"version": "v0.6.101",
|
||||
"version": "v0.6.102",
|
||||
"author": [
|
||||
"Marko Oldenburg <leongaultier@gmail.com>"
|
||||
],
|
||||
|
Loading…
x
Reference in New Issue
Block a user