Hallo
Wie der Titel schon sagt, suche ich eine Möglichkeit in perl um alle Readings-Namen eines Devices zu erhalten.
sowas wie my alleReadings = ReadAllReadings("Device","fehler");
Danke & Gruß
Daniel
Hallo Daniel,
so in etwa, für die FHEM Kommandozeile:
{my $d="fuehler1";;my $hash = $defs{$d};;my $readings = $hash->{READINGS};;my $message="{ ";;foreach my $a ( keys %{$readings} ) {my $val=ReadingsVal($d,$a,"error");;$message .= toJSON($a)." : ".toJSON($val)." ," };;chop($message);;$message.="}"}
Habe ich gemacht um alle readings eines Gerätes in einen json String zu bekommen :)
Gruß Otto
Zitat von: DoubleD am 15 Dezember 2019, 17:21:03
Hallo
Wie der Titel schon sagt, suche ich eine Möglichkeit in perl um alle Readings-Namen eines Devices zu erhalten.
sowas wie my alleReadings = ReadAllReadings("Device","fehler");
Danke & Gruß
Daniel
so bekommst du alle readings in ein array:
my $devhash = $defs{"Fritzbox"}; #name des devices
my $testreading = $devhash ->{READINGS};
my @areadings = ( keys %{$testreading} ); # enthält alle readings des devices
gruss Byte09
edit: da war otto schneller
Vielen Dank Euch beiden!
Genau das habe ich gesucht!