Hauptmenü

Befehl mehrfach senden

Begonnen von Tueftler1983, 12 April 2016, 13:20:22

Vorheriges Thema - Nächstes Thema

Tueftler1983

Hallo zusammen ich kann über ein dummy das eine Notify triggert meine RGB Beleuchtung schalten, die widerum an einem entfernten Rpi über infrarot angesprochen wird.

Der dummy dazu:
define ledstrip dummy
attr ledstrip setList ON OFF BRIGHTER DIMMER CYCLE_RGB CYCLE_ALL PULSE_WHITE SMOOTH WHITE RED GREEN BLUE ORANGE YELLOW_DARK YELLOW_LIME YELLOW_GREENISH TURQUOISE TURQUOISE_LIGHT BLUE_LIGHT BLUE_PASTEL BLUE_PURPLE PURPLE_DARK PURPLE_PINKISH PINK


Das Notify:
define n_RGBLED notify ledstrip { fhem "set Remote cmd set rgbled $EVENT" }

Das funktioniert super

Jetzt würde ich gerne Abends die RBG Beleuchtung Dimmen allerdings muss der befehl 10 mal geschickt werden um die RGB Beleuchtung auf niedrigste stufe zu stellen. Und morgends soll die RGB Beleuchtung wieder Heller geschaltet werden.
zusätzlich soll die RGB Beleuchtung Aus geschaltet werden wenn weder das Smartphone von mir noch das meiner Frau anwesend ist.

Das ein und ausschalten bei abwesenheit bzw anwesenheit funktioniert mit diesem DOIF:
define di_RGBbeleuchtung DOIF ( [HolgerS5] eq "present" or [NadjaS4] eq "present") (set ledstrip ON ) DOELSE (set ledstrip OFF )

Jetzt fehlt noch ein DOIF
das Abends um 20:15 den befehl Dimmer 10 mal sendet und morgens um 7:30 den Befehl BRIGHTER 10 mal sendet

zusätzliche schwierigkeit ist ja wenn zur schaltenden zeit niemand zuhause ist also muss ja der Befehl DIMMER in der zeit von 20:15-7:29 ausgeführt werden wenn jemand zuhause ist
und der befehl BRIGHTER in der zeit von 7:30-20:14 wenn jemand zuhause ist

Also ansatzweise so:
define di_RGB_Helligkeit DOIF ([07:30-20:14] and ([HolgerS5] eq "present" or [NadjaS4] eq "present")) (set ledstrip BRIGHTER repeat 10 ) DOELSE (set ledstrip DIMMER repeat 10)

kann mir da jemand helfen??

Dazu das DOIF indem statt nur einmal 10 mal der befehl gesendet werden soll.

Damian

Zitat von: Tueftler1983 am 12 April 2016, 13:20:22
Hallo zusammen ich kann über ein dummy das eine Notify triggert meine RGB Beleuchtung schalten, die widerum an einem entfernten Rpi über infrarot angesprochen wird.

Der dummy dazu:
define ledstrip dummy
attr ledstrip setList ON OFF BRIGHTER DIMMER CYCLE_RGB CYCLE_ALL PULSE_WHITE SMOOTH WHITE RED GREEN BLUE ORANGE YELLOW_DARK YELLOW_LIME YELLOW_GREENISH TURQUOISE TURQUOISE_LIGHT BLUE_LIGHT BLUE_PASTEL BLUE_PURPLE PURPLE_DARK PURPLE_PINKISH PINK


Das Notify:
define n_RGBLED notify ledstrip { fhem "set Remote cmd set rgbled $EVENT" }

Das funktioniert super

Jetzt würde ich gerne Abends die RBG Beleuchtung Dimmen allerdings muss der befehl 10 mal geschickt werden um die RGB Beleuchtung auf niedrigste stufe zu stellen. Und morgends soll die RGB Beleuchtung wieder Heller geschaltet werden.
zusätzlich soll die RGB Beleuchtung Aus geschaltet werden wenn weder das Smartphone von mir noch das meiner Frau anwesend ist.

Das ein und ausschalten bei abwesenheit bzw anwesenheit funktioniert mit diesem DOIF:
define di_RGBbeleuchtung DOIF ( [HolgerS5] eq "present" or [NadjaS4] eq "present") (set ledstrip ON ) DOELSE (set ledstrip OFF )

Jetzt fehlt noch ein DOIF
das Abends um 20:15 den befehl Dimmer 10 mal sendet und morgens um 7:30 den Befehl BRIGHTER 10 mal sendet

zusätzliche schwierigkeit ist ja wenn zur schaltenden zeit niemand zuhause ist also muss ja der Befehl DIMMER in der zeit von 20:15-7:29 ausgeführt werden wenn jemand zuhause ist
und der befehl BRIGHTER in der zeit von 7:30-20:14 wenn jemand zuhause ist

Also ansatzweise so:
define di_RGB_Helligkeit DOIF ([07:30-20:14] and ([HolgerS5] eq "present" or [NadjaS4] eq "present")) (set ledstrip BRIGHTER repeat 10 ) DOELSE (set ledstrip DIMMER repeat 10)

kann mir da jemand helfen??

Dazu das DOIF indem statt nur einmal 10 mal der befehl gesendet werden soll.

DOIF beherrscht inzwischen Wiederholungen mit Hilfe des Attributes repeatcmd:

http://fhem.de/commandref_DE.html#DOIF_repeatcmd

Bei dir dann einfach:

attr di_RGB_Helligkeit repeatcmd 1:1
attr di_RGB_Helligkeit repeatsame 10:10


Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF