Hallo,
ich versuche ein Notify hinbekommen, wenn zwei Bedingungen zutreffen.
define TV_Licht1_an notify (Tablet:present&Handy:present) set A01 on
attr TV_Licht1_an room Wohnzimmer
Leider funktioniert dies nicht.
Auch der Versuch mit && brachte keinen Erfolg.
Wenn ich die Abfrage mit "oder" teste funktioniert es.
define TV_Licht2_an notify (Tablet:present|Handy:present) set A02 on
attr TV_Licht2_an room Wohnzimmer
Bei meines Suche habe ich auch nichts dazu gefunden.
Zitatich versuche ein Notify hinbekommen, wenn zwei Bedingungen zutreffen.
Das lässt sich mWn nicht per regexp sondern nur per Abfrage im Code lösen.
Dafür wäre vermutlich DOIF einfacher - siehe deutsche commandref (sorry ich verwende kein DOIF).
Was willst Du denn erreichen? Das Licht soll nur angehen, wenn sowohl Handy als auch Tablet "present" sind?
Pack die beiden Geräte einfach in eine structure und triggere das notify auf die structure. Wenn die structure "present" ist, sind beide Geräte anwesend.
(Ja, es gibt noch andere Lösungen, aber darunter sind auch Lösungen, die ich nicht mag)
@betateilchen:
Ja ich will das Licht nur Einschalten wenn beide Geräte anwesend sind.
Da Gesamtziel ist noch eine Dummy-Variable als dritte Bedingung mit abzufragen.
Der Dummy hat die Variable hell/dunkel. So dass da Licht nur dann angehen soll wenn beide Geräte anwesend und es dunkel ist.
Aber ich scheitere schon bei den beiden Geräten.
naja, mit der structure bildest Du schonmal die Geräte ab und im zugehörigen notify baust Du einfach die hell/dunkel Abfrage ein.
Schema:
define n_strucPresent notify structure_XY:present { fhem("set Licht on") if (ReadingsVal('dummy','state','hell') eq 'dunkel') }
Zitat von: Puschel74 am 16 Januar 2016, 18:53:10
(sorry ich verwende kein DOIF).
(http://up.picr.de/24285770ed.png)
8)
OT
Hab ich schon gesehen betateilchen ;D
Danke für die schnelle Hilfe.
Ich es jetzt mit DOIF realisiert.
Kannte dies noch nicht.
Der Code falls mal jemand ein ähnliches Problem hat:
define TV_Licht DOIF ([Handy] eq "present" and [Tablet] eq "present" and [Helligkeit] eq "dunkel") (set A01 on, set A02 on) DOELSE (set A01 off, set A02 off)
attr TV_Licht room Wohnzimmer
@betateilchen: Auch eine interessante Lösung, werde ich mir mal merken