"gelöst" notify mit 2 Schaltern und 2 Bedingungen

Begonnen von elektrikpe2, 17 Juni 2020, 22:28:36

Vorheriges Thema - Nächstes Thema

elektrikpe2

Hallo,

Ausgangslage: Habe einen Dielenaufgang, der bisher eine Wechselschaltung hatte. Da ein Wechselschalter ohne Null-Leiter verbaut war, habe ich zwei AWMT-003 (Funksender mit Batterie verbaut. Der sendet ein on wenn ich den Schalter nach oben und ein off wenn ich ihn nach unten drücke. Ich möchte jetzt das Dielenaufganglicht anmachen, wenn ich einen der Schalter betätige. Logisch erstmal einfach; denn drücke ich einen der Schalter und das Dielenaufganlicht ist aus, mache ich es an ansonsten aus. Mit eine DOIF habe ich das schon hinbekommen, muss da aber mit ganz vielen oder die Zustände der Schalter abfragen. Ich dachte mit eine notify ging es einfacher, bekomme es aber nicht hin, weil ich wohl einen Syntaxfehler habe. Im Log bekommen ich nämlich eine riesige Fehlermeldung
Unknown argument off,, choose one of off:noArg on:noArg .... Meine Steuerung: (Diele_Schalter_Auf|Diele_Schalter_Oben) {if (Value("LichtDieleAuf_Treppe") eq "off") {fhem "set LichtDieleAuf_Treppe on, set Diele_Switch_Oben on"} else {fhem "set LichtDieleAuf_Treppe off, set Diele_Switch_Oben off"}}. Bitte um Hilfe.

LG Peter

amenomade

#1
{fhem "set LichtDieleAuf_Treppe on, set Diele_Switch_Oben on"}
Trennzeichen Koma ist für DOIF.
In Perl oder in fhem Kommandos, ist es Semikolon.
Wenn in der KommandoZeile oder in RAW Def eingegebn, dann die Semikola verdoppeln

ZitatMit eine DOIF habe ich das schon hinbekommen, muss da aber mit ganz vielen oder die Zustände der Schalter abfragen.
Quatsch... Wenn Du im DOIF "Zustände der Schalter abfragen musst", dann ist es genau so in notify... Und umgekehrt
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Beta-User

Du willst doch eigentlich nur die "on" bzw- "off"-Events an beide weitergeben, oder?

Das müßte so klappen (evtl. ist ein Punkt zu viel, bitte ggf. mal den EventMonitor und eine regex-Seite wie regexr.com bemühen):
(Diele_Schalter_Auf|Diele_Schalter_Oben)..(on|off) set LichtDieleAuf_Treppe,Diele_Switch_Oben $EVENT

Merke: Das Komma ist für das Trennen bei devspec zulässig, siehe https://fhem.de/commandref_modular_DE.html#devspec bzw. #notify.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

elektrikpe2

Ja danke, hätte mir eigentlich nicht mehr passieren dürfen. Funktioniert. Es war das Semikolon. Hier der notify aus dem Editor
(Diele_Schalter_Auf|Diele_Schalter_Oben)
{
if (Value("LichtDieleAuf_Treppe") eq "off")
  {fhem("set LichtDieleAuf_Treppe on; set Diele_Switch_Oben on");;}
else {fhem("set LichtDieleAuf_Treppe off; set Diele_Switch_Oben off");;}
}