[Gelöst:] Mit notify und if mehrere Befehle ausführen

Begonnen von dcco, 05 August 2017, 17:15:04

Vorheriges Thema - Nächstes Thema

dcco

Hallo, ich bin gerade etwas am Verzweifeln mit FHEM. Ich versuche mittels Dash-Button meine Stereoanlage an und aus zu schalten. Das funktioniert auch so weit mit folgendem Notify:

define n_DashButtonSchwarzkopf notify DashButtonSchwarzkopf:XX-XX-XX-XX-XX-XX..short  IF (ReadingsVal("avr", "power", "on") eq 'on') (set avr power off) ELSE (set avr power on)

Jetzt möchte ich aber, dass beim Einschalten auch der entsprechende Input gewählt wird und die Lautstärke angepasst wird. Egal wie ich es eingebe es funktioniert nicht.
... ELSE (set avr power on;; set avr input FM;; set avr volume 17) -> geht nicht
... ELSE (set avr power on; set avr input FM; set avr volume 17) -> geht nicht
habe noch viele andere Variationen unter anderem mit fhem ("set ...") versucht -> geht auch nicht. Wie ist die korrekte Syntax für mehrere Befehle in diesem Fall?
Ach ja, wenn ich set avr power on; set avr input FM; set avr volume 17 direkt in fhem eingebe funktioniert es wunderbar.

Danke für die Hilfe!

Beta-User

Hallo dcco,

an sich müßte das schon in etwa in der Art gehen. Allerdings werden die Befehle sehr schnell versendet, was dazu führt, dass alles, was an den AVR geht im digitalen nirvana landet, solange er noch nicht richtig wach ist.

Bau doch testweise nach dem Anschalten (aber vor der Kanalwahl) mal ein "sleep 15;;" ein ;) , vielleicht klappt es dann wie erwartet.

Gruß, Beta-User
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

dcco

Die Idee hatte ich auch schon, leider funktioniert dann auch nichts mehr.
Habe gerade mal versucht was ganz anderes zusätzlich zu schalten:
... ELSE  (set avr power on;; set Licht_Fernsehschrank on)
... ELSE  (set avr power on; set Licht_Fernsehschrank on)
... ELSE  set avr power on; set Licht_Fernsehschrank on

Fehlermeldung:
n_DashButtonSchwarzkopf return value: IF: no right bracket: (set avr power on
oder
n_DashButtonSchwarzkopf return value: IF: no left bracket:  set avr power on

Beta-User

grade mal in die commandref zu IF gesehen: Dort sind mehrere Befehle in der Klammer durch ein einfaches "," zu trennen...

(Sorry, ich benutze in letzter Zeit nur noch perl, da wäre das mit den zwei ";" wohl richtig gewesen ;) ).
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

dcco

Genial! Du bist mein Held! Jetzt funktioniert alles so wie gewollt! Vielen Dank!  ;D
War dann eigentlich doch so einfach...

Beta-User

You are welcome... Ein Blick in die commandref zu dem Modul, das man einsetzen möchte, kann eigentlich nie schaden ;) .

Editierst Du bitte noch den Titel im Eingangspost und machst ein "[Gelöst:]" davor?
Siehe hier.

Viel Erfolg weiterhin.
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