aboutsummaryrefslogtreecommitdiffstats
path: root/homepage-services.yaml
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-08-31 09:49:50 +0200
committerDanilo M. <danix@danix.xyz>2026-08-31 09:49:50 +0200
commit135115b27ad415865458f20965b0e14253eba0ec (patch)
tree1503f933c342f134d6b4db8808dcf0ebcbc09a84 /homepage-services.yaml
downloadtasmota-dash-135115b27ad415865458f20965b0e14253eba0ec.tar.gz
tasmota-dash-135115b27ad415865458f20965b0e14253eba0ec.zip
feat: aggregate five Tasmota plugs with cost and daily historyHEADmaster
Proxy Tasmota energy JSON into Homepage's customapi widget, which can render JSON but cannot do arithmetic. Applies the tariff, sums across plugs, and records the per-day history the plugs do not keep. Plugs are fetched in parallel; sequential polling would stack five timeouts into a 25s hang. An offline plug is reported rather than counted as zero, so a dead sensor cannot read as "consumed nothing". Tasmota exposes only Today/Yesterday/Total, so each poll writes yesterday's finished kWh into SQLite keyed (day, plug), making repeat polls and restarts idempotent. Display strings are preformatted server-side: Homepage's locale formatting renders 1593 W as an ambiguous "1,593", and its widget has no columns, so pairing kWh with its cost in one value is what keeps the cards compact.
Diffstat (limited to 'homepage-services.yaml')
-rw-r--r--homepage-services.yaml126
1 files changed, 126 insertions, 0 deletions
diff --git a/homepage-services.yaml b/homepage-services.yaml
new file mode 100644
index 0000000..2ee00e6
--- /dev/null
+++ b/homepage-services.yaml
@@ -0,0 +1,126 @@
+# Append to Homepage's services.yaml. Replaces the old single "Presa Tasmota" entry
+# under "Other Local Services" - delete that one.
+#
+# Layout (total on its own row, the 5 plugs on the row below) is set in
+# settings.yaml, not here. See homepage-settings.yaml.
+
+- Consumi:
+ - Totale:
+ icon: mdi-flash
+ href: http://127.0.0.1:8099/graph
+ description: Tutte le prese - consumo e costo
+ widget:
+ type: customapi
+ url: http://127.0.0.1:8099/total
+ refreshInterval: 10000
+ display: list
+ mappings:
+ - field: power_fmt
+ label: Potenza attuale
+ - field: today_fmt
+ label: Oggi
+ - field: yesterday_fmt
+ label: Ieri
+ - field: last7_fmt
+ label: Ultimi 7 giorni
+ - field: last30_fmt
+ label: Ultimi 30 giorni
+ - field: total_fmt
+ label: Storico
+ - field: plugs_ok
+ label: Prese online
+ format: number
+
+- Prese:
+ - Condizionatore:
+ icon: mdi-air-conditioner
+ href: http://172.16.34.176/
+ #description: NOUS A1T
+ widget:
+ type: customapi
+ url: http://127.0.0.1:8099/ac
+ refreshInterval: 10000
+ display: list
+ mappings:
+ - field: power_fmt
+ label: Ora
+ - field: today_fmt
+ label: Oggi
+ - field: yesterday_fmt
+ label: Ieri
+ - field: total_fmt
+ label: Storico
+
+ - Lavatrice:
+ icon: mdi-washing-machine
+ href: http://172.16.34.127/
+ widget:
+ type: customapi
+ url: http://127.0.0.1:8099/washer
+ refreshInterval: 10000
+ display: list
+ mappings:
+ - field: power_fmt
+ label: Ora
+ - field: today_fmt
+ label: Oggi
+ - field: yesterday_fmt
+ label: Ieri
+ - field: total_fmt
+ label: Storico
+
+ - Lavastoviglie:
+ icon: mdi-dishwasher
+ href: http://172.16.34.149/
+ widget:
+ type: customapi
+ url: http://127.0.0.1:8099/dishwasher
+ refreshInterval: 10000
+ display: list
+ mappings:
+ - field: power_fmt
+ label: Ora
+ - field: today_fmt
+ label: Oggi
+ - field: yesterday_fmt
+ label: Ieri
+ - field: total_fmt
+ label: Storico
+
+ - PC e NAS:
+ icon: mdi-server
+ href: http://172.16.34.118/
+ description: UPS - PC, nodi Proxmox, NAS
+ widget:
+ type: customapi
+ url: http://127.0.0.1:8099/pc
+ refreshInterval: 10000
+ display: list
+ mappings:
+ - field: power_fmt
+ label: Ora
+ - field: today_fmt
+ label: Oggi
+ - field: yesterday_fmt
+ label: Ieri
+ - field: total_fmt
+ label: Storico
+
+ - Varie:
+ icon: mdi-power-socket-eu
+ href: http://172.16.34.186/
+ description: friggitrice, forno pizza, ecc
+ widget:
+ type: customapi
+ url: http://127.0.0.1:8099/spare
+ refreshInterval: 10000
+ display: list
+ mappings:
+ - field: power_fmt
+ label: Ora
+ - field: today_fmt
+ label: Oggi
+ - field: yesterday_fmt
+ label: Ieri
+ - field: total_fmt
+ label: Storico