Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      myssv last edited by

      ups, ok, danke für den Hinweis ... 🙄

      1 Reply Last reply Reply Quote 0
      • hanan
        hanan last edited by

        Hallo zusammen
        Habe das Skript installiert und erhalte auch eine Ausgabe.
        Leider habe ich im Log auch Fehlermeldungen:

        avascript.0	2020-05-02 13:51:11.958	error	(17025) at processTicksAndRejections (internal/process/task_queues.js:97:5)
        javascript.0	2020-05-02 13:51:11.957	error	(17025) at runMicrotasks (<anonymous>:null:null)
        javascript.0	2020-05-02 13:51:11.957	error	(17025) at /opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49
        javascript.0	2020-05-02 13:51:11.957	error	(17025) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
        javascript.0	2020-05-02 13:51:11.957	error	(17025) at /opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:580:17
        javascript.0	2020-05-02 13:51:11.956	error	(17025) at /opt/iobroker/node_modules/iobroker.javascript/main.js:855:17
        javascript.0	2020-05-02 13:51:11.956	error	(17025) at /opt/iobroker/node_modules/iobroker.javascript/main.js:1264:17
        javascript.0	2020-05-02 13:51:11.956	error	(17025) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1211:37)
        javascript.0	2020-05-02 13:51:11.956	error	(17025) at compile (/opt/iobroker/node_modules/iobroker.javascript/main.js:988:28)
        javascript.0	2020-05-02 13:51:11.956	error	(17025) at Object.createScript (vm.js:263:10)
        javascript.0	2020-05-02 13:51:11.955	error	(17025) at new Script (vm.js:88:7)
        javascript.0	2020-05-02 13:51:11.955	error	(17025) SyntaxError: Invalid regular expression: missing /
        javascript.0	2020-05-02 13:51:11.955	error	(17025) ^
        javascript.0	2020-05-02 13:51:11.955	error	(17025) / Batterieüberwachungsskript Version 1.5.5 Stand 28.04.2020
        javascript.0	2020-05-02 13:51:11.954	error	at script.js.common.BatterieUeberwachung:1
        javascript.0	2020-05-02 13:51:11.954	error	(17025) script.js.common.BatterieUeberwachung compile failed:
        

        Arbeite mit:

        Node.js v12.16.3
        NPM 6.14.4
        

        Hat jemand bitte einen Tipp für mich.

        Grüsse aus der Schweiz

        apollon77 1 Reply Last reply Reply Quote 0
        • apollon77
          apollon77 @hanan last edited by

          @hanan Hast Du das Skript wirklich die oben kopiert? zeig mal nen Screenshot vom Skript editor und dem Anfang vom Skript.

          Und: welche javascript adapter version?

          1 Reply Last reply Reply Quote 0
          • hanan
            hanan last edited by

            Hallo apollo77

            Habe alles so kopiert..

            18f0896c-a61c-4c55-b942-3701c0ee49a5-image.png

            // Batterieüberwachungsskript Version 1.5.5 Stand 28.04.2020
            //Überwacht Batteriespannungen beliebig vieler Geräte 
            
            //WICHTIG!!!
            //Vorraussetzungen: Den Gerätechannels müssen Räume, sowie die Funktion "BatterieSpannung_xx" für jeden entsprechenden Batteriespannungs Datenpunkt zugewiesen sein.
            
            //Grund Einstellungen
            const praefix = "javascript.0.BatterieUeberwachung."; //Grundpfad für Script DPs
            const logging = true; //Logging aktivieren?
            const FunktionBaseName = "BatterieSpannung_"; //Name der Funktion welche für die Batterieüberwachung genutzt wird
            const UseTelegram = false; // Sollen Nachrichten via Telegram gesendet werden?
            const UseMail = false; // Sollen Nachrichten via Mail gesendet werden?
            const UseAlexa = false; // Sollen Nachrichten via Alexa ausgegeben werden?
            const AlexaId = ""; // Die Alexa Seriennummer
            const UseSay = false; // Sollen Nachrichten via Say ausgegeben werden? Funktion des Authors, sollte bei Anwendern auf false gesetzt werden.
            const UseEventLog = false; // Sollen Nachrichten ins Eventlog geschreiben werden? Funktion des Authors, sollte bei Anwendern auf false gesetzt werden.
            const UsePopUp = false // Soll PopUp angezeigt werden? Funktion des Authors, sollte bei Anwendern auf false gesetzt werden.
            const ProzMeansLive = true; //Zeigen Prozentwerte des Gerätedatenpunktes Batteriekapazität oder restliche Lebensdauer?
            
            //Tabellen Einstellungen
            const TblOkBgColor = "#4caf50"; //Hintergrundfarbe für Batteriestatus Ok
            const TblInfoBgColor = "#ffc107"; //Hintergrundfarbe für Batteriestatus Info, also die leerste Batterie welche noch nicht das Limit unterschreitet
            const TblWarnBgColor = "#f44336"; //Hintergrundfarbe für Batteriestatus Warnung, also jene Batterie welche unter das Limit kam.
            const HeadBgColor = "dimgrey"; //Hintergrundfarbe des Tabellenkopfes
            const FontColor = "black"; //Textfarbe für Tabelleninhalt
            const HeadFontColor = "white"; //Textfarbe für Tabellenkopf
            const TblShowLfdCol = true; //Tabellenspalte mit laufender Nummer anzeigen?
            const TblShowDeviceIDCol = true; //Tabellenspalte mit Geräte ID anzeigen?
            const TblShowDeviceNameCol = true; //Tabellenspalte mit Gerätenamen anzeigen?
            const TblShowRoomCol = true; //Tabellenspalte mit Raum anzeigen?
            const TblShowUmaxCol = true; //Tabellenspalte mit Batterie Nennspannung anzeigen? 
            const TblShowUistCol = true; //Tabellenspalte mit aktueller Batteriespannung anzeigen?
            const TblShowUlimitCol = true; //Tabellenspalte mit unterer Batterielimit Spannung anzeigen?
            const TblShowProzbatCol = true; //Tabellenspalte mit Batteriestand in Prozent anzeigen?
            const TblShowProzliveCol = true; //Tabellenspalte mit Restlebensdauer unter Berücksichtigung der Limitspannung in Prozent anzeigen? Beispiel: Batterie hat 3V Nennspannung, Limit ist bei 2V, aktueller Batteriestand ist 2.5V, dann wäre die Restlebensdauer 50%
            const TblShowStatusCol = false; //Tabellenspalte mit Status ausgeben?
            
            //Ab hier nix mehr ändern
            
            

            50f0cf66-ecff-4809-9ae3-710af8b62987-image.png

            P 1 Reply Last reply Reply Quote 0
            • P
              Pittini Developer @hanan last edited by Pittini

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

              Hallo apollo77

              So kriegt @apollon77 das nicht mit.

              Mach mal testweise in der Zeile 298 an den Anfang zwei Schrägstriche. Also so: // . Die Zeile sollte dann so aussehen:

              //    room = room.replace(/_/g, " "); //Unterstriche durch Leerzeichen ersetzen
              
              

              .Dann speichern und guggen ob der Fehler immer noch gemeldet wird und hier Feedback geben.

              1 Reply Last reply Reply Quote 0
              • hanan
                hanan last edited by Negalein

                Hallo Pittini
                Habe ich jetzt gemacht und erhalte folgenden Fehler:

                2.5.2020, 16:28:53.493	[info ]: javascript.0 (1272) Stop script script.js.common.BatterieUeberwachung
                2.5.2020, 16:28:55.765	[info ]: javascript.0 (1272) Start javascript script.js.common.BatterieUeberwachung
                2.5.2020, 16:28:55.768	[error]: javascript.0 (1272) script.js.common.BatterieUeberwachung compile failed:
                at script.js.common.BatterieUeberwachung:497
                
                1 Reply Last reply Reply Quote 0
                • hanan
                  hanan last edited by

                  Habe die Adapter neu installiert und jetzt geht es...
                  Coole Sache, danke für die Hilfe.

                  Schönes Wochenende.

                  P 1 Reply Last reply Reply Quote 0
                  • hanan
                    hanan last edited by

                    Ups, zu früh gefreut...

                    Habe Zeile 291 auskommandiert und keine Fehlermeldung mehr.

                    1 Reply Last reply Reply Quote 0
                    • P
                      Pittini Developer @hanan last edited by

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

                      Habe die Adapter neu installiert und jetzt geht es...

                      Welche Adapter?

                      1 Reply Last reply Reply Quote 0
                      • hanan
                        hanan last edited by

                        Den Script Engine
                        9dc174bd-cb2e-4882-8b51-3547c2e9918e-image.png

                        P 1 Reply Last reply Reply Quote 0
                        • P
                          Pittini Developer @hanan last edited by

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

                          Den Script Engine

                          Wow, 6 Instanzen. Wofür brauchste die denn alle (reine Neugier).?

                          1 Reply Last reply Reply Quote 0
                          • hanan
                            hanan last edited by hanan

                            Habe Licht, Sound etc. aufgeteilt in je eine Instanz.

                            Also, wenn ich Zeile 291 auskommandiere habe ich keine Fehlermeldungen mehr, doch bei den Ikea "tradfri"-Teilen gibt es mir kein Raum an.

                            P 1 Reply Last reply Reply Quote 0
                            • P
                              Pittini Developer @hanan last edited by

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

                              Also, wenn ich Zeile 291 auskommandiere habe ich keine Fehlermeldungen mehr, doch bei den Ikea "tradfri"-Teilen gibt es mir kein Raum an.

                              Sehr seltsam, Zeile 291 is an sich absolut unkritisch, in dem verarbeiteten String sollte aber der Raum sein, evtl is da der Zusammenhang. Mach mir mal den Screenshot aus der ausgeklappten Objektliste von sonem tradfri Teil, inkl der übergeordneten Channels. Glaub das hatte noch keiner, evtl. is da was anderes als bei den anderen und unberücksichtigt.

                              1 Reply Last reply Reply Quote 0
                              • hanan
                                hanan last edited by hanan

                                OK, hier die Objektliste von einem "tratfri":

                                3e71de9d-5b08-470f-9aa6-8e317e679a1f-image.png

                                Habe die Fernbedienungen vom "tradfri" rausgenommen und das Skript läuft ohne Fehlermeldung durch.

                                Mit dem "tradfri" habe ich folgende Fehlermeldungen:

                                avascript.0	2020-05-02 19:31:23.992	error	(12508) at processTicksAndRejections (internal/process/task_queues.js:97:5)
                                javascript.0	2020-05-02 19:31:23.992	error	(12508) at runMicrotasks (<anonymous>:null:null)
                                javascript.0	2020-05-02 19:31:23.992	error	(12508) at /opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49
                                javascript.0	2020-05-02 19:31:23.991	error	(12508) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
                                javascript.0	2020-05-02 19:31:23.991	error	(12508) at /opt/iobroker/node_modules/iobroker.objects-redis/index.js:17:71697
                                javascript.0	2020-05-02 19:31:23.991	error	(12508) at /opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1916:42
                                javascript.0	2020-05-02 19:31:23.991	error	(12508) at Object.<anonymous> (script.js.common.Überwachung.Batteriestatus:84:13)
                                javascript.0	2020-05-02 19:31:23.990	error	(12508) at main (script.js.common.Überwachung.Batteriestatus:197:5)
                                javascript.0	2020-05-02 19:31:23.990	error	(12508) at MakeTable (script.js.common.Überwachung.Batteriestatus:388:68)
                                javascript.0	2020-05-02 19:31:23.989	error	(12508) at GetRoom (script.js.common.Überwachung.Batteriestatus:291:17)
                                javascript.0	2020-05-02 19:31:23.989	error	(12508) Error in callback: TypeError: Cannot read property 'replace' of undefined
                                

                                Hmm... bei Shelly stimmt auch etwas nicht.
                                Hier erhalte ich die Meldung:

                                javascript.0	2020-05-02 19:37:19.349	info	(12508) script.js.common.Überwachung.Batteriestatus: Aktuell niedrigster Batteriestand (2.47V): Küche bei Gerät Channel bat
                                

                                Sollte aber das Gerät

                                5f8974d4-bf66-4427-968a-d27fe5f21adb-image.png
                                sein.

                                P 1 Reply Last reply Reply Quote 0
                                • P
                                  Pittini Developer @hanan last edited by Pittini

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

                                  Habe die Fernbedienungen vom "tradfri" rausgenommen und das Skript läuft ohne Fehlermeldung durch.
                                  Mit dem "tradfri" habe ich folgende Fehlermeldungen:

                                  Was Du da zeigst is auf jeden Fall ein Konfigurationsfehler. Schau mal welchem Datenpunkt Du die Batteriespannung verpasst hast, setz das eine Zeile tiefer, starte den js Adapter neu und berichte erneut.

                                  Und shellys haben doch gar keine Batterie? Und wenn doch zeigst Du mir nicht den richtigen Datenpunkt.

                                  1 Reply Last reply Reply Quote 0
                                  • hanan
                                    hanan last edited by hanan

                                    Oh mann, knapp daneben ist auch daneben...

                                    fd28e78d-dd4e-4e1e-b16d-be3af928fbbb-image.png

                                    JS Adapter neu gestartet und es kommen von den "tradfri" keine Fehlermeldung mehr.

                                    Und hier ein Shelly H&T (Temperatur und Feuchte)
                                    6cc26948-5b1d-451b-b059-5c4f43c0b55d-image.png

                                    1 Reply Last reply Reply Quote 0
                                    • hanan
                                      hanan last edited by

                                      Sorry, habe den JS Adapter neu gestartet und es kommt von den "tradfri" keine Fehlermeldung mehr.

                                      P 1 Reply Last reply Reply Quote 0
                                      • P
                                        Pittini Developer @hanan last edited by

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

                                        Sorry, habe den JS Adapter neu gestartet und es kommt von den "tradfri" keine Fehlermeldung mehr.

                                        Wollt grad sagen, die Fwehlermeldung kommt mir bekannt vor und Du hast den Adapter nicht neu gestartet. Also bleibt jetzt nur noch das Shelly Problem?

                                        1 Reply Last reply Reply Quote 0
                                        • hanan
                                          hanan last edited by

                                          Jep...
                                          aber als Problem würde ich dieses nicht bezeichnen, sondern "Feinschliff".

                                          P 2 Replies Last reply Reply Quote 0
                                          • P
                                            Pittini Developer @hanan last edited by Pittini

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

                                            Jep...
                                            aber als Problem würde ich dieses nicht bezeichnen, sondern "Feinschliff".

                                            Feinschliff oder nicht, meine Skripte haben gefälligst zu funktionieren. Hab da auch ne Vermutung, beim shelly is noch der bat channel dazwischen, sowas hat sonst nur HM. Ich schau mir das später oder morgen mal an, jetzt gibts Abendessen.

                                            1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            688
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript monitoring template
                                            81
                                            581
                                            113383
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo