From 90b6a2ca474393dba68e1f0006eeaa95f7608956 Mon Sep 17 00:00:00 2001 From: icinger Date: Thu, 8 Sep 2016 02:42:25 +0000 Subject: [PATCH] 47_OBIS: Fixed 2 small bugs git-svn-id: https://svn.fhem.de/fhem/trunk@12130 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/47_OBIS.pm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/fhem/FHEM/47_OBIS.pm b/fhem/FHEM/47_OBIS.pm index 9f5d1520f..b67b0ea80 100644 --- a/fhem/FHEM/47_OBIS.pm +++ b/fhem/FHEM/47_OBIS.pm @@ -226,7 +226,7 @@ sub OBIS_Read($) my $buf = DevIo_SimpleRead($hash); my $b=$buf; $b =~ s/(.)/sprintf("%X",ord($1))/eg; - if ($hash->{helper}{SpeedChange} eq "") + if (defined $hash->{helper}{SpeedChange} && $hash->{helper}{SpeedChange} eq "") { OBIS_Parse($hash,$buf) if ($hash->{helper}{EoM}!=1); Log3 $hash,4, "parsing....\r\n"; @@ -488,7 +488,11 @@ sub OBIS_Parse($$) $data=$SML_specialities{"TIME"}[1]->($1) } my $chan=$code//$OBIS_channels{$channel} //$channel; - $chan=$hash->{helper}{Channels}{$channel} //$hash->{helper}{Channels}{$1} // $OBIS_channels{$1} //$channel; + if ($#+ > 0) { + $chan=$hash->{helper}{Channels}{$channel} // $hash->{helper}{Channels}{$1} // $OBIS_channels{$1} //$channel; + } else { + $chan=$hash->{helper}{Channels}{$channel} //$channel; + } if (AttrVal($name,"ignoreUnknown","off") eq "off" || $chan ne $channel) { readingsBulkUpdate($hash, $chan ,$data); }