Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. createState Problem - initial Value wird nicht eingepflegt

    NEWS

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    createState Problem - initial Value wird nicht eingepflegt

    This topic has been deleted. Only users with topic management privileges can see it.
    • SKB
      SKB Developer Most Active last edited by

      Hallo,
      ich habe vor etwa 6 Monaten ein Skript erstellt, welches meinen iRobot überwacht. Nun war er aufgrund Umzug längere Zeit nicht online und ich wollte das Skript vor ein paar Tagen wieder aktivieren.

      Leider werden meine CreateState nicht mehr "so" abgearbeitet, wie früher/vorher.

      Das Skript dient dazu, aufzuzeichnen, welche Räume er gerade anfährt - falls der Raum noch nicht als ID angelegt ist, soll die ID angelegt werden.

      Dazu verwende ich eine Funktion wie folgt:

      // Lege neuen Raum an
      function neuer_raum(geraet, pmap_id, region_id, region_type, user_pmapv_id) {
          // Bereiche
          createState(datenpunkt + geraet + ".Bereiche." + pmap_id, '', { name: 'ID der Karte', type: 'string', role: 'state' });
          createState(datenpunkt + geraet + ".Bereiche." + pmap_id + ".pmap_id", pmap_id, { name: "ID der Karte", type: 'string', role: 'value' });
          createState(datenpunkt + geraet + ".Bereiche." + pmap_id + ".user_pmapv_id", user_pmapv_id, { name: "Version der Karte", type: 'string', role: 'value' });
      
          // Raum
          if (region_type == "rid") {
              createState(datenpunkt + geraet + ".Bereiche." + pmap_id + '.Raeume.' + region_id, '', { name: 'ID des Raumes', type: 'string', role: 'state' }, function () { });
              createState(datenpunkt + geraet + ".Bereiche." + pmap_id + '.Raeume.' + region_id + '.region_id', region_id, { name: 'ID Des Raumes', type: 'string', role: 'value' }, function () { });
              createState(datenpunkt + geraet + ".Bereiche." + pmap_id + '.Raeume.' + region_id + '.name', '', { name: 'Eigener Name des Raumes', type: 'string', role: 'value' }, function () { });
              createState(datenpunkt + geraet + ".Bereiche." + pmap_id + '.Raeume.' + region_id + '.erstellt', hole_datum(), { name: 'Datum des Hinzufügens', type: 'string', role: 'value' }, function () { });
              log("iRobot-Control: Neuer Raum für " + geraet + " gefunden und angelegt! ID: " + region_id);
          }
      
          // Schmutzzone
          if (region_type == "zid") {
              createState(datenpunkt + geraet + ".Bereiche." + pmap_id + '.Zonen.' + region_id, '', { name: 'ID der Zone', type: 'string', role: 'state' }, function () { });
              createState(datenpunkt + geraet + ".Bereiche." + pmap_id + '.Zonen.' + region_id + '.region_id', region_id, { name: 'ID der Zone', type: 'string', role: 'value' }, function () { });
              createState(datenpunkt + geraet + ".Bereiche." + pmap_id + '.Zonen.' + region_id + '.name', '', { name: 'Eigener Name der Zone', type: 'string', role: 'value' }, function () { });
              createState(datenpunkt + geraet + ".Bereiche." + pmap_id + '.Zonen.' + region_id + '.erstellt', hole_datum(), { name: 'Datum des Hinzufügens', type: 'string', role: 'value' }, function () { });
              log("iRobot-Control: Neue Zone für " + geraet + " gefunden und angelegt! ID: " + region_id);
          }
      }
      

      Das Log bläht sich dann ein wenig auf und meldet für jedes CreateState einen Fehler:

      javascript.0
      	2022-03-28 15:18:40.888	warn	at processImmediate (internal/timers.js:466:21)
      javascript.0
      	2022-03-28 15:18:40.887	warn	at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1965:33)
      javascript.0
      	2022-03-28 15:18:40.886	warn	State "javascript.0.iRobot.Roomba.Bereiche.xxx.user_pmapv_id" not found
      javascript.0
      	2022-03-28 15:18:40.874	warn	at processImmediate (internal/timers.js:466:21)
      javascript.0
      	2022-03-28 15:18:40.873	warn	at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1965:33)
      javascript.0
      	2022-03-28 15:18:40.872	warn	State "javascript.0.iRobot.Roomba.Bereiche.xxx.pmap_id" not found
      javascript.0
      	2022-03-28 15:18:40.847	warn	at processImmediate (internal/timers.js:466:21)
      javascript.0
      	2022-03-28 15:18:40.846	warn	at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1965:33)
      javascript.0
      	2022-03-28 15:18:40.842	warn	State "javascript.0.iRobot.Roomba.Bereiche.xxx.Raeume.5.erstellt" not found
      javascript.0
      	2022-03-28 15:18:40.841	warn	at processImmediate (internal/timers.js:466:21)
      javascript.0
      	2022-03-28 15:18:40.841	warn	at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1965:33)
      javascript.0
      	2022-03-28 15:18:40.840	warn	State "javascript.0.iRobot.Roomba.Bereiche.xxx.Raeume.5.name" not found
      javascript.0
      	2022-03-28 15:18:40.839	warn	at processImmediate (internal/timers.js:466:21)
      javascript.0
      	2022-03-28 15:18:40.839	warn	at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1965:33)
      javascript.0
      	2022-03-28 15:18:40.837	warn	State "javascript.0.iRobot.Roomba.Bereiche.xxx.Raeume.5.region_id" not found
      javascript.0
      	2022-03-28 15:18:40.826	warn	at processImmediate (internal/timers.js:466:21)
      javascript.0
      	2022-03-28 15:18:40.825	warn	at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1965:33)
      javascript.0
      	2022-03-28 15:18:40.824	warn	State "javascript.0.iRobot.Roomba.Bereiche.xxx.Raeume.5" not found
      javascript.0
      	2022-03-28 15:18:40.823	warn	at processImmediate (internal/timers.js:466:21)
      javascript.0
      	2022-03-28 15:18:40.823	warn	at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1965:33)
      javascript.0
      	2022-03-28 15:18:40.820	warn	State "javascript.0.iRobot.Roomba.Bereiche.xxx" not found
      
      

      Komischerweise sind die ID's nach einiger Zeit vorhanden - jedoch habe sie auch keine Initial-Value - die eigentlich hätte geschrieben werden müssen.

      Davor hatte sonst immer alles funktioniert...

      Vielen Dank!

      1 Reply Last reply Reply Quote 0
      • SKB
        SKB Developer Most Active last edited by

        Ich habe jetzt zum Testen nochmal ein Timer-Skript erstellt, welches per Zufallszahl Datenpunkte anlegt.

        Auch hier kommt es vor, das die "initial_value" nicht geschrieben wird, das Log diese Meldungen ausgibt und nach kurzer Zeit der DP aber vorhanden ist.

        Anbei das Skript:

        var datenpunkt = "0_userdata.States.";
        
        function getRandomNumberBetween(min, max) {
            return Math.floor(Math.random() * (max - min + 1) + min);
        }
        
        log(getRandomNumberBetween(20, 400));
        
        var timer = setInterval(function() {
            var random = getRandomNumberBetween(20, 400);
            //log(random);
            createState(datenpunkt + random + ".Bereiche.name", random.toFixed(2), { name: 'ID der Karte', type: 'string', role: 'state' });
            createState(datenpunkt + random + ".Bereiche.pmap_id", random.toFixed(2), { name: "ID der Karte", type: 'string', role: 'value' });
            createState(datenpunkt + random + ".Bereiche.user_pmapv_id", random.toFixed(2), { name: "Version der Karte", type: 'string', role: 'value' });
        }, 10000);
        

        Jemand eine Idee, wieso das so ist?

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

        Support us

        ioBroker
        Community Adapters
        Donate
        FAQ Cloud / IOT
        HowTo: Node.js-Update
        HowTo: Backup/Restore
        Downloads
        BLOG

        709
        Online

        32.1k
        Users

        80.6k
        Topics

        1.3m
        Posts

        1
        2
        155
        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