sub RelaisKontrolle { open( my $datei,'<', 'kontrolle.lh'); # Ausgabepfad evtl. anpassen, wenn es nicht auf Linux ist # Fehlerbehandlung sparen wir uns ausnahmsweise mal open( my $prueflog, '>', '/tmp/kontrolle.txt' ); while (my $soll = <$datei>){ if ($prueflog) { print $prueflog "GELESEN: >$soll<"; } chomp($soll); #entfernt den Zeilenumbruch if ($prueflog) { print $prueflog "OHNE UMBRUCH: >$soll<\n"; } my $ist = $soll."k"; #Ist - Item ist immer + "k" my $isoll = ReadingsVal ($soll,"state",""); #Inhalt IST - Reading my $iist = ReadingsVal ($ist,"state",""); #Inhalt SOLL - Reading # sinnfreier Vergleich, wie von haj schon angemerkt if (ReadingsVal ($isoll,"state","") ne ReadingsVal ($isoll,"state","")) { fhem("set pushmsg message Fehler $isoll $iist"); } else { fhem("set pushmsg message Alles ok"); } } }