[gelöst] Platzhalter in raw definition

Begonnen von Brot, 01 Januar 2020, 16:04:22

Vorheriges Thema - Nächstes Thema

Brot

Hallo zusammen...

Ich habe hier ein notify, dass auf Readings eines dummys reagiert, die allesamt gleich anfangen nur sich im hinteren Teil unterscheiden:
   READINGS:
     2020-01-01 15:46:49   2049e8de5586d589_accuracy 48.24
     2020-01-01 15:46:49   2049e8de5586d589_gaslevel 100
     2020-01-01 15:46:49   2049e8de5586d589_max 346.9
     2020-01-01 15:46:49   2049e8de5586d589_min 180.3


Da ich den kryptischen Kladderadatsch vorweg im notify nicht brauche, funktioniert das auch wenn man mit den Asterisk arbeitet und (in diesem Fall) auf Änderung zweier Readings reagieren lässt:
defmod nfyBrotofen notify (dmyBrotofen.*dev_max|dmyBrotofen.*dev_min).*{}

Allerdings, finde ich, sieht das mit der Mehrfachnennung des dummys dmyBrotofen jetzt ja auch nicht so wirklich hübsch aus. Aber ich steh voll auf dem Schlauch... Ich hätte gerne etwas funktionierendes/kompakteres in Richtung:
defmod nfyBrotofen notify dmyBrotofen.(*dev_max|*dev_min).*{}
...das funktioniert aber schon mal nicht.

Jemand ne Idee?

MfG,
Früchtebrot
diverse Raspberry Pis, Orange Pi 3, Odroid N2, Alexa, jede Menge ESP8266er
Raspbian, FHEM, NextCloud, Pi-Hole, OctoPrint, MagicMirror²
Tasmota, Eqiva Bluetooth Thermo, Senseo-ESP8266-Mod, Conbee-II HUE, Z-Wave, BTLE_FlowerSens...

xenos1984

Ich vermute, letzteres sollte eher so aussehen, damit es auf das Event passt:

defmod nfyBrotofen notify dmyBrotofen.*(dev_max|dev_min).*{}

Brot

Zitat von: xenos1984 am 01 Januar 2020, 16:17:50
Ich vermute, letzteres sollte eher so aussehen, damit es auf das Event passt:

defmod nfyBrotofen notify dmyBrotofen.*(dev_max|dev_min).*{}

Ja, das scheint des Rätsel's Lösug gewesen zu sein. Manchmal sieht man aber auch vor lauter Bäumen den Wald nicht mehr... Danke!  ;D

El Nacho
diverse Raspberry Pis, Orange Pi 3, Odroid N2, Alexa, jede Menge ESP8266er
Raspbian, FHEM, NextCloud, Pi-Hole, OctoPrint, MagicMirror²
Tasmota, Eqiva Bluetooth Thermo, Senseo-ESP8266-Mod, Conbee-II HUE, Z-Wave, BTLE_FlowerSens...

Otto123

#3
Hi,

die "Platzhalter" heissen reguläre Ausdrücke.
Man kann sie hiermit testen: https://regex101.com/
. steht für irgendein Zeichen
* steht für eine beliebige Anzahl der Zeichen davor ;)

Und ich denke das {} soll der Platzhalter für den Ausführungsteil sein, da muss dann noch ein Leerzeichen dazwischen .* {} :)

Gesundes neues Jahr 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