SOLVED - Verbrauch von heute (seit Mitternacht) anzeigen

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
Benutzeravatar
udo1toni
Beiträge: 15249
Registriert: 11. Apr 2018 18:05
Answers: 243
Wohnort: Darmstadt

Re: SOLVED - Verbrauch von heute (seit Mitternacht) anzeigen

Beitrag von udo1toni »

zinnik hat geschrieben: 4. Nov 2024 21:45 dann müsst ich meine Persist für rrd4j erstmal so konfigurieren, dass standardmäßig nicht alle Items persistiert wird?
Nun ja, ich hab ja geschrieben, dass rrd4j überhaupt nicht als Persistence für diese Anwendung taugt. Du kannst also ohne Probleme diese Konfiguration so lassen, nur musst Du eine andere Persistence zusätzlich einrichten, in der Du notfalls nur solarPanel_Ertrag_Speicher einmal täglich sicherst :)

Wenn Du lediglich rrd4j als Persistence nutzt, ist der Aufwand, eine andere Persistence zusätzlich einzurichten natürlich eher... Quatsch.
Ein anderer Ansatz wäre dann, einen Zählen nachzurüsten, der kann auch mit rrd4j persistiert werden. Allerdings wirst Du damit keinesfalls die bisher gesammelten Daten auswerten können. Deshalb musst Du mit einem 0-Wert starten (bzw. einem Startwert), dieser muss schon "seit gestern" als Startwert in der Persistence vorliegen.
Ein neues Number Item Solarpanel_Counter, welches der "Stromzähler" für die PV wird.
Eine leicht veränderte Rule:

Code: Alles auswählen

rule "Solarpanel Ertrag Tag und Energiezähler"
when
    Item Solarpanel_PowerConsumption received update
then
    val start_of_day = now.with(LocalTime.MIDNIGHT)

    val Leistung = Solarpanel_PowerConsumption.averageSince(start_of_day) as Number
    val Sekunde = LocalDateTime.now().toLocalTime().toSecondOfDay()
    val Ertrag = Leistung * Sekunde / 3600000

    val nCount = 0 // Startwert, für den 1. Tag, am 2. Tag auskommentieren
//    val nCount = Solarpanel_Counter.persistedState(start_of_day) as Number // am 2. Tag Kommentarzeichen entfernen

    Solarpanel_Counter.postUpdate(nCount + Ertrag)   // Zählerstand um 0 Uhr + bisheriger Tagesertrag

    logInfo("Solarpanel","Leistung: {} Sekunde: {} Tagesertrag: {} kWh",Leistung,Sekunde,Ertrag)
    Solarpanel_Ertrag_Tag.postUpdate(Ertrag)
end
Die Zeile mit der Definition für nCount muss am ersten Tag den fixen Startwert angeben (als Initialisierung).
In der Nacht (nach 24 Uhr) musst Du dann die auskommentierte Zeile aktivieren und dafür die Zeile davor auskommentieren. Ab dem 2. Tag liest die Rule dann also den Zählerstand um 0 Uhr ein und addiert den bisherigen Ertrag.

Nun hast Du einen Zähler, der analog dem Zähler für die Heizung funktioniert - die entsprechenden Werte kannst Du dann genauso erfragen. Allerdings darfst Du Werte erst erfragen, wenn der entsprechende Wert auch zur Verfügung steht, also der Startzeitpunkt bereits im Item Solarpanel_Counter persistiert wurde. Wenn Du die Rule ab Dienstag laufen lässt, musst Du also Mittwoch nach 0 Uhr die Zeilen umkommentieren. Ab Donnerstag kannst Du dann den Tagesertrag des aktuellen und des Vortages abrufen. Ab nächsten Montag kannst Du den Wochenwert seit Wochenbeginn abfragen, ab übernächstem Montag den Wochenertrag der Vorwoche und so weiter.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

zinnik
Beiträge: 190
Registriert: 7. Sep 2021 11:28
Answers: 0

Re: SOLVED - Verbrauch von heute (seit Mitternacht) anzeigen

Beitrag von zinnik »

Hallo Udo,

also es ist so:

Ich habe die rrd4j umd die Daten von den Items in openhab zu sehen, zb: unter dem Punkt Analyze bei jedem Item.

zusätzlich habe ich noch die influxddb 1..8.2 für grafana
in beiden ist diese config hinterlegt, in der rrd4j ist zusätzlich noch restore on Startup hinterlegt

Code: Alles auswählen

Strategies {
    everyMinute : "0 * * * * ?"
    everyHour   : "0 0 * * * ?"
    everyDay    : "0 0 0 * * ?"
}

Items {
    * : strategy = everyChange, everyHour
}

Ich würde gerne so vorgehen wie du es hier beschrieben hattest
Z.B.: Du schreibst "eine Sekunde" vor Mitternacht den Tagesertrag in ein Item, welches Du nicht automatisch persistierst. z.B. so:

Code: Alles auswählen

rule "Tagesertrag persistieren"
when
    Time cron "58 59 23 * * ?" // täglich um 23:59:58 Uhr
then
    if(Solarpanel_Ertrag_Tag.state instanceof Number) {
        solarPanel_Ertrag_Speicher.postUpdate((Solarpanel_Ertrag_Tag.state as Number))
        Thread.sleep(250)
        solarPanel_Ertrag_Speicher.persist
    ]
end
So ist sichergestellt, dass pro Tag nur ein Messwert in der Persistence landet. Alternativ könnte man auch das Speichern über die Persistence automatisch erledigen lassen, wichtig ist aber, dass zu der Zeit der korrekte Wert anliegt und nur ein Wert pro Tag geschrieben wird.
Nun kannst Du - bezogen auf dieses Item - mittels sumSince() oder sumBetween() die Summen der Tageswerte für beliebige Zeiträume erfragen.
Das funktioniert natürlich nicht für alte Werte :) aber da die aktuelle Version von openHAB auch das persistieren mit beliebigem Zeitstempel unterstützt, könnte man die benötigten Werte aus dem persistierten Item Solarpanel_Ertrag_Tag einmalig auslesen lassen, per persistedState(Zeitstempel vor Mitternacht).

Wie wäre denn hier die weitere Vorgehensweise?

1. Influx so konfigurieren , dass solarPanel_Ertrag_Speicher nicht persistiert wird also in Influx alle Items auflisten die ich persistieren will?
2. Dann item solarPanel_Ertrag_Speicher erstellen
3. die die Rule Tagesertrag persistieren erstellen
4. und wie würde es dann weitergehen?


Lg zinnik
openhab 4.2.0 Docker (Qnap)
influxDB 1.8.2 Docker (Qnap)
Grafana v10.2.2 Docker (Qnap)
Deconz 2.19.03 Docker (Qnap)
Homematic (Raspberrymatic Pi 3B+)
Grafana, Phoscon, Shelly, Gardena, Tuya
Camera IP Binding mit ffmpeg
Solaredge PV Anlage mit 12kW Speicher (solaredgeBinding)
u.v.m.

Lg zinnik

Benutzeravatar
udo1toni
Beiträge: 15249
Registriert: 11. Apr 2018 18:05
Answers: 243
Wohnort: Darmstadt

Re: SOLVED - Verbrauch von heute (seit Mitternacht) anzeigen

Beitrag von udo1toni »

Ok, InfluxDB sollte funktionieren.

Aber noch mal zurück zur Persistence insgesamt und auf restoreOnStartup im Besonderen (auch wenn's nervt...)

Für rrd4j ist zwingend everyMinute (sonst funktioniert rrd4j nicht korrekt), wahlweise zusätzlich everyChange oder everyUpdate (oder deshalb, weil everyUpdate automatisch everyChange beinhaltet, everyMinute,everyChane,everyUpdate wäre also doppelt gemoppelt).
restoreOnStartup sollte grundsätzlich nur bei solchen Items gesetzt sein, bei denen der Status nicht ohnehin zeitnah nach dem Start durch das jeweilige Addon zur Verfügung gestellt wird.

Man kann mit * einfach alle Items persistieren, und solange man nichts einschränken muss/will, ist das auch vollkommen in Ordnung. Spätestens mit restoreOnStartup ist das aber meist nicht gut.
Stattdessen sollte man sich dafür ein Group Item anlegen und die Member dieses Group Items persistieren, also z.B. gPRestore als Group Item (ohne irgendwas weiteres...) und dann in der rrd4j.persist:

Code: Alles auswählen

Items {
             * : strategy = everyChange, everyMinute
    gPRestore* : strategy = restoreOnStartup
}
Nun werden alle Items bei jeder Wertänderung und zusätzlich jede Minute persistiert. Alle Items, die Member der Gruppe gPRestore sind, werden beim Start mit ihrem letzten Status wiederhergestellt. Das sind also nur zwei Zeilen in der Konfiguration plus natürlich die Gruppenzuweisung der Items, aber insgesamt leicht zu managen.

Für die influxdb.persist kannst Du exakt das gleiche Verfahren anwenden, nur darfst Du hier natürlich nicht alle Items persistieren, wenn Du ein einzelnes Item nur einmal täglich speichern willst.

Wichtig ist, dass die Group Items für die Persistence nicht Teil des Semantic Model sein dürfen, sie dürfen also weder Nachfahren innerhalb des Semantic Model sein noch Semantic Tags haben, denn jedes Item innerhalb des Semantic Model darf nur exakt einmal innerhalb des Model auftauchen. Aber auch für "Semantic Items" gilt, dass sie beliebig vielen Group Items gleichzeitig zugewiesen sein dürfen, solange eben maximal eines davon Teil des Semantic Model ist und es keine Zirkelbezüge gibt (Nachfahre eines Group Items ist Vorfahre des selben Group Items).

Wenn Du den Tagesertrag in InfluxDB vorliegen hast, kannst Du evtl. in InfluxDB auch eine Abfrage erstellen, die nur das Tagesmaximum liefert. Wichtig ist aber, dass nur exakt ein Messwert pro Tag zurückgeliefert wird. Dann kannst Du in der Rule für die Ausgabe so vorgehen:

Code: Alles auswählen

rule "Solarertrag Tag Woche Monat Jahr"
when
    Item Solarertrag_Tage changed
then
    val start_of_day   = now.with(LocalTime.MIDNIGHT)
    val start_of_week  = start_of_day.minusDays(start_of_day.getDayOfWeek.getValue - 1)
    val start_of_month = start_of_day.withDayOfMonth(1)
    val start_of_year  = start_of_day.withDayOfYear(1)

    val ertrag_Heute = (Solarertrag_Tage.sumSince(start_of_day)   as Number).floatValue
    val ertrag_Woche = (Solarertrag_Tage.sumSince(start_of_week)  as Number).floatValue
    val ertrag_Monat = (Solarertrag_Tage.sumSince(start_of_month) as Number).floatValue
    val ertrag_Jahr  = (Solarertrag_Tage.sumSince(start_of_year)  as Number).floatValue

    Solarertrag_Tag.postUpdate(ertrag_Heute)
    Solarertrag_Woche.postUpdate(ertrag_Woche)
    Solarertrag_Monat.postUpdate(ertrag_Monat)
    Solarertrag_Jahr.postUpdateertragm_Jahr)
end
Wenn Du alte Werte nicht innerhalb InfluxDB in die Tabelle für Solarertrag_Tage übertragen kannst, sollte das auch indirekt aus openHAB heraus gehen, solange Du eine aktuelle Version verwendest, denn die erlaubt die Angabe der Zeitstempel als Parameter. Etwa so:

Code: Alles auswählen

rule "Datenbank füllen"
when
    Item Nix changed // nicht existierendes Item!
then
    val end_of_day   = now.with(LocalTime.MIDNIGHT).minusHours(1).minusSeconds(1)
    var Integer iDay = 0
    while(iDay < 365) {
        val zdtDay = end_of_day.minusDays(iDay)
        Solarertrag_Tage.persist(zdtDay,Solarpanel_Ertrag_Tag.persistedState(zdtDay),"influxdb")
        iDay += 1
    }
end
Das Item Nix ist lediglich ein Platzhalter. Du legst die Rule an und startest sie anschließend manuell einmalig über die UI.
Die Rule errechnet 22:59:59 des Vortages (so müssen wir uns keinen Kopf um die Zeitumstellung machen...).
Anschließend durchläuft sie eine Schleife und ermittelt jeweils den Tagesertrag aus dem vorhandenen Item Solarpanel_Ertrag_Tag. Nach 23 Uhr sollte sich der Tagesertrag des aktuellen Tages in unseren Breiten nicht mehr ändern...
Dann persistiert sie den Wert im neuen Item Solarertrag_Tage zum gleichen Zeitpunkt (22:59:59).
Jedoch passiert dies eben nur einmal pro Tag.
Nachdem die Rule einmal durchgelaufen ist, sollte es in InfluxDB für das gesamte Jahr täglich einen Messwert geben, den die Rule weiter oben nun problemlos aufsummieren kann.
Für die zukünftigen Werte aktivierst Du in influxdb.persist noch das tägliche persistieren:

Code: Alles auswählen

Strategies {
...
everyNight : "59 59 23 * * ?"
...
}
Items {
Solarertrag_Tage : strategy = everyNight
}
Und ergänzt die Rule "Solarpanel Ertrag Tag" hinten:

Code: Alles auswählen

Solarpanel_Ertrag_Tag.postUpdate(Ertrag)
Solarertrag_Tage.postUpdate(Ertrag)
end
Ab dem aktuellen Datum werden die Werte also immer vor Mitternacht automatisch übernommen. Die Rule sorgt dafür, dass zu dem Zeitpunkt der aktuelle Ertrag im Item hinterlegt ist.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

zinnik
Beiträge: 190
Registriert: 7. Sep 2021 11:28
Answers: 0

Re: SOLVED - Verbrauch von heute (seit Mitternacht) anzeigen

Beitrag von zinnik »

udo1toni hat geschrieben: 4. Nov 2024 10:44 Ich erinnere mich dunkel an die Rule.
Woran ich mich nicht erinnere, das ist die Erweiterung um die Vorwerte (Verbrauch und Kosten Vortag bzw. letzte...) und das kann so eigentlich auch nicht stimmen - also abgesehen davon, dass diese Werte fix sind, also nie häufiger als einmal berechnet werden müssten.
Du hast ja schon eine Rule, welche den Tagesertrag für den aktuellen Tag errechnet. Von dort gibt es verschiedene Möglichkeiten, wie es weiter geht.
Z.B.: Du schreibst "eine Sekunde" vor Mitternacht den Tagesertrag in ein Item, welches Du nicht automatisch persistierst. z.B. so:

Code: Alles auswählen

rule "Tagesertrag persistieren"
when
    Time cron "58 59 23 * * ?" // täglich um 23:59:58 Uhr
then
    if(Solarpanel_Ertrag_Tag.state instanceof Number) {
        solarPanel_Ertrag_Speicher.postUpdate((Solarpanel_Ertrag_Tag.state as Number))
        Thread.sleep(250)
        solarPanel_Ertrag_Speicher.persist
    ]
end
So ist sichergestellt, dass pro Tag nur ein Messwert in der Persistence landet. Alternativ könnte man auch das Speichern über die Persistence automatisch erledigen lassen, wichtig ist aber, dass zu der Zeit der korrekte Wert anliegt und nur ein Wert pro Tag geschrieben wird.
Nun kannst Du - bezogen auf dieses Item - mittels sumSince() oder sumBetween() die Summen der Tageswerte für beliebige Zeiträume erfragen.
Das funktioniert natürlich nicht für alte Werte :) aber da die aktuelle Version von openHAB auch das persistieren mit beliebigem Zeitstempel unterstützt, könnte man die benötigten Werte aus dem persistierten Item Solarpanel_Ertrag_Tag einmalig auslesen lassen, per persistedState(Zeitstempel vor Mitternacht).
Das Problem hierbei ist, dass man jeden Zeitstempel errechnen muss. Man könnte das auch on-the-fly erledigen lassen, aber dann läuft so eine Rule mutmaßlich etwas länger (bis zu 366 Durchläufe und Datenbankabfragen für das aktuelle Jahr...) und das Ganze ist ja bezogen auf Zeitstempel, das ist definitiv nicht trivial. Die einfache Lösung ist daher, die Werte automatisch in einer separaten Tabelle zu speichern, die dann leicht abgefragt werden kann.
Wichtig wäre hier auch, dass solarPanel_Ertrag_Speicher nicht mit rrd4j persistiert werden darf, weil rrd4j zwingend everyMinute vorschreibt, was die Berechnung zunichte machen würde...
Also ich würde jetzt gerne nach dieser Methode vorgehen.

Was ich jetzt gemacht habe:

Das Item "Solarpanel_Ertrag_speichern" erstellt

Und die rule in VS code eingefügt
allerdings minimal anders weil glaube die klammern nicht ganz richtig war ich hoffe das passt wie ich es gemacht habe.

Code: Alles auswählen

rule "Tagesertrag persistieren"
when
    Time cron "58 59 23 * * ?" // täglich um 23:59:58 Uhr
then
    if(Solarpanel_Ertrag_Tag.state instanceof Number) {
        Solarpanel_Ertrag_Speichern.postUpdate(Solarpanel_Ertrag_Tag.state as Number)
        Thread.sleep(250)
        Solarpanel_Ertrag_Speichern.persist()  // Klammern hinzugefügt
    } 
end
jetzt müsste man noch dieses mit der Tabelle umsetzen. Wie würde ich das machen? Wenn ich alles so belasse mit der Percistence würde es dann automatisch persistiert werden?
Das funktioniert natürlich nicht für alte Werte :) aber da die aktuelle Version von openHAB auch das persistieren mit beliebigem Zeitstempel unterstützt, könnte man die benötigten Werte aus dem persistierten Item Solarpanel_Ertrag_Tag einmalig auslesen lassen, per persistedState(Zeitstempel vor Mitternacht).
Das Problem hierbei ist, dass man jeden Zeitstempel errechnen muss. Man könnte das auch on-the-fly erledigen lassen, aber dann läuft so eine Rule mutmaßlich etwas länger (bis zu 366 Durchläufe und Datenbankabfragen für das aktuelle Jahr...) und das Ganze ist ja bezogen auf Zeitstempel, das ist definitiv nicht trivial. Die einfache Lösung ist daher, die Werte automatisch in einer separaten Tabelle zu speichern, die dann leicht abgefragt werden kann.
Wichtig wäre hier auch, dass solarPanel_Ertrag_Speicher nicht mit rrd4j persistiert werden darf, weil rrd4j zwingend everyMinute vorschreibt, was die Berechnung zunichte machen würde...
openhab 4.2.0 Docker (Qnap)
influxDB 1.8.2 Docker (Qnap)
Grafana v10.2.2 Docker (Qnap)
Deconz 2.19.03 Docker (Qnap)
Homematic (Raspberrymatic Pi 3B+)
Grafana, Phoscon, Shelly, Gardena, Tuya
Camera IP Binding mit ffmpeg
Solaredge PV Anlage mit 12kW Speicher (solaredgeBinding)
u.v.m.

Lg zinnik

Benutzeravatar
udo1toni
Beiträge: 15249
Registriert: 11. Apr 2018 18:05
Answers: 243
Wohnort: Darmstadt

Re: SOLVED - Verbrauch von heute (seit Mitternacht) anzeigen

Beitrag von udo1toni »

Nein. Zuerst musst Du dafür sorgen, dass die Persistence Dienste korrekt konfiguriert sind. Daran führt kein Weg vorbei, denn laut Deiner Aussage persistiert Du einfach alle Items mit everyChange, everyHour (bzw. bei rrd4j everyMinute).
Ob man dann das Item min der influxdb.persist einmal täglich persistieren lässt oder dies mit einer Rule mittels item.persist("influxdb") erledigt, ist letztlich egal, der Wert muss so oder so im Item drin stehen. Und wie gesagt, das Item muss exakt(!) einmal pro Tag gespeichert werden, nicht häufiger, nicht seltener.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

zinnik
Beiträge: 190
Registriert: 7. Sep 2021 11:28
Answers: 0

Re: SOLVED - Verbrauch von heute (seit Mitternacht) anzeigen

Beitrag von zinnik »

Aja ok

Also das wäre die rule? könnte man die Rule weglassen wenn man in der Influxdb noch unter dem Item Solarpanel_Ertrag_Speichern ----everyDay reinschreibt?

Code: Alles auswählen

rule "Tagesertrag persistieren"
when
    Time cron "58 59 23 * * ?" // täglich um 23:59:58 Uhr
then
    if(Solarpanel_Ertrag_Tag.state instanceof Number) {
        Solarpanel_Ertrag_Speichern.postUpdate(Solarpanel_Ertrag_Tag.state as Number)
        Thread.sleep(250)
        Solarpanel_Ertrag_Speichern.persist(influxdb)  // Klammern hinzugefügt
    } 
end

Influxdb ist meine Standard persistence in Openhab, muss dann das inflxdb trotzdem in klammern?

Hier meine rrd4j persistence aus der UI:

Code: Alles auswählen

configurations:
  - items:
      - "*"
    strategies:
      - restoreOnStartup
      - everyChange
      - everyMinute
    filters: []
cronStrategies:
  - name: everyMinute
    cronExpression: 0 * * * * ?
defaultStrategies:
  - restoreOnStartup
  - everyChange
  - everyMinute
thresholdFilters: []
timeFilters: []
equalsFilters: []
includeFilters: []
das wäre dann die influx persistence als influxdb.persist
Ob hier restoreOnStartup notwendig ist weiss ich nicht.

Code: Alles auswählen

Strategies {
    everyMinute : "0 * * * * ?"      // alle Minute, falls nötig
    everyHour   : "0 0 * * * ?"      // stündlich, falls nötig
    everyDay    : "0 0 0 * * ?"      // täglich um Mitternacht
    everyChange : "everyChange"      // bei jeder Änderung
    default = everyChange            // Standardstrategie: bei jeder Änderung
}

Items {
    // Alle Items speichern bei jeder Änderung
    * : strategy = everyChange, everyHour

    // Spezifisches Item nur einmal täglich speichern
    Solarpanel_Ertrag_Speichern : strategy = restoreOnStartup //wenn ich noch everyDay hinzufüge dann könnte ich mir doch die rule sparen oder ?
}
openhab 4.2.0 Docker (Qnap)
influxDB 1.8.2 Docker (Qnap)
Grafana v10.2.2 Docker (Qnap)
Deconz 2.19.03 Docker (Qnap)
Homematic (Raspberrymatic Pi 3B+)
Grafana, Phoscon, Shelly, Gardena, Tuya
Camera IP Binding mit ffmpeg
Solaredge PV Anlage mit 12kW Speicher (solaredgeBinding)
u.v.m.

Lg zinnik

Benutzeravatar
udo1toni
Beiträge: 15249
Registriert: 11. Apr 2018 18:05
Answers: 243
Wohnort: Darmstadt

Re: SOLVED - Verbrauch von heute (seit Mitternacht) anzeigen

Beitrag von udo1toni »

Wie gesagt, in der influxdb.persist darf keine Zeile

Code: Alles auswählen

* : strategy = everyChange, everyHour
stehen, unter keinen Umständen! Es geht darum, dass das Item solarPanel_Ertrag_Speichern exakt einmal täglich gespeichert wird, nicht mehr, nicht weniger. Das wird durch die Zeile oben aber gerade verhindert, denn durch die Zeile werden mindestens 24 Werte täglich hinterlegt, plus jede Änderung des Zustands.

Wenn InfluxDB als default Persistence markiert ist, kannst Du beim Zugriff auf die Persistence auf die Angabe der Datenquelle verzichten. Im Übrigen ist die Datenquelle ein String, also wenn, dann Item.persist("influxdb"), mit Anführungszeichen, die sind nicht optional.
Die Klammern sind nicht notwendig, wenn sie keine Werte übergeben. Leere Klammern -> weglassen.

Eigentlich habe ich schon eine Komplettanleitung geliefert... viewtopic.php?p=63380#p63380
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

zinnik
Beiträge: 190
Registriert: 7. Sep 2021 11:28
Answers: 0

Re: SOLVED - Verbrauch von heute (seit Mitternacht) anzeigen

Beitrag von zinnik »

Ja ok keine Ahnung ob ich das irgendwann noch checke. Tut mir leid Udo dass ich so schwer von Begriff bin.

Ich glaube es ist immer besser du gibts mir nur einen Lösungsansatz mit mehren komme ich dann einfach durcheinander. Ich weiss das es leib von dir gemient ist.

Also hab jetzt in der inder INFLUX alle items aufgeführt die ich persitiere+ das SolarPanel_Ertrag:speichern Item

Code: Alles auswählen

Strategies {
    everyMinute : "0 * * * * ?"      // alle Minute, falls nötig
    everyHour   : "0 0 * * * ?"      // stündlich, falls nötig
    everyDay    : "0 0 0 * * ?"      // täglich um Mitternacht
    everyChange : "everyChange"      // bei jeder Änderung
    default = everyChange            // Standardstrategie: bei jeder Änderung
}

Items {
// Spezifisches Item nur einmal täglich speichern

      Solarpanel_Ertrag_Speichern

// Alle Items speichern bei jeder Änderung
    
      AktorLichtEssbereich_State	: strategy = everyChange, everyHour
      Aktuell_BatteryCharge	: strategy = everyChange, everyHour
      Aktuell_BatteryChargeDischarge	: strategy = everyChange, everyHour
      Aktuell_BatteryCritical	: strategy = everyChange, everyHour
      Aktuell_BatteryDischarge	: strategy = everyChange, everyHour
      Aktuell_BatteryLevel	: strategy = everyChange, everyHour
      Aktuell_BatteryStatus	: strategy = everyChange, everyHour
      Aktuell_GridStatus	: strategy = everyChange, everyHour
      Aktuell_Live_Consumption	: strategy = everyChange, everyHour
      Aktuell_Live_Export	: strategy = everyChange, everyHour
      Aktuell_Live_Import	: strategy = everyChange, everyHour
      Aktuell_Live_Production	: strategy = everyChange, everyHour
      Aktuell_LoadStatus	: strategy = everyChange, everyHour
      Aktuell_PVStatus	: strategy = everyChange, everyHour
      AlleLichterWohnzimmer	: strategy = everyChange, everyHour
      Anwesenheit_Anwesenheit_Nadiaiphone15	: strategy = everyChange, everyHour
      Anwesenheit_AnwesenheitSvens23ultra	: strategy = everyChange, everyHour
      Arbeitszimmerhum_Humidity	: strategy = everyChange, everyHour
      Arbeitszimmertemp_Batterieladung	: strategy = everyChange, everyHour
      Arbeitszimmertemp_LastUpdated	: strategy = everyChange, everyHour
      Arbeitszimmertemp_Temperature	: strategy = everyChange, everyHour
      Aussensteckdose_Silvercrest_Betrieb	: strategy = everyChange, everyHour
      Aussensteckdose_Silvercrest_Einschaltdauer	: strategy = everyChange, everyHour
      Automatischer_Farbwechsel_Kind_Bett	: strategy = everyChange, everyHour
      Automatischer_Farbwechsel_Kueche_Sockel	: strategy = everyChange, everyHour
      Badheizkoerper_Betrieb	: strategy = everyChange, everyHour
      Badheizkoerper_Leistung	: strategy = everyChange, everyHour
      Badhum_Humidity	: strategy = everyChange, everyHour
      BadLicht_1_LEVEL	: strategy = everyChange, everyHour
      BadNische_Betrieb	: strategy = everyChange, everyHour
      Badspiegel_State	: strategy = everyChange, everyHour
      Badtemp_Batterieladung	: strategy = everyChange, everyHour
      Badtemp_LastUpdated	: strategy = everyChange, everyHour
      Badtemp_Temperature	: strategy = everyChange, everyHour
      Batterieladung_Terrasse_innen	: strategy = everyChange, everyHour
      Batterieladung_Terrassenueberdachung	: strategy = everyChange, everyHour
      BeleuchtungBettKind_Betrieb	: strategy = everyChange, everyHour
      BeleuchtungBettKind_Color_Temperature	: strategy = everyChange, everyHour
      BeleuchtungBettKind_Farbe	: strategy = everyChange, everyHour
      BeleuchtungBettKind_Farbeffekt	: strategy = everyChange, everyHour
      BeleuchtungBettKind_Helligkeit	: strategy = everyChange, everyHour
      BeleuchtungBettKind_Szene	: strategy = everyChange, everyHour
      BeleuchtungBettKind_warm_kalt	: strategy = everyChange, everyHour
      Bewaesserung_1_STATE	: strategy = everyChange, everyHour
      Bewaesserung_2_STATE	: strategy = everyChange, everyHour
      Bewaesserung_3_STATE	: strategy = everyChange, everyHour
      Bewaesserung_4_STATE	: strategy = everyChange, everyHour
      BewegungsmelderFlurOG_Brightness	: strategy = everyChange, everyHour
      BewegungsmelderFlurOG_Motion	: strategy = everyChange, everyHour
      BMW530dxDrive_Adresse	: strategy = everyChange, everyHour
      BMW530dxDrive_Ausfuhrungszustand	: strategy = everyChange, everyHour
      BMW530dxDrive_Ausrichtung	: strategy = everyChange, everyHour
      BMW530dxDrive_Beifahrertur	: strategy = everyChange, everyHour
      BMW530dxDrive_BeifahrerturFenster	: strategy = everyChange, everyHour
      BMW530dxDrive_BeifahrerturHinten	: strategy = everyChange, everyHour
      BMW530dxDrive_BeifahrerturHintenFenster	: strategy = everyChange, everyHour
      BMW530dxDrive_Fahrertur	: strategy = everyChange, everyHour
      BMW530dxDrive_FahrerturFenster	: strategy = everyChange, everyHour
      BMW530dxDrive_FahrerturHinten	: strategy = everyChange, everyHour
      BMW530dxDrive_FahrerturHintenFenster	: strategy = everyChange, everyHour
      BMW530dxDrive_FahrzeugAbgeschlossen	: strategy = everyChange, everyHour
      BMW530dxDrive_FahrzeugAnsicht	: strategy = everyChange, everyHour
      BMW530dxDrive_FahrzeugBild	: strategy = everyChange, everyHour
      BMW530dxDrive_FahrzeugBildgrosse	: strategy = everyChange, everyHour
      BMW530dxDrive_Fahrzustand	: strategy = everyChange, everyHour
      BMW530dxDrive_Frontklappe	: strategy = everyChange, everyHour
      BMW530dxDrive_GesamtzustandderFenster	: strategy = everyChange, everyHour
      BMW530dxDrive_GesamtzustandderTuren	: strategy = everyChange, everyHour
      BMW530dxDrive_Heckfenster	: strategy = everyChange, everyHour
      BMW530dxDrive_Heckklappe	: strategy = everyChange, everyHour
      BMW530dxDrive_KommandoAuswahl	: strategy = everyChange, everyHour
      BMW530dxDrive_Koordinaten	: strategy = everyChange, everyHour
      BMW530dxDrive_LetzteAktualisierung	: strategy = everyChange, everyHour
      BMW530dxDrive_NachsterServiceinKilometern	: strategy = everyChange, everyHour
      BMW530dxDrive_NachsterServiceTermin	: strategy = everyChange, everyHour
      BMW530dxDrive_ReifenLuftdruckHintenLinks_ist	: strategy = everyChange, everyHour
      BMW530dxDrive_ReifenLuftdruckHintenRechts_ist	: strategy = everyChange, everyHour
      BMW530dxDrive_ReifenLuftdruckVorneLinks_ist	: strategy = everyChange, everyHour
      BMW530dxDrive_ReifenLuftdruckVorneRechts_ist	: strategy = everyChange, everyHour
      BMW530dxDrive_Schiebedach				: strategy = everyChange, everyHour
      BMW530dxDrive_Service				: strategy = everyChange, everyHour
      BMW530dxDrive_ServiceDetails			: strategy = everyChange, everyHour
      BMW530dxDrive_ServiceinKilometern			: strategy = everyChange, everyHour
      BMW530dxDrive_ServiceTermin			: strategy = everyChange, everyHour
      BMW530dxDrive_Tachostand				: strategy = everyChange, everyHour
      BMW530dxDrive_Tankstand				: strategy = everyChange, everyHour
      BMW530dxDrive_TirePressureFrontLeftTarget_soll	: strategy = everyChange, everyHour
      BMW530dxDrive_TirePressureFrontRightTarget_soll	: strategy = everyChange, everyHour
      BMW530dxDrive_TirePressureRearLeftTarget_soll	: strategy = everyChange, everyHour
      BMW530dxDrive_TirePressureRearRightTarget_soll	: strategy = everyChange, everyHour
      BMW530dxDrive_VerbrennerReichweite	: strategy = everyChange, everyHour
      BMW530dxDrive_VerbrennerReichweitenRadius	: strategy = everyChange, everyHour
      BMW530dxDrive_Warnung	: strategy = everyChange, everyHour
      BMW530dxDrive_WarnungAktiv	: strategy = everyChange, everyHour
      BMW530dxDrive_WarnungbeiKilometer	: strategy = everyChange, everyHour
      BMW530dxDrive_Zieladresse	: strategy = everyChange, everyHour
      BMW530dxDrive_Zielkoordinaten	: strategy = everyChange, everyHour
      BoseHomeSpeaker192168133_Online	: strategy = everyChange, everyHour
      Bosse700192168142_Online	: strategy = everyChange, everyHour
      Briefkastenkontakt_Batterieladung	: strategy = everyChange, everyHour
      Briefkastenkontakt_LetzteAktualisierung	: strategy = everyChange, everyHour
      Briefkastenkontakt_OpenClose	: strategy = everyChange, everyHour
      BrunnenLed_Helligkeit	: strategy = everyChange, everyHour
      Brunnenpumpe_Betrieb	: strategy = everyChange, everyHour
      ChromecastGastezimmer192168130_Online	: strategy = everyChange, everyHour
      ChromecastWohnzimmer192168145_Online	: strategy = everyChange, everyHour
      ConbeeStick192168148_Online	: strategy = everyChange, everyHour
      Dachbodenhum_Humidity	: strategy = everyChange, everyHour
      Dachbodentemp_Batterieladung	: strategy = everyChange, everyHour
      Dachbodentemp_LastUpdated	: strategy = everyChange, everyHour
      Dachbodentemp_Temperature	: strategy = everyChange, everyHour
      DimmaktorCouchWohnzimmer_1_LEVEL	: strategy = everyChange, everyHour
      DimmaktorLichtArbeitszimmer_1_LEVEL	: strategy = everyChange, everyHour
      DimmaktorLichtFlurOG_1_LEVEL	: strategy = everyChange, everyHour
      Drehgriff_Arbeitszimmer_1_LOWBAT	: strategy = everyChange, everyHour
      Drehgriff_Arbeitszimmer_State	: strategy = everyChange, everyHour
      Drehgriff_Kinderzimmer_1_LOWBAT	: strategy = everyChange, everyHour
      Drehgriff_Kinderzimmer_State	: strategy = everyChange, everyHour
      Drehgriff_Wohnzimmer_rechts_1_LOWBAT	: strategy = everyChange, everyHour
      Drehgriff_Wohnzimmer_rechts_State	: strategy = everyChange, everyHour
      DrehgriffWohnzimmerMitte_1_LOWBAT	: strategy = everyChange, everyHour
      DrehgriffWohnzimmerMitte_State	: strategy = everyChange, everyHour
      Druck_Terrassenueberdachung	: strategy = everyChange, everyHour
      EnergieGefrierschrank_Current	: strategy = everyChange, everyHour
      EnergieGefrierschrank_Frequency	: strategy = everyChange, everyHour
      EnergieGefrierschrank_Power	: strategy = everyChange, everyHour
      EnergieGefrierschrank_State	: strategy = everyChange, everyHour
      EnergieGefrierschrank_Voltage	: strategy = everyChange, everyHour
      EnergieKuhlschrank_Current	: strategy = everyChange, everyHour
      EnergieKuhlschrank_Frequency	: strategy = everyChange, everyHour
      EnergieKuhlschrank_Power	: strategy = everyChange, everyHour
      EnergieKuhlschrank_State	: strategy = everyChange, everyHour
      EnergieKuhlschrank_Voltage	: strategy = everyChange, everyHour
      EnergiePC_Current	: strategy = everyChange, everyHour
      EnergiePC_Frequency	: strategy = everyChange, everyHour
      EnergiePC_Power	: strategy = everyChange, everyHour
      EnergiePC_State	: strategy = everyChange, everyHour
      EnergiePC_Voltage	: strategy = everyChange, everyHour
      EnergieTrockner_Current	: strategy = everyChange, everyHour
      EnergieTrockner_Frequency	: strategy = everyChange, everyHour
      EnergieTrockner_Power	: strategy = everyChange, everyHour
      EnergieTrockner_State	: strategy = everyChange, everyHour
      EnergieTrockner_Voltage	: strategy = everyChange, everyHour
      EnergieTVGaestezimmer_Current	: strategy = everyChange, everyHour
      EnergieTVGaestezimmer_Frequency	: strategy = everyChange, everyHour
      EnergieTVGaestezimmer_Power	: strategy = everyChange, everyHour
      EnergieTVGaestezimmer_State	: strategy = everyChange, everyHour
      EnergieTVGaestezimmer_Voltage	: strategy = everyChange, everyHour
      EnergieTVWohnzimmer_Current	: strategy = everyChange, everyHour
      EnergieTVWohnzimmer_Frequency	: strategy = everyChange, everyHour
      EnergieTVWohnzimmer_Power	: strategy = everyChange, everyHour
      EnergieTVWohnzimmer_State	: strategy = everyChange, everyHour
      EnergieTVWohnzimmer_Voltage	: strategy = everyChange, everyHour
      EnergieWaschmaschine_Current	: strategy = everyChange, everyHour
      EnergieWaschmaschine_Frequency	: strategy = everyChange, everyHour
      EnergieWaschmaschine_Power	: strategy = everyChange, everyHour
      EnergieWaschmaschine_State	: strategy = everyChange, everyHour
      EnergieWaschmaschine_Voltage	: strategy = everyChange, everyHour
      FensterkontaktKueche_1_LOWBAT	: strategy = everyChange, everyHour
      FensterkontaktKueche_State	: strategy = everyChange, everyHour
      FritzBox_Reboot	: strategy = everyChange, everyHour
      Fritzbox19216811_Online	: strategy = everyChange, everyHour
      FRITZDECT210_Gesamtverbrauch	: strategy = everyChange, everyHour
      FRITZDECT210_Leistung	: strategy = everyChange, everyHour
      FRITZDECT210_ModusdesGerates	: strategy = everyChange, everyHour
      FRITZDECT210_Spannung	: strategy = everyChange, everyHour
      FRITZDECT210_Steckdose	: strategy = everyChange, everyHour
      FRITZDECT210_Temperatur	: strategy = everyChange, everyHour
      FRITZDECTRep100_Temperatur	: strategy = everyChange, everyHour
      FrostschutzSchaltaktor_State	: strategy = everyChange, everyHour
      Fuellstandssensor_Regenfass_Fuellstand	: strategy = everyChange, everyHour
      Fuellstandssensor_Regenfass_Niedriger_Batteriestatus	: strategy = everyChange, everyHour
      Fuellstandssensor_Regenfass_Signalstarke	: strategy = everyChange, everyHour
      FunkBewegungsmelderaussen_Brightness	: strategy = everyChange, everyHour
      FunkBewegungsmelderaussen_Motion	: strategy = everyChange, everyHour
      FunkBewegungsmelderaussen_NiedrigerBatteriestatus	: strategy = everyChange, everyHour
      FunkrauchmelderArbeitszimmer_1_LOWBAT	: strategy = everyChange, everyHour
      FunkrauchmelderArbeitszimmer_State	: strategy = everyChange, everyHour
      FunkrauchmelderFlurOGOEQ0958021_1_LOWBAT	: strategy = everyChange, everyHour
      FunkrauchmelderFlurOGOEQ0958021_State	: strategy = everyChange, everyHour
      FunkrauchmelderKinderzimmer_1_LOWBAT	: strategy = everyChange, everyHour
      FunkrauchmelderKinderzimmer_State	: strategy = everyChange, everyHour
      FunkrauchmelderSchlafenOEQ0958046_1_LOWBAT	: strategy = everyChange, everyHour
      FunkrauchmelderSchlafenOEQ0958046_State	: strategy = everyChange, everyHour
      FunkschaltaktorGarage_State	: strategy = everyChange, everyHour
      Funktaster_PC_1_PRESS_LONG	: strategy = everyChange, everyHour
      Funktaster_PC_1_PRESS_SHORT	: strategy = everyChange, everyHour
      Funktaster_PC_2_PRESS_LONG	: strategy = everyChange, everyHour
      Funktaster_PC_2_PRESS_SHORT	: strategy = everyChange, everyHour
      Funktaster_PC_Niedriger_Batteriestatus	: strategy = everyChange, everyHour
      FunkTemperatursensor_1_LOWBAT	: strategy = everyChange, everyHour
      FunkTemperatursensor_1_TEMPERATURE	: strategy = everyChange, everyHour
      FunkTemperatursensor_2_TEMPERATURE	: strategy = everyChange, everyHour
      GalaxyS7192168129_Online	: strategy = everyChange, everyHour
      Garagehum_Humidity	: strategy = everyChange, everyHour
      Garagenkontakt_1_LOWBAT	: strategy = everyChange, everyHour
      Garagenkontakt_State	: strategy = everyChange, everyHour
      Garagetemp_Batterieladung	: strategy = everyChange, everyHour
      Garagetemp_LastUpdated	: strategy = everyChange, everyHour
      Garagetemp_Temperature	: strategy = everyChange, everyHour
      GartenpumpeHomematicSteckdose_Current	: strategy = everyChange, everyHour
      GartenpumpeHomematicSteckdose_Frequency	: strategy = everyChange, everyHour
      GartenpumpeHomematicSteckdose_Power	: strategy = everyChange, everyHour
      GartenpumpeHomematicSteckdose_State	: strategy = everyChange, everyHour
      GartenpumpeHomematicSteckdose_Voltage	: strategy = everyChange, everyHour
      Gastezimmerhum_Humidity	: strategy = everyChange, everyHour
      Gastezimmertemp_Batterieladung	: strategy = everyChange, everyHour
      Gastezimmertemp_LastUpdated	: strategy = everyChange, everyHour
      Gastezimmertemp_Temperature	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_Strom_Aktualisierung	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_StromHzgAktualisierung	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_StromHzgVerbrauchAktuell	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_StromHzgVerbrauchGestern	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_StromHzgVerbrauchHeute	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_StromHzgVerbrauchKalenderjahr	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_StromHzgVerbrauchLetzteAblesung	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_StromHzgVerbrauchLetzterMonat	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_StromHzgVerbrauchLetztesKalenderjahr	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_StromHzgVerbrauchLetzteWoche	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_StromHzgVerbrauchMonat	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_StromHzgVerbrauchWoche	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_StromHzgZaehlerstand	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_WasserAktualisierung	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_WasserVerbrauchAktuell	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_WasserVerbrauchGestern	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_WasserVerbrauchHeute	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_WasserVerbrauchKalenderjahr	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_WasserVerbrauchLetzteAblesung	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_WasserVerbrauchLetzterMonat	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_WasserVerbrauchLetztesKalenderjahr	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_WasserVerbrauchLetzteWoche	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_WasserVerbrauchMonat	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_WasserVerbrauchWoche	: strategy = everyChange, everyHour
      GATEWAYEXTRAS_WasserZaehlerstand	: strategy = everyChange, everyHour
      gBodenfeuchte	: strategy = everyChange, everyHour
      Gefrierschrankhum_Humidity	: strategy = everyChange, everyHour
      Gefrierschrankpress_Pressure	: strategy = everyChange, everyHour
      Gefrierschranktemp_Batterieladung	: strategy = everyChange, everyHour
      Gefrierschranktemp_LastUpdated	: strategy = everyChange, everyHour
      Gefrierschranktemp_Temperature	: strategy = everyChange, everyHour
      HausanschlussGartenwasser_GartenwasserAktualisierung	: strategy = everyChange, everyHour
      HausanschlussGartenwasser_GartenwasserVerbrauchAktuell	: strategy = everyChange, everyHour
      HausanschlussGartenwasser_GartenwasserVerbrauchGestern	: strategy = everyChange, everyHour
      HausanschlussGartenwasser_GartenwasserVerbrauchHeute	: strategy = everyChange, everyHour
      HausanschlussGartenwasser_GartenwasserVerbrauchKalenderjahr	: strategy = everyChange, everyHour
      HausanschlussGartenwasser_GartenwasserVerbrauchLetzteAblesung	: strategy = everyChange, everyHour
      HausanschlussGartenwasser_GartenwasserVerbrauchLetzterMonat	: strategy = everyChange, everyHour
      HausanschlussGartenwasser_GartenwasserVerbrauchLetztesKalenderjahr	: strategy = everyChange, everyHour
      HausanschlussGartenwasser_GartenwasserVerbrauchLetzteWoche	: strategy = everyChange, everyHour
      HausanschlussGartenwasser_GartenwasserVerbrauchMonat	: strategy = everyChange, everyHour
      HausanschlussGartenwasser_GartenwasserVerbrauchWoche	: strategy = everyChange, everyHour
      HausanschlussGartenwasser_GartenwasserZaehlerstand	: strategy = everyChange, everyHour
      HausanschlussGartenwasser_GasEnergyCounter	: strategy = everyChange, everyHour
      HausanschlussGartenwasser_GasPower	: strategy = everyChange, everyHour
      HausanschlussGartenwasser_NiedrigerBatteriestatus	: strategy = everyChange, everyHour
      HausanschlussStrom_1_IEC_ENERGY_COUNTER	: strategy = everyChange, everyHour
      HausanschlussStrom_1_IEC_POWER	: strategy = everyChange, everyHour
      HausanschlussStrom_Niedriger_Batteriestatus	: strategy = everyChange, everyHour
      HausanschlussStrom_Strom_Leistungsaufnahme_Aktuell	: strategy = everyChange, everyHour
      HausanschlussStrom_Strom_Verbrauch_Gestern	: strategy = everyChange, everyHour
      HausanschlussStrom_Strom_Verbrauch_Heute	: strategy = everyChange, everyHour
      HausanschlussStrom_Strom_Verbrauch_Laufende_Woche	: strategy = everyChange, everyHour
      HausanschlussStrom_Strom_Verbrauch_Laufender_Monat	: strategy = everyChange, everyHour
      HausanschlussStrom_Strom_Verbrauch_Laufendes_Kalenderjahr	: strategy = everyChange, everyHour
      HausanschlussStrom_Strom_Verbrauch_Letzte_Woche	: strategy = everyChange, everyHour
      HausanschlussStrom_Strom_Verbrauch_Letzter_Monat	: strategy = everyChange, everyHour
      HausanschlussStrom_Strom_Verbrauch_Letztes_Kalenderjahr	: strategy = everyChange, everyHour
      HausanschlussStrom_Strom_Verbrauch_Seit_Letzter_Ablesung	: strategy = everyChange, everyHour
      HausanschlussStrom_Strom_Zaehlerstand	: strategy = everyChange, everyHour
      HausanschlussStromBezugEinspeisung_1_IEC_ENERGY_COUNTER	: strategy = everyChange, everyHour
      HausanschlussStromBezugEinspeisung_1_IEC_POWER	: strategy = everyChange, everyHour
      HausanschlussStromBezugEinspeisung_2_IEC_ENERGY_COUNTER	: strategy = everyChange, everyHour
      HausanschlussStromBezugEinspeisung_2_IEC_POWER	: strategy = everyChange, everyHour
      HausanschlussStromBezugEinspeisung_NiedrigerBatteriestatus	: strategy = everyChange, everyHour
      HausanschlussStromBezugEinspeisung_Strom_Bezug_Aktualisierung	: strategy = everyChange, everyHour
      HausanschlussStromBezugEinspeisung_Strom_Bezug_Verbrauch_Gestern	: strategy = everyChange, everyHour
      HausanschlussStromBezugEinspeisung_Strom_Bezug_Verbrauch_Heute	: strategy = everyChange, everyHour
      HausanschlussStromBezugEinspeisung_Strom_Bezug_Verbrauch_Laufende_Woche	: strategy = everyChange, everyHour
      HausanschlussStromBezugEinspeisung_Strom_Bezug_Verbrauch_Laufender_Monat	: strategy = everyChange, everyHour
      HausanschlussStromBezugEinspeisung_Strom_Bezug_Verbrauch_Laufendes_Kalenderjahr	: strategy = everyChange, everyHour
      HausanschlussStromBezugEinspeisung_Strom_Bezug_Verbrauch_Letzte_Woche	: strategy = everyChange, everyHour
      HausanschlussStromBezugEinspeisung_Strom_Bezug_Verbrauch_Letzter_Monat	: strategy = everyChange, everyHour
      HausanschlussStromBezugEinspeisung_Strom_Bezug_Verbrauch_Letztes_Kalenderjahr	: strategy = everyChange, everyHour
      HausanschlussStromBezugEinspeisung_Strom_Bezug_Verbrauch_Seit_Letzter_Ablesung	: strategy = everyChange, everyHour
      HausanschlussStromHZG_NiedrigerBatteriestatus	: strategy = everyChange, everyHour
      HausanschlussStromHZG_Power	: strategy = everyChange, everyHour
      HausanschlussWasser_GasPower	: strategy = everyChange, everyHour
      HausanschlussWasser_NiedrigerBatteriestatus	: strategy = everyChange, everyHour
      Hauswirtschaftsraum_battery_percentage	: strategy = everyChange, everyHour
      Hauswirtschaftsraum_watersensor_state	: strategy = everyChange, everyHour
      Hecke01_Helligkeit	: strategy = everyChange, everyHour
      Hecke02_Helligkeit	: strategy = everyChange, everyHour
      Hecke03_Helligkeit	: strategy = everyChange, everyHour
      Hecke04_Helligkeit	: strategy = everyChange, everyHour
      Hecke05_Helligkeit	: strategy = everyChange, everyHour
      Heizung_Kosten_davor	: strategy = everyChange, everyHour
      Heizung_Kosten_Gesamt	: strategy = everyChange, everyHour
      Heizung_Verbrauch_Jahr	: strategy = everyChange, everyHour
      Heizung_Verbrauch_letzte_Woche	: strategy = everyChange, everyHour
      Heizung_Verbrauch_letzter_Monat	: strategy = everyChange, everyHour
      Heizung_Verbrauch_letztes_Jahr	: strategy = everyChange, everyHour
      Heizung_Verbrauch_Monat	: strategy = everyChange, everyHour
      Heizung_Verbrauch_Tag	: strategy = everyChange, everyHour
      Heizung_Verbrauch_Vortag	: strategy = everyChange, everyHour
      Heizung_Verbrauch_Woche	: strategy = everyChange, everyHour
      Heizung_Zaehlerstand_davor	: strategy = everyChange, everyHour
      Heizung_Zaehlerstand_errechnet	: strategy = everyChange, everyHour
      Heizungssteuerung_state	: strategy = everyChange, everyHour
      Homematic192168134_Online	: strategy = everyChange, everyHour
      HWRhum_Humidity	: strategy = everyChange, everyHour
      HWRtemp_Batterieladung	: strategy = everyChange, everyHour
      HWRtemp_LastUpdated	: strategy = everyChange, everyHour
      HWRtemp_Temperature	: strategy = everyChange, everyHour
      hzg_enter_taste_state	: strategy = everyChange, everyHour
      JahrSolarEdge_Aggregate_Year_BatterySelfConsumption	: strategy = everyChange, everyHour
      JahrSolarEdge_Aggregate_Year_Consumption	: strategy = everyChange, everyHour
      JahrSolarEdge_Aggregate_Year_Export	: strategy = everyChange, everyHour
      JahrSolarEdge_Aggregate_Year_Import	: strategy = everyChange, everyHour
      JahrSolarEdge_Aggregate_Year_Production	: strategy = everyChange, everyHour
      JahrSolarEdge_Aggregate_Year_SelfConsumptionCoverage	: strategy = everyChange, everyHour
      JahrSolarEdge_Aggregate_Year_SelfConsumptionForConsumption	: strategy = everyChange, everyHour
      KameraGarage192168151_Online	: strategy = everyChange, everyHour
      Kinderzimmerhum_Humidity	: strategy = everyChange, everyHour
      Kinderzimmertemp_Batterieladung	: strategy = everyChange, everyHour
      Kinderzimmertemp_LastUpdated	: strategy = everyChange, everyHour
      Kinderzimmertemp_Temperature	: strategy = everyChange, everyHour
      KucheTresen_State	: strategy = everyChange, everyHour
      KucheTresen1_Farbe	: strategy = everyChange, everyHour
      KucheTresen1_Farbtemperatur	: strategy = everyChange, everyHour
      KucheTresen2_Farbe	: strategy = everyChange, everyHour
      KucheTresen2_Farbtemperatur	: strategy = everyChange, everyHour
      KucheTresen3_Farbe	: strategy = everyChange, everyHour
      KucheTresen3_Farbtemperatur	: strategy = everyChange, everyHour
      Kuechenunterschrank_rechts_Betrieb	: strategy = everyChange, everyHour
      KuecheSockelZone_Betrieb	: strategy = everyChange, everyHour
      KuecheSockelZone_Color_Temperature	: strategy = everyChange, everyHour
      KuecheSockelZone_Farbe	: strategy = everyChange, everyHour
      KuecheSockelZone_Helligkeit	: strategy = everyChange, everyHour
      KuecheSockelZone_Szene	: strategy = everyChange, everyHour
      Kuhlschrankhum_Humidity	: strategy = everyChange, everyHour
      Kuhlschrankpress_Pressure	: strategy = everyChange, everyHour
      Kuhlschranktemp_Batterieladung	: strategy = everyChange, everyHour
      Kuhlschranktemp_LastUpdated	: strategy = everyChange, everyHour
      Kuhlschranktemp_Temperature	: strategy = everyChange, everyHour
      LANDeviceFRITZBox7490_WiFi24GHz	: strategy = everyChange, everyHour
      LANDeviceFRITZBox7490_WiFi5GHz	: strategy = everyChange, everyHour
      LANDeviceFRITZBox7490_WiFiGuest	: strategy = everyChange, everyHour
      Laufband_Schalter	: strategy = everyChange, everyHour
      Letzte_Aktualisierung_Terrassenueberdachung	: strategy = everyChange, everyHour
      LGTV192168154_Online	: strategy = everyChange, everyHour
      LGwebOS_TV_SJ950V_Application	: strategy = everyChange, everyHour
      LGwebOS_TV_SJ950V_Betrieb	: strategy = everyChange, everyHour
      LGwebOS_TV_SJ950V_Channel	: strategy = everyChange, everyHour
      LGwebOS_TV_SJ950V_Fernbedienung	: strategy = everyChange, everyHour
      LGwebOS_TV_SJ950V_Lautstarke	: strategy = everyChange, everyHour
      LGwebOS_TV_SJ950V_RCButton	: strategy = everyChange, everyHour
      LGwebOS_TV_SJ950V_Stop	: strategy = everyChange, everyHour
      LGwebOS_TV_SJ950V_Stumm_schalten	: strategy = everyChange, everyHour
      LGwebOS_TV_SJ950V_Toast	: strategy = everyChange, everyHour
      Licht_Dimmaktor_Terrassenuberdachung_2_LEVEL	: strategy = everyChange, everyHour
      LichtKucheDecke_State	: strategy = everyChange, everyHour
      LichtKuecheTresen_Szene	: strategy = everyChange, everyHour
      LueftungBad_Betrieb	: strategy = everyChange, everyHour
      LueftungBad_Leistung	: strategy = everyChange, everyHour
      LueftungKueche_Betrieb	: strategy = everyChange, everyHour
      LueftungKueche_Leistung	: strategy = everyChange, everyHour
      Luftfeuchtigkeit_Terrasse_innen	: strategy = everyChange, everyHour
      Luftfeuchtigkeit_Terrassenueberdachung	: strategy = everyChange, everyHour
      Magnolie_Helligkeit	: strategy = everyChange, everyHour
      Markise_Unterdach	: strategy = everyChange, everyHour
      MarkiselinksSued2_Level	: strategy = everyChange, everyHour
      MarkiselinksUnterdach2_Level	: strategy = everyChange, everyHour
      MarkisenTerrassenueberdachung_alle	: strategy = everyChange, everyHour
      MarkiserechtsSued1_Level	: strategy = everyChange, everyHour
      MarkiserechtsUnterdach1_Level	: strategy = everyChange, everyHour
      Massage	: strategy = everyChange, everyHour
      MonatSolarEdge_Aggregate_Month_BatterySelfConsumption	: strategy = everyChange, everyHour
      MonatSolarEdge_Aggregate_Month_Consumption	: strategy = everyChange, everyHour
      MonatSolarEdge_Aggregate_Month_Export	: strategy = everyChange, everyHour
      MonatSolarEdge_Aggregate_Month_Import	: strategy = everyChange, everyHour
      MonatSolarEdge_Aggregate_Month_Production	: strategy = everyChange, everyHour
      MonatSolarEdge_Aggregate_Month_SelfConsumptionCoverage	: strategy = everyChange, everyHour
      MonatSolarEdge_Aggregate_Month_SelfConsumptionForConsumption	: strategy = everyChange, everyHour
      MyStrom192168166_Online	: strategy = everyChange, everyHour
      NadiaIphoneArbeit192168171_Online	: strategy = everyChange, everyHour
      NadiaIphoneArbeit192168171_Zuletztgesehen	: strategy = everyChange, everyHour
      NadiaIpone11192168158_Online	: strategy = everyChange, everyHour
      NadiaIpone11192168158_Zuletztgesehen	: strategy = everyChange, everyHour
      NAS1921681180_Online	: strategy = everyChange, everyHour
      NordseiteBatterieladungTempSensor	: strategy = everyChange, everyHour
      NordseiteLuftfeuchtigkeitTempSensor	: strategy = everyChange, everyHour
      NordseiteTemperaturTempSensor	: strategy = everyChange, everyHour
      NTPServerZeitaktualisierung_DateTime	: strategy = everyChange, everyHour
      NTPServerZeitaktualisierung_String	: strategy = everyChange, everyHour
      openhab3192168160_Online	: strategy = everyChange, everyHour
      PhilipsHue192168140_Online	: strategy = everyChange, everyHour
      Raspberrymatic_192168134_DutyCycle	: strategy = everyChange, everyHour
      RauchmelderFlurEG_1_LOWBAT	: strategy = everyChange, everyHour
      RauchmelderFlurEG_State	: strategy = everyChange, everyHour
      RauchmelderWohnzimmer_1_LOWBAT	: strategy = everyChange, everyHour
      RauchmelderWohnzimmer_State	: strategy = everyChange, everyHour
      ReloadAllFromGateway	: strategy = everyChange, everyHour
      Rollo_Kueche_Level	: strategy = everyChange, everyHour
      RolloArbeitszimmer_Level	: strategy = everyChange, everyHour
      RolloArbeitszimmerklein_Level	: strategy = everyChange, everyHour
      RolloBad_Level	: strategy = everyChange, everyHour
      RolloBadKleinesFenster_Level	: strategy = everyChange, everyHour
      RolloGaesteBad_Level	: strategy = everyChange, everyHour
      RolloKinderzimmer_Level	: strategy = everyChange, everyHour
      RolloKinderzimmerklein_Level	: strategy = everyChange, everyHour
      RolloSchlafzimmer_Level	: strategy = everyChange, everyHour
      RolloWohnzimmerlinks_Level	: strategy = everyChange, everyHour
      RolloWohnzimmerMitte_Level	: strategy = everyChange, everyHour
      RolloWohnzimmerrechts_Level	: strategy = everyChange, everyHour
      RolloWohnzimmerseitlich_Level	: strategy = everyChange, everyHour
      RuleBewaesserungBlumenbeet	: strategy = everyChange, everyHour
      RuleBewaesserungKletterrosen	: strategy = everyChange, everyHour
      RuleBewaesserungObstbeet	: strategy = everyChange, everyHour
      RuleBewaesserungRasen	: strategy = everyChange, everyHour
      RuleBewaesserungTopfpflanzen	: strategy = everyChange, everyHour
      RuleUeberschuss_heizen_Badheizkoerper	: strategy = everyChange, everyHour
      Schlafzimmerhum_Humidity	: strategy = everyChange, everyHour
      Schlafzimmertemp_Batterieladung	: strategy = everyChange, everyHour
      Schlafzimmertemp_LastUpdated	: strategy = everyChange, everyHour
      Schlafzimmertemp_Temperature	: strategy = everyChange, everyHour
      Sensor_1_Batterieladung	: strategy = everyChange, everyHour
      Sensor_1_Bodenfeuchtigkeit	: strategy = everyChange, everyHour
      Sensor_1_Bodentemperatur	: strategy = everyChange, everyHour
      Sensor_1_Letzte_Aktualisierung_Zeitstempel	: strategy = everyChange, everyHour
      Sensor_1_Signalstarke	: strategy = everyChange, everyHour
      Sensor_10_Batterieladung	: strategy = everyChange, everyHour
      Sensor_10_Bodenfeuchtigkeit	: strategy = everyChange, everyHour
      Sensor_10_Bodentemperatur	: strategy = everyChange, everyHour
      Sensor_10_Letzte_Aktualisierung_Zeitstempel	: strategy = everyChange, everyHour
      Sensor_10_Signalstarke	: strategy = everyChange, everyHour
      Sensor_2_Batterieladung	: strategy = everyChange, everyHour
      Sensor_2_Bodenfeuchtigkeit	: strategy = everyChange, everyHour
      Sensor_2_Bodentemperatur	: strategy = everyChange, everyHour
      Sensor_2_Letzte_Aktualisierung_Zeitstempel	: strategy = everyChange, everyHour
      Sensor_2_Signalstarke	: strategy = everyChange, everyHour
      Sensor_3_Batterieladung	: strategy = everyChange, everyHour
      Sensor_3_Bodenfeuchtigkeit	: strategy = everyChange, everyHour
      Sensor_3_Bodentemperatur	: strategy = everyChange, everyHour
      Sensor_3_Letzte_Aktualisierung_Zeitstempel	: strategy = everyChange, everyHour
      Sensor_3_Signalstarke	: strategy = everyChange, everyHour
      Sensor_4_Batterieladung	: strategy = everyChange, everyHour
      Sensor_4_Bodenfeuchtigkeit	: strategy = everyChange, everyHour
      Sensor_4_Bodentemperatur	: strategy = everyChange, everyHour
      Sensor_4_Letzte_Aktualisierung_Zeitstempel	: strategy = everyChange, everyHour
      Sensor_4_Signalstarke	: strategy = everyChange, everyHour
      Sensor_5_Batterieladung	: strategy = everyChange, everyHour
      Sensor_5_Bodenfeuchtigkeit	: strategy = everyChange, everyHour
      Sensor_5_Bodentemperatur	: strategy = everyChange, everyHour
      Sensor_5_Letzte_Aktualisierung_Zeitstempel	: strategy = everyChange, everyHour
      Sensor_5_Signalstarke	: strategy = everyChange, everyHour
      Sensor_6_Batterieladung	: strategy = everyChange, everyHour
      Sensor_6_Bodenfeuchtigkeit	: strategy = everyChange, everyHour
      Sensor_6_Bodentemperatur	: strategy = everyChange, everyHour
      Sensor_6_Letzte_Aktualisierung_Zeitstempel	: strategy = everyChange, everyHour
      Sensor_6_Signalstarke	: strategy = everyChange, everyHour
      Sensor_7_Batterieladung	: strategy = everyChange, everyHour
      Sensor_7_Bodenfeuchtigkeit	: strategy = everyChange, everyHour
      Sensor_7_Bodentemperatur	: strategy = everyChange, everyHour
      Sensor_7_Letzte_Aktualisierung_Zeitstempel	: strategy = everyChange, everyHour
      Sensor_7_Signalstarke	: strategy = everyChange, everyHour
      Sensor_8_Batterieladung	: strategy = everyChange, everyHour
      Sensor_8_Bodenfeuchtigkeit	: strategy = everyChange, everyHour
      Sensor_8_Bodentemperatur	: strategy = everyChange, everyHour
      Sensor_8_Letzte_Aktualisierung_Zeitstempel	: strategy = everyChange, everyHour
      Sensor_8_Signalstarke	: strategy = everyChange, everyHour
      Sensor_9_Batterieladung	: strategy = everyChange, everyHour
      Sensor_9_Bodenfeuchtigkeit	: strategy = everyChange, everyHour
      Sensor_9_Bodentemperatur	: strategy = everyChange, everyHour
      Sensor_9_Letzte_Aktualisierung_Zeitstempel	: strategy = everyChange, everyHour
      Sensor_9_Signalstarke	: strategy = everyChange, everyHour
      shelly_plug_s_76_shellyplugsdec9de192168176_Betrieb	: strategy = everyChange, everyHour
      shelly_plug_s_76_shellyplugsdec9de192168176_Signalstarke	: strategy = everyChange, everyHour
      shelly_plug_s_76_shellyplugsdec9de192168176_Stromverbrauch	: strategy = everyChange, everyHour
      shelly_plug_s_77_shellyplugsddec9f192168177_Betrieb	: strategy = everyChange, everyHour
      shelly_plug_s_77_shellyplugsddec9f192168177_Signalstarke	: strategy = everyChange, everyHour
      shelly_plug_s_77_shellyplugsddec9f192168177_Stromverbrauch	: strategy = everyChange, everyHour
      shelly_plug_s_79_shellyplugsde2d09192168179_Betrieb	: strategy = everyChange, everyHour
      shelly_plug_s_79_shellyplugsde2d09192168179_Signalstarke	: strategy = everyChange, everyHour
      shelly_plug_s_79_shellyplugsde2d09192168179_Stromverbrauch	: strategy = everyChange, everyHour
      shelly_plug_s_80_shellyplugsde4aaa192168180_Betrieb	: strategy = everyChange, everyHour
      shelly_plug_s_80_shellyplugsde4aaa192168180_Signalstarke	: strategy = everyChange, everyHour
      shelly_plug_s_80_shellyplugsde4aaa192168180_Stromverbrauch	: strategy = everyChange, everyHour
      shelly_pug_s_83_shellyplugsa7558f192168183_Betrieb	: strategy = everyChange, everyHour
      shelly_pug_s_83_shellyplugsa7558f192168183_Signalstarke	: strategy = everyChange, everyHour
      shelly_pug_s_83_shellyplugsa7558f192168183_Stromverbrauch	: strategy = everyChange, everyHour
      shellyplugsQNAP192168155_Betrieb	: strategy = everyChange, everyHour
      shellyplugsQNAP192168155_BetriebsLED_aus	: strategy = everyChange, everyHour
      shellyplugsQNAP192168155_Gesamtverbrauch	: strategy = everyChange, everyHour
      shellyplugsQNAP192168155_Laufzeit	: strategy = everyChange, everyHour
      shellyplugsQNAP192168155_Leistung	: strategy = everyChange, everyHour
      shellyplugsQNAP192168155_Signalstarke	: strategy = everyChange, everyHour
      shellyplugsQNAP192168155_StatusLED_aus	: strategy = everyChange, everyHour
      SiemensEQ700Vollautomat_ActiveProgram	: strategy = everyChange, everyHour
      SiemensEQ700Vollautomat_BeanContainerEmpty	: strategy = everyChange, everyHour
      SiemensEQ700Vollautomat_Betrieb	: strategy = everyChange, everyHour
      SiemensEQ700Vollautomat_DripTrayFull	: strategy = everyChange, everyHour
      SiemensEQ700Vollautomat_LocalControlState	: strategy = everyChange, everyHour
      SiemensEQ700Vollautomat_OperationState	: strategy = everyChange, everyHour
      SiemensEQ700Vollautomat_ProgramActions	: strategy = everyChange, everyHour
      SiemensEQ700Vollautomat_ProgressState	: strategy = everyChange, everyHour
      SiemensEQ700Vollautomat_RemoteStartAllowanceState	: strategy = everyChange, everyHour
      SiemensEQ700Vollautomat_SelectedProgram	: strategy = everyChange, everyHour
      SiemensEQ700Vollautomat_WaterTankEmpty	: strategy = everyChange, everyHour
      SNMPQnap_cpuTemperature	: strategy = everyChange, everyHour
      SNMPQnap_diskCount	: strategy = everyChange, everyHour
      SNMPQnap_firmwareUpgradeAvailable	: strategy = everyChange, everyHour
      SNMPQnap_firmwareVersion	: strategy = everyChange, everyHour
      SNMPQnap_hdNumber	: strategy = everyChange, everyHour
      SNMPQnap_hdSmartInfo1	: strategy = everyChange, everyHour
      SNMPQnap_hdSmartInfo2	: strategy = everyChange, everyHour
      SNMPQnap_hdSmartInfo3	: strategy = everyChange, everyHour
      SNMPQnap_hdSmartInfo4	: strategy = everyChange, everyHour
      SNMPQnap_hdTemperature1	: strategy = everyChange, everyHour
      SNMPQnap_hdTemperature2	: strategy = everyChange, everyHour
      SNMPQnap_hdTemperature3	: strategy = everyChange, everyHour
      SNMPQnap_hdTemperature4	: strategy = everyChange, everyHour
      SNMPQnap_sysFanSpeed	: strategy = everyChange, everyHour
      SNMPQnap_systemCPUUsage	: strategy = everyChange, everyHour
      SNMPQnap_systemFreeMem	: strategy = everyChange, everyHour
      SNMPQnap_systemTemperature	: strategy = everyChange, everyHour
      SNMPQnap_systemTotalMem	: strategy = everyChange, everyHour
      SNMPQnap_systemUptime	: strategy = everyChange, everyHour
      SNMPQnap_sysVolumeFreeSizeDataVol1	: strategy = everyChange, everyHour
      SNMPQnap_sysVolumeFreeSizeSSD	: strategy = everyChange, everyHour
      SNMPQnap_sysVolumeFreeSizeUsbDisk1	: strategy = everyChange, everyHour
      SNMPQnap_sysVolumeFreeSizeUsbDisk2	: strategy = everyChange, everyHour
      SNMPQnap_sysVolumeTotalSizeDataVol1	: strategy = everyChange, everyHour
      SNMPQnap_sysVolumeTotalSizeSSD	: strategy = everyChange, everyHour
      SNMPQnap_sysVolumeTotalSizeUsbDisk1	: strategy = everyChange, everyHour
      SNMPQnap_sysVolumeTotalSizeUsbDisk2	: strategy = everyChange, everyHour
      Solarpanel_Betrieb	: strategy = everyChange, everyHour
      Solarpanel_Ertrag_Jahr	: strategy = everyChange, everyHour
      Solarpanel_Ertrag_Monat	: strategy = everyChange, everyHour
      Solarpanel_Ertrag_Tag	: strategy = everyChange, everyHour
      Solarpanel_Ertrag_Tag1	: strategy = everyChange, everyHour
      Solarpanel_Ertrag_Woche	: strategy = everyChange, everyHour
      Solarpanel_PowerConsumption	: strategy = everyChange, everyHour
      Solarpanel_Temperature	: strategy = everyChange, everyHour
      SpeedTestInternet_DownloadRate	: strategy = everyChange, everyHour
      SpeedTestInternet_Progress	: strategy = everyChange, everyHour
      SpeedTestInternet_TestEnd	: strategy = everyChange, everyHour
      SpeedTestInternet_TestRunning	: strategy = everyChange, everyHour
      SpeedTestInternet_TestStart	: strategy = everyChange, everyHour
      SpeedTestInternet_UploadRate	: strategy = everyChange, everyHour
      Speisehum_Humidity	: strategy = everyChange, everyHour
      Speisetemp_Batterieladung	: strategy = everyChange, everyHour
      Speisetemp_LastUpdated	: strategy = everyChange, everyHour
      Speisetemp_Temperature	: strategy = everyChange, everyHour
      SteckdoseEGOSRAM_Betrieb	: strategy = everyChange, everyHour
      SteckdoseKGOSRAM_Betrieb	: strategy = everyChange, everyHour
      Steckdosenleiste_Lidl_Betrieb_1	: strategy = everyChange, everyHour
      Steckdosenleiste_Lidl_Betrieb_2	: strategy = everyChange, everyHour
      Steckdosenleiste_Lidl_Betrieb_3	: strategy = everyChange, everyHour
      SteckdoseOGOSRAM_Betrieb	: strategy = everyChange, everyHour
      StrahlerGarten	: strategy = everyChange, everyHour
      Suedseitehum_Humidity	: strategy = everyChange, everyHour
      Suedseitetemp_Batterieladung	: strategy = everyChange, everyHour
      Suedseitetemp_LastUpdated	: strategy = everyChange, everyHour
      SuedseiteTemperatur	: strategy = everyChange, everyHour
      SvenPC192168127_Online	: strategy = everyChange, everyHour
      SvenS10192168159_Online	: strategy = everyChange, everyHour
      SvenS10192168159_Zuletztgesehen	: strategy = everyChange, everyHour
      SwitchbotMeter2_Batt	: strategy = everyChange, everyHour
      SwitchbotMeter2_Hum	: strategy = everyChange, everyHour
      SwitchbotMeter2_Temp	: strategy = everyChange, everyHour
      SwitchbotMeterPlus3_Batt	: strategy = everyChange, everyHour
      SwitchbotMeterPlus3_Hum	: strategy = everyChange, everyHour
      SwitchbotMeterPlus3_Temp	: strategy = everyChange, everyHour
      TagSolaredge_Aggregate_Day_BatterySelfConsumption	: strategy = everyChange, everyHour
      TagSolaredge_Aggregate_Day_Consumption	: strategy = everyChange, everyHour
      TagSolaredge_Aggregate_Day_Export	: strategy = everyChange, everyHour
      TagSolaredge_Aggregate_Day_Import	: strategy = everyChange, everyHour
      TagSolaredge_Aggregate_Day_Production	: strategy = everyChange, everyHour
      TagSolaredge_Aggregate_Day_SelfConsumptionCoverage	: strategy = everyChange, everyHour
      TagSolaredge_Aggregate_Day_SelfConsumptionForConsumption	: strategy = everyChange, everyHour
      Technikhum_Humidity	: strategy = everyChange, everyHour
      Techniktemp_Batterieladung	: strategy = everyChange, everyHour
      Techniktemp_LastUpdated	: strategy = everyChange, everyHour
      Techniktemp_Temperature	: strategy = everyChange, everyHour
      Temperatur_Terrasse_innen	: strategy = everyChange, everyHour
      Temperatur_Terrassenueberdachung	: strategy = everyChange, everyHour
      TemperaturSchuppen_Batterieladung	: strategy = everyChange, everyHour
      TemperaturSchuppen_LetzteAktualisierung	: strategy = everyChange, everyHour
      TemperaturSchuppen_Temperature	: strategy = everyChange, everyHour
      Terassenlicht_State	: strategy = everyChange, everyHour
      Thermomix192168124_Online	: strategy = everyChange, everyHour
      ThermostatAnkleideChildLock	: strategy = everyChange, everyHour
      ThermostatAnkleideDaysHoliday	: strategy = everyChange, everyHour
      ThermostatAnkleideHeatingState	: strategy = everyChange, everyHour
      ThermostatAnkleidePower	: strategy = everyChange, everyHour
      ThermostatAnkleideSettempHoliday	: strategy = everyChange, everyHour
      ThermostatAnkleideTempCurrent	: strategy = everyChange, everyHour
      ThermostatArbeitszimmerChildLock	: strategy = everyChange, everyHour
      ThermostatArbeitszimmerDaysHoliday	: strategy = everyChange, everyHour
      ThermostatArbeitszimmerHeatingState	: strategy = everyChange, everyHour
      ThermostatArbeitszimmerPower	: strategy = everyChange, everyHour
      ThermostatArbeitszimmerRoomTempCompensate	: strategy = everyChange, everyHour
      ThermostatArbeitszimmerSettempHoliday	: strategy = everyChange, everyHour
      ThermostatArbeitszimmerTempCurrent	: strategy = everyChange, everyHour
      ThermostatBadChildLock	: strategy = everyChange, everyHour
      ThermostatBadDaysHoliday	: strategy = everyChange, everyHour
      ThermostatBadHeatingState	: strategy = everyChange, everyHour
      ThermostatBadPower	: strategy = everyChange, everyHour
      ThermostatBadRoomTempCompensate	: strategy = everyChange, everyHour
      ThermostatBadSettempHoliday	: strategy = everyChange, everyHour
      ThermostatBadTempCurrent	: strategy = everyChange, everyHour
      ThermostatFlurEGChildLock	: strategy = everyChange, everyHour
      ThermostatFlurEGDaysHoliday	: strategy = everyChange, everyHour
      ThermostatFlurEGHeatingState	: strategy = everyChange, everyHour
      ThermostatFlurEGPower	: strategy = everyChange, everyHour
      ThermostatFlurEGRoomTempCompensate	: strategy = everyChange, everyHour
      ThermostatFlurEGSettempHoliday	: strategy = everyChange, everyHour
      ThermostatFlurEGTempCurrent	: strategy = everyChange, everyHour
      ThermostatFlurOGChildLock	: strategy = everyChange, everyHour
      ThermostatFlurOGDaysHoliday	: strategy = everyChange, everyHour
      ThermostatFlurOGHeatingState	: strategy = everyChange, everyHour
      ThermostatFlurOGPower	: strategy = everyChange, everyHour
      ThermostatFlurOGRoomTempCompensate	: strategy = everyChange, everyHour
      ThermostatFlurOGSettempHoliday	: strategy = everyChange, everyHour
      ThermostatFlurOGTempCurrent	: strategy = everyChange, everyHour
      ThermostatKinderzimmerChildLock	: strategy = everyChange, everyHour
      ThermostatKinderzimmerDaysHoliday	: strategy = everyChange, everyHour
      ThermostatKinderzimmerHeatingState	: strategy = everyChange, everyHour
      ThermostatKinderzimmerPower	: strategy = everyChange, everyHour
      ThermostatKinderzimmerRoomTempCompensate	: strategy = everyChange, everyHour
      ThermostatKinderzimmerSettempHoliday	: strategy = everyChange, everyHour
      ThermostatKinderzimmerTempCurrent	: strategy = everyChange, everyHour
      ThermostatKuecheChildLock	: strategy = everyChange, everyHour
      ThermostatKuecheDaysHoliday	: strategy = everyChange, everyHour
      ThermostatKuecheHeatingState	: strategy = everyChange, everyHour
      ThermostatKuechePower	: strategy = everyChange, everyHour
      ThermostatKuecheRoomTempCompensate	: strategy = everyChange, everyHour
      ThermostatKuecheSettempHoliday	: strategy = everyChange, everyHour
      ThermostatKuecheTempCurrent	: strategy = everyChange, everyHour
      ThermostatSchlafzimmerChildLock	: strategy = everyChange, everyHour
      ThermostatSchlafzimmerDaysHoliday	: strategy = everyChange, everyHour
      ThermostatSchlafzimmerHeatingState	: strategy = everyChange, everyHour
      ThermostatSchlafzimmerPower	: strategy = everyChange, everyHour
      ThermostatSchlafzimmerRoomTempCompensate	: strategy = everyChange, everyHour
      ThermostatSchlafzimmerSettempHoliday	: strategy = everyChange, everyHour
      ThermostatSchlafzimmerTempCurrent	: strategy = everyChange, everyHour
      ThermostatWCChildLock	: strategy = everyChange, everyHour
      ThermostatWCDaysHoliday	: strategy = everyChange, everyHour
      ThermostatWCHeatingState	: strategy = everyChange, everyHour
      ThermostatWCPower	: strategy = everyChange, everyHour
      ThermostatWCRoomTempCompensate	: strategy = everyChange, everyHour
      ThermostatWCSettempHoliday	: strategy = everyChange, everyHour
      ThermostatWCTempCurrent	: strategy = everyChange, everyHour
      ThermostatWohnzimmerChildLock	: strategy = everyChange, everyHour
      ThermostatWohnzimmerDaysHoliday	: strategy = everyChange, everyHour
      ThermostatWohnzimmerHeatingState	: strategy = everyChange, everyHour
      ThermostatWohnzimmerPower	: strategy = everyChange, everyHour
      ThermostatWohnzimmerRoomTempCompensate	: strategy = everyChange, everyHour
      ThermostatWohnzimmerSettempHoliday	: strategy = everyChange, everyHour
      ThermostatWohnzimmerTempCurrent	: strategy = everyChange, everyHour
      Toniebox192168126_Online	: strategy = everyChange, everyHour
      WANConnectionDeviceFRITZBox7490_ConnectionStatus_ppp	: strategy = everyChange, everyHour
      WANConnectionDeviceFRITZBox7490_Uptime_ppp	: strategy = everyChange, everyHour
      WANConnectionDeviceFRITZBox7490_WANPPPIPAddress	: strategy = everyChange, everyHour
      WANDeviceFRITZBox7490_DSLCurrDownstreamRate	: strategy = everyChange, everyHour
      WANDeviceFRITZBox7490_DSLCurrUpstreamRate	: strategy = everyChange, everyHour
      WANDeviceFRITZBox7490_DSLEnable	: strategy = everyChange, everyHour
      WANDeviceFRITZBox7490_DSLMaxDownstreamRate	: strategy = everyChange, everyHour
      WANDeviceFRITZBox7490_DSLMaxUpstreamRate	: strategy = everyChange, everyHour
      WANDeviceFRITZBox7490_LinkStatus	: strategy = everyChange, everyHour
      WANDeviceFRITZBox7490_MaxDownstreamRate	: strategy = everyChange, everyHour
      WANDeviceFRITZBox7490_MaxUpstreamRate	: strategy = everyChange, everyHour
      WANDeviceFRITZBox7490_TotalBytesReceived	: strategy = everyChange, everyHour
      WANDeviceFRITZBox7490_TotalBytesSent	: strategy = everyChange, everyHour
      WCBatterieladungTempSensor	: strategy = everyChange, everyHour
      WCLuftfeuchtigkeitTempSensor	: strategy = everyChange, everyHour
      WCTemperaturTempSensor	: strategy = everyChange, everyHour
      WiFi_Temperature__Humidity_Sensor_battery_percentage	: strategy = everyChange, everyHour
      WiFi_Temperature__Humidity_Sensor_battery_state	: strategy = everyChange, everyHour
      WiFi_Temperature__Humidity_Sensor_va_humidity	: strategy = everyChange, everyHour
      WiFi_Temperature__Humidity_Sensor_va_temperature	: strategy = everyChange, everyHour
      WocheSolarEdge_Aggregate_Week_BatterySelfConsumption	: strategy = everyChange, everyHour
      WocheSolarEdge_Aggregate_Week_Consumption	: strategy = everyChange, everyHour
      WocheSolarEdge_Aggregate_Week_Export	: strategy = everyChange, everyHour
      WocheSolarEdge_Aggregate_Week_Import	: strategy = everyChange, everyHour
      WocheSolarEdge_Aggregate_Week_Production	: strategy = everyChange, everyHour
      WocheSolarEdge_Aggregate_Week_SelfConsumptionCoverage	: strategy = everyChange, everyHour
      WocheSolarEdge_Aggregate_Week_SelfConsumptionForConsumption	: strategy = everyChange, everyHour
      WohnzimmerBatterieladungTempSensor	: strategy = everyChange, everyHour
      Wohnzimmerhum_Humidity	: strategy = everyChange, everyHour
      WohnzimmerLuftfeuchtigkeitTempSensor	: strategy = everyChange, everyHour
      Wohnzimmertemp_Batterieladung	: strategy = everyChange, everyHour
      Wohnzimmertemp_LastUpdated	: strategy = everyChange, everyHour
      Wohnzimmertemp_Temperature	: strategy = everyChange, everyHour
      WohnzimmerTemperaturTempSensor	: strategy = everyChange, everyHour
      Zwetschge_Helligkeit	: strategy = everyChange, everyHour


    
}
die rrd4ja habe ich auf standard belassen.

Code: Alles auswählen

configurations:
  - items:
      - "*"
    strategies:
      - restoreOnStartup
      - everyChange
      - everyMinute
    filters: []
cronStrategies:
  - name: everyMinute
    cronExpression: 0 * * * * ?
defaultStrategies:
  - restoreOnStartup
  - everyChange
  - everyMinute
thresholdFilters: []
timeFilters: []
equalsFilters: []
includeFilters: []
Inder Rule die Klammern und influx entfernt da influx Standard persistence in OH4.2.0 ist

Code: Alles auswählen

rule "Tagesertrag persistieren"
when
    Time cron "58 59 23 * * ?" // täglich um 23:59:58 Uhr
then
    if(Solarpanel_Ertrag_Tag.state instanceof Number) {
        Solarpanel_Ertrag_Speichern.postUpdate(Solarpanel_Ertrag_Tag.state as Number)
        Thread.sleep(250)
        Solarpanel_Ertrag_Speichern.persist
    } 
end

Wie bekomme ich ich die überflüssigen werte wieder aus der influx raus?
Screenshot (454).png
Screenshot (455).png
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
openhab 4.2.0 Docker (Qnap)
influxDB 1.8.2 Docker (Qnap)
Grafana v10.2.2 Docker (Qnap)
Deconz 2.19.03 Docker (Qnap)
Homematic (Raspberrymatic Pi 3B+)
Grafana, Phoscon, Shelly, Gardena, Tuya
Camera IP Binding mit ffmpeg
Solaredge PV Anlage mit 12kW Speicher (solaredgeBinding)
u.v.m.

Lg zinnik

Benutzeravatar
udo1toni
Beiträge: 15249
Registriert: 11. Apr 2018 18:05
Answers: 243
Wohnort: Darmstadt

Re: SOLVED - Verbrauch von heute (seit Mitternacht) anzeigen

Beitrag von udo1toni »

zinnik hat geschrieben: 7. Nov 2024 02:30 Wie bekomme ich ich die überflüssigen werte wieder aus der influx raus?
Von Grafana aus hast Du nur lesenden Zugriff, ebenso kann openHAB keine Werte löschen. In der InfluxDB UI gibt es dafür leider auch keine Möglichkeit (oder zumindest ist mir keine bekannte).
Möglichkeit 1 wäre also, die Daten Daten sein zu lassen und in openHAB einfach ein neues Item anzulegen, mit anderem Namen, und auf dieses zu verweisen, dann erledigt sich das Problem von selbst. Die überflüssigen Daten ("altes" Item) werden dann von InfluxDB gelöscht, wenn der Aufbewahrungszeitraum überschritten ist.
Möglichkeit 2 wäre der Zugriff über das InfluxDB CLI. Laut Signatur nutzt Du InfluxDB 1.8.2, ich nutze schon geraume Zeit InfluxDB 2.7.5, das heißt, mein Script, welches ich zu diesem Zweck nutze, hilft Dir nur bedingt:

Code: Alles auswählen

##! /bin/bash

TOKEN="ganz geheime Zeichenkette mit Buchstaben-Zahlensalat"
ORG="privat"
BUCKET="openHAB"
START="2024-01-01T00:00:00Z"
STOP="2024-11-07T12:00:00Z"

influx delete --bucket $BUCKET --predicate '_measurement="myItem' --start $START --stop $STOP --org $ORG --token $TOKEN
Der eigentliche Befehl ist also ein Aufruf von der Kommandozeile und es müssen verschiedene Parameter übergeben werden, eben in welchem Bucket für welchen Zeitraum welche measurements gelöscht werden sollen. Das Token bekommt man in v2 über die UI.
Wenn ich gerade so darüber nachdenke, hat v1.8.2 (default) gar keine Webschnittstelle... Und Token gibt es da auch noch nicht, d.h. Du musst Dich mit irgendeinem Admin-Passwort an der CLI anmelden.
Die Löschbefehle kannst Du natürlich auch interaktiv absetzen, die Parameter musst Du aber trotzdem einhalten.
Wenn Du jeweils einen einzelnen Wert erhalten willst, ist ein bash Script mit ziemlicher Sicherheit die einzig vernünftige Variante, das heißt, Du musst halt schauen, wie das über die CLI gescriptet geht.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

zinnik
Beiträge: 190
Registriert: 7. Sep 2021 11:28
Answers: 0

Re: SOLVED - Verbrauch von heute (seit Mitternacht) anzeigen

Beitrag von zinnik »

Mich würde schon mal interessieren wie das mit dem löschen geht in der Cli leider komme ich da nicht drauf

das wären meine config daten für influx1.8.2

Code: Alles auswählen

INFLUXDB_ADMIN_PASSWORD	sven****
INFLUXDB_ADMIN_USER	admin
INFLUXDB_DB	OpenHAB3_DB
INFLUXDB_HTTP_AUTH_ENABLED	TRUE
INFLUXDB_HTTP_ENABLED	TRUE
INFLUXDB_READ_USER	grafana
INFLUXDB_READ_USER_PASSWORD	grafana
INFLUXDB_VERSION	1.8.2
INFLUXDB_WRITE_USER	openhab
INFLUXDB_WRITE_USER_PASSWORD	openhab
Mit diesen Befehlen habe ich versucht drauf zukommen, aber hat leider nicht geklappt erhalt immer die meldung:

ERR: unable to parse authentication credentials
Warning: It is possible this error is due to not setting a database.
Please set a database with the command "use <database>".

Code: Alles auswählen

influx -username 'admin' -password 'sven****'

USE OpenHAB3_DB
DELETE FROM "Solarpanel_Ertrag_Speichern" WHERE time = '2024-11-06T23:58:00Z'

openhab 4.2.0 Docker (Qnap)
influxDB 1.8.2 Docker (Qnap)
Grafana v10.2.2 Docker (Qnap)
Deconz 2.19.03 Docker (Qnap)
Homematic (Raspberrymatic Pi 3B+)
Grafana, Phoscon, Shelly, Gardena, Tuya
Camera IP Binding mit ffmpeg
Solaredge PV Anlage mit 12kW Speicher (solaredgeBinding)
u.v.m.

Lg zinnik

Antworten