NEWS
[Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe
-
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.4Hat jemand bitte einen Tipp für mich.
Grüsse aus der Schweiz
-
Hallo apollo77
Habe alles so kopiert..

// 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
-
Hallo apollo77
Habe alles so kopiert..

// 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
@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.
-
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 -
Habe die Adapter neu installiert und jetzt geht es...
Coole Sache, danke für die Hilfe.Schönes Wochenende.
-
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.
@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.
-
OK, hier die Objektliste von einem "tratfri":

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 undefinedHmm... 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 batSollte aber das Gerät

sein. -
OK, hier die Objektliste von einem "tratfri":

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 undefinedHmm... 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 batSollte aber das Gerät

sein.@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.
-
Sorry, habe den JS Adapter neu gestartet und es kommt von den "tradfri" keine Fehlermeldung mehr.
@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?
-
@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.
-
@Wildbill sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:
@Pittini @dos1973
Eben getestet, jetzt schaut alles perfekt aus. :+1: :grimacing:Gruss, Jürgen
ich habe eben die Version 1.5.5 Stand 28.04.2020 installiert.
bei mir sind weiterhin die :0


