[gelöst] Minimum und Maximum über Readings unterschiedlicher Geräte ermitteln

Begonnen von Dr_Prune, 05 Januar 2022, 23:07:56

Vorheriges Thema - Nächstes Thema

Dr_Prune

Liebe Leute,

mit dem Modul statistics und einer Readingsgroup habe ich inzwischen eine schöne Übersicht für meine Raumtemperaturen, samt Min und Max für jeden Raum.

Im Tablet UI ist aber kein Platz für die ganze Liste, da will ich dynamisch den Raum mit der höchsten und den mit der niedrigsten Temperatur anzeigen lassen.

Jetzt Frage: Wie lässt sich die nötige Abfrage machen? Statistics kann Readings von verschiedenen Geräte abbilden, ermittelt nach meinem Verständnis aber Min und Max nur für die Werte jedes einzelnen Sensors. Das Modul Average ermittelt Durchschnitt, Minimum und Maximum über beliebige Geräte hinweg, zeichnet aber nicht auf, wem die Werte "gehören".

Habe den Verdacht, dass myUtils gefragt ist, aber da kenne ich mich bisher nicht gut aus. Recherche im Forum hat leider keinen Treffer gebracht, mit dem ich arbeiten kann.

Könnt ihr mir weiterhelfen?

Grüße
Alexander

Damian

Das kann man relativ einfach mit Aggregationsfunktionen lösen:

z. B.

defmod di_temp DOIF {\
set_Reading("max",[#max:":temperature":temperature]);;\
set_Reading("min",[#min:":temperature":temperature]);;\
}


siehe: https://fhem.de/commandref_DE.html#DOIF_aggregation

Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Dr_Prune

Danke, Damian

Das probier ich gleich mal aus. DOIF does it again. Da findet sich doch immer eine Lösung. Super Modul.

Grüße
Alexander