Plugin ‚db_addon‘ Konfiguration

plugin logo

Im folgenden sind etwaige Anforderungen und unterstützte Hardware beschrieben. Danach folgt die Beschreibung, wie das Plugin db_addon konfiguriert wird. Außerdem ist im folgenden beschrieben, wie das Plugin in den Item Definitionen genutzt werden kann. [1]

Es handelt sich bei diesem Plugin um ein system Plugin.

Beschreibung

Anforderungen

  • Minimum SmartHomeNG Version: 1.9.3.5

  • Minimum Python Version: 3.9

Konfiguration

Im folgenden ist beschrieben, wie das Plugin db_addon konfiguriert wird. Außerdem ist im folgenden beschrieben, wie das Plugin in den Item Definitionen genutzt werden kann.

Parameter

Das Plugin verfügt über folgende Parameter, die in der Datei ../etc/plugin.yaml konfiguriert werden:

database_plugin_config

  • Datentyp: str

  • Standardwert: database

ignore_0

  • Datentyp: list(str)

  • Standardwert: []

lock_db_for_query

  • Datentyp: bool

  • Standardwert: False

optimize_value_filter

  • Datentyp: bool

  • Standardwert: True

pause_item

  • Datentyp: str

startup_run_delay

  • Datentyp: int

  • Standardwert: 60

use_oldest_entry

  • Datentyp: bool

  • Standardwert: False

value_filter

  • Datentyp: dict

Item Attribute

Das Plugin unterstützt folgende Item Attribute, die in den Dateien im Verzeichnis ../items verwendet werden:

db_addon_admin

  • Datentyp: str

  • Mögliche Werte:

    • suspend

    • recalc_all

    • clean_cache_values

db_addon_database_item

  • Datentyp: str

db_addon_fct

  • Datentyp: str

  • Mögliche Werte:

    • verbrauch_heute

    • verbrauch_tag

    • verbrauch_woche

    • verbrauch_monat

    • verbrauch_jahr

    • verbrauch_last_24h

    • verbrauch_last_7d

    • verbrauch_heute_minus1

    • verbrauch_heute_minus2

    • verbrauch_heute_minus3

    • verbrauch_heute_minus4

    • verbrauch_heute_minus5

    • verbrauch_heute_minus6

    • verbrauch_heute_minus7

    • verbrauch_heute_minus8

    • verbrauch_tag_minus1

    • verbrauch_tag_minus2

    • verbrauch_tag_minus3

    • verbrauch_tag_minus4

    • verbrauch_tag_minus5

    • verbrauch_tag_minus6

    • verbrauch_tag_minus7

    • verbrauch_tag_minus8

    • verbrauch_woche_minus1

    • verbrauch_woche_minus2

    • verbrauch_woche_minus3

    • verbrauch_woche_minus4

    • verbrauch_monat_minus1

    • verbrauch_monat_minus2

    • verbrauch_monat_minus3

    • verbrauch_monat_minus4

    • verbrauch_monat_minus12

    • verbrauch_jahr_minus1

    • verbrauch_jahr_minus2

    • verbrauch_jahr_minus3

    • verbrauch_rolling_12m_heute_minus1

    • verbrauch_rolling_12m_tag_minus1

    • verbrauch_rolling_12m_woche_minus1

    • verbrauch_rolling_12m_monat_minus1

    • verbrauch_rolling_12m_jahr_minus1

    • verbrauch_jahreszeitraum_minus1

    • verbrauch_jahreszeitraum_minus2

    • verbrauch_jahreszeitraum_minus3

    • zaehlerstand_heute_minus1

    • zaehlerstand_heute_minus2

    • zaehlerstand_heute_minus3

    • zaehlerstand_tag_minus1

    • zaehlerstand_tag_minus2

    • zaehlerstand_tag_minus3

    • zaehlerstand_woche_minus1

    • zaehlerstand_woche_minus2

    • zaehlerstand_woche_minus3

    • zaehlerstand_monat_minus1

    • zaehlerstand_monat_minus2

    • zaehlerstand_monat_minus3

    • zaehlerstand_jahr_minus1

    • zaehlerstand_jahr_minus2

    • zaehlerstand_jahr_minus3

    • minmax_last_24h_min

    • minmax_last_24h_max

    • minmax_last_24h_avg

    • minmax_last_7d_min

    • minmax_last_7d_max

    • minmax_last_7d_avg

    • minmax_heute_min

    • minmax_heute_max

    • minmax_heute_avg

    • minmax_heute_minus1_min

    • minmax_heute_minus1_max

    • minmax_heute_minus1_avg

    • minmax_heute_minus2_min

    • minmax_heute_minus2_max

    • minmax_heute_minus2_avg

    • minmax_heute_minus3_min

    • minmax_heute_minus3_max

    • minmax_heute_minus3_avg

    • minmax_tag_min

    • minmax_tag_max

    • minmax_tag_avg

    • minmax_tag_minus1_min

    • minmax_tag_minus1_max

    • minmax_tag_minus1_avg

    • minmax_tag_minus2_min

    • minmax_tag_minus2_max

    • minmax_tag_minus2_avg

    • minmax_tag_minus3_min

    • minmax_tag_minus3_max

    • minmax_tag_minus3_avg

    • minmax_woche_min

    • minmax_woche_max

    • minmax_woche_minus1_min

    • minmax_woche_minus1_max

    • minmax_woche_minus1_avg

    • minmax_woche_minus2_min

    • minmax_woche_minus2_max

    • minmax_woche_minus2_avg

    • minmax_monat_min

    • minmax_monat_max

    • minmax_monat_minus1_min

    • minmax_monat_minus1_max

    • minmax_monat_minus1_avg

    • minmax_monat_minus2_min

    • minmax_monat_minus2_max

    • minmax_monat_minus2_avg

    • minmax_jahr_min

    • minmax_jahr_max

    • minmax_jahr_minus1_min

    • minmax_jahr_minus1_max

    • minmax_jahr_minus1_avg

    • tagesmitteltemperatur_heute

    • tagesmitteltemperatur_heute_minus1

    • tagesmitteltemperatur_heute_minus2

    • tagesmitteltemperatur_heute_minus3

    • tagesmitteltemperatur_tag

    • tagesmitteltemperatur_tag_minus1

    • tagesmitteltemperatur_tag_minus2

    • tagesmitteltemperatur_tag_minus3

    • serie_minmax_monat_min_15m

    • serie_minmax_monat_max_15m

    • serie_minmax_monat_avg_15m

    • serie_minmax_woche_min_30w

    • serie_minmax_woche_max_30w

    • serie_minmax_woche_avg_30w

    • serie_minmax_tag_min_30d

    • serie_minmax_tag_max_30d

    • serie_minmax_tag_avg_30d

    • serie_verbrauch_tag_30d

    • serie_verbrauch_woche_30w

    • serie_verbrauch_monat_18m

    • serie_zaehlerstand_tag_30d

    • serie_zaehlerstand_woche_30w

    • serie_zaehlerstand_monat_18m

    • serie_waermesumme_monat_24m

    • serie_kaeltesumme_monat_24m

    • serie_tagesmittelwert_0d

    • serie_tagesmittelwert_stunde_0d

    • serie_tagesmittelwert_stunde_30_0d

    • serie_tagesmittelwert_tag_stunde_30d

    • general_oldest_value

    • general_oldest_log

    • kaeltesumme

    • waermesumme

    • gruenlandtempsumme

    • wachstumsgradtage

    • wuestentage

    • heisse_tage

    • tropennaechte

    • sommertage

    • heiztage

    • vegetationstage

    • frosttage

    • eistage

    • tagesmitteltemperatur

    • db_request

    • minmax

    • minmax_last

    • verbrauch

    • zaehlerstand

db_addon_ignore_value

  • Datentyp: num

db_addon_ignore_value_list

  • Datentyp: list(str)

db_addon_info

  • Datentyp: str

  • Mögliche Werte:

    • db_version

db_addon_params

  • Datentyp: str

db_addon_params_dict

  • Datentyp: dict

db_addon_startup

  • Datentyp: bool

Item-Structs

Das Plugin stellt die folgenden Item-Structs zur Verfügung. Diese Informationen sind aus der plugin.yaml entnommen und möglicherweise nicht vollständig.

minmax_1

Struct für Auswertung der Wertehistorie bei schwankenden Werten wie bspw. Temperatur oder Leistung (Teil 1)

  • minmax_1 (foo, Struct für Auswertung der Wertehistorie bei schwankenden Werten wie bspw. Temperatur oder Leistung (Teil 1))
    • tag_min (num, Minimaler Wert seit Tagesbeginn)

    • tag_max (num, Maximaler Wert seit Tagesbeginn)

    • tag_avg (num, Maximaler Wert seit Tagesbeginn)

    • last24h_min (num, Minimaler Wert in den letzten 24h (gleitend))

    • last24h_max (num, Maximaler Wert in den letzten 24h (gleitend))

    • woche_min (num, Minimaler Wert seit Wochenbeginn)

    • woche_max (num, Maximaler Wert seit Wochenbeginn)

    • monat_min (num, Minimaler Wert seit Monatsbeginn)

    • monat_max (num, Maximaler Wert seit Monatsbeginn)

    • jahr_min (num, Minimaler Wert seit Jahresbeginn)

    • jahr_max (num, Maximaler Wert seit Jahresbeginn)

    • tag_minus1_min (num, Minimaler Wert gestern)

    • tag_minus1_max (num, Maximaler Wert gestern)

    • tag_minus1_avg (num, Durchschnittlicher Wert gestern)

    • woche_minus1_min (num, Minimaler Wert in der Vorwoche)

    • woche_minus1_max (num, Maximaler Wert in der Vorwoche)

    • woche_minus1_avg (num, Durchschnittlicher Wert in der Vorwoche)

    • monat_minus1_min (num, Minimaler Wert im Vormonat)

    • monat_minus1_max (num, Maximaler Wert im Vormonat)

    • monat_minus1_avg (num, Durchschnittlicher Wert im Vormonat)

    • jahr_minus1_min (num, Minimaler Wert im Vorjahr)

    • jahr_minus1_max (num, Maximaler Wert im Vorjahr)

minmax_2

Struct für Auswertung der Wertehistorie bei schwankenden Werten wie bspw. Temperatur oder Leistung (Teil 2)

  • minmax_2 (foo, Struct für Auswertung der Wertehistorie bei schwankenden Werten wie bspw. Temperatur oder Leistung (Teil 2))
    • tag_minus2_min (num, Minimaler Wert vorgestern)

    • tag_minus2_max (num, Maximaler Wert vorgestern)

    • tag_minus2_avg (num, Durchschnittlicher Wert vorgestern)

    • tag_minus3_min (num, Minimaler Wert vor 3 Tagen)

    • tag_minus3_max (num, Maximaler Wert vor 3 Tagen)

    • tag_minus3_avg (num, Durchschnittlicher Wert vor 3 Tagen)

    • woche_minus2_min (num, Minimaler Wert in der Woche vor 2 Wochen)

    • woche_minus2_max (num, Maximaler Wert in der Woche vor 2 Wochen)

    • woche_minus2_avg (num, Durchschnittlicher Wert in der Woche vor 2 Wochen)

    • monat_minus2_min (num, Minimaler Wert im Monat vor 2 Monaten)

    • monat_minus2_max (num, Maximaler Wert im Monat vor 2 Monaten)

    • monat_minus2_avg (num, Durchschnittlicher Wert im Monat vor 2 Monaten)

verbrauch_1

Struct für Verbrauchsauswertung bei Zählern mit stetig ansteigendem Zählerstand (Teil 1)

  • verbrauch_1 (foo, Struct für Verbrauchsauswertung bei Zählern mit stetig ansteigendem Zählerstand (Teil 1))
    • verbrauch_tag (num, Verbrauch am heutigen Tag)

    • verbrauch_last_24h (num, Verbrauch innerhalb der letzten 24h)

    • verbrauch_woche (num, Verbrauch seit Wochenbeginn)

    • verbrauch_monat (num, Verbrauch seit Monatsbeginn)

    • verbrauch_jahr (num, Verbrauch seit Jahresbeginn)

    • verbrauch_rolling_12m (num, Verbrauch innerhalb der letzten 12 Monate ausgehend von gestern)

    • verbrauch_tag_minus1 (num, Verbrauch gestern)

    • verbrauch_tag_minus2 (num, Verbrauch vorgestern)

    • verbrauch_tag_minus3 (num, Verbrauch vor 3 Tagen)

    • verbrauch_woche_minus1 (num, Verbrauch in der Vorwoche)

    • verbrauch_woche_minus2 (num, Verbrauch vor 2 Wochen)

    • verbrauch_monat_minus1 (num, Verbrauch im Vormonat)

    • verbrauch_monat_minus12 (num, Verbrauch vor 12 Monaten)

    • verbrauch_vorjahreszeitraum (num, Verbrauch im Jahreszeitraum 1.1. bis jetzt vor einem Jahr)

    • verbrauch_verbrauch_rolling_12m_woche_minus1 (num, Verbrauch innerhalb der letzten 12 Monate ausgehend vom Ende letzter Woche)

verbrauch_2

Struct für Verbrauchsauswertung bei Zählern mit stetig ansteigendem Zählerstand (Teil 2)

  • verbrauch_2 (foo, Struct für Verbrauchsauswertung bei Zählern mit stetig ansteigendem Zählerstand (Teil 2))
    • verbrauch_tag_minus4 (num, Verbrauch vor 4 Tagen)

    • verbrauch_tag_minus5 (num, Verbrauch vor 5 Tagen)

    • verbrauch_tag_minus6 (num, Verbrauch vor 6 Tagen)

    • verbrauch_tag_minus7 (num, Verbrauch vor 7 Tagen)

    • verbrauch_tag_minus8 (num, Verbrauch vor 8 Tagen)

    • verbrauch_woche_minus3 (num, Verbrauch vor 3 Wochen)

    • verbrauch_woche_minus4 (num, Verbrauch vor 4 Wochen)

    • verbrauch_monat_minus2 (num, Verbrauch vor 2 Monaten)

    • verbrauch_monat_minus3 (num, Verbrauch vor 3 Monaten)

    • verbrauch_monat_minus4 (num, Verbrauch vor 4 Monaten)

zaehlerstand_1

Struct für die Erfassung von Zählerständen zu bestimmten Zeitpunkten bei Zählern mit stetig ansteigendem Zählerstand

  • zaehlerstand_1 (foo, Struct für die Erfassung von Zählerständen zu bestimmten Zeitpunkten bei Zählern mit stetig ansteigendem Zählerstand)
    • zaehlerstand_gestern (num, Zählerstand zum Ende des gestrigen Tages)

    • zaehlerstand_woche_minus1 (num, Zählerstand zum Ende der vorigen Woche)

    • zaehlerstand_monat_minus1 (num, Zählerstand zum Ende des Vormonates)

    • zaehlerstand_monat_minus2 (num, Zählerstand zum Monatsende vor 2 Monaten)

    • zaehlerstand_monat_minus3 (num, Zählerstand zum Monatsende vor 3 Monaten)

    • zaehlerstand_jahr_minus1 (num, Zählerstand am Ende des vorigen Jahres)

Logik Parameter

Das Plugin verfügt über folgende Parameter, die in der Datei ../etc/logic.yaml konfiguriert werden:

Keine Logik Parameter in den Metadaten beschrieben - Bitte in der README nachsehen (siehe Fußnote)

Plugin Functions

Das Plugin verfügt über folgende öffentliche Funktionen, die z.B. in Logiken aufgerufen werden können.

db_version()

  • Ergebnistyp der Funktion: str

fetch_log(func, item, timeframe, start, end, count, group, group2)

  • Ergebnistyp der Funktion: list

func
  • Datentyp: str

  • Mögliche Werte:

    • min

    • max

    • sum

    • on

    • integrate

    • sum_max

    • sum_avg

    • sum_min_neg

    • diff_max

item
  • Datentyp: foo

timeframe
  • Datentyp: str

  • Mögliche Werte:

    • day

    • week

    • month

    • year

start
  • Datentyp: int

end
  • Datentyp: int

count
  • Datentyp: int

group
  • Datentyp: str

  • Mögliche Werte:

    • day

    • week

    • month

    • year

group2
  • Datentyp: str

  • Mögliche Werte:

    • day

    • week

    • month

    • year

suspend()

  • Ergebnistyp der Funktion: bool