Ich stehe gerade auf dem Schlauch und vielleicht kann mir jemand den richtigen Tritt geben:
Ich habe ein notify wie folgt definiert:
sb_analog:currentTitle:.* {
my $ausgabe = ReadingsVal("sb_analog","currentTitle",0);
fhem("set ez_aktuellerTitel $ausgabe")
}
Meine Erwartung: immer wenn sich das Reading "currentTitle" im Device "sb_analog" ändert wird das notify getriggert und der Wert in das Dummy "ez_aktuellerTitel" geschrieben. Aber das notify wird macht gar nichts.
Es wird nicht das richtige Event sein. Erstelle dein notify einfach mit dem Eventmonitor, dann kannst du nichts (nicht viel) falsch machen.
Ich nehme an, dass hier der Doppelpunkt sinnlos ist, aber da du (mal wieder) rein gar nichts über das Device schreibst, noch lists postest, kann man nur raten.
Ergänzend noch:
- warum arbeitest du nicht mit $EVENT? Dann müsstest du nicht auf die Perl-Ebene...
- Wenn du schon unbedingt ein DEVICE benötigst, dass den Readinginhalt in den state übernimmt (?), warum dann nicht ReadingsProxy nutzen?
Danke für den Hinweis mit dem Eventmonitor. Das Device, dessen Reading sich ändert ist folgendes:
define sb_analog SB_PLAYER b8:27:eb:f9:6e:50
attr sb_analog IODev sb_synology
attr sb_analog amplifier play
attr sb_analog coverartheight 180
attr sb_analog coverartwidth 180
attr sb_analog donotnotify true
attr sb_analog fadeinsecs 10
attr sb_analog room Multimedia,Eisenbahn
attr sb_analog ttslanguage de
attr sb_analog ttslink http://translate.google.com/translate_tts?ie=UTF-8&tl=<LANG>&q=<TEXT>&client=tw-ob
attr sb_analog volumeLimit 100
attr sb_analog volumeStep 10
Der Eventmonitor zeigt aber, dass trotz sich ändernden Reading kein Event erzeugt wird, somit kann das nicht funktionieren.
Dann werde ich mal ReadingsProxy versuchen, danke.
Ohne das näher geprüft zu haben, würde ich auf das donotnotify-Attribut als showstopper für dein notify tippen...
Zitat von: ujaudio am 13 November 2018, 08:48:53
Danke für den Hinweis mit dem Eventmonitor. Das Device, dessen Reading sich ändert ist folgendes:
Hilft nur wenig, da du uns nun kein einziges Reading gezeigt hast, sondern nur die Definition des Devices. Was sagt
list sb_analog?
Diese Unsitte mit den RAWs oder Teilen aus der Config geht mir auf den Zeiger. BITTE IMMER lists POSTEN!
SB_PLAYER hat per Default das Attribut do_not_notify (oder ähnlich) gesetzt. Ich nehme an, deshalb wird kein Event erzeugt.
Edit: Ich sehe gerade, Beta-User hat das schon geschrieben.