FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: JoeALLb am 05 Februar 2017, 21:41:40

Titel: Wunsch: DOIF-Variante analog zu userReadings
Beitrag von: JoeALLb am 05 Februar 2017, 21:41:40
Ich würde mir wünschen, ähnich wie userReadings ein Attribut "doifPRG" (beispielname!!)
bei jedem Device zu haben, indem ich Device-spezifischen Code einbinden kann.
Dies würde die Anzahl der Devices in meiner Installation deutlich verringern und die Übersichtlichkeit dazu steigern.
Meine Devices könnten somit "selbständig" auf gewisse Ereignisse reagieren.

Durch features wie $SELF, etc. denke ich, könnte DOIF ohne große Anpassungen auch solche Attribute
verarbeiten?!?

Beispiel (pseudocode):

attr Luftbefeuchter doifPRG
  ([00:00-12:00] && [temp:humidity] > 50)
(set $SELF disabled 1)


sG
Joe
Titel: Antw:Wunsch: DOIF-Variante analog zu userReadings
Beitrag von: Damian am 05 Februar 2017, 22:10:55
Zitat von: JoeALLb am 05 Februar 2017, 21:41:40
Ich würde mir wünschen, ähnich wie userReadings ein Attribut "doifPRG" (beispielname!!)
bei jedem Device zu haben, indem ich Device-spezifischen Code einbinden kann.
Dies würde die Anzahl der Devices in meiner Installation deutlich verringern und die Übersichtlichkeit dazu steigern.
Meine Devices könnten somit "selbständig" auf gewisse Ereignisse reagieren.

Durch features wie $SELF, etc. denke ich, könnte DOIF ohne große Anpassungen auch solche Attribute
verarbeiten?!?

Beispiel (pseudocode):

attr Luftbefeuchter doifPRG
  ([00:00-12:00] && [temp:humidity] > 50)
(set $SELF disabled 1)


sG
Joe

Die Idee ist an sich nicht schlecht, allerdings tobt sich das Modul innerhalb seiner Welt ziemlich aus, indem es diverse Readings und Timer setzt, sich Zustände merkt und vor allem den Status verändert - das dürfte mit den meisten Devices nicht gut funktionieren.
Titel: Antw:Wunsch: DOIF-Variante analog zu userReadings
Beitrag von: JoeALLb am 06 Februar 2017, 08:28:46
Zitat von: Damian am 05 Februar 2017, 22:10:55
Die Idee ist an sich nicht schlecht, allerdings tobt sich das Modul innerhalb seiner Welt ziemlich aus, indem es diverse Readings und Timer setzt, sich Zustände merkt und vor allem den Status verändert - das dürfte mit den meisten Devices nicht gut funktionieren.
Mit einem Prefix "doif_" bei Readings oder ähnlichem ließe sich dies sicherliche in den Griff bekommen, aber ich verstehe, dass es aufwand ist und sicherlich auch ein paar "nerven" kosten würde. Ich fände es halt extrem Benutzerfreundlich ;-), und wollte diese Idee somit nicht für mich behalten... Vielleicht gibts ja irgendwann mal etwas in diese Richtung?!?
Titel: Antw:Wunsch: DOIF-Variante analog zu userReadings
Beitrag von: Ellert am 06 Februar 2017, 09:43:05
Zitat von: JoeALLb am 05 Februar 2017, 21:41:40
Ich würde mir wünschen, ähnich wie userReadings ein Attribut "doifPRG" (beispielname!!)
bei jedem Device zu haben, indem ich Device-spezifischen Code einbinden kann.
Dies würde die Anzahl der Devices in meiner Installation deutlich verringern und die Übersichtlichkeit dazu steigern.
Meine Devices könnten somit "selbständig" auf gewisse Ereignisse reagieren.

Durch features wie $SELF, etc. denke ich, könnte DOIF ohne große Anpassungen auch solche Attribute
verarbeiten?!?

Beispiel (pseudocode):

attr Luftbefeuchter doifPRG
  ([00:00-12:00] && [temp:humidity] > 50)
(set $SELF disabled 1)


sG
Joe
Wäre es nicht einfacher bei den userReadings anzusetzen, die haben schon eine Trigger-Möglichkeit durch eigene Readings, die müsste erweitert werden, um auf Ereignisse anderer Geräte zu reagieren.
Titel: Antw:Wunsch: DOIF-Variante analog zu userReadings
Beitrag von: Damian am 06 Februar 2017, 16:15:11
Zitat von: Ellert am 06 Februar 2017, 09:43:05
Wäre es nicht einfacher bei den userReadings anzusetzen, die haben schon eine Trigger-Möglichkeit durch eigene Readings, die müsste erweitert werden, um auf Ereignisse anderer Geräte zu reagieren.

Ob da jemand allerdings die ganze Funktionalität eines DOIFs nachbauen möchte, wage ich zu bezweifeln.

Ich finde das gar nicht so tragisch ein separates Modul zu definieren. Gerade dann nicht, wenn ohnehin mehrere Devices darin vorkommen.

Titel: Antw:Wunsch: DOIF-Variante analog zu userReadings
Beitrag von: Ellert am 06 Februar 2017, 17:22:00
Zitat von: Damian am 06 Februar 2017, 16:15:11
Ob da jemand allerdings die ganze Funktionalität eines DOIFs nachbauen möchte, wage ich zu bezweifeln.

Ich finde das gar nicht so tragisch ein separates Modul zu definieren. Gerade dann nicht, wenn ohnehin mehrere Devices darin vorkommen.
Mit DOIF hätte ein erweiterter Trigger der userReadings erstmal nichts zu tun, es wäre mehr eine notify-Funktionalität, die ein userReadings benutzt, um eine Perl-Funktion aufzurufen. Ich halte es auch nicht für unbedingt notwendig. Nur, wenn ich so etwas haben wollte, würde ich dort mit einem Vorschlag oder Patch ansetzen.