mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-04-17 11:26:03 +00:00
10_ZWave.pm: better fix for useless init message (Forum #40992)
git-svn-id: https://svn.fhem.de/fhem/trunk@12085 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
dbbdd9758f
commit
55f8d2048f
@ -298,7 +298,7 @@ my %zwave_class = (
|
|||||||
'(hex($1)&0x80 ? ", dynamic":"").'.
|
'(hex($1)&0x80 ? ", dynamic":"").'.
|
||||||
'(hex($1)&0x40 ? ", identical":", different")',
|
'(hex($1)&0x40 ? ", identical":", different")',
|
||||||
"^..600a(.*)"=> 'ZWave_mcCapability($hash, $1)' },
|
"^..600a(.*)"=> 'ZWave_mcCapability($hash, $1)' },
|
||||||
init => { ORDER=>49, CMD => '"set $NAME -silent mcCreateAll"' } },
|
init => { ORDER=>49, CMD => '"set $NAME mcCreateAll"' } },
|
||||||
ZIP_PORTAL => { id => '61' },
|
ZIP_PORTAL => { id => '61' },
|
||||||
DOOR_LOCK => { id => '62', # V2
|
DOOR_LOCK => { id => '62', # V2
|
||||||
set => { doorLockOperation => 'ZWave_DoorLockOperationSet($hash, "%s")',
|
set => { doorLockOperation => 'ZWave_DoorLockOperationSet($hash, "%s")',
|
||||||
@ -353,7 +353,7 @@ my %zwave_class = (
|
|||||||
=> 'ZWave_mfsParse($hash,$1,$2,$3,1)',
|
=> 'ZWave_mfsParse($hash,$1,$2,$3,1)',
|
||||||
"0[8a]7205(....)(.{4})(.{4})(.*)"
|
"0[8a]7205(....)(.{4})(.{4})(.*)"
|
||||||
=> 'ZWave_mfsParse($hash,$1,$2,$3,2)' },
|
=> 'ZWave_mfsParse($hash,$1,$2,$3,2)' },
|
||||||
init => { ORDER=>49, CMD => '"get $NAME -silent model"' } },
|
init => { ORDER=>49, CMD => '"get $NAME model"' } },
|
||||||
POWERLEVEL => { id => '73',
|
POWERLEVEL => { id => '73',
|
||||||
set => { powerlevel => "01%02x%02x",
|
set => { powerlevel => "01%02x%02x",
|
||||||
powerlevelTest => "04%02x%02x%04x" },
|
powerlevelTest => "04%02x%02x%04x" },
|
||||||
@ -411,8 +411,7 @@ my %zwave_class = (
|
|||||||
"..840a(......)(......)(......)(......)" =>
|
"..840a(......)(......)(......)(......)" =>
|
||||||
'"wakeupIntervalCapabilitiesReport:min ".hex($1).'.
|
'"wakeupIntervalCapabilitiesReport:min ".hex($1).'.
|
||||||
'" max ".hex($2)." default ".hex($3)." step ".hex($4)'},
|
'" max ".hex($2)." default ".hex($3)." step ".hex($4)'},
|
||||||
init => { ORDER=>11,
|
init => { ORDER=>11, CMD => '"set $NAME wakeupInterval 86400 $CTRLID"' } },
|
||||||
CMD => '"set $NAME -silent wakeupInterval 86400 $CTRLID"' } },
|
|
||||||
ASSOCIATION => { id => '85',
|
ASSOCIATION => { id => '85',
|
||||||
set => { associationAdd => "01%02x%02x*",
|
set => { associationAdd => "01%02x%02x*",
|
||||||
associationDel => "04%02x%02x*" },
|
associationDel => "04%02x%02x*" },
|
||||||
@ -421,8 +420,7 @@ my %zwave_class = (
|
|||||||
associationAll => 'ZWave_associationAllGet($hash,"")' },
|
associationAll => 'ZWave_associationAllGet($hash,"")' },
|
||||||
parse => { "..8503(..)(..)..(.*)" => 'ZWave_assocGroup($homeId,$1,$2,$3)',
|
parse => { "..8503(..)(..)..(.*)" => 'ZWave_assocGroup($homeId,$1,$2,$3)',
|
||||||
"..8506(..)" => '"assocGroups:".hex($1)' },
|
"..8506(..)" => '"assocGroups:".hex($1)' },
|
||||||
init => { ORDER=>10,
|
init => { ORDER=>10, CMD=> '"set $NAME associationAdd 1 $CTRLID"' } },
|
||||||
CMD => '"set $NAME -silent associationAdd 1 $CTRLID"'} },
|
|
||||||
VERSION => { id => '86',
|
VERSION => { id => '86',
|
||||||
get => { version => "11",
|
get => { version => "11",
|
||||||
versionClass => 'ZWave_versionClassGet($hash, "%s")',
|
versionClass => 'ZWave_versionClassGet($hash, "%s")',
|
||||||
@ -437,7 +435,7 @@ my %zwave_class = (
|
|||||||
'%d.%02d App %d.%d HW %d FWCounter %d FW %d.%d",'.
|
'%d.%02d App %d.%d HW %d FWCounter %d FW %d.%d",'.
|
||||||
'unpack("C*",pack("H*","$1")))',
|
'unpack("C*",pack("H*","$1")))',
|
||||||
"048614(..)(..)" => '"versionClass_".hex($1).":".hex($2)' },
|
"048614(..)(..)" => '"versionClass_".hex($1).":".hex($2)' },
|
||||||
init => { ORDER=>1, CMD => '"get $NAME versionClassAll"' } },
|
init => { ORDER=> 1, CMD => '"get $NAME versionClassAll"' } },
|
||||||
INDICATOR => { id => '87',
|
INDICATOR => { id => '87',
|
||||||
set => { indicatorOff => "0100",
|
set => { indicatorOff => "0100",
|
||||||
indicatorOn => "01FF",
|
indicatorOn => "01FF",
|
||||||
@ -560,7 +558,7 @@ our %zwave_deviceSpecial;
|
|||||||
ZME_KFOB => {
|
ZME_KFOB => {
|
||||||
ZWAVEPLUS_INFO => {
|
ZWAVEPLUS_INFO => {
|
||||||
# Example only. ORDER must be >= 50
|
# Example only. ORDER must be >= 50
|
||||||
init => { ORDER=>50, CMD => '"get $NAME -silent zwavePlusInfo"' } } }
|
init => { ORDER=>50, CMD => '"get $NAME zwavePlusInfo"' } } }
|
||||||
);
|
);
|
||||||
|
|
||||||
my $zwave_cryptRijndael = 0;
|
my $zwave_cryptRijndael = 0;
|
||||||
@ -719,6 +717,7 @@ ZWave_execInits($$;$)
|
|||||||
next if($seen{$cl});
|
next if($seen{$cl});
|
||||||
$seen{$cl} = 1;
|
$seen{$cl} = 1;
|
||||||
my $ptr = ZWave_getHash($hash, $cl, "init");
|
my $ptr = ZWave_getHash($hash, $cl, "init");
|
||||||
|
$ptr->{CC} = $cl if($ptr);
|
||||||
push @initList, $ptr if($ptr && $ptr->{ORDER} >= $min);
|
push @initList, $ptr if($ptr && $ptr->{ORDER} >= $min);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -729,7 +728,8 @@ ZWave_execInits($$;$)
|
|||||||
|
|
||||||
my @cmd;
|
my @cmd;
|
||||||
foreach my $i (sort { $a->{ORDER}<=>$b->{ORDER} } @initList) {
|
foreach my $i (sort { $a->{ORDER}<=>$b->{ORDER} } @initList) {
|
||||||
push @cmd, eval $i->{CMD};
|
my $version = $hash->{".vclasses"}{$i->{CC}};
|
||||||
|
push @cmd, eval $i->{CMD} if(!defined($version) || $version > 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
push @cmd, ZWave_initFromModelfile($hash->{NAME}, $CTRLID, $cfg)
|
push @cmd, ZWave_initFromModelfile($hash->{NAME}, $CTRLID, $cfg)
|
||||||
@ -772,7 +772,6 @@ ZWave_Cmd($$@)
|
|||||||
my ($type, $hash, @a) = @_;
|
my ($type, $hash, @a) = @_;
|
||||||
return "no $type argument specified" if(int(@a) < 2);
|
return "no $type argument specified" if(int(@a) < 2);
|
||||||
my $name = shift(@a);
|
my $name = shift(@a);
|
||||||
my $silent = shift(@a) if($a[0] eq "-silent");
|
|
||||||
my $cmd = shift(@a);
|
my $cmd = shift(@a);
|
||||||
|
|
||||||
# Collect the commands from the distinct classes
|
# Collect the commands from the distinct classes
|
||||||
@ -815,8 +814,6 @@ ZWave_Cmd($$@)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(!$cmdList{$cmd}) {
|
if(!$cmdList{$cmd}) {
|
||||||
return "" if($silent);
|
|
||||||
|
|
||||||
my @list;
|
my @list;
|
||||||
my $mc = ReadingsVal($hash->{NAME}, "modelConfig", "");
|
my $mc = ReadingsVal($hash->{NAME}, "modelConfig", "");
|
||||||
foreach my $lcmd (sort keys %cmdList) {
|
foreach my $lcmd (sort keys %cmdList) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user