diff --git a/fhem/FHEM/98_EDIPLUG.pm b/fhem/FHEM/98_EDIPLUG.pm index abb1c606b..71f529270 100644 --- a/fhem/FHEM/98_EDIPLUG.pm +++ b/fhem/FHEM/98_EDIPLUG.pm @@ -35,15 +35,16 @@ package main; - use strict; use warnings; use Time::HiRes qw(gettimeofday); use HttpUtils; -use XML::Simple; use SetExtensions; +package EDIPLUG; +use XML::Simple; + sub EDIPLUG_Initialize($); sub EDIPLUG_Define($$); sub EDIPLUG_Undef($$); @@ -220,7 +221,8 @@ sub EDIPLUG_Read($$$) # EDIPLUGs geben ein nicht gueltigen Zeichensatz zurueck ( UTF8 instead utf-8 ) $buffer =~s/UTF8/utf-8/g; - my $xmlres = XMLin($buffer); + my $xml = XML::Simple->new(ForceArray => ['entry', 'link'], KeyAttr => []); + my $xmlres = $xml->EDIPLUG::XMLin($buffer); # Device.System.Power.State (Status der Steckdose) if (exists $xmlres->{CMD}->{'Device.System.Power.State'})