Plugin ‚db_addon‘ Konfiguration
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