notify :.* :. punkte sterne... ich verstehs nicht - kanns mir bitte jmd erklären

Begonnen von Meister_Petz, 08 November 2015, 11:47:59

Vorheriges Thema - Nächstes Thema

Meister_Petz

Moin,

also eigentlich ganz simpel:
wenn Alarmanlage brightness31 ist 1 dann mach was

Mein Versuch:
define dummy1 notify Alarmanlage:.*brightness31:.1 set ...

Das funktioniert übrigens:
define dummy2 notify Alarmanlage:.*status11:.on set ...

zwei Fragen:
1. warum brauch ich .* oder . warum kann man nicht Alarmanlage:status11:on schreiben?
2. warum funktioniert der eine Befehl, aber der andere nicht?

Ganz vielen Dank

Petz

marvin78

Wie deine Events aussehen, siehst du in der Regel im Eventmonitor. Über Regex (. und *) kannst du hier was lernen:

www.danielfett.de/internet-und-opensource,artikel,regulaere-ausdruecke

Komplett lesen und du verstehst etwas mehr darüber. Danach kann man sich dann über konkrete Fragen unterhalten.

Hans Franz

Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

Meister_Petz

ok, vielleicht genauer:
warum benötige ich einen . bzw ein * mein reading ist brightness31. Ich sehe nicht woher die Notwendigkeit für Platzhalter und Wildcards kommt.

Gruß und Dank

marvin78

Ich auch nicht. Das muss auch nicht zwingend sein. Aber ich kenne das Event nicht. Wenn es bspw. Leerzeichen enthält, dann kann man diese im Pattern-Teil des notify mit . ersetzen um das Event zu matchen. Mehrere Leerzeichen (bzw. unbekannte Zeichen) mit .*. Das sollte dir aber aufgegangen sein, wenn du meine verlinkte Seite gelesen hast. Es hängt also vom Event ab, wie der Regex im Pattern aussehen muss. Deshalb mein Hinweis darauf, dass du heraus finden musst, wie dein Event genau aussieht.


Ach und mit Maskierung hat das hier eigentlich nicht direkt was zu tun.

Meister_Petz

so, hab, hab mich nun mal durchgebissen!

Danke nochmal für den Hinweis zum Event... das hat geholfen.

Danke