NEWS
[Vorlage] Variable Zeitsteuerung mit VIS Editor
-
An sich ist das kein großes Ding. Hatte es für mich zuletzt auch manchmal vermisst. Ich schau mir das am Wochenende an und update meinen Beitrag. Denke, dass ich Sonntag dazu komme.
Die größte Hürde ist für mich eher die Übersicht, will auf einen Blick alles erkennen. Da muss ich mir überlegen wie ich fixe und random Offsets unterscheiden kann. -
Hallo, super Sache.
Wie bekomme ich die Devices rein?Folgenden Fehler habe ich:
22:51:37.938 info javascript.0 Stop script script.js.Test.Zeit1 22:51:37.951 info javascript.0 Start javascript script.js.Test.Zeit1 22:51:37.951 info javascript.0 script.js.Test.Zeit1: registered 8 subscriptions and 2 schedules 22:51:38.956 info javascript.0 script.js.Test.Zeit1: States werden neu erstellt! 22:51:38.956 info javascript.0 script.js.Test.Zeit1: Schedule Nr.: 1 erstellt! 22:51:38.957 info javascript.0 script.js.Test.Zeit1: Schedule Nr.: 2 erstellt! 22:51:38.957 info javascript.0 script.js.Test.Zeit1: Schedule Nr.: 11 erstellt! 22:51:38.957 info javascript.0 script.js.Test.Zeit1: Schedule Nr.: 12 erstellt! 22:51:38.957 info javascript.0 script.js.Test.Zeit1: Schedule Nr.: 21 erstellt! 22:51:38.957 info javascript.0 script.js.Test.Zeit1: Schedule Nr.: 22 erstellt! 22:51:38.957 error javascript.0 at Object.main (script.js.Test.Zeit1:525:51) 22:52:05.064 info javascript.0 Stop script script.js.Test.Zeit1 22:52:06.053 info javascript.0 Start javascript script.js.Test.Zeit1 22:52:06.053 info javascript.0 script.js.Test.Zeit1: registered 8 subscriptions and 2 schedules 22:52:07.055 info javascript.0 script.js.Test.Zeit1: States werden neu erstellt! 22:52:07.055 info javascript.0 script.js.Test.Zeit1: Schedule Nr.: 1 erstellt! 22:52:07.055 info javascript.0 script.js.Test.Zeit1: Schedule Nr.: 2 erstellt! 22:52:07.055 info javascript.0 script.js.Test.Zeit1: Schedule Nr.: 11 erstellt! 22:52:07.055 info javascript.0 script.js.Test.Zeit1: Schedule Nr.: 12 erstellt! 22:52:07.055 info javascript.0 script.js.Test.Zeit1: Schedule Nr.: 21 erstellt! 22:52:07.055 info javascript.0 script.js.Test.Zeit1: Schedule Nr.: 22 erstellt! 22:52:07.055 error javascript.0 at Object.main (script.js.Test.Zeit1:525:51) 22:53:28.269 error javascript.0 at Object.<anonymous> (script.js.Test.Zeit1:280:30) 22:56:01.273 error javascript.0 at Object.<anonymous> (script.js.Test.Zeit1:238:66) 22:56:04.579 error javascript.0 at Object.<anonymous> (script.js.Test.Zeit1:280:30)
-
@sigi234
Hast Du eine Aufzählung erstellt und die Geräte rein gesetzt? Falls ja, hast Du diese Aufzählung oben im Skript angegeben? -
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
Hast Du eine Aufzählung erstellt und die Geräte rein gesetzt? Falls ja, hast Du diese Aufzählung oben im Skript angegeben?
Nein, wie? Ich steh auf den Schlauch..........
/* ####################################################################### */ // Nachfolgend beide Einträge anpassen: // Aufzählung für Geräte angeben: var deviceEnum = "enum.functions.Fenster"; var deviceEnum = "enum.functions.Licht"; // Widget-Nummer für Widget "Timer bearbeiten" (View in Dialog) var DlgWidget = 'w00381' /* ####################################################################### */
-
Nur eine Aufzählung ist erlaubt. Diese sollte natürlich auch existieren.
Also entweder zeile 5 oder Zeile 6 auskommentieren.
-
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
Nur eine Aufzählung ist erlaubt. Diese sollte natürlich auch existieren.
Also entweder zeile 5 oder Zeile 6 auskommentieren.
Ok, schön langsam begreife ich es............
-
Bitte achte auf die korrekte Nummern der beiden Checkboxen im HTML Text. Habe den Hinweis oben ergänzt. Evtl. funktioniert es bei dir auch auf Anhieb. Wenn Du die Checkbox für das Aktivieren betätigst, sollte direkt ein Log-Eintrag für den Timer erscheinen. Passt das?
-
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
Nur eine Aufzählung ist erlaubt.
Dann muss ich für jedes Gerät ein Skript erstellen?
-
@sigi234
Oder Du erstellst eine neue Aufzählung mit allen gewünschten Geräten für diesen Timer.
Die Aufzählung wird eigentlich nur für das Initialisieren des JSONs genutzt. Theoretisch kann es auch wie folgt funktionieren (ungetestet!):Wenn deine Geräte aus deiner Aufzählung "enum.functions.Fenster" drin sind. Ändere im Skript den Verweis der Aufzählung auf "enum.functions.Licht" und starte das Skript neu. Alte Geräte sollten erhalten bleiben und die Neuen ergänzt werden.
-
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
Wenn Du die Checkbox für das Aktivieren betätigst, sollte direkt ein Log-Eintrag für den Timer erscheinen. Passt das?
javascript.0 2019-06-21 23:58:14.524 info script.js.Test.Zeit1: Schedule: 1 | 0 10 * * 0,1,2,3,4,5,6 | hm-rpc.1.OEQ0926852 | 100 javascript.0 2019-06-21 23:58:14.524 info script.js.Test.Zeit1: Schedule Nr.: 1 erstellt!
-
@sigi234
Das passt. Sehr gut.
Habe gerade das "fliegende" Ändern der Aufzählung im Skript selbst getestet. Es wurden bei mir wie erwartet zu meinen Rollläden auch meine Lichter (der geänderten Aufzählung) hinzugefügt.
Das kannst Du so nutzen, wie oben von mir beschrieben. Würde ich aber nicht empfehlen: Wenn Du ein Gerät aus Versehen komplett mit allen Timern löschst, dann wird ein Restart des Skripts dieses Gerät nicht wieder erstellen wenn es in der gerade verwendeten Aufzählung nicht vorhanden ist.Ansonsten kann die Angabe der Aufzählung im Skript als eine Art "Import" angesehen werden. Einmal drin, funktionieren die Geräte auch wenn sie nicht mehr in der Aufzählung vorkommen.
-
-
@sigi234 sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
Du bist kein Mensch der vielen Worte:
Willst Du mir sagen, dass es funktioniert hat? Oder doch nicht?Nochwas: Du gibst als Sollwerte für die selben Geräte unterschiedliche Typen an. Das Badfenster bekommt als Sollwert mal die 100 und dann ein "Aus" (was False entspricht). Kommt dein Datenpunkt damit klar?
States haben für gewöhnlich 0 bis 100 ODER True/False. Evtl. kommen deine Geräte damit aber auch klar. -
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
Du bist kein Mensch der vielen Worte:
Ja, teste es nur............
Also ich habe mal andere Funktionen eingefügt, da bekomme ich immer Fehler.
Momentan geht nur Fenster.Tür:
00:28:13.086 info javascript.0 Stop script script.js.Test.Zeit1 00:28:13.107 info javascript.0 Start javascript script.js.Test.Zeit1 00:28:13.107 info javascript.0 script.js.Test.Zeit1: registered 8 subscriptions and 2 schedules 00:28:14.116 error javascript.0 at Object.main (script.js.Test.Zeit1:548:51) 00:28:24.334 info javascript.0 Stop script script.js.Test.Zeit1 00:28:24.347 info javascript.0 Start javascript script.js.Test.Zeit1 00:28:24.348 info javascript.0 script.js.Test.Zeit1: registered 8 subscriptions and 2 schedules 00:28:25.350 error javascript.0 at Object.main (script.js.Test.Zeit1:548:51)
548: devName = getObject(device_members[i]).common.name;
-
@sigi234
Sicher dass es Fehler sind? Evtl meinst du meine zusätzlichen Logs, weil ich ne Weile das Dropdown Feld debuggen musste.Kannst du das Log kurz kopieren?
-
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
@sigi234
Sicher dass es Fehler sind? Evtl meinst du meine zusätzlichen Logs, weil ich ne Weile das Dropdown Feld debuggen musste.Kannst du das Log kurz kopieren?
javascript.0 2019-06-22 00:35:42.064 error at Timer.processTimers (timers.js:223:10) javascript.0 2019-06-22 00:35:42.064 error at listOnTimeout (timers.js:263:5) javascript.0 2019-06-22 00:35:42.064 error at tryOnTimeout (timers.js:300:5) javascript.0 2019-06-22 00:35:42.064 error at ontimeout (timers.js:438:13) javascript.0 2019-06-22 00:35:42.064 error at Timeout._onTimeout (C:\ioBroker\node_modules\iobroker.javascript\lib\sandbox.js:1886:34) javascript.0 2019-06-22 00:35:42.064 error at Object.main (script.js.Test.Zeit1:548:51) javascript.0 2019-06-22 00:35:42.064 error Error in callback: TypeError: Cannot read property 'common' of null javascript.0 2019-06-22 00:35:42.063 warn Object "hm-rpc.0.NEQ1826414.1" does not exist javascript.0 2019-06-22 00:35:41.062 info script.js.Test.Zeit1: registered 8 subscriptions and 2 schedules javascript.0 2019-06-22 00:35:41.059 info Start javascript script.js.Test.Zeit1 javascript.0 2019-06-22 00:35:41.047 info Stop script script.js.Test.Zeit1
-
@sigi234
Kann es sein, dass in der Aufzählung ein Gerät vorhanden ist, was real nicht mehr existiert?
hm-rpc.0.NEQ1826414.1? -
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
@sigi234
Kann es sein, dass in der Aufzählung ein Gerät vorhanden ist, was real nicht mehr existiert?Ja, ich habe Millionen..................
-
@sigi234
Oh jehh...
Mit solch einem Fall hatte ich jetzt nicht gerechnet. Habe kein Fehler Abfangmechanismus drin, falls ein Gerät innerhalb der Aufzählung real nicht mehr existiert.
Hier würde ich empfehlen, die Aufzählungen zu korrigieren.Zukünftig könnt ich das evtl. abfangen, kann nicht sonderlich kompliziert sein.
-
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
@sigi234
Oh jehh...
Mit solch einem Fall hatte ich jetzt nicht gerechnet. Habe kein Fehler Abfangmechanismus drin, falls ein Gerät innerhalb der Aufzählung real nicht mehr existiert.
Hier würde ich empfehlen, die Aufzählungen zu korrigieren.Zukünftig könnt ich das evtl. abfangen, kann nicht sonderlich kompliziert sein.
Habe es mal raus-genommen , geht jetzt:
javascript.0 2019-06-22 00:47:40.412 info script.js.Test.Zeit1: Schedules werden gesetzt javascript.0 2019-06-22 00:47:40.412 info script.js.Test.Zeit1: Dropdownliste Neu: Badfenster;Badfenster;Badfenster1;Haustuer;Terrassentuer javascript.0 2019-06-22 00:47:40.412 info script.js.Test.Zeit1: Dropdownliste Alt: Badfenster;Badfenster;Badfenster1;Haustuer javascript.0 2019-06-22 00:47:40.412 info script.js.Test.Zeit1: Device # Terrassentuer # fehlt und wird neu hinzugefügt mit Schedules-ID: 4 javascript.0 2019-06-22 00:47:40.412 info script.js.Test.Zeit1: Dropdownliste Neu: Badfenster;Badfenster;Badfenster1;Haustuer javascript.0 2019-06-22 00:47:40.411 info script.js.Test.Zeit1: Dropdownliste Alt: Badfenster;Badfenster;Badfenster1 javascript.0 2019-06-22 00:47:40.411 info script.js.Test.Zeit1: Device # Haustuer # fehlt und wird neu hinzugefügt mit Schedules-ID: 3 javascript.0 2019-06-22 00:47:39.410 info script.js.Test.Zeit1: registered 8 subscriptions and 2 schedules javascript.0 2019-06-22 00:47:39.406 info Start javascript script.js.Test.Zeit1 javascript.0 2019-06-22 00:47:39.397 info Stop script script.js.Test.Zeit1