[gelöst] [bug?] MQTT2_DEVICE legt keine readings mit Ziffern am Anfang an

Begonnen von betateilchen, 18 April 2022, 14:32:26

Vorheriges Thema - Nächstes Thema

betateilchen

Folgendes Attribut ist im MQTT2_DEVICE angelegt:


t1/t2/14_t3:.*  { { t3_14=>$EVTPART0 } }
t1/t2/14_t3:.*  { { 14_t3=>$EVTPART0 } }


Folgende message geht ein:

MQTT_GENERIC_BRIDGE:DEBUG:> [mqttGeneric] publish: t1/t2/14_t3 => 505.47

Das reading t3_14 wird korrekt angelegt,
das reading 14_t3 wird einfach ignoriert.

Ist das ein Bug oder habe ich irgendwo in der Doku überlesen, dass ein readingName nicht mit Ziffern beginnen darf?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rudolfkoenig

#1
Ich gehe davon aus, dass das Problem anderswo liegt:
fhem> { { 14_t3=>"BLA" } }
syntax error at (eval 30) line 1, near "14_t3"
syntax error at (eval 30) line 1, near "} }"

fhem> { { "14_t3"=>"BLA" } }
HASH(0x55867f7647d8)
fhem>


Nachtrag: das wird normalerweise auch abgefangen und gemeldet:
fhem> attr m2d readingList t1/t2/14_t3:.* { { 14_t3=>"BLA" } }
syntax error at (eval 29) line 1, near "14_t3"
syntax error at (eval 29) line 1, near "}}"

fhem> attr m2d readingList t1/t2/14_t3:.* { { "14_t3"=>"BLA" } }
fhem>

betateilchen

#2
?



Edit:
Ah ok.
Du meinst, wenn man die readingName in Anführungszeichen setzt, funktioniert es. Danke.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rudolfkoenig

Ist in diesem Fall nichts FHEM-spezifisches, sondern eine gewoehnliche Initialisierung eines Perl-Hashes.

betateilchen

ok, ich hatte mich an der commandref orientiert:

Zitat

Example:
  attr dev readingList\
    myDev/temp:.* temperature\
    myDev/hum:.* { { humidity=>$EVTPART0 } }


... und da waren halt auch keine Anführungszeichen  ;)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!