Hallo zusammen,
folgendes Problem beim Widget Symbol des Tablet UI in Verbindung mit RegEx values
Ich habe einen Sensor "Dachfenster" dessen reading ist "alarm" und das kann sein
AccessControl: Window/Door is open, arg 0000
oder
AccessControl: Window/Door is closed, arg 0000
Dazu habe ich im Tablet UI erstellt:
<div data-type="symbol" data-device="Dachfenster" data-get="alarm" data-get-on="/open/" data-get-off="/closed/" class="cell narrow"></div>
Aber das nimmt er irgendwie nicht ... mein HomeBridge Mapping ist folgendes, und das funktioniert ohne Probleme
ContactSensorState=alarm,values=/closed/:CONTACT_DETECTED;/open/:CONTACT_NOT_DETECTED
iregdnwie stehe ich auf dem Schlauch, ist doch genau das selbe eigentlich oder ?
PS: Habe Testweise das Widget auch mal auf einen Schalter umgestellt, da funktioniert es ohne Probleme, aber da habe ich auch nur sate on:off
Danke
Hallo zusammen,
habe mittlerweile mit RegExp101 mal noch ein paar Sachen ausprobiert unter anderen kann das wohl so nicht direkt ausgelsen werden sondern muss data-get-on="\/open\/" wohl so aussehen damit er das richtig interpretieren kann, aber funktioniert auch nicht ... jemand eine Idee ?
Vielen Dank
habs jetzt per dummy device und Notify gelöst, nicht schön aber selten ;)
notify liest das eigentliche device aus und wandelt Open/close in on/off und ich lese im Tablet Ui den State des dummys aus
Hi nerothos,
Die Variante könnte für einen meiner Anwendungsfälle auch funktionieren.
Wärst Du so nett und postest die Befehle zum notify definieren und den Code, wie Du im Tablet UI den state ausliest?!
Danke,
misterziege.
Hi,
ja klar :)
Z ist das Original Device
Für X und Y nimmst du namen wie du willst
1. Dummy anlegen
define X dummy
2. Notify anlegen
define Y notify Z:alarm:.* { if (("$EVENT") =~ /closed/) {fhem ("set X off");;} else { fhem ("set X on");;} }
readings musst du halt ggf. anpassen damit es bei dir passt :)
vg
Hi nerothos,
Danke; jetzt trotzdem noch zum Verständnis:
Mit dem Notify sagst Du quasi, dass der dummy den state off bekommen soll, wenn Z alarm meldet, richtig? Ansonsten soll dummy state on sein, richtig?
Sieht dann dein Code in der Tablet UI auf deiner alten Basis: <div data-type="symbol" data-device="Dachfenster" data-get="alarm" data-get-on="/open/" data-get-off="/closed/" class="cell narrow"></div>
dementsprechend so aus:
<div data-type="symbol" data-device="dummy x" data-get="alarm" data-get-on="/on/" data-get-off="/off/" class="cell narrow"></div>
Grüße,
misterziege.
Hi,
das data-get muss dann auf state gesetzt werden und bei data-get-pn und off können die beiden // weg :)
Vg
Super. Danke! Das funktioniert nun.
Jetzt hänge ich noch in einem anderen Anliegen:
Ich würde gerne aus einem Kalendereintrag in einem Calview überprüfen lassen, ob für die aktuelle Woche in einer ..._summary "Frühschicht" eingetragen ist. Wenn ja, dann soll der state eines dummys auf "ja" gesetzt werden. Andernfalls auf "nein".
Wäre das auch analog denkbar? In etwa so:
define Y notify Z:state:.* { if (("NAME_Calview:t_001_summary") =~ /Frühschicht/) {fhem ("set X ja");;} else { fhem ("set X nein");;} }
Ich weiß, dass das - sofern es überhaupt funktioniert, nur überprüfen würde, ob der nächste eingetragene Eintrag "Frühschicht" wäre; aber ich bin halt absoluter Anfänger und freue mich über jegliche Tipps und Hilfen...