From b7b07c5a6176bc857f726172fe5ec4f1e7177ab3 Mon Sep 17 00:00:00 2001 From: rudolfkoenig <> Date: Thu, 19 Mar 2015 09:08:42 +0000 Subject: [PATCH] 10_ZWave.pm: fixing alarm reports (Forum #35178) git-svn-id: https://svn.fhem.de/fhem/trunk@8243 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/10_ZWave.pm | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/fhem/FHEM/10_ZWave.pm b/fhem/FHEM/10_ZWave.pm index 4e97f4185..a3f565f74 100755 --- a/fhem/FHEM/10_ZWave.pm +++ b/fhem/FHEM/10_ZWave.pm @@ -1078,15 +1078,18 @@ ZWave_alarmParse($$$) { my ($t,$l,$r) = @_; - if(!$r || $r !~ m/......(..)/ || !$zwave_alarmType{$t}) { # Version 1 + if(!$r || $r !~ m/......(..)(.*)/ || !$zwave_alarmType{$t}) { # V1 or unknown return "alarm_type_$t:level $l"; } + my ($e, $v4, $s) = ($1, $2, "alarm:$zwave_alarmType{$t}: "); - my $e = $1; - return "alarm:$zwave_alarmType{$t}: ". - ($e eq "00" ? "Previous Events cleared" : - ($zwave_alarmEvent{"$t$e"} ? $zwave_alarmEvent{"$t$e"} : - "unknown Event $e")); + if($l eq "00") { + $s .= "Event cleared: "; + $e = $1 if($v4 && $v4 =~ m/..(..)../); + } + + return $s . ($zwave_alarmEvent{"$t$e"} ? + $zwave_alarmEvent{"$t$e"} : "unknown event $e"); } sub @@ -1821,7 +1824,9 @@ s2Hex($)