Hallo,
Ich habe mal wieder ein Problem mit dem ich alleine nicht klar komme.
Ich habe ein Dummy "d_EsszimmerRollladen" definiert:
Internals:
INTRIGGER 1
NAME d_EsszimmerRollladen
NR 258
NTFY_TRIGGERTIME 2016-05-14 18:11:00
STATE Auto: unten, Sonne: yes
TYPE dummy
CHANGED:
AutoStatus: oben
AutoStatus: oben
AutoStatus: oben
AutoStatus: unten
AutoStatus: oben
AutoStatus: oben
AutoStatus: unten
AutoStatus: oben
AutoStatus: unten
Readings:
2016-05-14 18:27:35 AutoStatus unten
2016-05-14 13:00:00 sunExposure yes
Attributes:
group Rollos
sortby Esszimmer.Rollladen1
stateFormat Auto: AutoStatus, Sonne: sunExposur
Wenn ich ein Reading ändere mit
setreading d_EsszimmerRollladen AutoStatus oben
wird der Wert entsprechend geändert:
Internals:
INTRIGGER 1
NAME d_EsszimmerRollladen
NR 258
NTFY_TRIGGERTIME 2016-05-14 18:11:00
STATE Auto: oben, Sonne: yes
TYPE dummy
CHANGED:
AutoStatus: oben
AutoStatus: oben
AutoStatus: oben
AutoStatus: unten
AutoStatus: oben
AutoStatus: oben
AutoStatus: unten
AutoStatus: oben
AutoStatus: unten
AutoStatus: oben
AutoStatus: oben
Readings:
2016-05-14 18:32:48 AutoStatus oben
2016-05-14 13:00:00 sunExposure yes
Attributes:
group Rollos
sortby Esszimmer.Rollladen1
stateFormat Auto: AutoStatus, Sonne: sunExposure
aber es wird kein Event ausglöst.
Nach einen "shutdown restart" funktioniert es wieder. D.h. Änderungen des Readings löst ein Event aus
Aber nur ein- oder wenige Male und dann "hängt" das Reading. Das übrige fhem läuft normal weiter.
Was kann da los? Wo kann ich anfangen zu suchen?
Rufst Du setreading aus einem notify heraus auf?
Nein, in diesen Fall habe ich es per Hand in die Kommandozeile eingetragen.
Aber eigentlich wir es in einer DOIF gesetzt. Dann funktioniert es aber auch in der Regel nur einmal.
Zitat von: dieter56 am 14 Mai 2016, 18:46:37
Nein, in diesen Fall habe ich es per Hand in die Kommandozeile eingetragen.
Aber eigentlich wir es in einer DOIF gesetzt. Dann funktioniert es aber auch in der Regel nur einmal.
DOIF arbeitet mit Zuständen. Ohne do always wird erst wieder nach Zustandswechsel geschaltet.
Gruß
Damian
Die Funktionsweise von DOIFs ist mir schon bekannt. Aber ein DOIF spielt hier noch gar keine Rolle. Ich habe ein Dummy und die Änderung eines Reading löst kein Event aus - im Event Monitor zeigt sich keine Reaktion und natürlich wird dann auch ein nachfolgendes DOIF oder Notify nicht ausgelöst.
Das seltsame ist, dass es nach einen Neustart (shutdown restart) eine zeitlang funktioniert und ab einem Zeitpunkt nicht mehr. Während das restliche FHEM völlig normal weiterläuft. Für mich großes Rätsel und eine noch größere Herausforderung.
Zitat von: dieter56 am 14 Mai 2016, 21:34:51
Die Funktionsweise von DOIFs ist mir schon bekannt. Aber ein DOIF spielt hier noch gar keine Rolle. Ich habe ein Dummy und die Änderung eines Reading löst kein Event aus - im Event Monitor zeigt sich keine Reaktion und natürlich wird dann auch ein nachfolgendes DOIF oder Notify nicht ausgelöst.
Das seltsame ist, dass es nach einen Neustart (shutdown restart) eine zeitlang funktioniert und ab einem Zeitpunkt nicht mehr. Während das restliche FHEM völlig normal weiterläuft. Für mich großes Rätsel und eine noch größere Herausforderung.
Hast du vielleicht event-on-change-reading beim Dummy gesetzt?
Nein, weder event-on-change-reading noch event-on-update-reading sind beim Dummy gesetzt?
Zitat von: dieter56 am 14 Mai 2016, 22:01:19
Nein, weder event-on-change-reading noch event-on-update-reading sind beim Dummy gesetzt?
Das Fragezeichen irritiert mich etwas.
Du solltest schon wissen was du an deinen Geräten gesetzt hast.
Probiere es mal mit "set" statt "setreading". Der Rest des Befehls kann so bleiben. Deine Readings im Dummy solltest du dazu fest per "readingList" eintragen.