fix commandref bugs, delete absolet entrys
This commit is contained in:
parent
2af032e4af
commit
aaf4663175
@ -53,17 +53,17 @@ my $version = '0.6.15';
|
|||||||
sub AutoShuttersControl_Initialize($) {
|
sub AutoShuttersControl_Initialize($) {
|
||||||
my ($hash) = @_;
|
my ($hash) = @_;
|
||||||
|
|
||||||
### alte Attribute welche entfernt werden
|
# ### alte Attribute welche entfernt werden
|
||||||
my $oldAttr =
|
# my $oldAttr =
|
||||||
'ASC_temperatureSensor '
|
# 'ASC_temperatureSensor '
|
||||||
. 'ASC_temperatureReading '
|
# . 'ASC_temperatureReading '
|
||||||
. 'ASC_residentsDevice '
|
# . 'ASC_residentsDevice '
|
||||||
. 'ASC_residentsDeviceReading '
|
# . 'ASC_residentsDeviceReading '
|
||||||
. 'ASC_rainSensorDevice '
|
# . 'ASC_rainSensorDevice '
|
||||||
. 'ASC_rainSensorReading '
|
# . 'ASC_rainSensorReading '
|
||||||
. 'ASC_rainSensorShuttersClosedPos:0,10,20,30,40,50,60,70,80,90,100 '
|
# . 'ASC_rainSensorShuttersClosedPos:0,10,20,30,40,50,60,70,80,90,100 '
|
||||||
. 'ASC_brightnessMinVal '
|
# . 'ASC_brightnessMinVal '
|
||||||
. 'ASC_brightnessMaxVal ';
|
# . 'ASC_brightnessMaxVal ';
|
||||||
|
|
||||||
## Da ich mit package arbeite müssen in die Initialize für die jeweiligen hash Fn Funktionen der Funktionsname
|
## Da ich mit package arbeite müssen in die Initialize für die jeweiligen hash Fn Funktionen der Funktionsname
|
||||||
# und davor mit :: getrennt der eigentliche package Name des Modules
|
# und davor mit :: getrennt der eigentliche package Name des Modules
|
||||||
@ -92,7 +92,7 @@ sub AutoShuttersControl_Initialize($) {
|
|||||||
. 'ASC_expert:1 '
|
. 'ASC_expert:1 '
|
||||||
. 'ASC_blockAscDrivesAfterManual:0,1 '
|
. 'ASC_blockAscDrivesAfterManual:0,1 '
|
||||||
. 'ASC_debug:1 '
|
. 'ASC_debug:1 '
|
||||||
. $oldAttr
|
# . $oldAttr
|
||||||
. $readingFnAttributes;
|
. $readingFnAttributes;
|
||||||
$hash->{NotifyOrderPrefix} = '51-'; # Order Nummer für NotifyFn
|
$hash->{NotifyOrderPrefix} = '51-'; # Order Nummer für NotifyFn
|
||||||
|
|
||||||
@ -649,52 +649,52 @@ sub ShuttersDeviceScan($) {
|
|||||||
if ( ReadingsVal( $_, 'ASC_Enable', 'none' ) eq 'none' );
|
if ( ReadingsVal( $_, 'ASC_Enable', 'none' ) eq 'none' );
|
||||||
}
|
}
|
||||||
|
|
||||||
### Temporär und muss später entfernt werden
|
# ### Temporär und muss später entfernt werden
|
||||||
CommandAttr( undef,
|
# CommandAttr( undef,
|
||||||
$name
|
# $name
|
||||||
. ' ASC_tempSensor '
|
# . ' ASC_tempSensor '
|
||||||
. AttrVal( $name, 'ASC_temperatureSensor', 'none' ) . ':'
|
# . AttrVal( $name, 'ASC_temperatureSensor', 'none' ) . ':'
|
||||||
. AttrVal( $name, 'ASC_temperatureReading', 'temperature' ) )
|
# . AttrVal( $name, 'ASC_temperatureReading', 'temperature' ) )
|
||||||
if ( AttrVal( $name, 'ASC_temperatureSensor', 'none' ) ne 'none' );
|
# if ( AttrVal( $name, 'ASC_temperatureSensor', 'none' ) ne 'none' );
|
||||||
CommandAttr( undef,
|
# CommandAttr( undef,
|
||||||
$name
|
# $name
|
||||||
. ' ASC_residentsDev '
|
# . ' ASC_residentsDev '
|
||||||
. AttrVal( $name, 'ASC_residentsDevice', 'none' ) . ':'
|
# . AttrVal( $name, 'ASC_residentsDevice', 'none' ) . ':'
|
||||||
. AttrVal( $name, 'ASC_residentsDeviceReading', 'state' ) )
|
# . AttrVal( $name, 'ASC_residentsDeviceReading', 'state' ) )
|
||||||
if ( AttrVal( $name, 'ASC_residentsDevice', 'none' ) ne 'none' );
|
# if ( AttrVal( $name, 'ASC_residentsDevice', 'none' ) ne 'none' );
|
||||||
CommandAttr( undef,
|
# CommandAttr( undef,
|
||||||
$name
|
# $name
|
||||||
. ' ASC_rainSensor '
|
# . ' ASC_rainSensor '
|
||||||
. AttrVal( $name, 'ASC_rainSensorDevice', 'none' ) . ':'
|
# . AttrVal( $name, 'ASC_rainSensorDevice', 'none' ) . ':'
|
||||||
. AttrVal( $name, 'ASC_rainSensorReading', 'rain' ) . ' 100 '
|
# . AttrVal( $name, 'ASC_rainSensorReading', 'rain' ) . ' 100 '
|
||||||
. AttrVal( $name, 'ASC_rainSensorShuttersClosedPos', 50 ) )
|
# . AttrVal( $name, 'ASC_rainSensorShuttersClosedPos', 50 ) )
|
||||||
if ( AttrVal( $name, 'ASC_rainSensorDevice', 'none' ) ne 'none' );
|
# if ( AttrVal( $name, 'ASC_rainSensorDevice', 'none' ) ne 'none' );
|
||||||
CommandAttr( undef,
|
# CommandAttr( undef,
|
||||||
$name
|
# $name
|
||||||
. ' ASC_brightnessDriveUpDown '
|
# . ' ASC_brightnessDriveUpDown '
|
||||||
. AttrVal( $name, 'ASC_brightnessMinVal', 500 ) . ':'
|
# . AttrVal( $name, 'ASC_brightnessMinVal', 500 ) . ':'
|
||||||
. AttrVal( $name, 'ASC_brightnessMaxVal', 800 ) )
|
# . AttrVal( $name, 'ASC_brightnessMaxVal', 800 ) )
|
||||||
if ( AttrVal( $name, 'ASC_brightnessMinVal', 'none' ) ne 'none' );
|
# if ( AttrVal( $name, 'ASC_brightnessMinVal', 'none' ) ne 'none' );
|
||||||
|
#
|
||||||
CommandDeleteAttr( undef, $name . ' ASC_temperatureSensor' )
|
# CommandDeleteAttr( undef, $name . ' ASC_temperatureSensor' )
|
||||||
if ( AttrVal( $name, 'ASC_temperatureSensor', 'none' ) ne 'none' );
|
# if ( AttrVal( $name, 'ASC_temperatureSensor', 'none' ) ne 'none' );
|
||||||
CommandDeleteAttr( undef, $name . ' ASC_temperatureReading' )
|
# CommandDeleteAttr( undef, $name . ' ASC_temperatureReading' )
|
||||||
if ( AttrVal( $name, 'ASC_temperatureReading', 'none' ) ne 'none' );
|
# if ( AttrVal( $name, 'ASC_temperatureReading', 'none' ) ne 'none' );
|
||||||
CommandDeleteAttr( undef, $name . ' ASC_residentsDevice' )
|
# CommandDeleteAttr( undef, $name . ' ASC_residentsDevice' )
|
||||||
if ( AttrVal( $name, 'ASC_residentsDevice', 'none' ) ne 'none' );
|
# if ( AttrVal( $name, 'ASC_residentsDevice', 'none' ) ne 'none' );
|
||||||
CommandDeleteAttr( undef, $name . ' ASC_residentsDeviceReading' )
|
# CommandDeleteAttr( undef, $name . ' ASC_residentsDeviceReading' )
|
||||||
if ( AttrVal( $name, 'ASC_residentsDeviceReading', 'none' ) ne 'none' );
|
# if ( AttrVal( $name, 'ASC_residentsDeviceReading', 'none' ) ne 'none' );
|
||||||
CommandDeleteAttr( undef, $name . ' ASC_rainSensorDevice' )
|
# CommandDeleteAttr( undef, $name . ' ASC_rainSensorDevice' )
|
||||||
if ( AttrVal( $name, 'ASC_rainSensorDevice', 'none' ) ne 'none' );
|
# if ( AttrVal( $name, 'ASC_rainSensorDevice', 'none' ) ne 'none' );
|
||||||
CommandDeleteAttr( undef, $name . ' ASC_rainSensorReading' )
|
# CommandDeleteAttr( undef, $name . ' ASC_rainSensorReading' )
|
||||||
if ( AttrVal( $name, 'ASC_rainSensorReading', 'none' ) ne 'none' );
|
# if ( AttrVal( $name, 'ASC_rainSensorReading', 'none' ) ne 'none' );
|
||||||
CommandDeleteAttr( undef, $name . ' ASC_rainSensorShuttersClosedPos' )
|
# CommandDeleteAttr( undef, $name . ' ASC_rainSensorShuttersClosedPos' )
|
||||||
if (
|
# if (
|
||||||
AttrVal( $name, 'ASC_rainSensorShuttersClosedPos', 'none' ) ne 'none' );
|
# AttrVal( $name, 'ASC_rainSensorShuttersClosedPos', 'none' ) ne 'none' );
|
||||||
CommandDeleteAttr( undef, $name . ' ASC_brightnessMinVal' )
|
# CommandDeleteAttr( undef, $name . ' ASC_brightnessMinVal' )
|
||||||
if ( AttrVal( $name, 'ASC_brightnessMinVal', 'none' ) ne 'none' );
|
# if ( AttrVal( $name, 'ASC_brightnessMinVal', 'none' ) ne 'none' );
|
||||||
CommandDeleteAttr( undef, $name . ' ASC_brightnessMaxVal' )
|
# CommandDeleteAttr( undef, $name . ' ASC_brightnessMaxVal' )
|
||||||
if ( AttrVal( $name, 'ASC_brightnessMaxVal', 'none' ) ne 'none' );
|
# if ( AttrVal( $name, 'ASC_brightnessMaxVal', 'none' ) ne 'none' );
|
||||||
|
|
||||||
$hash->{NOTIFYDEV} = "global," . $name . $shuttersList;
|
$hash->{NOTIFYDEV} = "global," . $name . $shuttersList;
|
||||||
|
|
||||||
@ -2373,16 +2373,16 @@ sub RenewSunRiseSetShuttersTimer($) {
|
|||||||
$shutters->setInTimerFuncHash(undef);
|
$shutters->setInTimerFuncHash(undef);
|
||||||
CreateSunRiseSetShuttersTimer( $hash, $_ );
|
CreateSunRiseSetShuttersTimer( $hash, $_ );
|
||||||
|
|
||||||
### Temporär angelegt damit die neue Attributs Parameter Syntax verteilt werden kann
|
# ### Temporär angelegt damit die neue Attributs Parameter Syntax verteilt werden kann
|
||||||
# CommandAttr(undef, $_ . ' ASC_BrightnessSensor '.AttrVal($_, 'ASC_Brightness_Sensor', 'none').':'.AttrVal($_, 'ASC_Brightness_Reading', 'brightness').' '.AttrVal($_, 'ASC_BrightnessMinVal', 500).':'.AttrVal($_, 'ASC_BrightnessMaxVal', 700)) if ( AttrVal($_, 'ASC_Brightness_Sensor', 'none') ne 'none' );
|
# CommandAttr(undef, $_ . ' ASC_BrightnessSensor '.AttrVal($_, 'ASC_Brightness_Sensor', 'none').':'.AttrVal($_, 'ASC_Brightness_Reading', 'brightness').' '.AttrVal($_, 'ASC_BrightnessMinVal', 500).':'.AttrVal($_, 'ASC_BrightnessMaxVal', 700)) if ( AttrVal($_, 'ASC_Brightness_Sensor', 'none') ne 'none' );
|
||||||
|
|
||||||
$attr{$_}{'ASC_BrightnessSensor'} =
|
# $attr{$_}{'ASC_BrightnessSensor'} =
|
||||||
AttrVal( $_, 'ASC_Brightness_Sensor', 'none' ) . ':'
|
# AttrVal( $_, 'ASC_Brightness_Sensor', 'none' ) . ':'
|
||||||
. AttrVal( $_, 'ASC_Brightness_Reading', 'brightness' ) . ' '
|
# . AttrVal( $_, 'ASC_Brightness_Reading', 'brightness' ) . ' '
|
||||||
. AttrVal( $_, 'ASC_BrightnessMinVal', 500 ) . ':'
|
# . AttrVal( $_, 'ASC_BrightnessMinVal', 500 ) . ':'
|
||||||
. AttrVal( $_, 'ASC_BrightnessMaxVal', 700 )
|
# . AttrVal( $_, 'ASC_BrightnessMaxVal', 700 )
|
||||||
if ( AttrVal( $_, 'ASC_Brightness_Sensor', 'none' ) ne 'none' );
|
# if ( AttrVal( $_, 'ASC_Brightness_Sensor', 'none' ) ne 'none' );
|
||||||
|
#
|
||||||
# delFromDevAttrList( $_, 'ASC_Brightness_Sensor' )
|
# delFromDevAttrList( $_, 'ASC_Brightness_Sensor' )
|
||||||
# ; # temporär muss später gelöscht werden ab Version 0.4.11beta9
|
# ; # temporär muss später gelöscht werden ab Version 0.4.11beta9
|
||||||
# delFromDevAttrList( $_, 'ASC_Brightness_Reading' )
|
# delFromDevAttrList( $_, 'ASC_Brightness_Reading' )
|
||||||
@ -5303,7 +5303,7 @@ sub getblockAscDrivesAfterManual {
|
|||||||
<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_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>)</li>
|
<li><strong>ASC_Closed_Pos</strong> - in 10 Schritten von 0 bis 100 (Default: ist abhängig vom Attribut <em>ASC</em>)</li>
|
||||||
<li><strong>ASC_ComfortOpen_Pos</strong> - in 10 Schritten von 0 bis 100 (Default: ist abhängig vom Attribut <em>ASC</em>)</li>
|
<li><strong>ASC_ComfortOpen_Pos</strong> - in 10 Schritten von 0 bis 100 (Default: ist abhängig vom Attribut <em>ASC</em>)</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_brightnessMinVal erreicht wurde. Wenn ja, wird der Rollladen runter gefahren (default: astro)</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_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>
|
<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>
|
||||||
<li><strong>ASC_Drive_OffsetStart</strong> - in Sekunden verzögerter Wert ab welchen dann erst das Offset startet und dazu addiert wird. Funktioniert nur wenn gleichzeitig ASC_Drive_Offset gesetzt wird. (default: -1)</li>
|
<li><strong>ASC_Drive_OffsetStart</strong> - in Sekunden verzögerter Wert ab welchen dann erst das Offset startet und dazu addiert wird. Funktioniert nur wenn gleichzeitig ASC_Drive_Offset gesetzt wird. (default: -1)</li>
|
||||||
@ -5343,7 +5343,7 @@ sub getblockAscDrivesAfterManual {
|
|||||||
<li><strong>ASC_Time_Up_Early</strong> - Sonnenaufgang frühste Zeit zum Hochfahren (default: 05: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_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_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_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 ASC_brightnessMinVal erreicht wurde. Wenn ja, wird der Rollladen hoch gefahren (default: astro)</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>)</li>
|
<li><strong>ASC_Ventilate_Pos</strong> - in 10 Schritten von 0 bis 100 (default: ist abhängig vom Attribut <em>ASC</em>)</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_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_WiggleValue</strong> - Wert um welchen sich die Position des Rollladens ändern soll (default: 5)</li>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user