NEWS
Script fürTabelle der Batterie Zustände
-
Hallo liv-in-sky,
leider zieht er sich noch den falschen Namen.
Zeile 328 habe ich wie folg ersetzt < json6="SONOFF_ZBBridge">
leider Passt der "Name" nicht ganz.
Es wird der Name aus der Tabelle Name gezogen. und nicht vom Wert (also da wo auch der Batterie Status / Temperatur etc. steht).Viele Grüße und besten Dank
-
@katzenbeißer
zeile 328 geht klar
wie sieht den im moment der name bei dir aus ? kommt ein fehler oder etwas "kryptisches" -
der link https://github.com/liv-in-sky/battery-iobroker-vis-table
ist auch im ersten postdie änderung muss nach zeile 313 und 314 gemacht werden
in zeile 316 wird dann das json1 geschrieben, welches beim MD widget genutzt wirdmein vorschlag zum testen:
if (existsObject(id.replace("BatteryPercentage","Name" ))) val0=getState(id.replace("BatteryPercentage","Name")).val
zur info: beim import deiner dp werden keine states mitgeliefert - daher sah ich den inhalt nicht
was gibt es noch:
0x01FE hat zwar ein batterypercentage feld aber kein name feld - man muss also eine abfrage einfügen und prüfen ob das name feld existiert - sonst kommt fehler
interessanterweise ist der dp ..._Name als zahl definiert - auch seltsam ? sollte im adapter geändert werden -
@liv-in-sky
Funktioniert alles.Ich würde auch den ergänzenden Part im Script lassen.
Wenn kein Eigener Name eingebaut wird, Nimmt das Script den default Name.
LÄUFT DANKE
-
@liv-in-sky sagte in Script fürTabelle der Batterie Zustände:
0x01FE hat zwar ein batterypercentage feld aber kein name feld - man muss also eine abfrage einfügen und prüfen ob das name feld existiert - sonst kommt fehler
interessanterweise ist der dp ..._Name als zahl definiert - auch seltsam ? sollte im adapter geändert werdenIst mir vorher nicht aufgefallen
Das devive war angelernt, aber hatte noch nie Informationen gesendet.
Ich habe es gerade erzwungen und sie da.. alles drinnen..Danke
-
Hallo
Ich bekomme seit neuestem vom Script WARNungen im Loog.
javascript.0 2021-08-09 11:40:00.203 warn at processTimers (internal/timers.js:500:7) javascript.0 2021-08-09 11:40:00.203 warn at listOnTimeout (internal/timers.js:557:17) javascript.0 2021-08-09 11:40:00.203 warn at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:228:7) javascript.0 2021-08-09 11:40:00.203 warn at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:268:28 javascript.0 2021-08-09 11:40:00.203 warn at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Job.js:168:15) javascript.0 2021-08-09 11:40:00.203 warn at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1313:34) javascript.0 2021-08-09 11:40:00.203 warn at Object.<anonymous> (script.js.Akku-Batterie.Akku_Alarm_Tabelle:1244:1) javascript.0 2021-08-09 11:40:00.202 warn at writeHTML (script.js.Akku-Batterie.Akku_Alarm_Tabelle:352:33) javascript.0 2021-08-09 11:40:00.202 warn at Object.result.each (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:819:29) javascript.0 2021-08-09 11:40:00.202 warn at script.js.Akku-Batterie.Akku_Alarm_Tabelle:368:16 javascript.0 2021-08-09 11:40:00.202 warn getState "mihome.0.devices.weather_v1_158d0002e91bc1.percent" not found (3) states[id]=null javascript.0 2021-08-09 11:40:00.202 warn at processTimers (internal/timers.js:500:7) javascript.0 2021-08-09 11:40:00.202 warn at listOnTimeout (internal/timers.js:557:17) javascript.0 2021-08-09 11:40:00.202 warn at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:228:7) javascript.0 2021-08-09 11:40:00.202 warn at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:268:28 javascript.0 2021-08-09 11:40:00.202 warn at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Job.js:168:15) javascript.0 2021-08-09 11:40:00.202 warn at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1313:34) javascript.0 2021-08-09 11:40:00.202 warn at Object.<anonymous> (script.js.Akku-Batterie.Akku_Alarm_Tabelle:1244:1) javascript.0 2021-08-09 11:40:00.202 warn at writeHTML (script.js.Akku-Batterie.Akku_Alarm_Tabelle:352:33) javascript.0 2021-08-09 11:40:00.202 warn at Object.result.each (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:819:29) javascript.0 2021-08-09 11:40:00.201 warn at script.js.Akku-Batterie.Akku_Alarm_Tabelle:364:41
JS-Controller: 3.3.15
Admin: 5.1.23
Script: 5.2.8 -
@negalein sagte in Script fürTabelle der Batterie Zustände:
getState "mihome.0.devices.weather_v1_158d0002e91bc1.percent" not found (3)
Datenpunkt nicht da !?
-
@glasfaser sagte in Script fürTabelle der Batterie Zustände:
Datenpunkt nicht da !?
doch, ist vorhanden. Aber mit null
-
@negalein ich prüfe das im script nicht ab, ob da null steht
dann stimmt wohl was nicht mit dem sensor - kannst du den wiederbeleben, damit er werte liefert ?
-
@liv-in-sky sagte in Script fürTabelle der Batterie Zustände:
dann stimmt wohl was nicht mit dem sensor - kannst du den wiederbeleben, damit er werte liefert ?
der war tot!
Hab ihn nun komplett entsorgt. DP gelöscht und Meldung ist weg! -
@negalein sagte in Script fürTabelle der Batterie Zustände:
der war tot!
toter Sensor ist böser Sensor.
-
@negalein nicht gleich aufgeben, hatte schon einige, die auf einmal tot waren.
Batterie raus, ein paar Tage liegen lassen, neue Batterie rein, und dann liefen die wieder... -
@ilovegym sagte in Script fürTabelle der Batterie Zustände:
nicht gleich aufgeben
der lag eh nur noch rum. Hab ihn schon vor einiger Zeit gegen HmIP ersetzt.
-
@negalein hätteste mir schenken können
-
Hab ne doofe Frage.
Wo genau wird das File abgelegt, wenn ich braucheEinFile auf true stelle? -
@christoph1337 dieses setting benötigt man nicht mehr - da iqontrol mittlerweile das direkt als html lesen kann
das file ist im netzwerk erreichbar unter: http://192.168.178.59:8082/vis.0/htmlexample.html - der port und die ip adresse muss natürlich auf das eigene netzwerk angeglichen werden - port ist in dem instanz-setting der web-instanz zu entnehmen
wird dann direkt im browser aufgerufen - hier ein anderes beispiel
-
@liv-in-sky und wo in dateisystem?
-
/opt/iobroker/iobroker-data/files/vis.0
-
falls du den befehl zum schreiben eines files suchst?
die scripte sind schon älter - der richtige befehl zum speichern der files wäre wohl:
let visPathSystem= "/opt/iobroker/iobroker-data/files/vis.0/"; writeFileAsync('vis.0', visPathSystem, contentNew);
man könnte z.b eigene webseiten, die nichts mit iobroker zu tun haben, so ins sytem schreiben und iobroker als "mini" webserver nutzen
als das script geschrieben wurde, wurde über ein iframe diese erzeugte datei in iqontrol eingebunden
-
@liv-in-sky Ahh okay dank dir.
Ich hab hier ja noch eine ältere angepasste version von dir laufen. Da steht das noch so drin: