Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    11
    1
    197

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.9k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.3k

[Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
javascripttemplatemonitoring
581 Beiträge 81 Kommentatoren 137.3k Aufrufe 84 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • P Pittini

    @robudus Ich frag mich grad woher die 0 kommt, das RAW gibt das eigentlich nicht her. Der DP ist als Bool definiert, deswegen erwartet das Skript da auch nen Bool, also true oder false.

    R Offline
    R Offline
    robudus
    schrieb am zuletzt editiert von
    #486

    @pittini 98b35094-a46a-4076-b7c6-52efde2f58be-grafik.png

    Wenn ich kurz umschalte von false auf true und zurück dann zeigt er auch kurz false und true an... dann wechselt er aber wieder auf die 0. Also ist das ein Bug im Adapter für Jeelink? Hast du eine Idee wie man das als Workaround lösen kann?

    Vielen Dank

    G ROBudus

    P 1 Antwort Letzte Antwort
    0
    • R robudus

      @pittini 98b35094-a46a-4076-b7c6-52efde2f58be-grafik.png

      Wenn ich kurz umschalte von false auf true und zurück dann zeigt er auch kurz false und true an... dann wechselt er aber wieder auf die 0. Also ist das ein Bug im Adapter für Jeelink? Hast du eine Idee wie man das als Workaround lösen kann?

      Vielen Dank

      G ROBudus

      P Offline
      P Offline
      Pittini
      Developer
      schrieb am zuletzt editiert von
      #487

      @robudus sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

      Hast du eine Idee wie man das als Workaround lösen kann?

      Evtl. mit Alias bzw. linkedDevices. Aber das sinnvollste wär der Adapter gibt nen echten Bool aus.

      1 Antwort Letzte Antwort
      0
      • P Pittini

        @mike-hellracer sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

        Wenn der Name des Sensor mehrsprachig ist wird für den Name des Sensor [Object] [Object] angezeigt.
        Oder sollte da der de Name der Funktion stehen?

        Änder mal bitte wie aufm Bild zu sehen und sag obs dann klappt bitte.
        2021-11-22 12_13_13-Window.png

        Und hier als Text zum kopieren:

        if (TblShowDeviceNameCol) {
                   let tempName = getObject(GetParentId(Sensor[x].id), "common").common.name;
                   if (typeof tempName == "object") tempName = tempName.de;
                   MyTable += "<td " + style0 + BgColor + "'>" + tempName + "</td>";
               };
        
        M Offline
        M Offline
        Mike Hellracer
        schrieb am zuletzt editiert von
        #488

        @pittini
        Hi,
        das Problem mit [Object] [Object] ist zwar in der Tabelle weg, Aber ich habe das auch noch bei der Ansicht im St0Ma Message Creator.
        Kannst du da bitte noch mal schauen.
        Danke

        P 1 Antwort Letzte Antwort
        0
        • M Mike Hellracer

          @pittini
          Hi,
          das Problem mit [Object] [Object] ist zwar in der Tabelle weg, Aber ich habe das auch noch bei der Ansicht im St0Ma Message Creator.
          Kannst du da bitte noch mal schauen.
          Danke

          P Offline
          P Offline
          Pittini
          Developer
          schrieb am zuletzt editiert von
          #489

          @mike-hellracer sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

          Aber ich habe das auch noch bei der Ansicht im St0Ma Message Creator.

          Was fürn Ding?

          Kannst du da bitte noch mal schauen.

          Gern, wenn ich wüßte wonach bzw. worums eigentlich geht.

          M 1 Antwort Letzte Antwort
          0
          • P Pittini

            @mike-hellracer sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

            Aber ich habe das auch noch bei der Ansicht im St0Ma Message Creator.

            Was fürn Ding?

            Kannst du da bitte noch mal schauen.

            Gern, wenn ich wüßte wonach bzw. worums eigentlich geht.

            M Offline
            M Offline
            Mike Hellracer
            schrieb am zuletzt editiert von
            #490

            @pittini
            sorry, ich dachte du kennst den ;)
            Ursache: ist der Value im DP
            Javascript.0.BatterieUeberwachung.NextExpectedLowBatt

            P 1 Antwort Letzte Antwort
            0
            • M Mike Hellracer

              @pittini
              sorry, ich dachte du kennst den ;)
              Ursache: ist der Value im DP
              Javascript.0.BatterieUeberwachung.NextExpectedLowBatt

              P Offline
              P Offline
              Pittini
              Developer
              schrieb am zuletzt editiert von
              #491

              @mike-hellracer V1.8.4 sollte es tun, hab die anderen 7 Vorkommen auch gleich mit gemacht.

              M 1 Antwort Letzte Antwort
              0
              • P Pittini

                @mike-hellracer V1.8.4 sollte es tun, hab die anderen 7 Vorkommen auch gleich mit gemacht.

                M Offline
                M Offline
                Mike Hellracer
                schrieb am zuletzt editiert von
                #492

                @pittini
                Danke probiere ich morgen aus.

                1 Antwort Letzte Antwort
                0
                • C Offline
                  C Offline
                  c.radi
                  schrieb am zuletzt editiert von
                  #493

                  Hallo und vielen Dank für dieses super Script.

                  Ich habe eine Frage, kann man einstellen, wie häufig das Script ausgeführt wird, bzw. wie häufig die Meldungen kommen.
                  Ich habe Pushover als Benachrichtigung eingestellt, aber die Nachrichten kommen ca. im Stundentakt.

                  Gruß
                  Christian

                  P A 2 Antworten Letzte Antwort
                  0
                  • C c.radi

                    Hallo und vielen Dank für dieses super Script.

                    Ich habe eine Frage, kann man einstellen, wie häufig das Script ausgeführt wird, bzw. wie häufig die Meldungen kommen.
                    Ich habe Pushover als Benachrichtigung eingestellt, aber die Nachrichten kommen ca. im Stundentakt.

                    Gruß
                    Christian

                    P Offline
                    P Offline
                    Pittini
                    Developer
                    schrieb am zuletzt editiert von
                    #494

                    @c-radi Ich nehm mal an, es geht um dieses Problem: https://github.com/Pittini/iobroker-Batterienauswertung/issues/22 Wird gefixt sobald ich Zeit über hab.

                    1 Antwort Letzte Antwort
                    0
                    • C c.radi

                      Hallo und vielen Dank für dieses super Script.

                      Ich habe eine Frage, kann man einstellen, wie häufig das Script ausgeführt wird, bzw. wie häufig die Meldungen kommen.
                      Ich habe Pushover als Benachrichtigung eingestellt, aber die Nachrichten kommen ca. im Stundentakt.

                      Gruß
                      Christian

                      A Online
                      A Online
                      ArnoD
                      schrieb am zuletzt editiert von ArnoD
                      #495

                      @c-radi

                      Habe das Script erst heute installiert und deswegen noch nicht viel Erfahrung damit, aber ich würde das Problem über ein Array lösen, in dem ich mir einfach die bereits erzeugten Meldungen von einem Tag merken würde und diese dann ignorieren würde.

                      Ab Zeile 63 ein neues Array "MekerMeldungen" erstellen. (Name kann frei definiert werden)

                      let MekerMeldungen = [];
                      

                      Die function Meldung(msg) dann folgendermaßen ändern:

                      function Meldung(msg) {
                          let Start = msg.indexOf('unter');
                          if (Start <=0){Start = 0}
                          if (!MekerMeldungen.includes(msg.substr(Start))){
                              MekerMeldungen.push(msg.substr(Start));
                      	log("Reaching Meldung(), msg=" + msg);
                      	if (UseSay) Say(msg);
                      	if (UseTelegram) {
                      		sendTo(TelegramInstance, "send", {
                      			user: TelegramUser,
                      			text: msg
                      		});
                      	};
                      	if (UseMail) {
                      		sendTo("email", {
                      			html: msg
                      		});
                      	};
                      	if (UseAlexa) {
                      		if (AlexaId != "") setState(AlexaInstance + ".Echo-Devices." + AlexaId + ".Commands.announcement"/*announcement*/, AlexaVolume + "; " + msg);
                      	};
                      	if (UsePushover) {
                      		sendTo(PushoverInstance, {
                      			device: PushoverDevice,
                      			message: msg,
                      			title: PushOverTitle,
                      			priority: 0,
                      			retry: 60,
                      			expire: 600,
                      			html: 1
                      		});
                      	};
                          }
                          if (logging) log(msg);
                          if (UseEventLog) WriteEventLog(msg);
                          if (UsePopUp) ShowPopUp(true, msg, "Batterys", "red");
                      }
                      

                      Um aber jeden Tag wieder eine Meldung zu bekommen, muss jetzt nur noch jeden Tag das Array "MekerMeldungen" gelöscht werden.
                      Am einfachsten über ein Schedule:

                      schedule({hour: 0, minute: 1}, function () {
                              MekerMeldungen = [];
                      });
                      

                      Vielleicht will ja Pittini das übernehmen oder es gibt eine bessere Lösung.

                      Nachtrag:
                      Habe gerade bemerkt das im msg String auch die aktuelle Spannung enthalten ist.
                      Somit würde mein Vorschlag so nicht funktionieren, da jede Spannungsänderung als neue Meldung durchrutschen würde.
                      Eine Möglichkeit wäre, die aktuelle Spannung aus dem Meldungstext zu entfernen.
                      Habe meinen Code oben jetzt korrigiert.
                      Ich suche in der Variable msg jetzt das Wort „unter“ und verwende den String ab diesem Wort, um gleiche Meldungen zu filtern.
                      Funktioniert erst mal. :-)

                      1 Antwort Letzte Antwort
                      0
                      • D3ltoroxpD Offline
                        D3ltoroxpD Offline
                        D3ltoroxp
                        schrieb am zuletzt editiert von
                        #496

                        Ich hab mal eine Frage, ich habe meine Geräte nun alle mit dem Script verknüpft, was mache ich denn bei solchen Kandidaten ?

                        0e5c376a-9475-4625-ac68-049ba393f1f3-grafik.png

                        Da gibt es nur Batterie %

                        P 1 Antwort Letzte Antwort
                        0
                        • D3ltoroxpD D3ltoroxp

                          Ich hab mal eine Frage, ich habe meine Geräte nun alle mit dem Script verknüpft, was mache ich denn bei solchen Kandidaten ?

                          0e5c376a-9475-4625-ac68-049ba393f1f3-grafik.png

                          Da gibt es nur Batterie %

                          P Offline
                          P Offline
                          Pittini
                          Developer
                          schrieb am zuletzt editiert von
                          #497

                          @d3ltoroxp Genauso anlegen wie alle anderen auch, erkennt das Skript selber was das ist. Siehe auch Anleitung .2.

                          D3ltoroxpD 1 Antwort Letzte Antwort
                          1
                          • P Pittini

                            @d3ltoroxp Genauso anlegen wie alle anderen auch, erkennt das Skript selber was das ist. Siehe auch Anleitung .2.

                            D3ltoroxpD Offline
                            D3ltoroxpD Offline
                            D3ltoroxp
                            schrieb am zuletzt editiert von D3ltoroxp
                            #498

                            @pittini Vielen Dank, ich hatte auf Git die Anleitung durchgelesen aber ich finde diesen Punkt nicht, ich muss Blind sein ? Was gebe ich denn da an ?

                            BatteryMinLimit_30
                            

                            EDIT :: Ich habs gefunden, gleich 2 Satz.

                            Diese neue Funktion DeadCheck kann ich auch nutzen für z.b. Fensterkontakte, um zu schauen ob sie noch eine Verbindung haben oder erreichbar sind, genau so wie Geräte die gar keine Batterie haben.

                            dog-rgbD 1 Antwort Letzte Antwort
                            0
                            • SchmakusS Offline
                              SchmakusS Offline
                              Schmakus
                              Developer
                              schrieb am zuletzt editiert von
                              #499

                              @Pittini Da es ja bekanntermaßen Probleme mit dem DeadCheck gibt, weil sich States oft nur selten melden, wäre ein DeadCheck mit Zeitangabe sinnvoll?
                              Also quasi DeadCheck_24 für 24h oder DeadCheck_72 für 72h.......

                              Dev of LightControl Adapter, Contributor of HUE and DoorBird Adapter

                              P 1 Antwort Letzte Antwort
                              0
                              • SchmakusS Schmakus

                                @Pittini Da es ja bekanntermaßen Probleme mit dem DeadCheck gibt, weil sich States oft nur selten melden, wäre ein DeadCheck mit Zeitangabe sinnvoll?
                                Also quasi DeadCheck_24 für 24h oder DeadCheck_72 für 72h.......

                                P Offline
                                P Offline
                                Pittini
                                Developer
                                schrieb am zuletzt editiert von
                                #500

                                @schmakus Isses Wert drüber nachzudenken. Da ich grad aber keine Zeit hab, bitt Issue auf Git, damits nicht vergessen wird, ob ich je dazukomme is ne andere Frage.

                                1 Antwort Letzte Antwort
                                0
                                • F Offline
                                  F Offline
                                  Frank579
                                  schrieb am zuletzt editiert von
                                  #501

                                  @Pittini
                                  Wollte gerade die 1.8.5 von deinem Skript mal testen (zur zeit läuft die 1.8.1) Er schmeiß mir aber beim starten die fehler ins Log

                                  
                                  javascript.0
                                  2022-01-15 13:17:03.876	error	at processImmediate (internal/timers.js:466:21)
                                  
                                  javascript.0
                                  2022-01-15 13:17:03.876	error	at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1986:38)
                                  
                                  javascript.0
                                  2022-01-15 13:17:03.876	error	at Object.<anonymous> (script.js.common.System.Batt_185:126:13)
                                  
                                  javascript.0
                                  2022-01-15 13:17:03.876	error	at main (script.js.common.System.Batt_185:266:5)
                                  
                                  javascript.0
                                  2022-01-15 13:17:03.876	error	at MakeTable (script.js.common.System.Batt_185:610:75)
                                  
                                  javascript.0
                                  2022-01-15 13:17:03.876	error	Error in callback: TypeError: Cannot read property 'toFixed' of undefined
                                  
                                  javascript.0
                                  2022-01-15 13:17:03.868	info	script.js.common.System.Batt_185: registered 0 subscriptions and 0 schedules
                                  

                                  Hast du eine Idee was ich falsch mache, habe bis jetzt nur den DP fürs Skript auf userdata.0 geändert

                                  P 1 Antwort Letzte Antwort
                                  0
                                  • F Frank579

                                    @Pittini
                                    Wollte gerade die 1.8.5 von deinem Skript mal testen (zur zeit läuft die 1.8.1) Er schmeiß mir aber beim starten die fehler ins Log

                                    
                                    javascript.0
                                    2022-01-15 13:17:03.876	error	at processImmediate (internal/timers.js:466:21)
                                    
                                    javascript.0
                                    2022-01-15 13:17:03.876	error	at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1986:38)
                                    
                                    javascript.0
                                    2022-01-15 13:17:03.876	error	at Object.<anonymous> (script.js.common.System.Batt_185:126:13)
                                    
                                    javascript.0
                                    2022-01-15 13:17:03.876	error	at main (script.js.common.System.Batt_185:266:5)
                                    
                                    javascript.0
                                    2022-01-15 13:17:03.876	error	at MakeTable (script.js.common.System.Batt_185:610:75)
                                    
                                    javascript.0
                                    2022-01-15 13:17:03.876	error	Error in callback: TypeError: Cannot read property 'toFixed' of undefined
                                    
                                    javascript.0
                                    2022-01-15 13:17:03.868	info	script.js.common.System.Batt_185: registered 0 subscriptions and 0 schedules
                                    

                                    Hast du eine Idee was ich falsch mache, habe bis jetzt nur den DP fürs Skript auf userdata.0 geändert

                                    P Offline
                                    P Offline
                                    Pittini
                                    Developer
                                    schrieb am zuletzt editiert von
                                    #502

                                    @frank579 Zeig mal Einstellungen und kontrollier obs irgendwo nen leeren Datenpunkt gibt.

                                    F Dominik F.D 2 Antworten Letzte Antwort
                                    1
                                    • P Pittini

                                      @frank579 Zeig mal Einstellungen und kontrollier obs irgendwo nen leeren Datenpunkt gibt.

                                      F Offline
                                      F Offline
                                      Frank579
                                      schrieb am zuletzt editiert von
                                      #503

                                      @pittini
                                      Super der leere Datenpunkt wars, hatte noch eine Leiche im Alias drin, wurde beim alten Skript als Dead erkannt.
                                      Vielen Dank :+1: :+1:

                                      1 Antwort Letzte Antwort
                                      0
                                      • D3ltoroxpD D3ltoroxp

                                        @pittini Vielen Dank, ich hatte auf Git die Anleitung durchgelesen aber ich finde diesen Punkt nicht, ich muss Blind sein ? Was gebe ich denn da an ?

                                        BatteryMinLimit_30
                                        

                                        EDIT :: Ich habs gefunden, gleich 2 Satz.

                                        Diese neue Funktion DeadCheck kann ich auch nutzen für z.b. Fensterkontakte, um zu schauen ob sie noch eine Verbindung haben oder erreichbar sind, genau so wie Geräte die gar keine Batterie haben.

                                        dog-rgbD Offline
                                        dog-rgbD Offline
                                        dog-rgb
                                        schrieb am zuletzt editiert von
                                        #504

                                        @d3ltoroxp said in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                                        Diese neue Funktion DeadCheck kann ich auch nutzen für z.b. Fensterkontakte, um zu schauen ob sie noch eine Verbindung haben oder erreichbar sind, genau so wie Geräte die gar keine Batterie haben.

                                        Kann ich den DeadCheck denn für Geräte ohne Batteriemeldung verwenden {scheint mir nicht so), oder muss ich dann einen Dummy DP erstellen der für den Batteriewert verwendet werden kann?
                                        Ich würde den DeadCheck gerne für weitere Geräte verwenden, wäre nur gut wenn es ausreichen würde diese Geräte nur dem DeadCheck zuzuweisen. Oder habe ich da was falsch eingestellt?

                                        SchmakusS 1 Antwort Letzte Antwort
                                        0
                                        • dog-rgbD dog-rgb

                                          @d3ltoroxp said in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                                          Diese neue Funktion DeadCheck kann ich auch nutzen für z.b. Fensterkontakte, um zu schauen ob sie noch eine Verbindung haben oder erreichbar sind, genau so wie Geräte die gar keine Batterie haben.

                                          Kann ich den DeadCheck denn für Geräte ohne Batteriemeldung verwenden {scheint mir nicht so), oder muss ich dann einen Dummy DP erstellen der für den Batteriewert verwendet werden kann?
                                          Ich würde den DeadCheck gerne für weitere Geräte verwenden, wäre nur gut wenn es ausreichen würde diese Geräte nur dem DeadCheck zuzuweisen. Oder habe ich da was falsch eingestellt?

                                          SchmakusS Offline
                                          SchmakusS Offline
                                          Schmakus
                                          Developer
                                          schrieb am zuletzt editiert von
                                          #505

                                          @dog-rgb said in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                                          @d3ltoroxp said in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                                          Diese neue Funktion DeadCheck kann ich auch nutzen für z.b. Fensterkontakte, um zu schauen ob sie noch eine Verbindung haben oder erreichbar sind, genau so wie Geräte die gar keine Batterie haben.

                                          Kann ich den DeadCheck denn für Geräte ohne Batteriemeldung verwenden {scheint mir nicht so), oder muss ich dann einen Dummy DP erstellen der für den Batteriewert verwendet werden kann?
                                          Ich würde den DeadCheck gerne für weitere Geräte verwenden, wäre nur gut wenn es ausreichen würde diese Geräte nur dem DeadCheck zuzuweisen. Oder habe ich da was falsch eingestellt?

                                          Der DeadCheck arbeitet autark von der Batteriespannung. Du kannst demnach auch nur den DeadCheck verwenden.

                                          Dev of LightControl Adapter, Contributor of HUE and DoorBird Adapter

                                          dog-rgbD 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          830

                                          Online

                                          32.5k

                                          Benutzer

                                          81.6k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe