mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-05-04 22:19:38 +00:00
10_ZWave.pm: fix showSetInState/setReadingOnAc for MULTI_CHANNEL (Forum #112955)
git-svn-id: https://svn.fhem.de/fhem/trunk@23160 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
a970deca02
commit
7047ac9664
@ -5100,16 +5100,22 @@ ZWave_Parse($$@)
|
||||
my $name="";
|
||||
if($hash) {
|
||||
ZWave_processSendStack($hash, "ack", $callbackid);
|
||||
readingsBeginUpdate($hash);
|
||||
readingsBulkUpdate($hash, "transmit", $lmsg, 0);
|
||||
readingsSingleUpdate($hash, "transmit", $lmsg, 0);
|
||||
|
||||
my $sos = ($iodev->{showSetInState} ||
|
||||
$iodev->{setReadingOnAck});
|
||||
|
||||
if($sos) {
|
||||
my $lCU = $hash->{lastChannelUsed};
|
||||
my $lname = $lCU ? $lCU : $hash->{NAME};
|
||||
my $lhash = $defs{$lname} ? $defs{$lname} : $hash;
|
||||
|
||||
readingsBeginUpdate($lhash);
|
||||
|
||||
if($iodev->{showSetInState}) {
|
||||
my $state = ReadingsVal($lname, "state", "");
|
||||
if($state =~ m/^set_(.*)$/) {
|
||||
readingsBulkUpdate($defs{$lname}, "state", $1, 1);
|
||||
readingsBulkUpdate($lhash, "state", $1, 1);
|
||||
$name = $lname;
|
||||
}
|
||||
}
|
||||
@ -5119,12 +5125,14 @@ ZWave_Parse($$@)
|
||||
if($ackCmd) {
|
||||
#Log 1, "ACK: $callbackid => $ackCmd";
|
||||
my ($type, $reading, $val) = split(" ", $ackCmd, 3);
|
||||
readingsBulkUpdate($defs{$lname}, $reading, $val, 1)
|
||||
readingsBulkUpdate($lhash, $reading, $val, 1)
|
||||
if($type eq "set" && defined($val));
|
||||
$name = $lname;
|
||||
}
|
||||
}
|
||||
|
||||
readingsEndUpdate($hash, 1);
|
||||
readingsEndUpdate($lhash, 1) if($sos);
|
||||
}
|
||||
}
|
||||
delete($hash->{lastChannelUsed});
|
||||
return $name;
|
||||
|
Loading…
x
Reference in New Issue
Block a user