[Gelöst] Liste der Namen der Readings eines Devices

Begonnen von AGi2019, 17 Januar 2021, 17:21:27

Vorheriges Thema - Nächstes Thema

AGi2019

Hallo zusammen,

ich suche nach einer anderen Möglichkeit, mir eine Liste der Reading-Namen eines devices ausgeben zu lassen.
Derzeit realisiere ich das mit einer Funktion in der 99_myUtils, wo ich ein list zu dem device ausführe und die Reading Namen dann mittels RegEx ermittel.
Es stört mich jedoch, dass das "list" komplett im Logfile steht.

Daher suche ich vergeblich nach einer anderen Methode an die reading Namen eines Devices zu kommen.
Alternativ reicht es auch, dass ein list nicht im Logfile geschrieben wird.

Das List rufe ich auf mit
my $FList = fhem("list Fußball_Spielplan");
Fußball_Spielplan enthält aus einem Kalender viele Readings mit unterschiedlichen Namen. Um auf dessen Werte zuzugreifen, benötige ich den Reading Namen.

Vielleicht habt ihr eine gute Idee.

Danke und Gruß,
AGi


----------- Gelöst -----------------------------
Vielen Dank an Otto, Köln und Chris
Das war das, was mir gefehlt hat. Mein Problem lässt sich mit allen 3 Vorschlägen lösen.
-------------------------------------------------

Otto123

Hi,

sowas? Schleife über alle Readings?
{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.="}"}


Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

KölnSolar

Das sollte (ungetestt !) klappen  foreach my $readingname (keys %{$hash->{READINGS}) { 
# loop über readings mit $readingname zur Weiterverarbeitung
  }
Have fun Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Christoph Morrison

Matthias Kleine hat sowas mal in HA Custom Utils als Modul (in der Subroutine haGetAllDeviceReadings) veröffentlicht.

AGi2019

Vielen Dank für eure super schnellen Antworten.
Ich werde die Varianten ausprobieren und berichten.

CU,
AGi