NEWS
Script - Info über Datenpunkte sammeln
-
@liv-in-sky sagte in Script - Info über Datenpunkte sammeln:
// WICHTIG // hier muss die instanz der eigenen datenpunkte angegeben werden oder zusätzlich, die man prüfen möchte , "alexa2.0" //oder auch nur einzelne ornder in der datenstruktur z.b. "javascript.2.WLANUnifi" const instanzArr=[ "EigeneDatenpunkte.0"]; // beispiel const instanzArr=[ "eigeneDatenpunkte.0", "ping.0",]; // @Liv-in-sky Okt. 20192 Mal drinnen!
// WICHTIG // hier muss die instanz der eigenen datenpunkte angegeben werden oder zusätzlich, die man prüfen möchte , "alexa2.0" //oder auch nur einzelne ornder in der datenstruktur z.b. "javascript.2.WLANUnifi" const instanzArr=[ "EigeneDatenpunkte.0"]; // beispiel const instanzArr=[ "eigeneDatenpunkte.0", "ping.0",]; // @Liv-in-sky Okt. 2019@sigi234 bitte rauslöschen - ich mache für heute pause :-( und habs geändert
aber immerhin hab ich schon mal einen fehler im alexa2 adapter gefunden (wird gefixt) - ist doch schon mal was :-)
-
@sigi234 bitte rauslöschen - ich mache für heute pause :-( und habs geändert
aber immerhin hab ich schon mal einen fehler im alexa2 adapter gefunden (wird gefixt) - ist doch schon mal was :-)
@liv-in-sky sagte in Script - Info über Datenpunkte sammeln:
bitte rauslöschen
ja,schaut besser aus, kein Fehler im Log.
HTML - leider nein, wird nicht erstellt.
Skript hängt sich auf.....
-
sorry aber ich muss dich nochmal was fragen - ich versuche multistate datenpunkte zu filtern, die keine number im attribut haben sondern string
ist diese abfrage richtig - sie macht das mit meinen testpunkten aber ich würde gerne deine meinung haben
if(getObject(id).common.hasOwnProperty("states")){ var helpStates= Object.keys(getObject(id).common.states); if (true) { //platz für weitere bedingung var alarmString=false; for (var i=0; i < helpStates.length ;i++){ mylog(typeof helpStates[i]); //damit geht es nicht ! myog(isNaN(helpStates[i]).toString()) ; if (isNaN(helpStates[i])) alarmString=true; } if (alarmString){ htmlDP.push(id); htmlMSG.push("ACHTUNG Multstate must be number")} } }
-
sorry aber ich muss dich nochmal was fragen - ich versuche multistate datenpunkte zu filtern, die keine number im attribut haben sondern string
ist diese abfrage richtig - sie macht das mit meinen testpunkten aber ich würde gerne deine meinung haben
if(getObject(id).common.hasOwnProperty("states")){ var helpStates= Object.keys(getObject(id).common.states); if (true) { //platz für weitere bedingung var alarmString=false; for (var i=0; i < helpStates.length ;i++){ mylog(typeof helpStates[i]); //damit geht es nicht ! myog(isNaN(helpStates[i]).toString()) ; if (isNaN(helpStates[i])) alarmString=true; } if (alarmString){ htmlDP.push(id); htmlMSG.push("ACHTUNG Multstate must be number")} } }
ich versuche multistate datenpunkte zu filtern, die keine number im attribut haben sondern string
Auch Datenpunkte vom Typ "boolean" können Zustandstexte (states) haben, z.B.
"states": { "false": "Aus", "true": "Ein" } -
ich versuche multistate datenpunkte zu filtern, die keine number im attribut haben sondern string
Auch Datenpunkte vom Typ "boolean" können Zustandstexte (states) haben, z.B.
"states": { "false": "Aus", "true": "Ein" }@paul53
es gibt aber nur: type number, da müssen im "states" zahlen drin sein
und type boolean - da müssen in "states"logic werte drin sein
-
@paul53
es gibt aber nur: type number, da müssen im "states" zahlen drin sein
und type boolean - da müssen in "states"logic werte drin sein
es gibt aber nur: type number, da müssen im "states" zahlen drin sein
und type boolean - da müssen in "states"logic werte drin seinRichtig.
-
-
suche tester, anregungen
-
dieses script soll u.a. zum auffinden falsch beschriebener oder leerer datenpunkte dienen. es kann für scripter helfen, eigene script- oder adpater datenpunkte zu überprüfen
-
unter umständen kann es dabei viele daten geben und deshalb wird zu einem datenpunkt (html formatiert für html widget-vis) eine webseite erzeugt um einen besseren überblick zu bekommen
-
das script wird mit einem boolean wert ausgeführt (RunScript=true) - so wird nach der aktivierung des scripts nichts zu sehen sein
was geht sonst noch:
feature to do datenpunkte per instanz zählen kann über dp abgeschalten werden (setzen: javascript.0.ProofingDatapoints.ObjectAnzahlCheck) Alias Kontrolle der neue controllerv2 hat aliase - diese werden auf fehlende datenpunktzuweisung überprüft letzte Änderung DP es kann die "letze Änderung" von datenpunkte angezeigt werden mit taage einstellung über "LatestChangeDP_Factor" 1 ist 1 Tag nur spezielle ornder abfragen es können auch nur einzelne ordner abgefragt werden - z.b. "javascript.2.WLANUnifi" eigene instanzen definieren z.b für die eignenDatenpunkte - muss vor scriptausführung angepaßt werden (const instanzArr im script) standard javascript.* disable scripte legen datenpunkte unter javascript ab -. daher standard (kann über dp abgeschalten werden)(setzen: javascript.0.ProofingDatapoints.JavaInstanzCheck) eigene webseite erreichbar: http://<ip iobroker>:8082/javascript/ProofingDatapoints/htmlputz.html - zur leichteren auswertung/übersicht. dabei ist 8082 der port des web-adapters eigene farben definieren für webseite bei variable definition im script monster-searches gibt einen dp (javascript.0.ProofingDatapoints.MonsterSearch), mit dem kann man eine suche durch alle instanzen machen. nach dessen durchlauf wird der datenpunkt wieder automatisch auf false gestellt - es wird auch kein htm-datenpunkt geschrieben, sondern nur die webseite erstellt - das system wird stark belastet !!! in dieser suche werden die Eigenendatenpunkte nicht berücksichtigt (keine verwendung von const instanzArr). directSearch es gibt einen datenpunkt "directSearch - damit kann man direkt einen pfad zu einem ordner eingeben. in der vis mit dem input-widget realisiert blacklist es können einzelen datenpunkte oder ganze breiche ausgeschlossen werden Smart Devices es können die smarthome devices geprüft werden - im raw des dp unter "common.smartName" definiert - z.b um doppelte einträge zu finden wer das script von mic nutzt (logfile auswertung) sollte es bei einer "monstersuche" deaktivieren- beim aufsuchen der datenpunkte kann es zu vielen warnungen im log kommen - ist nicht verhinderbar
- script kann auch abbrechen durch error - wird dann angezeigt
beispiel vis:

beispiel "directSearch"

beispiel webseite:

script für export:
version 1.0:ProofingDatapoints16-10-19.txt
version 1.1: ProofingDatapoints18-10-19.txtbitte alles unter const instanzArr=... ersetzen
version 1.2: ProofingDatapoints22-10-19.txtbitte alles unter "const instanzArr=..." ersetzen- multistates check hinzugefügt
version 1.5:ProofingDatapoints26-10-19.txtbitte alles unter "const instanzArr=..." ersetzen und auch die datenpunkte des scripts löschen- letzte Änderung DP checken, Aliase (controllerv2) check
version 1.6:ProofingDatapoints1-11-19.txt
version 1.7: ProofingDatapoints7-11-19.txt
version 1.8ProofingDatapoints9-11-19.txt
version 1.9ProofingDatapoints10-11-19.txt
version 2.0ProofingDatapoints12-11-19.txt
version 2.1ProofingDatapoints13-11-19.txt
version 2.3ProofingDatapoints15-11-19.txt mit smart devices
version 2.4 ProofingDatapoints17-11-19.txt mit history deviceswidgets export( 15.11.2019):
- bisher erfolgreich bei adaptern angewandt
adapter beispiel alexa2 datenpunkt fehler - state existierte - aber kein datenpunkt-object plex falsche datenpunkt-type-definition, da adapter datenpunktdefinition von plex automatisch übernahm pi-hole falsche datenpunkt-type-definition @liv-in-sky sagte in Script - Info über Datenpunkte sammeln:
version 1.2: ProofingDatapoints21-10-19.txt ab "AB HIER NICHTS ÄNDERN" ersetzen - multistates check hinzugefügt
<p style="color:red;font-family:Helvetica;"><i>!!! ohne Javascript Instanzen !!! kann enabled werden</i></p>undefined<p style="color:red;font-family:Helvetica;"><i>Script hat Fehler - bitte Log checken !!!</i></p>
javascript.0 2019-10-22 21:12:27.223 error (15748) at tryOnImmediate (timers.js:676:5) javascript.0 2019-10-22 21:12:27.223 error (15748) at runCallback (timers.js:705:18) javascript.0 2019-10-22 21:12:27.223 error (15748) at Immediate.setImmediate (C:\Program Files\iobroker\Test\node_modules\iobroker.js-controller\lib\states\statesInRedis.js:214:41) javascript.0 2019-10-22 21:12:27.223 error (15748) at change (C:\Program Files\iobroker\Test\node_modules\iobroker.js-controller\lib\adapter.js:4546:37) javascript.0 2019-10-22 21:12:27.223 error (15748) at Object.stateChange (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\main.js:396:25) javascript.0 2019-10-22 21:12:27.223 error (15748) at Object.callback (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:1055:38) javascript.0 2019-10-22 21:12:27.223 error (15748) at Object.<anonymous> (script.js.System.Objekte:285:5) javascript.0 2019-10-22 21:12:27.223 error (15748) at checkWerte (script.js.System.Objekte:167:15) javascript.0 2019-10-22 21:12:27.223 error (15748) at Object.result.each (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:808:29) javascript.0 2019-10-22 21:12:27.223 error (15748) at script.js.System.Objekte:182:26 javascript.0 2019-10-22 21:12:27.222 error (15748) Error in callback: TypeError: Cannot read property 'common' of null -
-
@liv-in-sky sagte in Script - Info über Datenpunkte sammeln:
version 1.2: ProofingDatapoints21-10-19.txt ab "AB HIER NICHTS ÄNDERN" ersetzen - multistates check hinzugefügt
<p style="color:red;font-family:Helvetica;"><i>!!! ohne Javascript Instanzen !!! kann enabled werden</i></p>undefined<p style="color:red;font-family:Helvetica;"><i>Script hat Fehler - bitte Log checken !!!</i></p>
javascript.0 2019-10-22 21:12:27.223 error (15748) at tryOnImmediate (timers.js:676:5) javascript.0 2019-10-22 21:12:27.223 error (15748) at runCallback (timers.js:705:18) javascript.0 2019-10-22 21:12:27.223 error (15748) at Immediate.setImmediate (C:\Program Files\iobroker\Test\node_modules\iobroker.js-controller\lib\states\statesInRedis.js:214:41) javascript.0 2019-10-22 21:12:27.223 error (15748) at change (C:\Program Files\iobroker\Test\node_modules\iobroker.js-controller\lib\adapter.js:4546:37) javascript.0 2019-10-22 21:12:27.223 error (15748) at Object.stateChange (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\main.js:396:25) javascript.0 2019-10-22 21:12:27.223 error (15748) at Object.callback (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:1055:38) javascript.0 2019-10-22 21:12:27.223 error (15748) at Object.<anonymous> (script.js.System.Objekte:285:5) javascript.0 2019-10-22 21:12:27.223 error (15748) at checkWerte (script.js.System.Objekte:167:15) javascript.0 2019-10-22 21:12:27.223 error (15748) at Object.result.each (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:808:29) javascript.0 2019-10-22 21:12:27.223 error (15748) at script.js.System.Objekte:182:26 javascript.0 2019-10-22 21:12:27.222 error (15748) Error in callback: TypeError: Cannot read property 'common' of nullleider habe ich heute keine zeit mehr - morgen als erstes - poste bitte mal deine settings
-
leider habe ich heute keine zeit mehr - morgen als erstes - poste bitte mal deine settings
@liv-in-sky sagte in Script - Info über Datenpunkte sammeln:
leider habe ich heute keine zeit mehr - morgen als erstes - poste bitte mal deine settings
// @Liv-in-sky Okt. 2019 // WICHTIG // hier muss die instanz der eigenen datenpunkte angegeben werden oder zusätzlich, die man prüfen möchte , "alexa2.0" //oder auch nur einzelne ornder in der datenstruktur z.b. "javascript.2.WLANUnifi" const instanzArr=[ "Eigene_Datenpunkte.0", "alexa2.0", "hm-rega.0", "hm-rpc.0"]; // beispiel const instanzArr=[ "eigeneDatenpunkte.0", "ping.0",]; var color_in_table="black" // Farbe text in webseite let schriftart="Helvetica"; // möglich: Helvetica,Serif var color_gradient1="#819FF7"; // Hintergrund webseite var colorHeadlines="darkblue"; // Farbe Überschriften in der VIS Anzeige var colorHeadlinesDP="#36d5ec "; // Farbe Überschriften in der WebSeite Anzeige var warnFarbe = "#36d5ec"; //Farbe für Warnungen in vis und Webseite -
@liv-in-sky sagte in Script - Info über Datenpunkte sammeln:
leider habe ich heute keine zeit mehr - morgen als erstes - poste bitte mal deine settings
// @Liv-in-sky Okt. 2019 // WICHTIG // hier muss die instanz der eigenen datenpunkte angegeben werden oder zusätzlich, die man prüfen möchte , "alexa2.0" //oder auch nur einzelne ornder in der datenstruktur z.b. "javascript.2.WLANUnifi" const instanzArr=[ "Eigene_Datenpunkte.0", "alexa2.0", "hm-rega.0", "hm-rpc.0"]; // beispiel const instanzArr=[ "eigeneDatenpunkte.0", "ping.0",]; var color_in_table="black" // Farbe text in webseite let schriftart="Helvetica"; // möglich: Helvetica,Serif var color_gradient1="#819FF7"; // Hintergrund webseite var colorHeadlines="darkblue"; // Farbe Überschriften in der VIS Anzeige var colorHeadlinesDP="#36d5ec "; // Farbe Überschriften in der WebSeite Anzeige var warnFarbe = "#36d5ec"; //Farbe für Warnungen in vis und Webseitehab doch noch mal nachgesehen - irgendwie ergeben die fehlermeldungen keinen sinn bzw. ich kann sie nicht richtig deuten - bitte stoppe script, lösche alle datenpunkte des scripts, kopiere die ganze neue version, setze nur deine "eigenen_datenpunkte.0" und starte das script nochmal
-
hab doch noch mal nachgesehen - irgendwie ergeben die fehlermeldungen keinen sinn bzw. ich kann sie nicht richtig deuten - bitte stoppe script, lösche alle datenpunkte des scripts, kopiere die ganze neue version, setze nur deine "eigenen_datenpunkte.0" und starte das script nochmal
Geht, Copy/Paste Fehler oder wenn ich eine const instanzArr hinzufüge.
HTML wurde nicht erstellt.
-
Geht, Copy/Paste Fehler oder wenn ich eine const instanzArr hinzufüge.
HTML wurde nicht erstellt.
@sigi234 hi sigi
könntest du nochmal testen
ein fehler ist mir aufgefallen - das hing an einem datenpunkt im alexa2 adapter, den du ja standardmäßig prüfst
-
@nis
habe mal die prüfung für multistate eingeführt - wahrscheinlich hast du gerade keine solchen datenpunkte -, wenn doch, bitte testen, wenn du zeit hast

-
@sigi234 hi sigi
könntest du nochmal testen
ein fehler ist mir aufgefallen - das hing an einem datenpunkt im alexa2 adapter, den du ja standardmäßig prüfst
@liv-in-sky sagte in Script - Info über Datenpunkte sammeln:
@sigi234 hi sigi
könntest du nochmal testen
ein fehler ist mir aufgefallen - das hing an einem datenpunkt im alexa2 adapter, den du ja standardmäßig prüfst
So, gerade getestet nur mit eigenen DP
Funktioniert, Html erstellt.

-
@liv-in-sky sagte in Script - Info über Datenpunkte sammeln:
@sigi234 hi sigi
könntest du nochmal testen
ein fehler ist mir aufgefallen - das hing an einem datenpunkt im alexa2 adapter, den du ja standardmäßig prüfst
So, gerade getestet nur mit eigenen DP
Funktioniert, Html erstellt.

@sigi234 und gleich fehler gefunden
javascript.0.Ansage.Terminvorschau - magst du mal den raw wert des objects posten ?
-
@sigi234 und gleich fehler gefunden
javascript.0.Ansage.Terminvorschau - magst du mal den raw wert des objects posten ?
@liv-in-sky sagte in Script - Info über Datenpunkte sammeln:
@sigi234 und gleich fehler gefunden
javascript.0.Ansage.Terminvorschau - magst du mal den raw wert des objects posten ?
{ "from": "system.adapter.javascript.0", "user": "system.user.admin", "ts": 1569269166953, "common": { "name": "Termine heute, morgen oder bis einschließlich übermorgen", "type": "boolean", "min": 1, "max": 3, "states": "1:heute;2:morgen;3:übermorgen", "role": "state" }, "native": {}, "acl": { "object": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator", "state": 1636 }, "_id": "javascript.0.Ansage.Terminvorschau", "type": "state" } -
@liv-in-sky sagte in Script - Info über Datenpunkte sammeln:
@sigi234 und gleich fehler gefunden
javascript.0.Ansage.Terminvorschau - magst du mal den raw wert des objects posten ?
{ "from": "system.adapter.javascript.0", "user": "system.user.admin", "ts": 1569269166953, "common": { "name": "Termine heute, morgen oder bis einschließlich übermorgen", "type": "boolean", "min": 1, "max": 3, "states": "1:heute;2:morgen;3:übermorgen", "role": "state" }, "native": {}, "acl": { "object": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator", "state": 1636 }, "_id": "javascript.0.Ansage.Terminvorschau", "type": "state" }@sigi234 beim common.type boolean darf unten in den common.states nicht 1 oder 2 stehen sondern true oder false - also nur 2 werte
der common.type müßte hier number sein
-
@sigi234 beim common.type boolean darf unten in den common.states nicht 1 oder 2 stehen sondern true oder false - also nur 2 werte
der common.type müßte hier number sein
@liv-in-sky sagte in Script - Info über Datenpunkte sammeln:
@sigi234 beim common.type boolean darf unten in den common.states nicht 1 oder 2 stehen sondern true oder false - also nur 2 werte
der common.type müßte hier number sein
Ok, DP wurde von einen Skript automatisch erstellt.
-
@liv-in-sky sagte in Script - Info über Datenpunkte sammeln:
@sigi234 beim common.type boolean darf unten in den common.states nicht 1 oder 2 stehen sondern true oder false - also nur 2 werte
der common.type müßte hier number sein
Ok, DP wurde von einen Skript automatisch erstellt.
@sigi234 ist halt nicht standard - paul hat mir das so erklärt - wahrscheinlich funktioniert es - aber u.U. kann ein anderer adapter (evtl. iqontrol) dann probleme haben
-
@sigi234 ist halt nicht standard - paul hat mir das so erklärt - wahrscheinlich funktioniert es - aber u.U. kann ein anderer adapter (evtl. iqontrol) dann probleme haben
So habe weitere instanzArr hinzufügefügt.
Kommt sofort die Fehlermeldung.javascript.0 2019-10-23 18:46:59.473 error (2400) at tryOnImmediate (timers.js:676:5) javascript.0 2019-10-23 18:46:59.473 error (2400) at runCallback (timers.js:705:18) javascript.0 2019-10-23 18:46:59.473 error (2400) at Immediate.setImmediate (C:\Program Files\iobroker\Test\node_modules\iobroker.js-controller\lib\states\statesInRedis.js:214:41) javascript.0 2019-10-23 18:46:59.473 error (2400) at change (C:\Program Files\iobroker\Test\node_modules\iobroker.js-controller\lib\adapter.js:4546:37) javascript.0 2019-10-23 18:46:59.472 error (2400) at Object.stateChange (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\main.js:396:25) javascript.0 2019-10-23 18:46:59.472 error (2400) at Object.callback (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:1055:38) javascript.0 2019-10-23 18:46:59.472 error (2400) at Object.<anonymous> (script.js.System.Objekte:288:5) javascript.0 2019-10-23 18:46:59.472 error (2400) at checkWerte (script.js.System.Objekte:170:15) javascript.0 2019-10-23 18:46:59.472 error (2400) at Object.result.each (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:808:29) javascript.0 2019-10-23 18:46:59.472 error (2400) at script.js.System.Objekte:185:26 javascript.0 2019-10-23 18:46:59.472 error (2400) Error in callback: TypeError: Cannot read property 'common' of null// @Liv-in-sky Okt. 2019 // WICHTIG // hier muss die instanz der eigenen datenpunkte angegeben werden oder zusätzlich, die man prüfen möchte , "alexa2.0" //oder auch nur einzelne ornder in der datenstruktur z.b. "javascript.2.WLANUnifi" const instanzArr=[ "alexa2.0", "Eigene_Datenpunkte", "ping.0",]; // beispiel const instanzArr=[ "eigeneDatenpunkte.0", "ping.0",]; var color_in_table="black" // Farbe text in webseite let schriftart="Helvetica"; // möglich: Helvetica,Serif var color_gradient1="#819FF7"; // Hintergrund webseite var colorHeadlines="darkblue"; // Farbe Überschriften in der VIS Anzeige var colorHeadlinesDP="#36d5ec "; // Farbe Überschriften in der WebSeite Anzeige var warnFarbe = "#36d5ec"; //Farbe für Warnungen in vis und Webseite