NEWS
VIS Werte aus HM-ES-PMSw1-DR Leistungsmesser Addieren
-
hab ein JS angelegt :
aber wenn ich in Objekt ID im VIS die Variable javascript.0.Power.Summe eintragen passiert nix, die Variabel ist auch nicht in der ID Liste im Ordner javascipt.0 vorhanden
var idSumme = 'javascript.0.Power.Summe‘; {1} createState(idSumme, { name: 'Summe aller Powerwerte', unit: 'W’, type: 'number', def: 0, min: 0 }); on({id: /\.Power_0$/, change: 'any' }, function(obj) { var a = getState('hm-rpc.0.NEQ444444.2.POWER'/*Power 1 vorn */).val, b = getState('hm-rpc.0.NEQ222222.2.POWER'/*Power 2 vorn */).val, c = getState('hm-rpc.0.OEQ4444444.2.POWER'/*Power 4 Haus */).val, d = getState('hm-rpc.0.QEQ555555.2.POWER'/*Power 5 Mitte vorn */).val, e = getState('hm-rpc.0.QEQ666666.2.POWER'/*Power 6 Mitte */).val, f = getState('hm-rpc.0.OEQ333333.2.POWER'/*Power 3 hinten */).val, var summe = a + b + c + d + e + f ; setState(idSumme, summe); }; -
hab ein JS angelegt :
aber wenn ich in Objekt ID im VIS die Variable javascript.0.Power.Summe eintragen passiert nix, die Variabel ist auch nicht in der ID Liste im Ordner javascipt.0 vorhanden
var idSumme = 'javascript.0.Power.Summe‘; {1} createState(idSumme, { name: 'Summe aller Powerwerte', unit: 'W’, type: 'number', def: 0, min: 0 }); on({id: /\.Power_0$/, change: 'any' }, function(obj) { var a = getState('hm-rpc.0.NEQ444444.2.POWER'/*Power 1 vorn */).val, b = getState('hm-rpc.0.NEQ222222.2.POWER'/*Power 2 vorn */).val, c = getState('hm-rpc.0.OEQ4444444.2.POWER'/*Power 4 Haus */).val, d = getState('hm-rpc.0.QEQ555555.2.POWER'/*Power 5 Mitte vorn */).val, e = getState('hm-rpc.0.QEQ666666.2.POWER'/*Power 6 Mitte */).val, f = getState('hm-rpc.0.OEQ333333.2.POWER'/*Power 3 hinten */).val, var summe = a + b + c + d + e + f ; setState(idSumme, summe); };@user4711
Der Trigger-RegExp passt nicht zu den abgefragten Datenpunkten. Versuche malconst idSumme = 'javascript.0.Power.Summe'; createState(idSumme, 0, { name: 'Summe aller Powerwerte', unit: 'W', type: 'number', def: 0, min: 0 }); on(/^hm-rpc\.0\..+\.2\.POWER$/, function() { -
Hab ich ausprobiert kommt Fehlermeldung :
06:50:43.732 error javascript.0 (7869) script.js.common.Mappe_1.summe_1 compile failed: at script.js.common.Mappe_1.summe_1:27allerdings wird es wahrscheinlich aber ein bischen abgeändert werden müssen, da ich noch andere Leistungsmesser des selben typs habe welche aber nicht mit summiert werden sollen.
-
Hab ich ausprobiert kommt Fehlermeldung :
06:50:43.732 error javascript.0 (7869) script.js.common.Mappe_1.summe_1 compile failed: at script.js.common.Mappe_1.summe_1:27allerdings wird es wahrscheinlich aber ein bischen abgeändert werden müssen, da ich noch andere Leistungsmesser des selben typs habe welche aber nicht mit summiert werden sollen.
@user4711 sagte in VIS Werte aus HM-ES-PMSw1-DR Leistungsmesser Addieren:
at script.js.common.Mappe_1.summe_1:27
und was steht in Zeile 27?
-
@user4711 sagte in VIS Werte aus HM-ES-PMSw1-DR Leistungsmesser Addieren:
at script.js.common.Mappe_1.summe_1:27
und was steht in Zeile 27?
-
@user4711 sagte in VIS Werte aus HM-ES-PMSw1-DR Leistungsmesser Addieren:
es gibt keine zeile 27:
hast du globale Skripte?
-
@user4711 sagte in VIS Werte aus HM-ES-PMSw1-DR Leistungsmesser Addieren:
es gibt keine zeile 27:
hast du globale Skripte?
-
@user4711 sagte: es gibt keine zeile 27:
Das ist hoffentlich nicht das ganze Skript? Ich hatte nur den Anfang korrigiert.
const idSumme = 'javascript.0.Power.Summe'; createState(idSumme, 0, { name: 'Summe aller Powerwerte', unit: 'W', type: 'number', def: 0, min: 0 }); on(/^hm-rpc\.0\..+\.2\.POWER$/, function() { var a = getState('hm-rpc.0.NEQ444444.2.POWER'/*Power 1 vorn */).val, b = getState('hm-rpc.0.NEQ222222.2.POWER'/*Power 2 vorn */).val, c = getState('hm-rpc.0.OEQ4444444.2.POWER'/*Power 4 Haus */).val, d = getState('hm-rpc.0.QEQ555555.2.POWER'/*Power 5 Mitte vorn */).val, e = getState('hm-rpc.0.QEQ666666.2.POWER'/*Power 6 Mitte */).val, f = getState('hm-rpc.0.OEQ333333.2.POWER'/*Power 3 hinten */).val; var summe = a + b + c + d + e + f ; setState(idSumme, summe, true); });Verwende einen anderen Browser als Firefox zum Kopieren aus dem Forum, um die vielen Leerzeilen zu vermeiden.
-
@user4711 sagte: es gibt keine zeile 27:
Das ist hoffentlich nicht das ganze Skript? Ich hatte nur den Anfang korrigiert.
const idSumme = 'javascript.0.Power.Summe'; createState(idSumme, 0, { name: 'Summe aller Powerwerte', unit: 'W', type: 'number', def: 0, min: 0 }); on(/^hm-rpc\.0\..+\.2\.POWER$/, function() { var a = getState('hm-rpc.0.NEQ444444.2.POWER'/*Power 1 vorn */).val, b = getState('hm-rpc.0.NEQ222222.2.POWER'/*Power 2 vorn */).val, c = getState('hm-rpc.0.OEQ4444444.2.POWER'/*Power 4 Haus */).val, d = getState('hm-rpc.0.QEQ555555.2.POWER'/*Power 5 Mitte vorn */).val, e = getState('hm-rpc.0.QEQ666666.2.POWER'/*Power 6 Mitte */).val, f = getState('hm-rpc.0.OEQ333333.2.POWER'/*Power 3 hinten */).val; var summe = a + b + c + d + e + f ; setState(idSumme, summe, true); });Verwende einen anderen Browser als Firefox zum Kopieren aus dem Forum, um die vielen Leerzeilen zu vermeiden.
-
@paul53
sorry dachte in der ersten Zeile werden alle Geräte abgefragt die mit hm-rpc beginnen.
Hab das Script jetzt so eingefügt, mit den entprechenden Objekt Ids und es funktioniert ! vielen Dank! SUPER!wollte jetzt noch den Wert an die systemvariable "summepower" in die CCU zurückgeben, hab ein 2. Script angelegt.
aber geht nichtkommt :
15:57:42.293 warn javascript.0 (7869) at Object.<anonymous> (script.js.common.Mappe_1.summepower_nach_ccu:8:4)
15:57:42.906 warn javascript.0 (7869) at Object.<anonymous> (script.js.common.Mappe_1.summepower_nach_ccu:8:4)
const idSV = getIdByName('summepower'); on('javascript.0.Power.Summe', function(dp) { setState(idSV, dp.state.val); }); -
wollte jetzt noch den Wert an die systemvariable "summepower" in die CCU zurückgeben, hab ein 2. Script angelegt.
aber geht nichtkommt :
15:57:42.293 warn javascript.0 (7869) at Object.<anonymous> (script.js.common.Mappe_1.summepower_nach_ccu:8:4)
15:57:42.906 warn javascript.0 (7869) at Object.<anonymous> (script.js.common.Mappe_1.summepower_nach_ccu:8:4)
const idSV = getIdByName('summepower'); on('javascript.0.Power.Summe', function(dp) { setState(idSV, dp.state.val); }); -
@user4711
Ist der Name "summepower" richtig geschrieben und eindeutig? Füge zur Überprüfung ein log() ein:const idSV = getIdByName('summepower'); log(idSV); on('javascript.0.Power.Summe', function(dp) { setState(idSV, dp.state.val); });@paul53 ja Name der systemvariable summepower ist eindeutig hab jetz die id aus dem Listen Auswahlfeld eingefügt, es kommt immer noch Fehler in Zeile 4 das ist hier Zeile 1
18:24:30.584 error javascript.0 (22410) script.js.common.Mappe_1.summepower_nach_ccu compile failed: at script.js.common.Mappe_1.summepower_nach_ccu:4
const idSV = getIdByName('hm-rega.0.37476'/*summepower*/'); log(idSV); on('javascript.0.Power.Summe', function(dp) { setState(idSV, dp.state.val); }); -
@paul53 ja Name der systemvariable summepower ist eindeutig hab jetz die id aus dem Listen Auswahlfeld eingefügt, es kommt immer noch Fehler in Zeile 4 das ist hier Zeile 1
18:24:30.584 error javascript.0 (22410) script.js.common.Mappe_1.summepower_nach_ccu compile failed: at script.js.common.Mappe_1.summepower_nach_ccu:4
const idSV = getIdByName('hm-rega.0.37476'/*summepower*/'); log(idSV); on('javascript.0.Power.Summe', function(dp) { setState(idSV, dp.state.val); }); -
@user4711 sagte:
const idSV = getIdByName('hm-rega.0.37476'/*summepower*/');So darf getIdByName(name) nicht verwendet werden. Richtig:
const idSV = 'hm-rega.0.37476'/*summepower*/;@paul53 dasslebe, hie rist die log
javascript.0 2021-05-26 18:55:37.747 error (22410) at processImmediate (internal/timers.js:463:21) javascript.0 2021-05-26 18:55:37.747 error (22410) at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/main.js:1281:17) javascript.0 2021-05-26 18:55:37.747 error (22410) at /opt/iobroker/node_modules/iobroker.javascript/main.js:1791:17 javascript.0 2021-05-26 18:55:37.747 error (22410) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1690:37) javascript.0 2021-05-26 18:55:37.746 error (22410) at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1443:28) javascript.0 2021-05-26 18:55:37.745 error (22410) at Object.createScript (vm.js:261:10) javascript.0 2021-05-26 18:55:37.745 error (22410) at new Script (vm.js:88:7) javascript.0 2021-05-26 18:55:37.745 error (22410) SyntaxError: Identifier 'idSV' has already been declared javascript.0 2021-05-26 18:55:37.745 error (22410) ^ javascript.0 2021-05-26 18:55:37.745 error (22410) const idSV = 'hm-rega.0.37476'/*summepower*/; javascript.0 2021-05-26 18:55:37.745 error at script.js.common.Mappe_1.summepower_nach_ccu:4 javascript.0 2021-05-26 18:55:37.745 error (22410) script.js.common.Mappe_1.summepower_nach_ccu compile failed: -
@paul53 dasslebe, hie rist die log
javascript.0 2021-05-26 18:55:37.747 error (22410) at processImmediate (internal/timers.js:463:21) javascript.0 2021-05-26 18:55:37.747 error (22410) at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/main.js:1281:17) javascript.0 2021-05-26 18:55:37.747 error (22410) at /opt/iobroker/node_modules/iobroker.javascript/main.js:1791:17 javascript.0 2021-05-26 18:55:37.747 error (22410) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1690:37) javascript.0 2021-05-26 18:55:37.746 error (22410) at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1443:28) javascript.0 2021-05-26 18:55:37.745 error (22410) at Object.createScript (vm.js:261:10) javascript.0 2021-05-26 18:55:37.745 error (22410) at new Script (vm.js:88:7) javascript.0 2021-05-26 18:55:37.745 error (22410) SyntaxError: Identifier 'idSV' has already been declared javascript.0 2021-05-26 18:55:37.745 error (22410) ^ javascript.0 2021-05-26 18:55:37.745 error (22410) const idSV = 'hm-rega.0.37476'/*summepower*/; javascript.0 2021-05-26 18:55:37.745 error at script.js.common.Mappe_1.summepower_nach_ccu:4 javascript.0 2021-05-26 18:55:37.745 error (22410) script.js.common.Mappe_1.summepower_nach_ccu compile failed: -
@paul53 ja error in zeile 4 steht direkt im Menü Scipte unter dem Code Fenster.
und im Menü Log das was ich oben gepostet hatte aber da steht nicht Zeile 4 -
@user4711 sagte: Log das was ich oben gepostet hatte aber da steht nicht Zeile 4
at script.js.common.Mappe_1.summepower_nach_ccu:4Wie sieht das Skript jetzt aus?
-
@paul53 so, wie du letzten gepostet hattest, aber der Fehler ist scheinbar immer in der hier ersten Zeile.
const idSV = 'hm-rega.0.37476'/*summepower*/; log(idSV); on('javascript.0.Power.Summe', function(dp) { setState(idSV, dp.state.val); });@user4711 sagte in VIS Werte aus HM-ES-PMSw1-DR Leistungsmesser Addieren:
so, wie du letzten gepostet hattest, aber der Fehler ist scheinbar immer in der hier ersten Zeile.
warum postest du nicht das ganze Skript?
-
@user4711 sagte in VIS Werte aus HM-ES-PMSw1-DR Leistungsmesser Addieren:
so, wie du letzten gepostet hattest, aber der Fehler ist scheinbar immer in der hier ersten Zeile.
warum postest du nicht das ganze Skript?
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden
