[erledigt] Lautstärke abhängig von Türe

Begonnen von accloginsell, 06 November 2016, 18:46:16

Vorheriges Thema - Nächstes Thema

accloginsell

Hallo meine Lieben,

habe nun alle Türen überwacht und würde das gerne nun kombinieren.

Ich habe deinen Denon Verstärker dieser kann per Set Volume XX die Lautstärke angepasst werden. Desweiteren hab ich die Türe_Wohnzimmer, geschlossen 0 und offen ne 1 im Reading hat.

Nun würde ich gerne sobald die Türe aufgeht die Lauststärke des Verstäkers auf 40 setzen und sobald die Türe wieder zu ist die alte Lautstärke einstellen..

EDIT: Readings vom denon ist : "volume: 57.5" als beispiel

Das ganze könnte ich ohne eure Hilfe wenn das mit der alten Lautstärke nicht wäre.

Wie kann ich diesen Zustand speichern und dann wieder aufrufen?

Bin euch sehr Dankbar!

Viele Grüße
Nico

marvin78

setreading und set sind deine Stichwörter für die commandref

Hollo

Zitat von: accloginsell am 06 November 2016, 18:46:16
...
Wie kann ich diesen Zustand speichern und dann wieder aufrufen?
...
Den Weg hast Du ja quasi schon, fehlt nur noch die Umsetzung.
Du könntest Dir z.B. einen Dummy "OldVolume" anlegen und immer wenn Dein notify "Tür auf" zuschlägt, speicherst Du die aktuelle Lautstärke da rein.
Wenn die Tür wieder zu ist, setzt Du Deine Lautstärke mit dem Wert von OldVolume.
FHEM 6.x auf RPi 3B Buster
Protokolle: Homematic, Z-Wave, MQTT, Modbus
Temp/Feuchte: JeeLink-Clone und LGW mit LaCrosse/IT
sonstiges: Linux-Server, Dreambox, "RSS-Tablet"

accloginsell

DANKE an euch!

Hier die fertige Lösung! es geht bestimmt einfacher! (Reaktionszeit liegt bei geschätzt 500ms)

define Ture_Auf dummy
attr Ture_Auf setList state:On,Off
attr Ture_Auf webCmd state


define Ture_Auf_on notify Ture_Auf.On {\
        my $temperaturehoch = ReadingsVal("DenonnWZ", "volume", "");;\
        fhem("setreading DenonnWZ ALT $temperaturehoch");;;;\
        fhem("set DenonnWZ volume 30");;;;\
        fhem("define Time1 at +00:00:01 set Ture_Auf Off")\
    }

define Ture_Zu dummy
attr Ture_Zu setList state:On,Off
attr Ture_Zu webCmd state


define Ture_Zu_on notify Ture_Zu.On {\
        my $temperaturehoch = ReadingsVal("DenonnWZ", "ALT", "");;\
        fhem("set DenonnWZ volume $temperaturehoch");;;;\
        fhem("define Time1 at +00:00:01 set Ture_Zu Off")\
    }

define Ture_Auf1 DOIF ([Tur_Wohnzimmer:Temperature] > 0)(set Ture_Auf On)
define Ture_Zu1 DOIF ([Tur_Wohnzimmer:Temperature] < 1)(set Ture_Zu On)



Danke!