Autor Thema: Reading 0 lässt sich nicht auswerten  (Gelesen 441 mal)

Offline lichtimc

  • Full Member
  • ***
  • Beiträge: 115
    • davitech.casa
Reading 0 lässt sich nicht auswerten
« am: 30 April 2022, 01:03:42 »
Hallo,

ich hab ein Gerät mit dem Reading "0" (ohne Anführungszeichen). Wenn ich versuche, das Reading anzusprechen erscheint immer das Internal "STATE" anstatt des Readings "0":
[device:0]

Jemand eine Idee, wie ich das DOIF dazu kriege, wirklich auf das Reading "0" zuzugreifen?

Danke, lg

Offline Gisbert

  • Hero Member
  • *****
  • Beiträge: 2624
  • Das Ziel ist das Ziel !
Antw:Reading 0 lässt sich nicht auswerten
« Antwort #1 am: 30 April 2022, 08:18:25 »
Hallo lichtime,

welches Device liefert denn ein Reading mit dem Namen 0? Und selbst wenn, warum machst du dir die Sache schwerer als nötig?
Versuche ein userReadings zu erstellen, dass du für deine weiteren Anwendungsfälle nutzt:
attr device userReadings null {ReadingsVal($name,'0','')
Viele​ Grüße​ Gisbert​

PS: ein list deines Devices oder zumindest die raw-Definition sind hilfreich, falls dir jemand kompetent Hilfe geben will.
Aktuelles FHEM | HP ThinClient T610 | Debian11 | UniFi-Controller, AP, USG-3 | Homematic, VCCU, HMUART | ESP8266, Eigenbau | Gas-, Wasser-, Stromzähler | Sonoff | 1-Wire-Temperatursensoren | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF |  Heizungssteuerung komplett in FHEM

Offline lichtimc

  • Full Member
  • ***
  • Beiträge: 115
    • davitech.casa
Antw:Reading 0 lässt sich nicht auswerten
« Antwort #2 am: 03 Mai 2022, 17:22:52 »
Hi Gisbert,

danke für die Antwort. Ja klar, dass die Möglichkeit mit dem Userreading existiert, war mir klar. Es gäbe auch noch mehrere weitere Workarounds.
Aber sollte es nicht als Fehler im DOIF-Modul behandelt werden, wenn das mit der lt. Doku korrekten Ansprechweise von Readings nicht funktioniert?

Das Gerät ist ein HTTPMOD, welches per JSON das Reading 0 zurückliefert. (Ja, ich weiß, dass ich auch hier manuell die Readings definieren könnte, aber das ist nicht das Thema.)

lg David

Offline Damian

  • Moderator
  • Hero Member
  • ***
  • Beiträge: 9655
Antw:Reading 0 lässt sich nicht auswerten
« Antwort #3 am: 03 Mai 2022, 17:34:06 »
DOIF kann nur auf Readings zugreifen, die mit einem Buchstaben anfangen.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Offline lichtimc

  • Full Member
  • ***
  • Beiträge: 115
    • davitech.casa
Antw:Reading 0 lässt sich nicht auswerten
« Antwort #4 am: 03 Mai 2022, 17:34:54 »
Nein, ab 1 funktionierts.

Offline Damian

  • Moderator
  • Hero Member
  • ***
  • Beiträge: 9655
Antw:Reading 0 lässt sich nicht auswerten
« Antwort #5 am: 03 Mai 2022, 18:30:44 »
Nein, ab 1 funktionierts.

OK. Dann geht mehr als ich wollte. Ich habe jetzt auch die 0 erlaubt (neue DOIF-Version eingecheckt). Allerdings scheitert das Testen bereits an:

setreading test 0 123
mit der Fehlermeldung:

Zitat
test: bad reading name '0' (allowed chars: A-Za-z/\d_\.-)

;)
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Offline lichtimc

  • Full Member
  • ***
  • Beiträge: 115
    • davitech.casa
Antw:Reading 0 lässt sich nicht auswerten
« Antwort #6 am: 03 Mai 2022, 18:34:48 »
Danke, ich probiers dann und sag Bescheid!  ;D

 

decade-submarginal