PV-Benachrichtigungen

Sende Telegram-Benachrichtigungen für PV-Batteriestatus

Aktueller Release
1.2.30
Entwickler
Alex
Lizenz
MIT

Logo

Sendet Telegram-Benachrichtigungen zum Status der PV-Batterie (voll, leer, Zwischenstände).

Merkmale

  • 🔋 Benachrichtigung bei vollem Akku (100 %)
  • ⚠️ Benachrichtigung bei leerem Akku (0 %)
  • 📊 Mittlere Ladestufen (20 %, 40 %, 60 %, 80 %) mit Angabe des Ladezustands in % und kWh
  • 🌙 Nachtmodus (konfigurierbare Zeit, Standard: 23:00-06:00)
  • 🤫 Ruhemodus (konfigurierbare Zeit, Standard: 12:00-15:00 Uhr)
  • 📈 Tägliche Statistiken zu einer konfigurierbaren Zeit (Standard: 22:00 Uhr)
  • 📅 Wöchentliche Statistiken zu konfigurierbaren Wochentagen
  • 📆 Monatliche Statistiken (optional) an einem konfigurierbaren Tag
  • 🌤️ Wettervorhersageintegration (erfordert OpenWeatherMap-Adapter)
  • Empfehlungen für hohe Produktion / hohen Verbrauch
  • 📊 Statistikdaten vom Sourceanalytix-Adapter

Abhängigkeiten

Für die volle Funktionalität werden folgende Adapter benötigt:

AdapterBeschreibungErforderlich
TelegrammSendet Benachrichtigungen✅ Ja
sourceanalytixStatistikdaten (Verbrauch, Einspeisung, Netzstrom)✅ Ja
daswetter oder openweathermapWettervorhersage für Empfehlungen❌ Optional

Konfiguration

Telegramm

EinstellungBeschreibung
Telegram-InstanzZ.Btelegram.0
Telegram-NutzerKommagetrennte Liste von Namen oder IDs, z. B.User1, User2 oder-123456789

Hinweis: Sie können Telegram-Benutzer sowohl über ihren Benutzernamen (ohne @) als auch über ihre Telegram-ID hinzufügen (negativ für Gruppen/Kanäle).

Datenpunkte

EinstellungBeschreibungBeispiel
Batterie-SOCSOC-Wert in %modbus.0.holdingRegisters.40083_Batterie_SOC
PV-StromAktuelle Leistung in Wjavascript.0.Solar.Sungrow.Leistung
GesamtproduktionProduktion heute in kWhjavascript.0.Solar.Sungrow.Gesamtproduktion
ZuleitungEinspeisebetrag heute in kWhsourceanalytix.0...Einspeisung...
VerbrauchHeutiger Verbrauch in kWhsourceanalytix.0...Hausverbrauch...
NetzstromNetzstrom heute in kWhsourceanalytix.0...Netzbezug...
Produktion diesen MonatMonatliche Produktion (kWh)sourceanalytix.0...Produktion.currentMonth
Verbrauch in diesem MonatMonatlicher Verbrauch (kWh)sourceanalytix.0...Verbrauch.currentMonth
Füttern Sie diesen MonatMonatliche Einspeisevergütung (kWh)sourceanalytix.0...Einspeisung.currentMonth
Netzstrom diesen MonatMonatliche Netzstromaufnahme (kWh)sourceanalytix.0...Netzbezug.currentMonth
Produktion diese WocheWöchentliche Produktion (kWh)sourceanalytix.0...Produktion.currentWeek
Verbrauch diese WocheWöchentlicher Verbrauch (kWh)sourceanalytix.0...Verbrauch.currentWeek
Füttern Sie diese WocheWöchentliche Einspeiseleistung (kWh)sourceanalytix.0...Einspeisung.currentWeek
Stromnetz diese WocheWöchentliche Netzstromaufnahme (kWh)sourceanalytix.0...Netzbezug.currentWeek

Wetter (optional)

EinstellungBeschreibungBeispiel (daswetter)Beispiel (OpenWeatherMap)
Wetter heuteWetterbeschreibung heutedaswetter.0.Day0.forecast.currentSymbolopenweathermap.0.forecast.0.text
Heutige Temperatur (°C)Temperatur heutedaswetter.0.Day0.forecast.maxTempopenweathermap.0.forecast.0.temp
Wetter morgenWetterbeschreibung für morgendaswetter.0.Day1.forecast.currentSymbolopenweathermap.0.forecast.1.text
Temperatur morgen (°C)Temperatur morgendaswetter.0.Day1.forecast.maxTempopenweathermap.0.forecast.1.temp

Hinweis: Die FelderWeather Today UndWeather Tomorrow Kann alternativ verwendet werden, wenn der Wetteradapter verschiedene Formate unterstützt. Für optimale Kompatibilität empfehlen wir die Verwendung vonWeather Text Felder.

Batterie

EinstellungBeschreibungStandard
BatteriekapazitätKapazität in Wh21000
Schwellenwert VOLLSOC für "vollständig"100
Schwellenwert LEERSOC für "leer"0
Zurücksetzen auf VOLLSTÄNDIG untenZurücksetzen, falls SOC <95
Leeren zurücksetzen (siehe oben)Zurücksetzen, falls SOC >5

Mittleres Niveau

EinstellungBeschreibungStandard
Mittleres Niveaudurch Kommas getrennte SOC-Stufen20,40,60,80
Mindestintervall VOLLMinuten zwischen den Benachrichtigungen10
Mindestintervall LEERMinuten zwischen den Benachrichtigungen5
Mindestintervall ZwischenMinuten zwischen den Benachrichtigungen30
Nachtmodus aktivierenKontrollkästchen für den Nachtmodustrue
Nachtmodus startenStartzeit (Format: HH:MM)23:00
Nachtmodus beendetEndzeit (Format: HH:MM)06:00
Nachtmodus bei 0 % Akkustand ignorierenImmer bei 0 % benachrichtigentrue
Leiser Modus aktivierenKontrollkästchen für den Leisemodusfalse
Leiser Modus startenStartzeit (Format: HH:MM)12:00
Ende des RuhemodusEndzeit (Format: HH:MM)15:00

Statistiken

EinstellungBeschreibungStandard
Tägliche StatistikzeitFormat HH:MM22:00
Wochentagsstatistik0 = Montag, 1 = Dienstag, ..., 6 = Sonntag0 (Montag)
Wöchentliche StatistikenFormat HH:MM10:00
Monatliche Statistiken aktivierenKontrollkästchen für monatliche Statistikenfalse
Tag des Monats1-311 (1. des Monats)
Monatliche StatistikenFormat HH:MM09:00

Beispiele

Akku voll (100 %)

11:45 - 🔋 *Battery FULL* (100%)

⚡ Current Production: 5356 W
🏠 Current Consumption: 1200 W
☀️ Production Today: 12.5 kWh
🔌 Feed-in Today: 8.2 kWh
🌤️ Tomorrow: ☀️ Sunny

🚗 Now ideal for: Electric car, washing machine, dishwasher!

Mittelstufe (60 %)

11:51 - 🔋 Battery at 60% (12.6 kWh) ⬆️
⚡ Production: 5356 W

Tagesstatistik (22:00)

22:00 - 📊 *Daily Statistics PV System*
━━━━━━━━━━━━━━━━━━━━━━
🔋 Current Charge Level: 85%
⚡ Current Energy: 17.9 kWh (21.0 kWh Total)
━━━━━━━━━━━━━━━━━━━━━━
☀️ Production: 12.5 kWh
🏠 Own Consumption: 8.2 kWh (65.6%)
🔌 Feed-in: 4.3 kWh
⚡ Grid Power: 2.1 kWh

Monatsstatistik (1. des Monats um 09:00 Uhr)

09:00 - 📊 *Monthly Statistics PV System*
━━━━━━━━━━━━━━━━━━━━━━
🔋 Full Cycles This Month: 28
📉 Empty Cycles This Month: 15
━━━━━━━━━━━━━━━━━━━━━━
☀️ Production: 345.2 kWh
🏠 Own Consumption: 287.5 kWh (83.3%)
🔌 Feed-in: 57.7 kWh
⚡ Grid Power: 23.4 kWh
━━━━━━━━━━━━━━━━━━━━━━

Staaten

Der Adapter erzeugt unter folgenden Bedingungen die folgenden Zustände:pv-notifications.0 :

Aktuelle Statistiken

ZustandTypBeschreibung
statistics.fullCyclesTodayNummerHeute vollständige Zyklen
statistics.emptyCyclesTodayNummerHeute leere Zyklen
statistics.maxSOCTodayNummerMax SOC heute
statistics.minSOCTodayNummerMin SOC heute
statistics.fullCyclesWeekNummerDiese Woche werden vollständige Zyklen durchgeführt.
statistics.emptyCyclesWeekNummerDiese Woche keine freien Zyklen
statistics.currentSOCNummerAktueller SOC
statistics.currentEnergyKWhNummerAktuelle Energie in kWh

Gespeicherte Daten des Vormonats (für die monatliche Statistik)

ZustandTypBeschreibung
statistics.lastMonthProductionNummerProduktion im letzten Monat (kWh)
statistics.lastMonthConsumptionNummerVerbrauch im letzten Monat (kWh)
statistics.lastMonthFeedInNummerEinspeisemenge des Vormonats (kWh)
statistics.lastMonthGridPowerNummerNetzstrom im letzten Monat (kWh)
statistics.lastMonthFullCyclesNummerVollständige Zyklen im letzten Monat
statistics.lastMonthEmptyCyclesNummerLeere Zyklen im letzten Monat

Gespeicherte Daten der letzten Woche (für die Wochenstatistik)

ZustandTypBeschreibung
statistics.lastWeekProductionNummerProduktion letzte Woche (kWh)
statistics.lastWeekConsumptionNummerVerbrauch letzte Woche (kWh)
statistics.lastWeekFeedInNummerEinspeisemenge der letzten Woche (kWh)
statistics.lastWeekGridPowerNummerNetzstrom der letzten Woche (kWh)
statistics.lastWeekFullCyclesNummerLetzte Woche wurden vollständige Zyklen durchgeführt.
statistics.lastWeekEmptyCyclesNummerLetzte Woche waren die Zyklen leer.

Anmerkung zu den Monats- und Wochenstatistiken

Wichtig: Der Adapter speichert automatisch die Daten des letzten Monats und der letzten Woche in den USA.

Monatliche Statistiken

  • Die monatlichen Statistiken werden am konfigurierten Tag versendet (Standard: 1. des Monats).
  • Der Adapter speichert automatisch die aktuellen Monatsdaten, bevor die Statistiken zurückgesetzt werden.
  • Statistiken verwenden gespeicherte Daten vonstatistics.lastMonth* Staaten
  • Konfiguration: Stellen Sie sicher, dass die monatlichen Statistiken nach dem letzten Tag des Monats versendet werden (z. B. am 1. um 09:00 Uhr).

Wöchentliche Statistiken

  • Die wöchentlichen Statistiken werden am konfigurierten Wochentag versendet (Standard: Montag).
  • Der Adapter speichert automatisch die aktuellen Wochendaten, bevor die Statistiken zurückgesetzt werden.
  • Statistiken verwenden gespeicherte Daten vonstatistics.lastWeek* Staaten
  • Konfiguration: Wochentag einstellen (0=Mo, 1=Di, ..., 6=So)

Konfigurationsbeispiel (openweathermap)

Wetterdatenpunkte konfigurieren

Wenn Sie den OpenWeatherMap- Adapter verwenden, konfigurieren Sie die folgenden Felder:

Weather Today:          openweathermap.0.forecast.0.text
Temperature Today:      openweathermap.0.forecast.0.temp
Weather Tomorrow:       openweathermap.0.forecast.1.text
Temperature Tomorrow:   openweathermap.0.forecast.1.temp

Alternative: Daswetter-Adapter

Weather Today:          daswetter.0.Day0.forecast.currentSymbol
Temperature Today:      daswetter.0.Day0.forecast.maxTemp
Weather Tomorrow:       daswetter.0.Day1.forecast.currentSymbol
Temperature Tomorrow:   daswetter.0.Day1.forecast.maxTemp

Beispielausgabe mit Wetterdaten

Tagesstatistik:

📊 *Daily Statistics PV System*
━━━━━━━━━━━━━━━━━━━━━━
🔋 Current Charge Level: 85%
⚡ Current Energy: 17.9 kWh (21.0 kWh Total)
━━━━━━━━━━━━━━━━━━━━━━
☀️ Production: 45.2 kWh
🏠 Own Consumption: 32.1 kWh (71%)
🔌 Feed-in: 13 kWh
⚡ Grid Power: 2 kWh
━━━━━━━━━━━━━━━━━━━━━━
🌤️ *Weather Tomorrow:* ☀️ Sunny 22.5°C
☀️ Good PV production expected!

Wöchentliche Statistiken:

📊 *Weekly Statistics PV System*
━━━━━━━━━━━━━━━━━━━━━━
🔋 Full Cycles Last Week: 5
📉 Empty Cycles Last Week: 3
━━━━━━━━━━━━━━━━━━━━━━
☀️ Production: 312.5 kWh
🏠 Own Consumption: 224.8 kWh (72%)
🔌 Feed-in: 87.7 kWh
⚡ Grid Power: 45.3 kWh
━━━━━━━━━━━━━━━━━━━━━━
💡 A healthy cycle per day is normal.
🔋 Check battery settings if many cycles.

Monatsstatistik (1. des Monats um 09:00 Uhr)

09:00 - 📊 *Monthly Statistics PV System*
━━━━━━━━━━━━━━━━━━━━━━
🔋 Full Cycles Last Month: 28
📉 Empty Cycles Last Month: 15
━━━━━━━━━━━━━━━━━━━━━━
☀️ Production: 1245.7 kWh
🏠 Own Consumption: 897.3 kWh (72%)
🔌 Feed-in: 348.4 kWh
⚡ Grid Power: 185.2 kWh
━━━━━━━━━━━━━━━━━━━━━━

Nachtmodus & Leiser Modus

Nachtmodus (konfigurierbar)

Zwischen 23:00 und 06:00 Uhr (konfigurierbar) werden die folgenden Benachrichtigungen unterdrückt:

  • ❌ Akku voll (100 %)
  • ❌ Mittlere Stufen (20 %, 40 %, 60 %, 80 %)

Folgende Benachrichtigung wird immer versendet:

  • ✅ Akku leer (0 %) – wenn „Nachtmodus bei 0 % Akku ignorieren“ aktiviert ist

Leiser Modus (konfigurierbar)

Zwischen 12:00 und 15:00 Uhr (konfigurierbar) werden alle Benachrichtigungen unterdrückt:

  • ❌ Akku voll (100 %)
  • ❌ Batterie leer (0%)
  • ❌ Mittlere Stufen (20 %, 40 %, 60 %, 80 %)

Hinweis: Der Ruhemodus unterdrückt alle Benachrichtigungen, auch bei 0 % Akkustand. Nutzen Sie ihn, wenn Sie ungestört sein möchten (z. B. beim Mittagsschlaf oder in Besprechungen).

Autor

Alex1808 via LLM: Qwen

sadam6752@gmail.com

Dokumentation in anderen Sprachen

Changelog

1.2.29

  • (FIX) Corrupted UTF-8 separator lines in the monthly stats message (showed as question marks in Telegram)
  • (FIX) Corrupted Russian translations for "Current charge level" and "Own consumption"
  • (FIX) Weather today in daily stats now shows the temperature as "(currently: X°C)" instead of implying a daily value

1.2.28

  • (FIX) Migrate i18n to short format ({lang}.json); trim news to 7 entries

1.2.27

  • (FIX) CI: update package-lock.json to include all eslint peer dependencies

1.2.26 (2026-08-01)

  • (FIX) W5604: add missing i18n keys for sunset stats in 8 languages (es, fr, it, nl, pl, pt, uk, zh-cn)
  • (FIX) W6019: move old changelog entries to CHANGELOG_OLD.md
  • (FIX) W6021: move License section to end of README
  • (FIX) W6030: add 1.2.25 changelog entry to README

1.2.25 (2026-08-01)

  • (FIX) Update @iobroker/adapter-core to 3.4.3
  • (FIX) Remove old news entry 1.2.18 (max 7 entries allowed)

1.2.24 (2026-03-17)

  • (FIX) Added missing uk translations to news entries, fixed prettier formatting in main.js

1.2.23 (2026-03-17)

  • (FIX) Statistics section layout: daily time, sunset checkbox and sunset object aligned on one row

1.2.22 (2026-03-17)

  • (ADD) Sunset-based daily statistics: optional checkbox to send daily stats at sunset time from a configurable object instead of fixed time

1.2.21 (2026-03-17)

  • (FIX) Use extendObject instead of setObjectNotExists for states with unit/role to update existing instances

1.2.20 (2026-03-17)

  • (FIX) Remove unused admin files, reduce info logs to debug, English state names with units, channel objects for statistics/info, button read:false, this.setInterval, translate fallback to English

1.2.19 (2026-03-16)

  • (FIX) Added v1.2.18 entry to news section in io-package.json

1.2.18 (2026-03-16)

  • (FIX) Missing await in onBatterySOCChange, null-check in buildTestMessage, safe intermediateSteps parsing, remove dead code

For older changelog entries see CHANGELOG_OLD.md

License

MIT License

Copyright (c) 2025-2026 Alex1808 via LLM: Qwen sadam6752@gmail.com

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.