From a437a472761888f2be4e6452ea1ad42dbaa6c737 Mon Sep 17 00:00:00 2001 From: Marko Oldenburg Date: Wed, 4 Nov 2015 21:22:28 +0100 Subject: [PATCH] =?UTF-8?q?Verbesserte=20Auswertung=20der=20empfangenden?= =?UTF-8?q?=20Daten=20=C3=BCber=20die=20AMADCommBridge=20nach=20=C3=84nder?= =?UTF-8?q?ung=20des=20HTTP=20Request=20Headers=20ab=20Autimagic=201.29?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 74_AMAD.pm | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/74_AMAD.pm b/74_AMAD.pm index 110ef10..c55e0ce 100644 --- a/74_AMAD.pm +++ b/74_AMAD.pm @@ -35,7 +35,7 @@ use Time::HiRes qw(gettimeofday); use HttpUtils; use TcpServerUtils; -my $version = "0.8.1"; +my $version = "0.8.2"; @@ -894,13 +894,23 @@ sub AMAD_CommBridge_Read($) { ### my @data = split( '\R\R', $buf ); + my $chash = undef; if ( $data[0] =~ /FHEMCMD: setreading\b/ ) { my $tv = $data[1]; @data = split( '\R', $data[0] ); - $data[2] =~ s/FHEMDEVICE: //; - my $chash = $defs{$data[2]}; + if( $data[2] =~ /FHEMDEVICE:/ ) { + + $data[2] =~ s/FHEMDEVICE: //; + my $chash = $defs{$data[2]}; + + } else { + $data[3] =~ s/FHEMDEVICE: //; + my $chash = $defs{$data[3]}; + + } + ### Begin Response Processing my @valuestring = split( '@@@@', $tv ); @@ -947,8 +957,16 @@ sub AMAD_CommBridge_Read($) { elsif ( $data[0] =~ /FHEMCMD: statusrequest\b/ ) { @data = split( '\R', $data[0] ); - $data[2] =~ s/FHEMDEVICE: //; - my $chash = $defs{$data[2]}; + if( $data[2] =~ /FHEMDEVICE:/ ) { + + $data[2] =~ s/FHEMDEVICE: //; + my $chash = $defs{$data[2]}; + + } else { + $data[3] =~ s/FHEMDEVICE: //; + my $chash = $defs{$data[3]}; + + } return AMAD_GetUpdateLocal( $chash ); }