2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-04-22 20:24:36 +00:00

26_tahoma.pm:2018-05-10 V 0217 disable activated on devices

git-svn-id: https://svn.fhem.de/fhem/trunk@16723 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
mike3436 2018-05-10 19:01:53 +00:00
parent 0d1f2d116a
commit 4e07653247

View File

@ -49,6 +49,7 @@
# 2017-07-08 V 0215 login delay increased automatically up to 160s if login failed
# 2017-07-08 V 0215 default set commands on devices without commands deleted
# 2017-10-08 V 0216 group definition added
# 2018-05-10 V 0217 disable activated on devices
package main;
@ -121,7 +122,7 @@ sub tahoma_Define($$)
my @a = split("[ \t][ \t]*", $def);
my $ModuleVersion = "0216";
my $ModuleVersion = "0217";
my $subtype;
my $name = $a[0];
@ -561,11 +562,13 @@ sub tahoma_updateDevices($)
$def->{inOID} = $device->{oid};
$def->{inClass} = 'RollerShutter';
$def->{inClass} = $attr{$def->{NAME}}{placeClasses} if (defined $attr{$def->{NAME}}{placeClasses});
$device->{NAME} = $def->{NAME};
}
elsif( defined($device) && ($subtype eq 'SCENE') ) {
Log3 $name, 4, "$name: I/O device is label=".$device->{label};
$def->{inLabel} = $device->{label};
$def->{inOID} = $device->{oid};
$device->{NAME} = $def->{NAME};
}
}
elsif (defined($def->{device}) && !defined($def->{inType}))
@ -580,6 +583,7 @@ sub tahoma_updateDevices($)
$def->{inPlaceOID} = $device->{placeOID};
$def->{inClass} = $device->{uiClass};
$device->{levelInvert} = $attr{$def->{NAME}}{levelInvert} if (defined $attr{$def->{NAME}}{levelInvert});
$device->{NAME} = $def->{NAME};
}
}
}
@ -671,7 +675,7 @@ sub tahoma_getDeviceList($$$$)
foreach my $device (@{$devices}) {
if ( defined($device->{deviceURL}) && defined($device->{placeOID}) && defined($device->{uiClass}) ) {
if (( grep { $_ eq $device->{uiClass}} @classes ) && ($device->{placeOID} eq $oid)) {
push ( @{$deviceList}, { device => $device->{deviceURL}, class => $device->{uiClass}, levelInvert => $device->{levelInvert} } ) ;
push ( @{$deviceList}, { device => $device->{deviceURL}, class => $device->{uiClass}, levelInvert => $device->{levelInvert} } ) if !($attr{$device->{NAME}}{disable});
#print "tahoma_getDeviceList url=$device->{deviceURL} devices=".scalar @{$deviceList}."\n";
}
} elsif ( defined($device->{oid}) && defined($device->{subPlaces}) ) {
@ -693,7 +697,7 @@ sub tahoma_getGroupList($$$)
my @groupDevices = split(',',$oid);
foreach my $module (@groupDevices) {
if (defined($defs{$module}) && defined($defs{$module}{device}) && defined($defs{$module}{inClass})) {
push ( @{$deviceList}, { device => $defs{$module}{device}, class => $defs{$module}{inClass}, levelInvert => $attr{$module}{levelInvert} } ) ;
push ( @{$deviceList}, { device => $defs{$module}{device}, class => $defs{$module}{inClass}, levelInvert => $attr{$module}{levelInvert} } ) if !($attr{$module}{disable});
}
}
}
@ -1386,7 +1390,7 @@ sub tahoma_Set($$@)
{
if( $cmd eq (split(":",$command))[0])
{
tahoma_applyRequest($hash,$cmd,$val);
tahoma_applyRequest($hash,$cmd,$val) if !($attr{$hash->{NAME}}{disable});
return undef;
}
}
@ -1396,12 +1400,12 @@ sub tahoma_Set($$@)
$list = "start:noArg startAt cancel:noArg";
if( $cmd eq "start" ) {
tahoma_launchActionGroup($hash);
tahoma_launchActionGroup($hash) if !($attr{$hash->{NAME}}{disable});
return undef;
}
if( $cmd eq "startAt" ) {
tahoma_scheduleActionGroup($hash,$val);
tahoma_scheduleActionGroup($hash,$val) if !($attr{$hash->{NAME}}{disable});
return undef;
}