[erledigt] Frage zur Syntax im Anweisungsteil eines Notify

Begonnen von Hermann20, 27 April 2019, 14:48:59

Vorheriges Thema - Nächstes Thema

Hermann20

Hallo,
ich scheitere leider mal wieder an trivialen Dingen.
Im Anweisungsteil eines Notify möchte ich ein Reading eines Dummy verwenden.

Anweisungsteil des zyklisch laufenden Notify (mit konstantem Parameter, funktioniert in dieser Form):
get HZG Info -4
HZG ist ein ECMDDevice, Info ist eine Command welches den Parameter (-4) überträgt und Messwerte empfängt.
Soweit, so gut, das funktioniert.

Nun möchte ich aber nicht eine Konstante, sondern ein Reading eines Dummy nutzen.

Anweisungsteil (HZG_Adj ist ein Dummy, Value ein Reading mit dem Wert -4):
get HZG Info [HZG_Adj:Value]
Das gibt zwar keinen Syntaxfehler, funktioniert aber auch nicht.

Für eine Hinweis wäre sehr dankbar. (Ich habe bereits Stunden gelesen, ausprobiert und bin mit dem Latein am Ende.)

Gruß Hermann
NUC12i3, Proxmox VE, Ubuntu 24.04, FHEM (aktuell): 2 HMUART, ca. 50 HM Devices, ca. 10 Devices über MQTT, 4 DECT200 über FBAHAHTTP, Heizungssteuerung über RS232, HMCCU, Telegram
CCU3, RaspberryMatic (aktuell): ca. 10 HmIP Devices

Otto123

Hallo Hermann,

das ist kein DOIF oder set magic, das ist ein notify. ;)
Dort musst Du es so machen:
ReadingsVal ("HZG_Adj","Value",0)

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

Hermann20

Hallo Otto,

vielen Dank für die Antwort.
Leider komme ich immer noch nicht weiter.
Ich bin einen Schritt zurück gegangen und versuche es zunächst über die FHEM Eingabezeile. (Das Notify ist vorläufig außen vor.)

get HZG Info -4
Liefert "OK" und führt zum erwünschten Ergebnis.

get HZG Info ReadingsVal ("HZG_Adj","Value",0)
Liefert "Wrong number of parameters." und funktioniert nicht.
Ich habe es mit verschiedensten Klammerungen und anderen Dingen probiert. Mir gehen die Ideen aus.

Hat vielleicht jemand noch einen Tipp für mich.

Gruß Hermann
NUC12i3, Proxmox VE, Ubuntu 24.04, FHEM (aktuell): 2 HMUART, ca. 50 HM Devices, ca. 10 Devices über MQTT, 4 DECT200 über FBAHAHTTP, Heizungssteuerung über RS232, HMCCU, Telegram
CCU3, RaspberryMatic (aktuell): ca. 10 HmIP Devices

Otto123

#3
Hi,

ReadingsVal ist eine Perlfunktion, Perlfunktionen musst Du in der Kommandozeile in {} setzen.

Also so wird es in der Kommandozeile {ReadingsVal("HZG_Adj","Value",0)}

Mit get verwendest Du dann Perlcode in einem FHEM Kommando, ich hoffe da war ich nicht zu voreilig.
Denn dort musst Du Perlcode nochmal in Klammern setzen - aber eigentlich gilt das für set Befehle (set magic)

Versuch mal get HZG Info {(ReadingsVal("HZG_Adj","Value",0))}

Notfalls musst Du komplett nach Perl gehen:
{fhem("get HZG Info ".ReadingsVal("HZG_Adj","Value",0))}

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

Hermann20

Hallo Otto,

vielen vielen Dank, die letzte Variante funktioniert.
Ohne Deine Hilfe hätte ich das nicht geschafft.

Gruß Hermann
NUC12i3, Proxmox VE, Ubuntu 24.04, FHEM (aktuell): 2 HMUART, ca. 50 HM Devices, ca. 10 Devices über MQTT, 4 DECT200 über FBAHAHTTP, Heizungssteuerung über RS232, HMCCU, Telegram
CCU3, RaspberryMatic (aktuell): ca. 10 HmIP Devices