NEWS
[Vorlage] Variable Zeitsteuerung mit VIS Editor
-
@GiuseppeS
Puhhh dann bin ich fast schon froh dass ich nicht alleine bin. Dachte schon ich muss alle meine Geräte in der CCU umbenennen und in ioBroker alles anpassenAber gut wenn du den Fehler nun auch nachstellen kannst. Ich warte erstmal mit der Umbenennerei.
Zum testen stehe ich gerne bereit
-
@micklafisch
Selbst wenn das einen Einfluss gehabt hätte, könnte man es sicherlich anders lösen anstatt zig Merkmale umzubenennen. Wenn du bisher keine Nebenwirkungen wegen der Namen hattest, wird es schon ok sein. -
Update ist hochgeladen:
Changelog 20.06.2020 (Skript)
- Bugfix: Bei Tabellen mit modifizierter Reihenfolge funktioniert nun auch die Filterung korrekt!
- State "javascript.0.Timer.AtHomeSimul.TableJSON" gelöscht, wurde schon länger nicht benötigt.
Habe eben auch gesucht, woher der Bug mit den gemerkten Timern herrührt, aber kann noch keine Ursache ausmachen. Muss mich damit weiter beschäftigen...
-
@GiuseppeS
Sortierung funktioniert einwandfrei, sehr geil.Danke!
-
Hallo, bei mir steht immer NULL da?
-
@sigi234
Hmm, dachte, dass es mit der letzten Änderung nicht mehr passiert.
Gib mal im State "javascript.0.Timer.Devices.ErrorMsg" etwas ein und lösche es wieder nach wenigen Sekunden.Muss das nachher testen.
-
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
@sigi234
Hmm, dachte, dass es mit der letzten Änderung nicht mehr passiert.
Gib mal im State "javascript.0.Timer.Devices.ErrorMsg" etwas ein und lösche es wieder nach wenigen Sekunden.Muss das nachher testen.
Geht jetzt.
Frage, sehe ich das Richtig das ich für jede Funktion (var deviceEnum = "enum.functions.blinds";) eine Vis und ein Skript anlegen muss?
-
Hallo, coole Sache....Bin gerade am ausprobieren und habe folgende Meldungen im log, sobad ich auf löschen oder add drücke...
Ansosnten funktionert es soweit bei mir...host.ioBroker-RasPi4 2020-06-29 12:30:00.070 info instance system.adapter.daswetter.0 started with pid 14115 javascript.1 2020-06-29 12:25:09.421 error (21153) at processImmediate (internal/timers.js:456:21) javascript.1 2020-06-29 12:25:09.421 error (21153) at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5384:37) javascript.1 2020-06-29 12:25:09.420 error (21153) at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:451:25) javascript.1 2020-06-29 12:25:09.420 error (21153) at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1052:38) javascript.1 2020-06-29 12:25:09.420 error (21153) at Object.<anonymous> (script.js.common.Zeitsteuerung.Variable_Zeitsteuerung_Vis:834:26) javascript.1 2020-06-29 12:25:09.419 error (21153) at length (script.js.common.Zeitsteuerung.Variable_Zeitsteuerung_Vis:207:19) javascript.1 2020-06-29 12:25:09.419 error (21153) at Function.keys (<anonymous>:null:null) javascript.1 2020-06-29 12:25:09.418 error (21153) Error in callback: TypeError: Cannot convert undefined or null to object javascript.1 2020-06-29 12:24:59.005 error (21153) at processImmediate (internal/timers.js:456:21) javascript.1 2020-06-29 12:24:59.004 error (21153) at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5384:37) javascript.1 2020-06-29 12:24:59.004 error (21153) at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:451:25) javascript.1 2020-06-29 12:24:59.004 error (21153) at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1052:38) javascript.1 2020-06-29 12:24:59.003 error (21153) at Object.<anonymous> (script.js.common.Zeitsteuerung.Variable_Zeitsteuerung_Vis:927:22) javascript.1 2020-06-29 12:24:59.003 error (21153) at length (script.js.common.Zeitsteuerung.Variable_Zeitsteuerung_Vis:207:19) javascript.1 2020-06-29 12:24:59.002 error (21153) at Function.keys (<anonymous>:null:null) javascript.1 2020-06-29 12:24:59.002 error (21153) Error in callback: TypeError: Cannot convert undefined or null to object javascript.1 2020-06-29 12:24:57.737 error (21153) at processImmediate (internal/timers.js:456:21) javascript.1 2020-06-29 12:24:57.736 error (21153) at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5384:37) javascript.1 2020-06-29 12:24:57.736 error (21153) at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:451:25) javascript.1 2020-06-29 12:24:57.735 error (21153) at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1052:38) javascript.1 2020-06-29 12:24:57.735 error (21153) at Object.<anonymous> (script.js.common.Zeitsteuerung.Variable_Zeitsteuerung_Vis:927:22) javascript.1 2020-06-29 12:24:57.734 error (21153) at length (script.js.common.Zeitsteuerung.Variable_Zeitsteuerung_Vis:207:19) javascript.1 2020-06-29 12:24:57.734 error (21153) at Function.keys (<anonymous>:null:null) javascript.1 2020-06-29 12:24:57.733 error (21153) Error in callback: TypeError: Cannot convert undefined or null to object javascript.1 2020-06-29 12:24:56.091 error (21153) at processImmediate (internal/timers.js:456:21) javascript.1 2020-06-29 12:24:56.091 error (21153) at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5384:37) javascript.1 2020-06-29 12:24:56.090 error (21153) at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:451:25) javascript.1 2020-06-29 12:24:56.090 error (21153) at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1052:38) javascript.1 2020-06-29 12:24:56.089 error (21153) at Object.<anonymous> (script.js.common.Zeitsteuerung.Variable_Zeitsteuerung_Vis:927:22) javascript.1 2020-06-29 12:24:56.088 error (21153) at length (script.js.common.Zeitsteuerung.Variable_Zeitsteuerung_Vis:207:19) javascript.1 2020-06-29 12:24:56.087 error (21153) at Function.keys (<anonymous>:null:null) javascript.1 2020-06-29 12:24:56.086 error (21153) Error in callback: TypeError: Cannot convert undefined or null to object
-
Error in callback: TypeError: Cannot convert undefined or null to object
https://forum.iobroker.net/topic/23346/vorlage-variable-zeitsteuerung-mit-vis-editor/126
-
@smartboart
Wenn ich es richtig sehe, hast du das Skript mit Javascript Instanz 1 gestartet, oder? Bitte ausschließlich mit Instanz 0 nutzen. Habe es im Skript nicht dynamisch programmiert. Falls der ausdrückliche Wunsch besteht, kann ich es auch dynamisch einrichten. Allerdings würden die Zuordnungen im Editor dann auch nicht mehr passen. -
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
Wenn ich es richtig sehe, hast du das Skript mit Javascript Instanz 1 gestartet, oder? Bitte ausschließlich mit Instanz 0 nutzen. Habe es im Skript nicht dynamisch programmiert. Falls der ausdrückliche Wunsch besteht, kann ich es auch dynamisch einrichten. Allerdings würden die Zuordnungen im Editor dann auch nicht mehr passen.
danke für die Antwort...habe das aber alles im script angepasst, damit es auf javascript.1 läuft und die Vis ebenfalls... also alles von javascript.0 auf javascript.1 im script geändert..sollte doch dann gehen oder?
Die Popup Umschaltung habe ich ebenfalls umgeschrieben, da ich meine views mittels State und view in widget umschaltet... Sollte damit alles nix zu tun haben.Korrigiere mich, wenn der Wechsel der Instanz so nicht ohne weiteres möglich ist...
Nachtrag...Hinweis von Glasfaser hats gebracht...
-
@Glasfaser sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
Error in callback: TypeError: Cannot convert undefined or null to object
https://forum.iobroker.net/topic/23346/vorlage-variable-zeitsteuerung-mit-vis-editor/126
Danke das wars....
kann man das nicht anders abfangen? -
@smartboart
Ich muss zugeben, dass ich im Gegensatz zu Glasfaser die Problematik (Ursache des Fehlers) nicht verstanden habe.
Kommt dieser Fehler immer wenn die Variable splitHtml auf true gesetzt ist? Nutze diese Funktion selbst gar nicht, hatte es aber bisher nicht als Fehlerhaft in Erinnerung. Wenn ich es reproduzieren kann, werde ich den Fehler aber zügig beheben, kann nicht kompliziert sein. -
@GiuseppeS
Wenn javascript.0.Timer.Devices.FilterDevice auf alle steht und javascript.0.Timer.Devices.Editor.Del auf true gesetzt wird... -
@smartboart
Da muss aber was an Rahmenbedingungen für das Reproduzieren deiner Error-Meldungen fehlen.
Bei mir steht der Filter immer auf "alle". Wenn ich einen Timer antippe erscheinen die Buttons "del" und "add". "del" funktioniert dann einwandfrei.Ist bei dir die Split Ansicht aktiviert? Das behandelte ja der verlinkte Beitrag von Glasfaser.
-
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
Ist bei dir die Split Ansicht aktiviert?
nein steht auf false...Der verlinkte Beitrag hat mich nur veranlasst über den Auswahl Filter das device auszuwählen bei welchem ich das Löschen getestet habe..Dann gings...
"Wenn ich einen Timer antippe erscheinen die Buttons "del" und "add".
ok, dann stimmt in vis die sichtbarkeitseinstellung nicht mehr bei mir, weil bei mir werden add und dell ständig angezeitgt... -
@smartboart gut habe hier material design buttons benutzt und dabei die Sichtbarkeitseinstellungen nicht übernommen... sorry...
Hatte die vis schon für meine views angepasst... -
@smartboart sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
"Wenn ich einen Timer antippe erscheinen die Buttons "del" und "add".
Danke für die Hilfe und sorry für die Verwirrung...Der Fehler hat sich beim Umbau der Vis eingeschlichen...
-
@smartboart
Kein Thema. Dann funktioniert jetzt hoffentlich alles wie gewünscht, also auch mit Filter.Werde in der nächsten Version diesen Fehler "kein Timer ausgewählt" abfangen...
Hintergrund zu Deinem Fehler:
Wenn Du einen Timer anklickst, wird diese Auswahl für nur 5s gemerkt. Und nur in diesem Zeitfenster funktioniert ein Löschen bzw Duplizieren des Timers. Ich wollte ein versehentliches Löschen aufgrund dauerhaft dargestellter Buttons vermeiden. -
Habe eine neue Version hochgeladen:
Changelog 30.06.2020 (Skript)
- Codeoptimierung, Error-Handling wenn Buttons nicht gemäß Standard genutzt werden
- Bugfix: Alle gemerkten Timer werden nun ausgeführt, wenn Bedingungen nachträglich erfüllt werden.
Für diejenigen, die "Timer merken" verwenden, ist ein Update empfohlen. Hier war ein Bug im alten Skript, wobei unter bestimmten Umständen nicht alle gemerkten Timer nachträglich ausgeführt wurden. Ich konnte den Fehler nur unter bestimmten Bedingungen nachstellen; ihr habt evtl. nichts davon gemerkt. Habe den Skript-Aufbau bzgl. "Timer merken" stark vereinfachen können; Fehlerhaftes Verhalten trat bei mir nicht mehr auf.