Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [gelöst] createState überschreibt Daten?!

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] createState überschreibt Daten?!

    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      Pittini Developer last edited by Pittini

      Hallo allerseits. Ich bin jetzt eine Woche mit iobroker am experimentieren und da ich nirgends ein script mit vis für eine Zeitschaltung gefunden habe was mir taugt, dacht ich, schreib ich selber. Mit JS an sich hab ich Vorkenntnisse, aber bestimmt 10 Jahre nix mehr gemacht. Mein aktuelles Problem ist, dass ich zwar mit createState wunderbar Datenpunkte anlegen kann bei Scriptstart und auch Ids zuweisen usw.
      Dazu hab ich ein kleines vis gebaut welche die Daten sauber einträgt. Nur, bei jedem Scriptdurchlauf sind die Daten vom vis wieder weg und die defaults eingetragen. Was mach ich falsch?


      //Wichtige Einstellungen
      const AnzahlTimer = 2; //Wieviele Timer anlegen? Der erste ist 1, nicht 0!
      const id0 = "broadlink2.0.States.Outlet_2"; //Zu schaltendes Device
      const logging = true; //Logmeldungen an/aus
      const praefix = "javascript.1.Meine_Geraete.Outlet_2.Zeitschaltung."; //Produktiv auf 0, zum testen auf 1

      var Wochentage = ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"]; //Array für createStateschleife zum anlegen der Wochentage
      var Astrotrigger = ["dawn","sunrise", "dusk","goldenHour", "dusk", "sunset"]; //Array für Astro
      var TimerState = ["Ein", "Aus"];
      //if (logging) { log(Astrotrigger.length.toString()) };
      var x; //Anzahl der Timer
      var y; //Zähler für Wochentage
      var z; //Zähler
      for (x = 1; x < AnzahlTimer + 1; x++) {
      //Datenpunkte anlegen
      createState(praefix + x + ".Aktiv", false, { read: true, write: true, name: "Timer aktiv", type: "boolean", role: "switch", def: false }); //Legt fest ob der Timer aktiv ist
      createState(praefix + x + ".Rolle", true, { read: true, write: true, name: "Rolle", type: "boolean", role: "switch", def: true }); //Legt fest ob der Timer für An oder Aus zuständig ist
      createState(praefix + x + ".TimerTimestamp", "00:00:00", { read: true, write: true, name: "Zeitstempel für schaltzeit", type: "string" });
      createState(praefix + x + ".TimerAstroTimestamp", "00:00:00", { read: true, write: true, name: "Zeitstempel für Astroschaltzeit", type: "string" });
      createState(praefix + x + ".TimerAstroShift", 0, { read: true, write: true, name: "Zeitverschiebung für Astroschaltzeit", type: "number" });
      for (y = 0; y < 7; y++) { //Einträge für jeden Wochentag anlegen
      createState(praefix + x + ".Timer" + Wochentage[y], true, { read: true, write: true, name: Wochentage[y], type: "boolean", role: "switch", def: true });
      }
      createState(praefix + x + ".TimerChoice", "Zeit",{ read: true, write: true, name: "Funktionswahl für ", type: "string", def: "Zeit" }); //Gewählte Funktion, Timer oder Astro
      };
      //****************************

      //Datenpunkte Id"s zuweisen
      //x = 0; //Anzahl der Timer
      //z = 0; //Schleifenvariable für Wochentage
      var id1 = [];
      for (x = 1; x < AnzahlTimer + 1; x++) {
      y = 0;

      = [];

      id1[x][y] = (praefix + x + ".Aktiv"); y = y + 1;
      id1[x][y] = (praefix + x + ".Rolle"); y = y + 1;
      id1[x][y] = praefix + x + ".TimerTimestamp"; y = y + 1;
      id1[x][y] = praefix + x + ".TimerAstroTimestamp"; y = y + 1;
      id1[x][y] = praefix + x + ".TimerAstroShift"; y = y + 1;
      id1[x][y] = praefix + x + ".TimerChoice"; y = y + 1;
      for (z = 0; z < Wochentage.length; z++) {
      id1[x][y] = praefix + x + ".Timer" + Wochentage[z]; y = y + 1;
      };
      };
      //log("y= " + y); //Anzahl der Timer
      //log("A: " + id1.length); //Anzahl der Timer
      //log("C: " + id1[1].length); // Anzahl der Einträge pro Timer
      //log("E: " + id1[1][0].length); // Anzahl der Buchstaben pro Eintrag

      if (logging) {
      for (x = 1; x < AnzahlTimer + 1; x++) {
      for (z = 0; z < id1[x].length; z++) {
      if (logging) log(id1[x][z] + " z=" + z + " x=" + x);

          };
      };
      

      };

      // TimerVariablenArray anlegen für schedules
      var TimerAction = [];
      for (x = 1; x < AnzahlTimer + 1; x++) {

      = null;

      };

      //Alle Daten in MyTimer einlesen
      var MyTimer = [];
      for (x = 1; x < AnzahlTimer + 1; x++) {

      = [];

      for (y = 0; y < id1[x].length; y++) {
      //log("x=" + x + " y=" + y);
      MyTimer[x][y] = getState(id1[x][y]).val;
      //log(MyTimer[x][y]);
      };
      };

      //spezifischen Timer setzen
      function SetTimer(whichone) {

      }

      //Alle Timer setzen
      function SetAllTimer() {
      for (x = 1; x < AnzahlTimer + 1; x++) {
      SetTimer(x);
      }
      }

      //spezifischen Timer löschen
      function KillTimer(whichone) {
      TimerAction[whichone] = null;
      }

      //Astro oder Zeit Gateway
      function AstroOrTime(whichone) {
      if (MyTimer[whichone][5] == "Zeit") {
      log("Zeit gewählt");
      }
      else {
      log("Astro gewählt, Variante "+MyTimer[whichone][5]);
      };
      };

      // Ab hier Tests, einfach ignorieren

      //Trigger Zeitverstellung Einschaltzeit
      on(id1[1][5], function (dp) {
      AstroOrTime(1);
      if (logging) log("Choice geändert");
      });

      //Zeit in Stunden und Minuten teilen für späteren Cronstring
      var h; //Stunde
      var m; //Minute
      function SplitTime(Time) {
      var timesplit = Time.split(":", 2);
      h = timesplit[0];
      m = timesplit[1];
      return timesplit;
      };
      //if (logging) { log(SplitTime("12:05") + h + m) };
      //

      Das vis dazu:

      {
      "settings": {
      "style": {
      "background_class": "",
      "background-color": "black"
      },
      "theme": "sunny",
      "sizex": "962",
      "sizey": "602",
      "gridSize": "10",
      "useBackground": false,
      "snapType": 0,
      "useAsDefault": false
      },
      "widgets": {
      "e00001": {
      "tpl": "tplJquiInputDatetime",
      "data": {
      "oid": "javascript.1.Meine_Geraete.Outlet_2.Zeitschaltung.1.TimerTimestamp",
      "g_fixed": false,
      "g_visibility": true,
      "g_css_font_text": true,
      "g_css_background": false,
      "g_css_shadow_padding": false,
      "g_css_border": false,
      "g_gestures": false,
      "g_signals": false,
      "g_last_change": false,
      "visibility-cond": "==",
      "visibility-val": "Zeit",
      "visibility-groups-action": "hide",
      "signals-cond-0": "==",
      "signals-val-0": true,
      "signals-icon-0": "/vis/signals/lowbattery.png",
      "signals-icon-size-0": 0,
      "signals-blink-0": false,
      "signals-horz-0": 0,
      "signals-vert-0": 0,
      "signals-hide-edit-0": false,
      "signals-cond-1": "==",
      "signals-val-1": true,
      "signals-icon-1": "/vis/signals/lowbattery.png",
      "signals-icon-size-1": 0,
      "signals-blink-1": false,
      "signals-horz-1": 0,
      "signals-vert-1": 0,
      "signals-hide-edit-1": false,
      "signals-cond-2": "==",
      "signals-val-2": true,
      "signals-icon-2": "/vis/signals/lowbattery.png",
      "signals-icon-size-2": 0,
      "signals-blink-2": false,
      "signals-horz-2": 0,
      "signals-vert-2": 0,
      "signals-hide-edit-2": false,
      "lc-type": "last-change",
      "lc-is-interval": true,
      "lc-is-moment": false,
      "lc-format": "",
      "lc-position-vert": "top",
      "lc-position-horz": "right",
      "lc-offset-vert": 0,
      "lc-offset-horz": 0,
      "lc-font-size": "12px",
      "lc-font-family": "",
      "lc-font-style": "",
      "lc-bkg-color": "",
      "lc-color": "",
      "lc-border-width": "0",
      "lc-border-style": "",
      "lc-border-color": "",
      "lc-border-radius": 10,
      "lc-zindex": 0,
      "size": "4",
      "timeOnly": true,
      "hideSeconds": true,
      "visibility-oid": "javascript.1.Meine_Geraete.Outlet_2.Zeitschaltung.1.TimerChoice"
      },
      "style": {
      "left": "510px",
      "top": "210px",
      "width": "80px",
      "height": "20px",
      "font-weight": "bold",
      "z-index": 8
      },
      "widgetSet": "jqui"
      },
      "e00002": {
      "tpl": "tplHqCheckbox",
      "data": {
      "g_fixed": true,
      "g_visibility": false,
      "g_css_font_text": false,
      "g_css_background": false,
      "g_css_shadow_padding": false,
      "g_css_border": false,
      "g_gestures": false,
      "g_signals": false,
      "g_last_change": false,
      "visibility-cond": "==",
      "visibility-val": 1,
      "visibility-groups-action": "hide",
      "oid": "javascript.1.Meine_Geraete.Outlet_2.Zeitschaltung.1.Aktiv",
      "val_false": "false",
      "val_true": "true",
      "checkboxSize": "small",
      "checkboxColor": "grey",
      "checkboxColorOn": "orange",
      "signals-cond-0": "==",
      "signals-val-0": true,
      "signals-icon-0": "/vis/signals/lowbattery.png",
      "signals-icon-size-0": 0,
      "signals-blink-0": false,
      "signals-horz-0": 0,
      "signals-vert-0": 0,
      "signals-hide-edit-0": false,
      "signals-cond-1": "==",
      "signals-val-1": true,
      "signals-icon-1": "/vis/signals/lowbattery.png",
      "signals-icon-size-1": 0,
      "signals-blink-1": false,
      "signals-horz-1": 0,
      "signals-vert-1": 0,
      "signals-hide-edit-1": false,
      "signals-cond-2": "==",
      "signals-val-2": true,
      "signals-icon-2": "/vis/signals/lowbattery.png",
      "signals-icon-size-2": 0,
      "signals-blink-2": false,
      "signals-horz-2": 0,
      "signals-vert-2": 0,
      "signals-hide-edit-2": false,
      "lc-type": "last-change",
      "lc-is-interval": true,
      "lc-is-moment": false,
      "lc-format": "",
      "lc-position-vert": "top",
      "lc-position-horz": "right",
      "lc-offset-vert": 0,
      "lc-offset-horz": 0,
      "lc-font-size": "12px",
      "lc-font-family": "",
      "lc-font-style": "",
      "lc-bkg-color": "",
      "lc-color": "",
      "lc-border-width": "0",
      "lc-border-style": "",
      "lc-border-color": "",
      "lc-border-radius": 10,
      "lc-zindex": 0
      },
      "style": {
      "left": "240px",
      "top": "180px",
      "z-index": 8
      },
      "widgetSet": "hqwidgets"
      },
      "e00003": {
      "tpl": "tplJquiSelectList",
      "data": {
      "oid": "javascript.1.Meine_Geraete.Outlet_2.Zeitschaltung.1.TimerChoice",
      "g_fixed": false,
      "g_visibility": false,
      "g_css_font_text": true,
      "g_css_background": false,
      "g_css_shadow_padding": false,
      "g_css_border": false,
      "g_gestures": false,
      "g_signals": false,
      "g_last_change": false,
      "visibility-cond": "==",
      "visibility-val": 1,
      "visibility-groups-action": "hide",
      "values": "Zeit; dawn; sunrise; goldenHour; dusk;sunset",
      "texts": "Zeit;Morgendämmerung;Sonnenaufgang;Goldene Stunde;Abenddämmerung; Sonnenuntergang;",
      "height": "100",
      "signals-cond-0": "==",
      "signals-val-0": true,
      "signals-icon-0": "/vis/signals/lowbattery.png",
      "signals-icon-size-0": 0,
      "signals-blink-0": false,
      "signals-horz-0": 0,
      "signals-vert-0": 0,
      "signals-hide-edit-0": false,
      "signals-cond-1": "==",
      "signals-val-1": true,
      "signals-icon-1": "/vis/signals/lowbattery.png",
      "signals-icon-size-1": 0,
      "signals-blink-1": false,
      "signals-horz-1": 0,
      "signals-vert-1": 0,
      "signals-hide-edit-1": false,
      "signals-cond-2": "==",
      "signals-val-2": true,
      "signals-icon-2": "/vis/signals/lowbattery.png",
      "signals-icon-size-2": 0,
      "signals-blink-2": false,
      "signals-horz-2": 0,
      "signals-vert-2": 0,
      "signals-hide-edit-2": false,
      "lc-type": "last-change",
      "lc-is-interval": true,
      "lc-is-moment": false,
      "lc-format": "",
      "lc-position-vert": "top",
      "lc-position-horz": "right",
      "lc-offset-vert": 0,
      "lc-offset-horz": 0,
      "lc-font-size": "12px",
      "lc-font-family": "",
      "lc-font-style": "",
      "lc-bkg-color": "",
      "lc-color": "",
      "lc-border-width": "0",
      "lc-border-style": "",
      "lc-border-color": "",
      "lc-border-radius": 10,
      "lc-zindex": 0,
      "no_style": true
      },
      "style": {
      "left": "360px",
      "top": "210px",
      "width": "150px",
      "height": "19px",
      "font-size": "small",
      "font-weight": "bold",
      "z-index": 8
      },
      "widgetSet": "jqui"
      },
      "e00004": {
      "tpl": "tplValueBoolCheckbox",
      "data": {
      "oid": "javascript.1.Meine_Geraete.Outlet_2.Zeitschaltung.1.TimerMontag",
      "g_fixed": false,
      "g_visibility": false,
      "g_css_font_text": true,
      "g_css_background": false,
      "g_css_shadow_padding": false,
      "g_css_border": false,
      "g_gestures": false,
      "g_signals": false,
      "g_last_change": false,
      "visibility-cond": "==",
      "visibility-val": 1,
      "visibility-groups-action": "hide",
      "signals-cond-0": "==",
      "signals-val-0": true,
      "signals-icon-0": "/vis/signals/lowbattery.png",
      "signals-icon-size-0": 0,
      "signals-blink-0": false,
      "signals-horz-0": 0,
      "signals-vert-0": 0,
      "signals-hide-edit-0": false,
      "signals-cond-1": "==",
      "signals-val-1": true,
      "signals-icon-1": "/vis/signals/lowbattery.png",
      "signals-icon-size-1": 0,
      "signals-blink-1": false,
      "signals-horz-1": 0,
      "signals-vert-1": 0,
      "signals-hide-edit-1": false,
      "signals-cond-2": "==",
      "signals-val-2": true,
      "signals-icon-2": "/vis/signals/lowbattery.png",
      "signals-icon-size-2": 0,
      "signals-blink-2": false,
      "signals-horz-2": 0,
      "signals-vert-2": 0,
      "signals-hide-edit-2": false,
      "lc-type": "last-change",
      "lc-is-interval": true,
      "lc-is-moment": false,
      "lc-format": "",
      "lc-position-vert": "top",
      "lc-position-horz": "right",
      "lc-offset-vert": 0,
      "lc-offset-horz": 0,
      "lc-font-size": "12px",
      "lc-font-family": "",
      "lc-font-style": "",
      "lc-bkg-color": "",
      "lc-color": "",
      "lc-border-width": "0",
      "lc-border-style": "",
      "lc-border-color": "",
      "lc-border-radius": 10,
      "lc-zindex": 0,
      "html_prepend": "Mo:"
      },
      "style": {
      "left": "360px",
      "top": "170px",
      "width": "30px",
      "height": "40px",
      "z-index": 8,
      "color": "silver"
      },
      "widgetSet": "basic"
      },
      "e00005": {
      "tpl": "tplValueBoolCheckbox",
      "data": {
      "oid": "javascript.1.Meine_Geraete.Outlet_2.Zeitschaltung.1.TimerDienstag",
      "g_fixed": false,
      "g_visibility": false,
      "g_css_font_text": true,
      "g_css_background": false,
      "g_css_shadow_padding": false,
      "g_css_border": false,
      "g_gestures": false,
      "g_signals": false,
      "g_last_change": false,
      "visibility-cond": "==",
      "visibility-val": 1,
      "visibility-groups-action": "hide",
      "signals-cond-0": "==",
      "signals-val-0": true,
      "signals-icon-0": "/vis/signals/lowbattery.png",
      "signals-icon-size-0": 0,
      "signals-blink-0": false,
      "signals-horz-0": 0,
      "signals-vert-0": 0,
      "signals-hide-edit-0": false,
      "signals-cond-1": "==",
      "signals-val-1": true,
      "signals-icon-1": "/vis/signals/lowbattery.png",
      "signals-icon-size-1": 0,
      "signals-blink-1": false,
      "signals-horz-1": 0,
      "signals-vert-1": 0,
      "signals-hide-edit-1": false,
      "signals-cond-2": "==",
      "signals-val-2": true,
      "signals-icon-2": "/vis/signals/lowbattery.png",
      "signals-icon-size-2": 0,
      "signals-blink-2": false,
      "signals-horz-2": 0,
      "signals-vert-2": 0,
      "signals-hide-edit-2": false,
      "lc-type": "last-change",
      "lc-is-interval": true,
      "lc-is-moment": false,
      "lc-format": "",
      "lc-position-vert": "top",
      "lc-position-horz": "right",
      "lc-offset-vert": 0,
      "lc-offset-horz": 0,
      "lc-font-size": "12px",
      "lc-font-family": "",
      "lc-font-style": "",
      "lc-bkg-color": "",
      "lc-color": "",
      "lc-border-width": "0",
      "lc-border-style": "",
      "lc-border-color": "",
      "lc-border-radius": 10,
      "lc-zindex": 0,
      "html_prepend": "Di:",
      "html_append": ""
      },
      "style": {
      "left": "390px",
      "top": "170px",
      "width": "30px",
      "height": "40px",
      "z-index": 8,
      "color": "silver"
      },
      "widgetSet": "basic"
      },
      "e00006": {
      "tpl": "tplValueBoolCheckbox",
      "data": {
      "oid": "javascript.1.Meine_Geraete.Outlet_2.Zeitschaltung.1.TimerMittwoch",
      "g_fixed": false,
      "g_visibility": false,
      "g_css_font_text": true,
      "g_css_background": false,
      "g_css_shadow_padding": false,
      "g_css_border": false,
      "g_gestures": false,
      "g_signals": false,
      "g_last_change": false,
      "visibility-cond": "==",
      "visibility-val": 1,
      "visibility-groups-action": "hide",
      "signals-cond-0": "==",
      "signals-val-0": true,
      "signals-icon-0": "/vis/signals/lowbattery.png",
      "signals-icon-size-0": 0,
      "signals-blink-0": false,
      "signals-horz-0": 0,
      "signals-vert-0": 0,
      "signals-hide-edit-0": false,
      "signals-cond-1": "==",
      "signals-val-1": true,
      "signals-icon-1": "/vis/signals/lowbattery.png",
      "signals-icon-size-1": 0,
      "signals-blink-1": false,
      "signals-horz-1": 0,
      "signals-vert-1": 0,
      "signals-hide-edit-1": false,
      "signals-cond-2": "==",
      "signals-val-2": true,
      "signals-icon-2": "/vis/signals/lowbattery.png",
      "signals-icon-size-2": 0,
      "signals-blink-2": false,
      "signals-horz-2": 0,
      "signals-vert-2": 0,
      "signals-hide-edit-2": false,
      "lc-type": "last-change",
      "lc-is-interval": true,
      "lc-is-moment": false,
      "lc-format": "",
      "lc-position-vert": "top",
      "lc-position-horz": "right",
      "lc-offset-vert": 0,
      "lc-offset-horz": 0,
      "lc-font-size": "12px",
      "lc-font-family": "",
      "lc-font-style": "",
      "lc-bkg-color": "",
      "lc-color": "",
      "lc-border-width": "0",
      "lc-border-style": "",
      "lc-border-color": "",
      "lc-border-radius": 10,
      "lc-zindex": 0,
      "html_prepend": "Mi:",
      "html_append": ""
      },
      "style": {
      "left": "420px",
      "top": "170px",
      "width": "30px",
      "height": "40px",
      "z-index": 8,
      "color": "silver"
      },
      "widgetSet": "basic"
      },
      "e00007": {
      "tpl": "tplValueBoolCheckbox",
      "data": {
      "oid": "javascript.1.Meine_Geraete.Outlet_2.Zeitschaltung.1.TimerDonnerstag",
      "g_fixed": false,
      "g_visibility": false,
      "g_css_font_text": true,
      "g_css_background": false,
      "g_css_shadow_padding": false,
      "g_css_border": false,
      "g_gestures": false,
      "g_signals": false,
      "g_last_change": false,
      "visibility-cond": "==",
      "visibility-val": 1,
      "visibility-groups-action": "hide",
      "signals-cond-0": "==",
      "signals-val-0": true,
      "signals-icon-0": "/vis/signals/lowbattery.png",
      "signals-icon-size-0": 0,
      "signals-blink-0": false,
      "signals-horz-0": 0,
      "signals-vert-0": 0,
      "signals-hide-edit-0": false,
      "signals-cond-1": "==",
      "signals-val-1": true,
      "signals-icon-1": "/vis/signals/lowbattery.png",
      "signals-icon-size-1": 0,
      "signals-blink-1": false,
      "signals-horz-1": 0,
      "signals-vert-1": 0,
      "signals-hide-edit-1": false,
      "signals-cond-2": "==",
      "signals-val-2": true,
      "signals-icon-2": "/vis/signals/lowbattery.png",
      "signals-icon-size-2": 0,
      "signals-blink-2": false,
      "signals-horz-2": 0,
      "signals-vert-2": 0,
      "signals-hide-edit-2": false,
      "lc-type": "last-change",
      "lc-is-interval": true,
      "lc-is-moment": false,
      "lc-format": "",
      "lc-position-vert": "top",
      "lc-position-horz": "right",
      "lc-offset-vert": 0,
      "lc-offset-horz": 0,
      "lc-font-size": "12px",
      "lc-font-family": "",
      "lc-font-style": "",
      "lc-bkg-color": "",
      "lc-color": "",
      "lc-border-width": "0",
      "lc-border-style": "",
      "lc-border-color": "",
      "lc-border-radius": 10,
      "lc-zindex": 0,
      "html_prepend": "Do:",
      "html_append": ""
      },
      "style": {
      "left": "450px",
      "top": "170px",
      "width": "30px",
      "height": "40px",
      "z-index": 8,
      "color": "silver"
      },
      "widgetSet": "basic"
      },
      "e00008": {
      "tpl": "tplValueBoolCheckbox",
      "data": {
      "oid": "javascript.1.Meine_Geraete.Outlet_2.Zeitschaltung.1.TimerFreitag",
      "g_fixed": false,
      "g_visibility": false,
      "g_css_font_text": true,
      "g_css_background": false,
      "g_css_shadow_padding": false,
      "g_css_border": false,
      "g_gestures": false,
      "g_signals": false,
      "g_last_change": false,
      "visibility-cond": "==",
      "visibility-val": 1,
      "visibility-groups-action": "hide",
      "signals-cond-0": "==",
      "signals-val-0": true,
      "signals-icon-0": "/vis/signals/lowbattery.png",
      "signals-icon-size-0": 0,
      "signals-blink-0": false,
      "signals-horz-0": 0,
      "signals-vert-0": 0,
      "signals-hide-edit-0": false,
      "signals-cond-1": "==",
      "signals-val-1": true,
      "signals-icon-1": "/vis/signals/lowbattery.png",
      "signals-icon-size-1": 0,
      "signals-blink-1": false,
      "signals-horz-1": 0,
      "signals-vert-1": 0,
      "signals-hide-edit-1": false,
      "signals-cond-2": "==",
      "signals-val-2": true,
      "signals-icon-2": "/vis/signals/lowbattery.png",
      "signals-icon-size-2": 0,
      "signals-blink-2": false,
      "signals-horz-2": 0,
      "signals-vert-2": 0,
      "signals-hide-edit-2": false,
      "lc-type": "last-change",
      "lc-is-interval": true,
      "lc-is-moment": false,
      "lc-format": "",
      "lc-position-vert": "top",
      "lc-position-horz": "right",
      "lc-offset-vert": 0,
      "lc-offset-horz": 0,
      "lc-font-size": "12px",
      "lc-font-family": "",
      "lc-font-style": "",
      "lc-bkg-color": "",
      "lc-color": "",
      "lc-border-width": "0",
      "lc-border-style": "",
      "lc-border-color": "",
      "lc-border-radius": 10,
      "lc-zindex": 0,
      "html_prepend": "Fr:",
      "html_append": ""
      },
      "style": {
      "left": "480px",
      "top": "170px",
      "width": "30px",
      "height": "40px",
      "z-index": 8,
      "color": "silver"
      },
      "widgetSet": "basic"
      },
      "e00009": {
      "tpl": "tplValueBoolCheckbox",
      "data": {
      "oid": "javascript.1.Meine_Geraete.Outlet_2.Zeitschaltung.1.TimerSamstag",
      "g_fixed": false,
      "g_visibility": false,
      "g_css_font_text": true,
      "g_css_background": false,
      "g_css_shadow_padding": false,
      "g_css_border": false,
      "g_gestures": false,
      "g_signals": false,
      "g_last_change": false,
      "visibility-cond": "==",
      "visibility-val": 1,
      "visibility-groups-action": "hide",
      "signals-cond-0": "==",
      "signals-val-0": true,
      "signals-icon-0": "/vis/signals/lowbattery.png",
      "signals-icon-size-0": 0,
      "signals-blink-0": false,
      "signals-horz-0": 0,
      "signals-vert-0": 0,
      "signals-hide-edit-0": false,
      "signals-cond-1": "==",
      "signals-val-1": true,
      "signals-icon-1": "/vis/signals/lowbattery.png",
      "signals-icon-size-1": 0,
      "signals-blink-1": false,
      "signals-horz-1": 0,
      "signals-vert-1": 0,
      "signals-hide-edit-1": false,
      "signals-cond-2": "==",
      "signals-val-2": true,
      "signals-icon-2": "/vis/signals/lowbattery.png",
      "signals-icon-size-2": 0,
      "signals-blink-2": false,
      "signals-horz-2": 0,
      "signals-vert-2": 0,
      "signals-hide-edit-2": false,
      "lc-type": "last-change",
      "lc-is-interval": true,
      "lc-is-moment": false,
      "lc-format": "",
      "lc-position-vert": "top",
      "lc-position-horz": "right",
      "lc-offset-vert": 0,
      "lc-offset-horz": 0,
      "lc-font-size": "12px",
      "lc-font-family": "",
      "lc-font-style": "",
      "lc-bkg-color": "",
      "lc-color": "",
      "lc-border-width": "0",
      "lc-border-style": "",
      "lc-border-color": "",
      "lc-border-radius": 10,
      "lc-zindex": 0,
      "html_prepend": "Sa:",
      "html_append": ""
      },
      "style": {
      "left": "510px",
      "top": "170px",
      "width": "30px",
      "height": "40px",
      "z-index": 8,
      "color": "silver"
      },
      "widgetSet": "basic"
      },
      "e00010": {
      "tpl": "tplValueBoolCheckbox",
      "data": {
      "oid": "javascript.1.Meine_Geraete.Outlet_2.Zeitschaltung.1.TimerSonntag",
      "g_fixed": false,
      "g_visibility": false,
      "g_css_font_text": true,
      "g_css_background": false,
      "g_css_shadow_padding": false,
      "g_css_border": false,
      "g_gestures": false,
      "g_signals": false,
      "g_last_change": false,
      "visibility-cond": "==",
      "visibility-val": 1,
      "visibility-groups-action": "hide",
      "signals-cond-0": "==",
      "signals-val-0": true,
      "signals-icon-0": "/vis/signals/lowbattery.png",
      "signals-icon-size-0": 0,
      "signals-blink-0": false,
      "signals-horz-0": 0,
      "signals-vert-0": 0,
      "signals-hide-edit-0": false,
      "signals-cond-1": "==",
      "signals-val-1": true,
      "signals-icon-1": "/vis/signals/lowbattery.png",
      "signals-icon-size-1": 0,
      "signals-blink-1": false,
      "signals-horz-1": 0,
      "signals-vert-1": 0,
      "signals-hide-edit-1": false,
      "signals-cond-2": "==",
      "signals-val-2": true,
      "signals-icon-2": "/vis/signals/lowbattery.png",
      "signals-icon-size-2": 0,
      "signals-blink-2": false,
      "signals-horz-2": 0,
      "signals-vert-2": 0,
      "signals-hide-edit-2": false,
      "lc-type": "last-change",
      "lc-is-interval": true,
      "lc-is-moment": false,
      "lc-format": "",
      "lc-position-vert": "top",
      "lc-position-horz": "right",
      "lc-offset-vert": 0,
      "lc-offset-horz": 0,
      "lc-font-size": "12px",
      "lc-font-family": "",
      "lc-font-style": "",
      "lc-bkg-color": "",
      "lc-color": "",
      "lc-border-width": "0",
      "lc-border-style": "",
      "lc-border-color": "",
      "lc-border-radius": 10,
      "lc-zindex": 0,
      "html_prepend": "So:",
      "html_append": ""
      },
      "style": {
      "left": "540px",
      "top": "170px",
      "width": "30px",
      "height": "40px",
      "z-index": 8,
      "color": "silver"
      },
      "widgetSet": "basic"
      },
      "e00011": {
      "tpl": "tplJquiInput",
      "data": {
      "oid": "javascript.1.Meine_Geraete.Outlet_2.Zeitschaltung.1.TimerAstroShift",
      "g_fixed": false,
      "g_visibility": true,
      "g_css_font_text": true,
      "g_css_background": false,
      "g_css_shadow_padding": false,
      "g_css_border": false,
      "g_gestures": false,
      "g_signals": false,
      "g_last_change": false,
      "label": "Shift",
      "digits": "0",
      "size": "1",
      "signals-cond-0": "==",
      "signals-val-0": true,
      "signals-icon-0": "/vis/signals/lowbattery.png",
      "signals-icon-size-0": 0,
      "signals-blink-0": false,
      "signals-horz-0": 0,
      "signals-vert-0": 0,
      "signals-hide-edit-0": false,
      "signals-cond-1": "==",
      "signals-val-1": true,
      "signals-icon-1": "/vis/signals/lowbattery.png",
      "signals-icon-size-1": 0,
      "signals-blink-1": false,
      "signals-horz-1": 0,
      "signals-vert-1": 0,
      "signals-hide-edit-1": false,
      "signals-cond-2": "==",
      "signals-val-2": true,
      "signals-icon-2": "/vis/signals/lowbattery.png",
      "signals-icon-size-2": 0,
      "signals-blink-2": false,
      "signals-horz-2": 0,
      "signals-vert-2": 0,
      "signals-hide-edit-2": false,
      "lc-type": "last-change",
      "lc-is-interval": true,
      "lc-is-moment": false,
      "lc-format": "",
      "lc-position-vert": "top",
      "lc-position-horz": "right",
      "lc-offset-vert": 0,
      "lc-offset-horz": 0,
      "lc-font-size": "12px",
      "lc-font-family": "",
      "lc-font-style": "",
      "lc-bkg-color": "",
      "lc-color": "",
      "lc-border-width": "0",
      "lc-border-style": "",
      "lc-border-color": "",
      "lc-border-radius": 10,
      "lc-zindex": 0,
      "visibility-cond": "!=",
      "visibility-val": "Zeit",
      "visibility-groups-action": "hide",
      "visibility-oid": "javascript.1.Meine_Geraete.Outlet_2.Zeitschaltung.1.TimerChoice"
      },
      "style": {
      "left": "519px",
      "top": "210px",
      "width": "143px",
      "height": "38px",
      "font-size": "small",
      "z-index": 8,
      "font-weight": "bold"
      },
      "widgetSet": "jqui"
      },
      "e00012": {
      "tpl": "tplJquiSelectList",
      "data": {
      "oid": "javascript.1.Meine_Geraete.Outlet_2.Zeitschaltung.1.Rolle",
      "g_fixed": false,
      "g_visibility": false,
      "g_css_font_text": false,
      "g_css_background": false,
      "g_css_shadow_padding": false,
      "g_css_border": false,
      "g_gestures": false,
      "g_signals": false,
      "g_last_change": false,
      "visibility-cond": "==",
      "visibility-val": 1,
      "visibility-groups-action": "hide",
      "values": "0;1",
      "texts": "Aus;An",
      "height": "100",
      "signals-cond-0": "==",
      "signals-val-0": true,
      "signals-icon-0": "/vis/signals/lowbattery.png",
      "signals-icon-size-0": 0,
      "signals-blink-0": false,
      "signals-horz-0": 0,
      "signals-vert-0": 0,
      "signals-hide-edit-0": false,
      "signals-cond-1": "==",
      "signals-val-1": true,
      "signals-icon-1": "/vis/signals/lowbattery.png",
      "signals-icon-size-1": 0,
      "signals-blink-1": false,
      "signals-horz-1": 0,
      "signals-vert-1": 0,
      "signals-hide-edit-1": false,
      "signals-cond-2": "==",
      "signals-val-2": true,
      "signals-icon-2": "/vis/signals/lowbattery.png",
      "signals-icon-size-2": 0,
      "signals-blink-2": false,
      "signals-horz-2": 0,
      "signals-vert-2": 0,
      "signals-hide-edit-2": false,
      "lc-type": "last-change",
      "lc-is-interval": true,
      "lc-is-moment": false,
      "lc-format": "",
      "lc-position-vert": "top",
      "lc-position-horz": "right",
      "lc-offset-vert": 0,
      "lc-offset-horz": 0,
      "lc-font-size": "12px",
      "lc-font-family": "",
      "lc-font-style": "",
      "lc-bkg-color": "",
      "lc-color": "",
      "lc-border-width": "0",
      "lc-border-style": "",
      "lc-border-color": "",
      "lc-border-radius": 10,
      "lc-zindex": 0
      },
      "style": {
      "left": "366px",
      "top": "133px",
      "width": "75px",
      "height": "29px",
      "z-index": 7
      },
      "widgetSet": "jqui"
      },
      "e00013": {
      "tpl": "tplFrame",
      "data": {
      "g_fixed": false,
      "g_visibility": false,
      "g_css_font_text": false,
      "g_css_background": false,
      "g_css_shadow_padding": false,
      "g_css_border": true,
      "g_gestures": false,
      "g_signals": false,
      "g_last_change": false,
      "visibility-cond": "==",
      "visibility-val": 1,
      "visibility-groups-action": "hide",
      "title": "",
      "title_color": "black",
      "title_top": "-10",
      "title_left": "15",
      "header_height": "0",
      "header_color": "black",
      "signals-cond-0": "==",
      "signals-val-0": true,
      "signals-icon-0": "/vis/signals/lowbattery.png",
      "signals-icon-size-0": 0,
      "signals-blink-0": false,
      "signals-horz-0": 0,
      "signals-vert-0": 0,
      "signals-hide-edit-0": false,
      "signals-cond-1": "==",
      "signals-val-1": true,
      "signals-icon-1": "/vis/signals/lowbattery.png",
      "signals-icon-size-1": 0,
      "signals-blink-1": false,
      "signals-horz-1": 0,
      "signals-vert-1": 0,
      "signals-hide-edit-1": false,
      "signals-cond-2": "==",
      "signals-val-2": true,
      "signals-icon-2": "/vis/signals/lowbattery.png",
      "signals-icon-size-2": 0,
      "signals-blink-2": false,
      "signals-horz-2": 0,
      "signals-vert-2": 0,
      "signals-hide-edit-2": false,
      "lc-type": "last-change",
      "lc-is-interval": true,
      "lc-is-moment": false,
      "lc-format": "",
      "lc-position-vert": "top",
      "lc-position-horz": "right",
      "lc-offset-vert": 0,
      "lc-offset-horz": 0,
      "lc-font-size": "12px",
      "lc-font-family": "",
      "lc-font-style": "",
      "lc-bkg-color": "",
      "lc-color": "",
      "lc-border-width": "0",
      "lc-border-style": "",
      "lc-border-color": "",
      "lc-border-radius": 10,
      "lc-zindex": 0
      },
      "style": {
      "left": "234px",
      "top": "123px",
      "border-color": "#ff990a",
      "width": "357px",
      "height": "117px",
      "z-index": 1
      },
      "widgetSet": "basic"
      }
      },
      "name": "Timertest",
      "filterList": []
      }

      liv-in-sky 1 Reply Last reply Reply Quote 0
      • F
        Farmer-cb last edited by

        Hallo
        hast du dazu schon irgend eine Lösung gefunden???
        Mir geht es aktuell auch so, aber nur bei einem iobroker, von 5 die ich betreue

        paul53 1 Reply Last reply Reply Quote 0
        • liv-in-sky
          liv-in-sky @Pittini last edited by

          @Pittini hi

          ich weiß zwar nicht, ob meine scripts, die sind, die dir nicht gefallen - aber hier wäre ein script, welches herunterzählt und man mit einem steuerscript ansprechen könnte

          https://forum.iobroker.net/topic/22574/vorlage-zeit-herunterzählen-bis-googletermin-eintritt?page=1

          (nennt sich "das js-script") - zählt runter bis zum angegebene termin und kann in der vis gut dargestellt werden (funktioniert auch bei /nachiobroker neustart)

          oder mit dem script - eine art stoppuhr - welche man auch steuern kann (blockly)
          https://forum.iobroker.net/topic/22532/vorlage-blockly-script-für-stoppuhr-laufzeiten-aufzeichen?page=1

          man könnte wohl mit beiden eine art zeitsteuerung realisieren

          es gibt auch noch jmd, der einen countdown adapter macht
          https://forum.iobroker.net/topic/22626/aufruf-countdown-adapter-testen?page=1

          P 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @Farmer-cb last edited by

            @Farmer-cb:

            Mir geht es aktuell auch so, aber nur bei einem iobroker, von 5 die ich betreue

            Welche Versionen haben js-controller und Javascript-Adapter ? Bei meinen Versionen js-controller 1.5.9 und JS-Adapter 4.1.13 (von Github) überschreibt createState() keine Werte.

            1 Reply Last reply Reply Quote 0
            • P
              pix last edited by

              @Pittini sagte in createState überschreibt Daten?!:

              Was mach ich falsch?

              Ich sehe den Fehler auch nicht. Allerdings ist der Code schwer zu lesen, kannst du bitte innerhalb des Spoilers noch die Code-Tags anfügen?

              createState() kann gezwungen werden, den Datenpunkt neu anzulegen, wenn man z auf true setzt (force creation).

              createState(x, y, z, {...});
              

              Bei dir ist das nicht der Fall.

              🤔

              P 1 Reply Last reply Reply Quote 0
              • P
                Pittini Developer @pix last edited by

                @pix Ich hab inzwischen die Lösung gefunden Es lag tatsächlich an der CreateState Syntax.

                So funktionierts nicht

                createState(praefix + x + ".Aktiv", false, { read: true, write: true, name: "Timer aktiv", type: "boolean", role: "switch", def: false }); //Legt fest ob der Timer aktiv ist
                

                So funktionierts

                createState(praefix + x + ".Aktiv", false, false, { read: true, write: true, name: "Timer aktiv", type: "boolean", role: "switch", def: false }); //Legt fest ob der Timer aktiv ist
                
                
                AlCalzone 1 Reply Last reply Reply Quote 1
                • P
                  Pittini Developer @liv-in-sky last edited by

                  @liv-in-sky Hi,
                  danke für die Links, die hatte ich tatsächlich schon gefunden, durchgeguggt und paar Ideen geholt. Is aber nix auch nur annähernd so wie ich das will.
                  Inzwischen hab ich das Ding auch fertig und im Testbetrieb. Werds dann vermutlich mal als Projekt vorstellen.

                  1 Reply Last reply Reply Quote 0
                  • AlCalzone
                    AlCalzone Developer @Pittini last edited by

                    @Pittini sagte in [gelöst] createState überschreibt Daten?!:

                    So funktionierts nicht

                    Zur Erklärung: Der 3. Parameter (ein Objekt) wird von JS als truthy eingestuft - lose übersetzt "wahr oder so". Viele Prüfungen werden in JS so geschrieben, auch in ioBroker: if (variable) { ... }. Diese Bedingung ist wahr, wenn variable truthy ist.
                    Da der dritte Parameter für das Erzwingen der State-Erstellung steht, wird mit der ersten Syntax (Objekt anstelle des Parameters) also dieser Code-Zweig ausgeführt.

                    Mal aus Interesse, was sagt denn die Syntaxhilfe, wenn du den Befehl so eingibst?

                    P Peoples 2 Replies Last reply Reply Quote 0
                    • P
                      Pittini Developer @AlCalzone last edited by Pittini

                      @AlCalzone said in [gelöst] createState überschreibt Daten?!:

                      Mal aus Interesse, was sagt denn die Syntaxhilfe, wenn du den Befehl so eingibst?

                      Gar nix, die findet das ok. Allerdings mault die immer bei mehrdimensionalen Arrays und bei setTimeout und setIntervall obwohls funktioniert. Is auch bei importierten Scripts das selbe, ich ignoriers inzwischen einfach.

                      2019-06-11 16_54_33-Window.png

                      AlCalzone 1 Reply Last reply Reply Quote 0
                      • AlCalzone
                        AlCalzone Developer @Pittini last edited by

                        @Pittini sagte in [gelöst] createState überschreibt Daten?!:

                        Gar nix, die findet das ok

                        Im Screenshot hast du auch den dritten Parameter als Boolean 😉

                        P 1 Reply Last reply Reply Quote 0
                        • P
                          Pittini Developer @AlCalzone last edited by

                          @AlCalzone said in [gelöst] createState überschreibt Daten?!:

                          Im Screenshot hast du auch den dritten Parameter als Boolean

                          Versteh den Kommentar nicht, ist doch im Codeschnipsel genauso? Oder meinst Du was anderes?

                          AlCalzone 1 Reply Last reply Reply Quote 0
                          • AlCalzone
                            AlCalzone Developer @Pittini last edited by

                            @Pittini Ich meinte den Code-Schnipsel, der nicht funktioniert 😉 Eigentlich sollte die Syntax-Hilfe da meckern.

                            1 Reply Last reply Reply Quote 0
                            • Peoples
                              Peoples @AlCalzone last edited by Peoples

                              Hab das nochmal als neuen Thread aufgemacht

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              918
                              Online

                              31.9k
                              Users

                              80.1k
                              Topics

                              1.3m
                              Posts

                              7
                              13
                              768
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo