FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: dk3572 am 03 Dezember 2016, 09:12:33

Titel: Reading von DENON_AVR an Dummy übergeben
Beitrag von: dk3572 am 03 Dezember 2016, 09:12:33
Hallo,

ich bekomme es einfach nicht hin das Reading power (on/off) an einen Dummy Receiver zu übergeben.
Ich möchte das Denon Gerät am Gerät selbst einschalten aber auch per Dummy Befehl (on/off).
Der Dummy soll demnach mitbekommen ob das Gerät an oder aus ist.

defmod Receiver_Status notify AVReceiver set Receiver $EVENT

Wie muss das notify aussehen?

Danke schon mal....
Titel: Antw:Reading von DENON_AVR an Dummy übergeben
Beitrag von: viegener am 04 Dezember 2016, 15:23:58
Um das herauszufinden, müsstest Du den Event, auf den das notify reagieren soll genauer beschreiben. Denn jetzt reagiert es auf jede Änderung. Also den Eventviewer anzeigen, den Receiver ein/ausschalten, die entsprechenden Events nehmen und daraus einen regExp für den Notify machen

Also zum Beispiel:

defmod Receiver_Status notify AVReceiver:power.* set Receiver $EVENT

Wenn die entsprechenden Events mit "power" anfangen

Titel: Antw:Reading von DENON_AVR an Dummy übergeben
Beitrag von: dk3572 am 06 Dezember 2016, 16:30:40
Danke für die Hilfe. So hatte ich es dann auch bereits versucht.
Allerdings möchte ich nur den Status des Dummy´s ändern und
ihn nicht wirklich on od. off schalten.

So funktioniert es aber auch nicht.

AVReceiver:power.* setreading Receiver:power $EVENT
Titel: Antw:Reading von DENON_AVR an Dummy übergeben
Beitrag von: viegener am 08 Dezember 2016, 22:32:41
Zitat von: dk3572 am 06 Dezember 2016, 16:30:40
Allerdings möchte ich nur den Status des Dummy´s ändern und
ihn nicht wirklich on od. off schalten.
Wenn "Receiver" ein Dummy device ist, wieso schaltet das dann etwas an oder ab????


Zitat von: dk3572 am 06 Dezember 2016, 16:30:40
Danke für die Hilfe. So hatte ich es dann auch bereits versucht.

Vielleicht musst Du doch mal etwas mehr Information geben (z.B. list der devices), dann kann ich vielleicht helfen?

setreading Receiver:power $EVENT

Was soll das für ein Kommando sein / was soll es machen?
Titel: Antw:Reading von DENON_AVR an Dummy übergeben
Beitrag von: dk3572 am 09 Dezember 2016, 06:02:44
An und Ausschalten tut dann ein DOIF.
Den Dummy nutze ich, um ihn per Alexa an und auszuschalten.
Der Dummy soll aber auch mitbekommen, wenn ich das per DOIF geschaltete Gerät
händisch ausschalte. Also direkt am Gerät und nicht per Alexa.
Titel: Antw:Reading von DENON_AVR an Dummy übergeben
Beitrag von: viegener am 09 Dezember 2016, 10:17:40
Ein wenig ausführliche Erklärung wäre nützlich und es wäre jetzt schon hilfreich vielleicht auch die Devices mal zu listen, wie oben geschrieben.

Jetzt muss ich also weiter nachfragen:

- Welches DOIF ?
- Was heisst den dummy nutzt Du um ihn per alexa ... - Mit Doif, notify auf welche events, ??
- Was heisst der Dummy soll mitbekommen - heisst das, der Dummy soll den Status von Power des Receivers repräsentieren, wofür, das steht doch am Receiver selbst (AVReceiver ?)

Wie gesagt, erklär doch bitte nicht nur Bruchstücke, sondern alle beteiligten Elemente, denn genau das ist ja Dein Problem, dass einzelne Teile laufen aber nicht im Zusammenspiel


Titel: Antw:Reading von DENON_AVR an Dummy übergeben
Beitrag von: dk3572 am 10 Dezember 2016, 16:16:32
ok, dann noch mal von vorne  ;)

Ich habe einen Dummy "Receiver" den ich nutze, um ihn per Amazon Echo ein und auszuschalten. "Alexa, schalte Receiver ein"
Mit einem DOIF prüfe ich den Status des Dummys und schalte dann einen Denon Reveiver ein, stelle die Lautstärke ein  und wähle einen Favoriten Sender.
Wenn ich dann den Denon Receiver per Fernbedienung ausschalte, soll der Dummy dies mitbekommen. Tut er dies nicht, kann ich ihn nicht wieder per Alexa einschalten, da er ja immer noch den Status ein hat.

Dummy
defmod Receiver dummy
attr Receiver alias Receiver
attr Receiver devStateIcon on:rc_GREEN:off off:rc_YELLOW:on
attr Receiver genericDeviceType switch
attr Receiver room alexa
attr Receiver setList on off


DOIF
defmod di_Receiver_on_off DOIF ([Receiver] eq "on") (set AVReceiver zoneMain on) (set AVReceiver volume 15) (set AVReceiver favoriteList 4) DOELSEIF ([Receiver] eq "off") (set AVReceiver off)
attr di_Receiver_on_off room alexa
attr di_Receiver_on_off wait 0,5,5


Notify
defmod Receiver_Status notify AVReceiver:power.* setreading Receiver:power $EVENT
attr Receiver_Status room alexa
Titel: Antw:Reading von DENON_AVR an Dummy übergeben
Beitrag von: viegener am 10 Dezember 2016, 18:40:08
Na das war doch mal ein ordentlicher Batzen Information.

Also ist das eigentliche Problem, dass der Dummy nicht nochmal den Status on bekommt, wenn zwischendurch manuell ausgeschaltet wurde.

Ein Lösungsansatz wäre, dem Dummy einen weiteren Status "done" (oder ähnliches) zu verpassen, der in Deinem DOIF gesetzt wird. Also im DOIF- und im DOELSEIF-Zweig jeweils einen weiteren Befehl:
set Receiver done hinzufügen.

Der notify wird nicht benötigt.

Damit würde sich wieder ein Status on per Alexa setzen lassen und alles funktioniert sauber. Der Powerstatus des Receivers ist ja über das Reading an AVReceiver dokumentiert.

Es gibt dazu sicher viele andere Ansätze, dieser erscheint mir jetzt aber erstmal am einfachsten und direktesten.