Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Tester für Javascript 9.0.1 gesucht

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Tester für Javascript 9.0.1 gesucht

    This topic has been deleted. Only users with topic management privileges can see it.
    • sigi234
      sigi234 Forum Testing Most Active @Bluefox last edited by sigi234

      @bluefox

      Installation erfolgreich.
      Derzeit kommt folgender Fehler:

      javascript.0
      2025-06-04 08:59:06.835	error	script.js.Test.Fenster2: at Object.callback (C:\SmartHome\node_modules\iobroker.javascript\build-backend\lib\sandbox.js:1418:38)
      
      javascript.0
      2025-06-04 08:59:06.835	error	script.js.Test.Fenster2: at Object.<anonymous> (script.js.Test.Fenster2:103:13)
      
      javascript.0
      2025-06-04 08:59:06.835	error	script.js.Test.Fenster2: at Count (script.js.Test.Fenster2:141:20)
      
      javascript.0
      2025-06-04 08:59:06.835	error	script.js.Test.Fenster2: at Array.forEach (<anonymous>)
      
      javascript.0
      2025-06-04 08:59:06.835	error	script.js.Test.Fenster2: at script.js.Test.Fenster2:142:34
      
      javascript.0
      2025-06-04 08:59:06.835	error	script.js.Test.Fenster2: at result.each (C:\SmartHome\node_modules\iobroker.javascript\build-backend\lib\sandbox.js:947:29)
      
      javascript.0
      2025-06-04 08:59:06.835	error	script.js.Test.Fenster2: at script.js.Test.Fenster2:156:21
      
      javascript.0
      2025-06-04 08:59:06.834	error	script.js.Test.Fenster2: at writelog (script.js.Test.Fenster2:345:8)
      
      javascript.0
      2025-06-04 08:59:06.834	error	script.js.Test.Fenster2: at ProtectFs.readFile (C:\SmartHome\node_modules\iobroker.javascript\build-backend\lib\protectFs.js:229:32)
      
      javascript.0
      2025-06-04 08:59:06.834	error	script.js.Test.Fenster2: at ProtectFs.readFile (node:fs:366:3)
      
      javascript.0
      2025-06-04 08:59:06.834	error	script.js.Test.Fenster2: Error in callback: TypeError [ERR_INVALID_ARG_TYPE]: The "cb" argument must be of type function. Received type string ('utf8')
      

      Hier das Skript dazu:

       // Zählscript für Fenster, Brunnen, Rolladen, Lichter (Dimmer und state) und Hue
      // Autor Looxer01 July 2020, optimiert und erweitert 08 2024
      // Version 4.6 23.09.2024 // korrektur initialer durchlauf / Text nur bis zum ersten Punkt // algemeiner Pfad hinzugefügt
      // Version 4.7 24.09.2024 // Reihenfolge CreateState&Initialisierung geändert // Korrektur paths
      
      
      // Das script sollte neu gestartet werden, wenn neue Objekte hinzukommen. z.B. neue HueLampen,(HM-Geräte ist automatisiert) Ansonsten erfolgt keine Zählung dieser Objektge
      // Das Löschen von relevanten Geräten sollte programmtechnisch abgefangen sein / Trotzdem empfehle ich das script neu zu starten
      //-------------------------------------------------------------------------------------------------------------------------------------------
      // Einstellungsbereich
      
      // Datenpunkte werden automatisch angelegt. Muss im Javascript Tree erfolgen, zwingend count, active, text und status müssen angelegt werden
      // Pfade für die Zählungsergebnisse
      // Achtung in allen 3 Tabellen muss Groß und Kleinschreibung berücksichtigt werden. Wenn in paths z.B. "MOTION" definiert ist, dann muss so auch in selectors definiert werden
      
      // CommonPath kann auch auf userdata gelegt werden. Einfach den Vorschlag übernehmen 
      const CommmonPath = "javascript.0.Counts.";
      //const CommmonPath = "0_userdata.0.Counts.";
      
      
      const paths = {
          Leuchten: {
              count: CommmonPath+'Leuchten.anzahlLichter',
              active: CommmonPath+'Leuchten.anzahlLichterAn',
              text: CommmonPath+'Leuchten.textLichterAn',
              status: CommmonPath+'Leuchten.Statusliste'
          },
          Fenster: {
              count: CommmonPath+'Fenster.anzahlFenster',
              active: CommmonPath+'Fenster.anzahlFensterauf',
              text: CommmonPath+'Fenster.textFensterauf',
              status: CommmonPath+'Fenster.Statusliste'
          },
          MOTION: {
              count: CommmonPath+'Motion.anzahlMotion',
              active: CommmonPath+'Motion.anzahlMotionAktiv',
              text: CommmonPath+'Motion.textMotionAktiv',
              status: CommmonPath+'Motion.Statusliste'
          },
          
          // Weitere Daenpunkte können hier hinzugefügt werden / löschen von Datenpunkten falls nicht benötigt
      };
      
      // Array für benutzerdefinierte Zusammenfassungen in die Zuvor definierten Datenpunkte, z.B. Dimmer Hue Lampen
      // Der name wird gemapped mit den Namen in der Tabelle paths - bedeutet die 3 Selektoren "Lampen,Dimmer,Hue" werden im Pfad unter "Leuchten" zusammengefasst.
      // Beispielsweise könnten auch Fenster und Rolladen zusammengefasst werden
      const groupings = {
          Leuchten: ['Lampen', 'Dimmer', 'Hue'], // "Lampen und Dimmer und Hue werden unter Leuchten zusammengefasst"
          // Weitere Zusammenfassungen können hier hinzugefügt werden / falls keine Groupings benötigt werden, dann ersetzen mit     const groupings = []
      };
      
      // Selectoren sind eine Art Filter um die richtigen Datenpunkte zu finden, die dann subscribed werden
      // Functions in iobroker entsprechen Gewerke in Homematic
      // Achtung die Namen aus den Datenpunkten muessen exakt mit den hier verwendeten Namen übereinstimmmen: also z.B. MOTION = MOTION
      // der update der Hue lampen dauert etwas länger, da die updates über die Hue-Bridge relativ langsam sind
      const selectors = {
          Lampen:     $('channel[state.id=*.STATE](functions=Licht)'), // allen Leuchten wurde das Gewerk "Licht zugeordnet aber nur für den relevanten Kanal in Homematic"
          Dimmer:     $('channel[state.id=*.LEVEL](functions=Licht)'),
          Hue:        $('channel[state.id=hue.0.*.on](functions=Hue)'), // in der objektliste habe ich den channels (Hue-Leuchten) die Funktion "Hue" zugeordnet
          Fenster:    $('channel[state.id=*.STATE](functions=Verschluss)'),
          MOTION:     $('channel[state.id=*.MOTION](functions=Sicherheit)'),
          //MOTION:     $('channel[state.id=*.MOTION]')
          
       // Weitere Selektoren können hier hinzugefügt werden / löschen von Selektoren falls nicht benötigt
      }
      
      const ReCreateSubscriptionsonNEW = true; // bei Erkennung neuer Geräte werden subscriptions neu erstellt (Erkennung geht nur bei Homematic)
      
      const debug = true;
      const listSelectors = true; // listet das Ergebnis der Selektoren beimn Start des Programmes- dient zum Fehler finden falls die Zählung nicht funktioniert
      
      const logObjects = ['MOTION'];  // die hier angegebenen Objekte (aus den selectors) werden in einer excel-lesbaren Datei geloggt
      // Weitere Objekte können hinzugefügt werden, z.B.  const logObjects = ['MOTION','Fenster']; oder keine Objekte: const logObjects = []
      
      
      // Ende Einstellungsbereich
      //----------------------------------------------------------------------------------------------------------------------------------------------
      const LogPath =  "/Users/sigi/Documents/Zaehlscript.csv"        // falls ein externes log in CSV Format geschrieben werden soll. (anhand Array logObjects)
      let subscriptions = []; // Array, um Subscriptions zu speichern wird genutzt für neu Erstellung der Subsriptions wenn neue Geräte hinzugefügt wurden
      
      if (listSelectors) { listMembers(); }; // Falls erforderlich, die Selector-Ergebnisse auflisten
      checkConsistency(paths, selectors, groupings); // Konsistenzprüfung der Arrays
      
      let modus = "init"; // während des Durchlaufs kann festgestellt werden, ob es sich um die Initialisierung handelt / kein log schreiben bei initialisierung
      CreateStates(() => {                                        // Anlegen der States mit Callback, um abzuwarten bis die States zur Verfügung stehen
          initializeCounts();                                     // Zählungen initialisieren
          modus = "subscription";                                 // Nach Abschluss aller Initialisierungen Modus auf 'subscription' setzen
      });
      
      
      if (ReCreateSubscriptionsonNEW) {                       // Falls neue Geräte erkannt werden, Subscriptions neu erstellen
          on({id: 'hm-rpc.0.updated', val: true, change: 'ne'}, recreateSubscriptions); 
          on({id: 'hm-rpc.1.updated', val: true, change: 'ne'}, recreateSubscriptions);
      }
      setupSubscriptions();                                       // Die Subscriptions für die Selectors werden eingerichtet
      //-----------------------------------------------------------------------------------------
      // Function setupSubscriptions - Einrichtung der Subscriptions
      //-----------------------------------------------------------------------------------------
      function setupSubscriptions() {
          Object.keys(selectors).forEach(type => {
              selectors[type].on(obj => {
                  Count(obj.id, obj.state.val, type);
              });
          });
      }
      //-----------------------------------------------------------------------------------------
      // Function recreateSubscriptions - Neuererstellung der Subscriptions
      //-----------------------------------------------------------------------------------------
      function recreateSubscriptions() {
          clearSubscriptions();
          setupSubscriptions(); // Subscriptions neu erstellen
          log("Es gab neue HMIP-Objekte - Subscriptions wurden neu erstellt");
      }
      //-----------------------------------------------------------------------------------------
      // Function recreateSubscriptions - Löschen der Subscriptions
      //-----------------------------------------------------------------------------------------
      function clearSubscriptions() {
          subscriptions.forEach(unsubscribe => unsubscribe()); // Alle gespeicherten Subscriptions aufheben
          subscriptions = []; // Array leeren
          log("Es gab neue HMIP-Objekte - Subscriptions wurden gelöscht");
      }
      //-----------------------------------------------------------------------------------------
      // Function Count - Zentrale Routine die bei Änderung eines Zustandes aufgerufen wird
      // geht durch alle Datenpunkte des Selectors und zählt - falls ein relevantes Gerät eingeschaltet ist
      //-----------------------------------------------------------------------------------------
      function Count(triggerId, newState, type) {
      //    if(triggerId === null ){return}; // keine Ergebnisse gefunden
          let primaryType = getPrimaryTypeForType(type);
          let typesToProcess = groupings[primaryType] || [primaryType];     // Wenn kein passender primaryType in den groupings gefunden wurde, nehmen wir den Typ direkt
          if (!paths[primaryType]) {
              log(`Kein Pfad für Typ ${primaryType} gefunden`, 'warn');
              return;
          }
          let path = paths[primaryType];
          let counterAll = 0;
          let counterActive = 0;
          const text = [];
          let jsonString = "[";
          // Iteration über die zu verarbeitenden Typen (entweder Gruppe oder einzelner Typ)
          typesToProcess.forEach(selectorType => {
              selectors[selectorType]?.each((id) => {
                  if (CheckDataPoint(id) === false) {
                      log("Objekt mit ID "+id + " existiert nicht, Zaehlung nicht vollstaendig // Subscriptions werden neu erstellt","warn");
                      clearSubscriptions();
                      setupSubscriptions();
                      return;
                  }
                  const status = getState(id).val;
                  const object = getObject(id);
                  if (shouldCount(status, selectorType, id)) {
                      counterActive++;
                      text.push(createTextEntry(object.common.name));
                      jsonString += createJsonEntry(selectorType, object.common.name, status);
                      if (modus != "init" && logObjects.includes(type)) {   // nur wenn keine initialisierung läuft und wenn das object geloggt werden soll erfolgt ein logeintrag
                          writelog(type+","+id+","+ object.common.name+";"+status);
                      }
                  }
                  counterAll++;
              });
          });
          jsonString = `${jsonString}]`.replace(",]", "]");
          logResult(type, counterAll, counterActive, triggerId, newState);
          setStateValues(path, counterAll, counterActive, text, jsonString);
      }
      //-----------------------------------------------------------------------------------------
      // Function getPrimaryTypeForType - Zentrale Routine die bei Änderung eines Zustandes aufgerufen wird
      // geht durch alle Datenpunkte des Selectors und zählt - falls ein relevantes Gerät eingeschaltet ist
      //-----------------------------------------------------------------------------------------
      function getPrimaryTypeForType(type) {
          // Suche den primaryType in den Gruppierungen, in denen dieser Typ enthalten ist
          for (let primaryType in groupings) {
              if (groupings[primaryType].includes(type)) {
                  return primaryType;
              }
          }
          if ( type ) {
              return type; // Wenn nicht in den Gruppierungen, als einzelner Typ behandeln
          }
          return null;
      }
      //-----------------------------------------------------------------------------------------
      // Function shouldCount -check relevanz ob hochgezählt werden soll
      //-----------------------------------------------------------------------------------------
      function shouldCount(status, type, id) {
          return status === true || parseFloat(status) > 0;
      }
      //-----------------------------------------------------------------------------------------
      // Function createJsonEntry - Routine erzeugt Json record
      //-----------------------------------------------------------------------------------------
      function createJsonEntry(type, Name, status) {
          let CleanName = Name.split('.')[0];
          return `{"Type":"${type}","Ort":"${CleanName}","Status":"${status}"},`;
      }
      //-----------------------------------------------------------------------------------------
      // Function createTextEntry - Routine erzeugt Text record
      //-----------------------------------------------------------------------------------------
      function createTextEntry(Name) {
          let CleanName = Name.split('.')[0];
          return CleanName;
      
      }
      //-----------------------------------------------------------------------------------------
      // Function logResult - log falls debug = true
      //-----------------------------------------------------------------------------------------
      function logResult(type, counterAll, counterActive, triggerId, newState) {
          let commonName = "Initial";
          if (triggerId !== null) {
             commonName = getObject(triggerId).common.name;   
          }
          if (debug) {
                  log(`Anzahl ${type}: ${counterAll} | ${type} aktiv: ${counterActive} | Auslöser: ${commonName} | Status: ${newState}`, "info");
          }
      }
      //-----------------------------------------------------------------------------------------
      // Function setStateValues - speichern der Zählung in den relevanten Datepunkten
      //-----------------------------------------------------------------------------------------
      function setStateValues(path, counterAll, counterActive, text, jsonString) {
          setState(path.status, jsonString);
          setState(path.active, counterActive);
          setState(path.count, counterAll);
          setState(path.text, text.toString());
      }
      //-----------------------------------------------------------------------------------------
      // Function CreateStates - Anlegen der States mit Verzögerung bis angelegt
      //-----------------------------------------------------------------------------------------
      function CreateStates(callback) {
          let createCount = 0;
          let expectedCount = 0;
          Object.keys(paths).forEach(type => {
              const path = paths[type];
              expectedCount += 4;          // Zählt die erwarteten neuen Datenpunkte
              createState(path.count, 0, { read: true, write: true, type: 'number', name: `Anzahl ${type}`, desc: `Anzahl ${type}` }, () => { createCount++; checkIfAllCreated(); });
              createState(path.active, 0, { read: true, write: true, type: 'number', name: `Anzahl ${type} aktiv`, desc: `Anzahl ${type} aktiv` }, () => {createCount++; checkIfAllCreated();});
              createState(path.text, "", { read: true, write: true, type: 'string', name: `Text ${type}`, desc: `Text ${type}` }, () => { createCount++;checkIfAllCreated(); });
              createState(path.status, "[]", { read: true, write: true, type: 'string', name: `Status ${type} JSON Liste`, desc: `Status ${type} als JSON` }, () => {createCount++; checkIfAllCreated();});
          });
      //-----------------------------------------------------------------------------------------
      // Function CreateStates - Anlegen der States mit Verzögerung bis angelegt
      //-----------------------------------------------------------------------------------------
      function checkIfAllCreated() {
              if (createCount === expectedCount && typeof callback === 'function') {
                  callback();
              }
          }
      }
      //-----------------------------------------------------------------------------------------
      // Function CheckDataPoint - Check States ob angelegt /falls objekte geloescht wurden
      //-----------------------------------------------------------------------------------------
      function CheckDataPoint(id) {
          return existsState(id)
      }
      //-----------------------------------------------------------------------------------------
      // Function initializeCounts - Initialisierung der Zähler beim Starten des Programmes. 
      // ermittelt aktuelle Zählung
      //-----------------------------------------------------------------------------------------
      function initializeCounts() {
          // Erst alle Typen, die in den groupings definiert sind
          Object.keys(groupings).forEach(primaryType => {
              Count(null, null, primaryType);
          });
          // Dann alle Typen, die nicht in den groupings enthalten sind
          Object.keys(selectors).forEach(type => {
              if (!Object.keys(groupings).some(primaryType => groupings[primaryType].includes(type))) {
                  Count(null, null, type);
              }
          });
      }
      //-----------------------------------------------------------------------------------------
      // Function listMembers - Funktion zum Auflisten der Mitglieder aller Selektoren - dient zur Fehlerfindung
      //-----------------------------------------------------------------------------------------
      function listMembers() {
          for (const [key, selector] of Object.entries(selectors)) {
              log(`Liste der ${key}-Geräte:`, 'info');
              
              selector.each((id) => {
                  const obj = getObject(id);
                  const name = obj && obj.common && obj.common.name ? obj.common.name : 'Unbekannt';
                  log(`- ID: ${id} | Name: ${name}`, 'info');
              });
              
              log(`Ende der ${key}-Liste`, 'info');
              log('', 'info');  // Leere Zeile zwischen den Typen
          }
      }
      //-----------------------------------------------------------------------------------------
      // Function checkConsistency - Funktion zur Überprüfung der übereinstimmung der arrays
      //-----------------------------------------------------------------------------------------
      function checkConsistency(paths, selectors, groupings) {
          // Extrahiere die Schlüssel aus paths und selectors
          const pathKeys = Object.keys(paths);
          const selectorKeys = Object.keys(selectors);
      
          // Wenn groupings angegeben ist, erstellen Sie eine Sammlung aller Keys aus groupings
          const groupKeys = groupings ? Object.keys(groupings) : [];
      
          // Sammle alle Mitglieder von groupings in einem Set
          const groupMembers = new Set();
          for (const key of groupKeys) {
              if (groupings[key]) {
                  groupings[key].forEach(member => groupMembers.add(member));
              }
          }
          // Prüfen, ob alle Keys in groupings auch in paths vorhanden sind
          const missingInPaths = groupKeys.filter(key => !pathKeys.includes(key));
      
          // Prüfen, ob alle Mitglieder der groupings in selectors vorhanden sind
          const missingInSelectors = [...groupMembers].filter(member => !selectorKeys.includes(member));
      
            // Ausgabe der Ergebnisse
          if (missingInPaths.length === 0 && missingInSelectors.length === 0 ) {
              if(debug) {console.log('Alle Namen stimmen überein.');};
          } else {
              if (missingInPaths.length > 0) {
                  console.warn(`Die folgenden Keys fehlen in paths, obwohl sie in groupings vorhanden sind: ${missingInPaths.join(', ')}`);
              }
              if (missingInSelectors.length > 0) {
                  console.warn(`Die folgenden Mitglieder der groupings fehlen in selectors: ${missingInSelectors.join(', ')}`);
              }
      
          }
      }
      //-----------------------------------------------------------------------------------------------------
      // Funktion zur Erzeugung von fuehrenden Nullen fuer das Datum Format
      //-----------------------------------------------------------------------------------------------------
      function addZero(i) {
          return i < 10 ? "0" + i : i;
      }
      //-----------------------------------------------------------------------------------------
      // Function writelog - Logeintrag schreiben
      //-----------------------------------------------------------------------------------------
      function writelog(string) {
          const fs = require('fs'); // enable write for external log
          const now = new Date();
          const [year, month, day, Thour, Tmin, Tsec] = [
              now.getFullYear(),
              addZero(now.getMonth() + 1),
              addZero(now.getDate()),
              addZero(now.getHours()),
              addZero(now.getMinutes()),
              addZero(now.getSeconds())
          ];
          const logdate = `${day}.${month}.${year}`;
          const logtime = `${Thour}:${Tmin}:${Tsec}`;
          fs.readFile(LogPath, 'utf8', (err, data) => {
              const entry = `${logdate} ;${logtime} ;${string}\n`;
              if (!err) {
                  fs.appendFileSync(LogPath, entry);
              } else {
                  log("Zaehlscript-Logging: Routine writelog - Logfile nicht gefunden - wird angelegt", "info");
                  const headerLine = "Datum;Uhrzeit;Type;GeraeteID;Geraetebezeichnung;Status";
                  fs.appendFileSync(LogPath, `${headerLine}\n${entry}`);
              }
          });
      }
      

      Plattform: Windows
      Admin: 7.6.18
      Node.js: v20.19.2
      NPM: 10.8.2
      JS: 9.0.1

      Bluefox 1 Reply Last reply Reply Quote 0
      • Bluefox
        Bluefox @sigi234 last edited by

        @sigi234 Danke. Ich baue gerade neue Version

        sigi234 T 2 Replies Last reply Reply Quote 2
        • sigi234
          sigi234 Forum Testing Most Active @Bluefox last edited by sigi234

          @bluefox sagte in Tester für Javascript 9.0.1 gesucht:

          @sigi234 Danke. Ich baue gerade neue Version

          Danke, Fehler ist mit Version 9.0.2
          weg.

          1 Reply Last reply Reply Quote 1
          • T
            TT-Tom @Bluefox last edited by TT-Tom

            @bluefox

            Installation ist sauber durchgelaufen, alle Script ohne Probleme gestartet. Es laufen hier 2 Instanzen.
            Plattform: linux "Bookwoorm"
            Admin: 7.6.18
            Node.js: v20.19.2
            NPM: 10.8.2

            1 Reply Last reply Reply Quote 0
            • Thomas Braun
              Thomas Braun Most Active @Bluefox last edited by

              @bluefox

              ├── iobroker.javascript@9.0.2 (git+ssh://git@github.com/ioBroker/ioBroker.javascript.git#7682b46eb3a38255d501c17f8cd80a7d4cffb33b)
              

              läuft ohne Auffälligkeiten hier.

              1 Reply Last reply Reply Quote 0
              • Neuschwansteini
                Neuschwansteini @Bluefox last edited by Neuschwansteini

                @bluefox @TT-Tom

                Hier auch auf dem Produktivsystem (jaja ich weiss..) ohne Fehler und Auffälligkeiten.
                Node 20.19.2, Admin 7.6.18, js-controller 7.0.7, debian bookworm lxc. Ca. 600 Scripte am laufen, 54000 States und Objects.

                Edit: die nspanel-Scripte Version 4.5.01 melden Fehler (ist das in einer der neueren Versionen behoben? Der Fehler war nur nach manuellem Start des Scriptes zu sehen, nach dem Update des Adapters und neustart, waren keine Fehler im Protokoll und die Panels sehen aus wie immer, nur lassen Sie sich nicht mehr bedienen..)
                ( Topic gehoert evtl. nach ns-panel-Scripte verschoben..?)

                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                        await setStateAsync(NSPanel_Path + 'Berry_Driver.currentVersion', <iobJS.State>{ val: getState(NSPanel_Path + 'Berry_Driver.onlineVersion').val, ack: true });
                                                                                                                 ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                            await setStateAsync(NSPanel_Path + 'Display_Firmware.currentVersion', <iobJS.State>{ val: getState(NSPanel_Path + 'Display_Firmware.onlineVersion').val, ack: true });
                                                                                                                         ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                            await setStateAsync(popupNotifyHeading, <iobJS.State>{ val: Headline, ack: false });
                                                                           ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                            await setStateAsync(popupNotifyHeadingColor, <iobJS.State>{ val: HeadlineColor, ack: false });
                                                                                ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                            await setStateAsync(popupNotifyButton1Text, <iobJS.State>{ val: Button1, ack: false });
                                                                               ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                            await setStateAsync(popupNotifyButton1TextColor, <iobJS.State>{ val: Button1Color, ack: false });
                                                                                    ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                            await setStateAsync(popupNotifyButton2Text, <iobJS.State>{ val: Button2, ack: false });
                                                                               ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                            await setStateAsync(popupNotifyButton2TextColor, <iobJS.State>{ val: Button2Color, ack: false });
                                                                                    ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                            await setStateAsync(popupNotifySleepTimeout, <iobJS.State>{ val: Timeout, ack: false });
                                                                                ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                            await setStateAsync(popupNotifyInternalName, <iobJS.State>{ val: InternalName, ack: false });
                                                                                ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                            await setStateAsync(popupNotifyLayout, <iobJS.State>{ val: Layout, ack: false });
                                                                          ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                            await setStateAsync(popupNotifyText, <iobJS.State>{ val: [formatDate(getDateObject(new Date().getTime()), 'TT.MM.JJJJ SS:mm:ss'), '\r\n', '\r\n', Text].join(''), ack: false });
                                                                        ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                            await setStateAsync(NSPanel_Path + 'NSPanel_ipAddress', <iobJS.State>{ val: get_current_tasmota_ip_address(), ack: true });
                                                                                           ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                    await setStateAsync(NSPanel_Path + 'Tasmota_Firmware.onlineVersion', <iobJS.State>{ val: TasmotaVersionOnline, ack: true });
                                                                                                                ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                    await setStateAsync(NSPanel_Path + 'Berry_Driver.currentVersion', <iobJS.State>{ val: JSON.parse(JSON.stringify(response.data)).nlui_driver_version, ack: true });
                                                                                                             ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                        await setStateAsync(NSPanel_Path + 'Tasmota_Firmware.currentVersion', <iobJS.State>{ val: tasmoVersion, ack: true });
                                                                                                                     ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                        await setStateAsync(NSPanel_Path + 'Tasmota.Uptime', <iobJS.State>{ val: Tasmota_JSON.StatusPRM.Uptime, ack: true });
                                                                                                    ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                        await setStateAsync(NSPanel_Path + 'Tasmota.Version', <iobJS.State>{ val: Tasmota_JSON.StatusFWR.Version, ack: true });
                                                                                                     ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                        await setStateAsync(NSPanel_Path + 'Tasmota.Hardware', <iobJS.State>{ val: TasmotaHardware[0] + '\r\n' + TasmotaHardware[1], ack: true });
                                                                                                      ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                        await setStateAsync(NSPanel_Path + 'Tasmota.Wifi.AP', <iobJS.State>{ val: Tasmota_JSON.StatusSTS.Wifi.AP, ack: true });
                                                                                                     ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                        await setStateAsync(NSPanel_Path + 'Tasmota.Wifi.SSId', <iobJS.State>{ val: Tasmota_JSON.StatusSTS.Wifi.SSId, ack: true });
                                                                                                       ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                        await setStateAsync(NSPanel_Path + 'Tasmota.Wifi.BSSId', <iobJS.State>{ val: Tasmota_JSON.StatusSTS.Wifi.BSSId, ack: true });
                                                                                                        ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                        await setStateAsync(NSPanel_Path + 'Tasmota.Wifi.Channel', <iobJS.State>{ val: Tasmota_JSON.StatusSTS.Wifi.Channel, ack: true });
                                                                                                          ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                        await setStateAsync(NSPanel_Path + 'Tasmota.Wifi.Mode', <iobJS.State>{ val: Tasmota_JSON.StatusSTS.Wifi.Mode, ack: true });
                                                                                                       ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                        await setStateAsync(NSPanel_Path + 'Tasmota.Wifi.RSSI', <iobJS.State>{ val: Tasmota_JSON.StatusSTS.Wifi.RSSI, ack: true });
                                                                                                       ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                        await setStateAsync(NSPanel_Path + 'Tasmota.Wifi.Signal', <iobJS.State>{ val: Tasmota_JSON.StatusSTS.Wifi.Signal, ack: true });
                                                                                                         ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                        await setStateAsync(NSPanel_Path + 'Tasmota.Product', <iobJS.State>{ val: 'SONOFF NSPanel', ack: true });
                                                                                                     ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                        await setStateAsync(NSPanel_Path + 'Berry_Driver.onlineVersion', <iobJS.State>{ val: BerryDriverVersionOnline, ack: true });
                                                                                                                ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                await setStateAsync(NSPanel_Path + 'TFT_Firmware.onlineVersion', <iobJS.State>{ val: NSPanelVersion, ack: true });
                                                                                                        ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                await setStateAsync(NSPanel_Path + 'Display_Firmware.onlineVersion', <iobJS.State>{ val: desired_display_firmware_version, ack: true });
                                                                                                            ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                    await setStateAsync(NSPanel_Path + 'Display_Firmware.currentVersion', <iobJS.State>{ val: split[2], ack: true });
                                                                                                                 ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                    await setStateAsync(NSPanel_Path + 'NSPanel_Version', <iobJS.State>{ val: split[3], ack: true });
                                                                                                 ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                                await setStateAsync(NSPanel_Path + 'TFT_Firmware.onlineVersion', <iobJS.State>{ val: tft_version, ack: true });
                                                                                                                        ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                    setState(popupNotifyInternalName, <iobJS.State>{ val: words[2], ack: true });
                                                                             ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                    setState(popupNotifyAction, <iobJS.State>{ val: true, ack: true });
                                                                       ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                    setState(popupNotifyInternalName, <iobJS.State>{ val: words[2], ack: true });
                                                                             ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                                    setState(popupNotifyAction, <iobJS.State>{ val: false, ack: true });
                                                                       ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                            unsubscribe(value);
                                        ^
                ERROR: Argument of type 'unknown' is not assignable to parameter of type 'string | RegExp | string[]'.
                        await setStateAsync(NSPanel_Path + 'Sensor.Time', <iobJS.State>{ val: dateTime[0] + '\r\n' + dateTime[1], ack: true });
                                                                                 ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                        await setStateAsync(NSPanel_Path + 'Sensor.TempUnit', <iobJS.State>{ val: '°' + Tasmota_Sensor.TempUnit, ack: true });
                                                                                     ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                            await setStateAsync(NSPanel_Path + 'Sensor.ANALOG.Temperature', <iobJS.State>{ val: parseFloat(Tasmota_Sensor.ANALOG.Temperature1), ack: true });
                                                                                                   ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                            await setStateAsync(NSPanel_Path + 'Sensor.ESP32.Temperature', <iobJS.State>{ val: parseFloat(Tasmota_Sensor.ESP32.Temperature), ack: true });
                                                                                                  ^
                ERROR: Namespace 'global.iobJS' has no exported member 'State'.
                            val: iobJS.StateValue;
                                       ^
                ERROR: 'global.iobJS' has no exported member named 'StateValue'. Did you mean 'StateACL'?
                            val: iobJS.StateValue;
                                       ^
                ERROR: 'global.iobJS' has no exported member named 'StateValue'. Did you mean 'StateACL'?
                
                
                
                
                T 1 Reply Last reply Reply Quote 0
                • T
                  TT-Tom @Neuschwansteini last edited by TT-Tom

                  @neuschwansteini

                  die Fehler kommen auch in der aktuellen Script Version. Müssen das mit @Armilar mal prüfen

                  Edit: der Parameter name läuft auch nicht mehr, lieferte den Scriptnamen

                  value wird auch nicht mehr unterstützt

                  function UnsubscribeWatcher(): void {
                      try {
                          for (const [key, value] of Object.entries(subscriptions)) {
                              unsubscribe(value);
                              delete subscriptions[key];
                          }
                      } catch (err: any) {
                          log('error at function UnsubscribeWatcher: ' + err.message, 'warn');
                      }
                  }
                  
                  Neuschwansteini 1 Reply Last reply Reply Quote -1
                  • Neuschwansteini
                    Neuschwansteini @TT-Tom last edited by

                    @tt-tom Danke schonmal, da lohnt sich das Update auch noch nicht.. 🙂

                    1 Reply Last reply Reply Quote 0
                    • teletapi
                      teletapi last edited by teletapi

                      Re: SONOFF NSPanel mit Lovelace UI

                      Ich hatte vor ein paar tagen das NSPanel bekommen und hab das soweit fertig zumindest die ersten Seiten alles ist aktuell Script ist die 4.7.2.1 Berrytreiber 9 Displaytreiber 56/V4.7.2
                      Hat auch alles wunderbar funktioniert bis ich eben den Javascript Adapter Beta 9.0.3 installiert habe danach ging nix mehr, hab dann nochmal ein neues Basis Script genommen und meine daten kurz eingetragen aber der fehler bleibt. Ich würde jetzt hier mal ein Problem mit dem Javascript adapter vermuten denn mit der 8.9.2 version des Javadapters funktioniert alles. In den Change Logs steht irgendwas von "Typescript "
                      Weiß da schon jemand mehr oder liegt der Fehler vielleicht doch bei mir

                      javascript.0 2025-06-12 18:15:13.811	error	script.js.NSPanel1.NSPanel1: TypeScript compilation failed: await setStateAsync(NSPanel_Path + 'PageNavi', <iobJS.State>{ val: "{ pagetype: 'page', pageId: 0 }", ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'NSPanel_Dimmode_brightnessDay', <iobJS.State>{ val: 8, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'NSPanel_Dimmode_hourDay', <iobJS.State>{ val: 7, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'NSPanel_Dimmode_brightnessNight', <iobJS.State>{ val: 1, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'NSPanel_Dimmode_hourNight', <iobJS.State>{ val: 22, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(meanPower, <iobJS.State>{ val: meanConsumption, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(screensaverNotifyHeading, <iobJS.State>{ val: '', ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(screensaverNotifyText, <iobJS.State>{ val: '', ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(obj.id, <iobJS.State>{ val: obj.state.val, ack: true }); // ack new value ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'NSPanel_locales_json', <iobJS.State>{ val: JSON.stringify(response.data), ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'NSPanel_locales_service_json', <iobJS.State>{ val: JSON.stringify(response.data), ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Tasmota_Firmware.currentVersion', <iobJS.State>{ val: getState(NSPanel_Path + 'Tasmota_Firmware.onlineVersion').val, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Berry_Driver.currentVersion', <iobJS.State>{ val: getState(NSPanel_Path + 'Berry_Driver.onlineVersion').val, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Display_Firmware.currentVersion', <iobJS.State>{ val: getState(NSPanel_Path + 'Display_Firmware.onlineVersion').val, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(popupNotifyHeading, <iobJS.State>{ val: Headline, ack: false }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(popupNotifyHeadingColor, <iobJS.State>{ val: HeadlineColor, ack: false }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(popupNotifyButton1Text, <iobJS.State>{ val: Button1, ack: false }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(popupNotifyButton1TextColor, <iobJS.State>{ val: Button1Color, ack: false }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(popupNotifyButton2Text, <iobJS.State>{ val: Button2, ack: false }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(popupNotifyButton2TextColor, <iobJS.State>{ val: Button2Color, ack: false }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(popupNotifySleepTimeout, <iobJS.State>{ val: Timeout, ack: false }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(popupNotifyInternalName, <iobJS.State>{ val: InternalName, ack: false }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(popupNotifyLayout, <iobJS.State>{ val: Layout, ack: false }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(popupNotifyText, <iobJS.State>{ val: [formatDate(getDateObject(new Date().getTime()), 'TT.MM.JJJJ SS:mm:ss'), '\r\n', '\r\n', Text].join(''), ack: false }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'NSPanel_ipAddress', <iobJS.State>{ val: get_current_tasmota_ip_address(), ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Tasmota_Firmware.onlineVersion', <iobJS.State>{ val: TasmotaVersionOnline, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Berry_Driver.currentVersion', <iobJS.State>{ val: JSON.parse(JSON.stringify(response.data)).nlui_driver_version, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Tasmota_Firmware.currentVersion', <iobJS.State>{ val: tasmoVersion, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Tasmota.Uptime', <iobJS.State>{ val: Tasmota_JSON.StatusPRM.Uptime, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Tasmota.Version', <iobJS.State>{ val: Tasmota_JSON.StatusFWR.Version, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Tasmota.Hardware', <iobJS.State>{ val: TasmotaHardware[0] + '\r\n' + TasmotaHardware[1], ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Tasmota.Wifi.AP', <iobJS.State>{ val: Tasmota_JSON.StatusSTS.Wifi.AP, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Tasmota.Wifi.SSId', <iobJS.State>{ val: Tasmota_JSON.StatusSTS.Wifi.SSId, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Tasmota.Wifi.BSSId', <iobJS.State>{ val: Tasmota_JSON.StatusSTS.Wifi.BSSId, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Tasmota.Wifi.Channel', <iobJS.State>{ val: Tasmota_JSON.StatusSTS.Wifi.Channel, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Tasmota.Wifi.Mode', <iobJS.State>{ val: Tasmota_JSON.StatusSTS.Wifi.Mode, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Tasmota.Wifi.RSSI', <iobJS.State>{ val: Tasmota_JSON.StatusSTS.Wifi.RSSI, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Tasmota.Wifi.Signal', <iobJS.State>{ val: Tasmota_JSON.StatusSTS.Wifi.Signal, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Tasmota.Product', <iobJS.State>{ val: 'SONOFF NSPanel', ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Berry_Driver.onlineVersion', <iobJS.State>{ val: BerryDriverVersionOnline, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'TFT_Firmware.onlineVersion', <iobJS.State>{ val: NSPanelVersion, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Display_Firmware.onlineVersion', <iobJS.State>{ val: desired_display_firmware_version, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Display_Firmware.currentVersion', <iobJS.State>{ val: split[2], ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Display_Firmware.currentRelease', <iobJS.State>{ val: split[4], ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'NSPanel_Version', <iobJS.State>{ val: split[3], ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'TFT_Firmware.onlineVersion', <iobJS.State>{ val: tft_version, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. if (getState(pageItem.id + '.TEMPERATURE').ts < getState(pageItem.id + '.HUE').ts) { ^ERROR: Property 'ts' does not exist on type 'AbsentState | TypedState<any>'. Property 'ts' does not exist on type 'TypedState<any>'. if (getState(pageItem.id + '.TEMPERATURE').ts < getState(pageItem.id + '.HUE').ts) { ^ERROR: Property 'ts' does not exist on type 'AbsentState | TypedState<any>'. Property 'ts' does not exist on type 'TypedState<any>'. if (getState(pageItem.id + '.TEMPERATURE').ts < getState(pageItem.id + '.RED').ts) { ^ERROR: Property 'ts' does not exist on type 'AbsentState | TypedState<any>'. Property 'ts' does not exist on type 'TypedState<any>'. if (getState(pageItem.id + '.TEMPERATURE').ts < getState(pageItem.id + '.RED').ts) { ^ERROR: Property 'ts' does not exist on type 'AbsentState | TypedState<any>'. Property 'ts' does not exist on type 'TypedState<any>'. if (getState(pageItem.id + '.TEMPERATURE').ts < getState(pageItem.id + '.CIE').ts) { ^ERROR: Property 'ts' does not exist on type 'AbsentState | TypedState<any>'. Property 'ts' does not exist on type 'TypedState<any>'. if (getState(pageItem.id + '.TEMPERATURE').ts < getState(pageItem.id + '.CIE').ts) { ^ERROR: Property 'ts' does not exist on type 'AbsentState | TypedState<any>'. Property 'ts' does not exist on type 'TypedState<any>'. if (getState(pageItem.id + '.TEMPERATURE').ts < getState(pageItem.id + '.RGB').ts) { ^ERROR: Property 'ts' does not exist on type 'AbsentState | TypedState<any>'. Property 'ts' does not exist on type 'TypedState<any>'. if (getState(pageItem.id + '.TEMPERATURE').ts < getState(pageItem.id + '.RGB').ts) { ^ERROR: Property 'ts' does not exist on type 'AbsentState | TypedState<any>'. Property 'ts' does not exist on type 'TypedState<any>'. setState(popupNotifyInternalName, <iobJS.State>{ val: words[2], ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. setState(popupNotifyAction, <iobJS.State>{ val: true, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. setState(popupNotifyInternalName, <iobJS.State>{ val: words[2], ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. setState(popupNotifyAction, <iobJS.State>{ val: false, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. if (getState(id + '.TEMPERATURE').ts < getState(id + '.HUE').ts) { ^ERROR: Property 'ts' does not exist on type 'AbsentState | TypedState<any>'. Property 'ts' does not exist on type 'TypedState<any>'. if (getState(id + '.TEMPERATURE').ts < getState(id + '.HUE').ts) { ^ERROR: Property 'ts' does not exist on type 'AbsentState | TypedState<any>'. Property 'ts' does not exist on type 'TypedState<any>'. if (getState(id + '.TEMPERATURE').ts < getState(id + '.RED').ts) { ^ERROR: Property 'ts' does not exist on type 'AbsentState | TypedState<any>'. Property 'ts' does not exist on type 'TypedState<any>'. if (getState(id + '.TEMPERATURE').ts < getState(id + '.RED').ts) { ^ERROR: Property 'ts' does not exist on type 'AbsentState | TypedState<any>'. Property 'ts' does not exist on type 'TypedState<any>'. if (getState(id + '.TEMPERATURE').ts < getState(id + '.RGB').ts) { ^ERROR: Property 'ts' does not exist on type 'AbsentState | TypedState<any>'. Property 'ts' does not exist on type 'TypedState<any>'. if (getState(id + '.TEMPERATURE').ts < getState(id + '.RGB').ts) { ^ERROR: Property 'ts' does not exist on type 'AbsentState | TypedState<any>'. Property 'ts' does not exist on type 'TypedState<any>'. if (getState(id + '.TEMPERATURE').ts < getState(id + '.CIE').ts) { ^ERROR: Property 'ts' does not exist on type 'AbsentState | TypedState<any>'. Property 'ts' does not exist on type 'TypedState<any>'. if (getState(id + '.TEMPERATURE').ts < getState(id + '.CIE').ts) { ^ERROR: Property 'ts' does not exist on type 'AbsentState | TypedState<any>'. Property 'ts' does not exist on type 'TypedState<any>'. unsubscribe(value); ^ERROR: Argument of type 'unknown' is not assignable to parameter of type 'string | RegExp | string[]'. await setStateAsync(NSPanel_Path + 'Sensor.Time', <iobJS.State>{ val: dateTime[0] + '\r\n' + dateTime[1], ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Sensor.TempUnit', <iobJS.State>{ val: '°' + Tasmota_Sensor.TempUnit, ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Sensor.ANALOG.Temperature', <iobJS.State>{ val: parseFloat(Tasmota_Sensor.ANALOG.Temperature1), ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. await setStateAsync(NSPanel_Path + 'Sensor.ESP32.Temperature', <iobJS.State>{ val: parseFloat(Tasmota_Sensor.ESP32.Temperature), ack: true }); ^ERROR: Namespace 'global.iobJS' has no exported member 'State'. val: iobJS.StateValue; ^ERROR: 'global.iobJS' has no exported member named 'StateValue'. Did you mean 'StateACL'? val: iobJS.StateValue; ^ERROR: 'global.iobJS' has no exported member named 'StateValue'. Did you mean 'StateACL'?
                      
                      T 1 Reply Last reply Reply Quote 0
                      • T
                        TT-Tom @teletapi last edited by

                        @teletapi
                        wie oben zu lesen, sind die Fehler schon bekannt. Mal sehen was die nächste Beta bringt.

                        1 Reply Last reply Reply Quote 1
                        • Thomas Maul
                          Thomas Maul last edited by

                          Moin,

                          es wurde irgendetwas an der Formatierung von Zeitdifferenzen geändert. Leider finde ich nirgends eine Beschreibung, was genau geändert wurde. Jedenfalls bekomme ich jetzt komische Warnungen in einem meiner Skripte. Hat irgendetwas mit Formatierung zu schaffen...

                          Weiß jemand, wo ich eine Erläuterung der Änderungen finde?

                          Danke!

                          mcm1957 1 Reply Last reply Reply Quote 0
                          • mcm1957
                            mcm1957 @Thomas Maul last edited by

                            @thomas-maul
                            Erwartest du im Ernst dass jemand deine "komischen Warnungen" kommentieren kann ohne dass du sie zeigst?

                            Changelog siehe erstes Posting in diesem Topic und README im Adapter Repo.

                            Thomas Maul 1 Reply Last reply Reply Quote 0
                            • T
                              TT-Tom @Bluefox last edited by

                              Hi @bluefox,

                              Version 9.0.3 bringt immer noch die selben Fehler im Script (NSPanel), ansonsten laufen alle anderen Scripte ohne Fehlermeldungen.

                              1 Reply Last reply Reply Quote 0
                              • Thomas Maul
                                Thomas Maul @mcm1957 last edited by Thomas Maul

                                @mcm1957
                                Hi,
                                ich habe zunächst keine Kommentare erwartet und deshalb nichts mit gepostet.
                                Die Frage lautete: wo ist dokumentiert, was sich bei der Zeitdifferenz konkret geändert hat für den Blockly-User. Alternativ wäre eine kurze Beschreibung der Änderungen hier hilfreich.

                                Ansonsten versuche ich es mit Try&Error zu fixen.
                                BG Thomas

                                EDIT: Hat sich erledigt... Hab's hinbekommen bei mir im Script schreibe ich die Zeitdifferenz (Format hh:mm:ss) in einen Datenpunkt, der eine Zahl erwartet... Mit setzen auf "gemischt" des Datenpunktes ist's dann weg.

                                1 Reply Last reply Reply Quote 0
                                • mg99
                                  mg99 last edited by

                                  Veränderungen von bereits bestehenden Skripten teilweise nicht möglich.
                                  D.h. die Buttons Speichern bzw. Abbrechen kommen nicht.

                                  Das passiert allerdings nicht bei allen blocklys.

                                  F5 - hilft nicht.

                                  Bitte ausfüllen:

                                  • Skripte: blockly
                                  • Link zu Adapterrepository: www.github.com...
                                  • Adapterversion: Skriptausführung V. 9.0.3
                                  • js-controller Version: 7.0.7
                                  • Admin Version: v7.6.19
                                  • Hardwaresystem: Pi5 ...
                                  • Arbeitsspeicher: 8GB
                                  • Festplattenart: SSD
                                  • Betriebssystem: linux
                                  • Nodejs-Version: v20.19.2
                                  • NPM-Version: 10.8.2
                                  • Installationsart: Skript
                                  • Image, Docker genutzt: Nein
                                  • Ort, Name der Imagedatei: HDD

                                  Linux User bitte hier den Output von iob diag einfügen.
                                  ========== Start marking the full check here ===========

                                  Script v.2025-03-08
                                  
                                  *** BASE SYSTEM ***
                                   Static hostname: raspberrypi5a
                                         Icon name: computer
                                  Operating System: Debian GNU/Linux 12 (bookworm)
                                            Kernel: Linux 6.6.62+rpt-rpi-2712
                                      Architecture: arm64
                                  OS is similar to:
                                  
                                  Model           : Raspberry Pi 5 Model B Rev 1.0
                                  Docker          : false
                                  Virtualization  : none
                                  Kernel          : aarch64
                                  Userland        : 64 bit
                                  
                                  Systemuptime and Load:
                                   18:28:32 up  2:06,  2 users,  load average: 1.77, 1.60, 1.25
                                  CPU threads: 4
                                  
                                  
                                  *** LIFE CYCLE STATUS ***
                                  Operating System is the current Debian stable version codenamed 'bookworm'!
                                  
                                  *** RASPBERRY THROTTLING ***
                                  Current issues:
                                  No throttling issues detected.
                                  
                                  Previously detected issues:
                                  No throttling issues detected.
                                  
                                  *** TIME AND TIMEZONES ***
                                                 Local time: Fri 2025-06-13 18:28:33 CEST
                                             Universal time: Fri 2025-06-13 16:28:33 UTC
                                                   RTC time: Fri 2025-06-13 16:28:33
                                                  Time zone: Europe/Vienna (CEST, +0200)
                                  System clock synchronized: yes
                                                NTP service: active
                                            RTC in local TZ: no
                                  
                                  *** Users and Groups ***
                                  User that called 'iob diag':
                                  Guido
                                  HOME=/home/Guido
                                  GROUPS=Guido adm dialout cdrom sudo audio video plugdev games users input render                                                                                                                                                              netdev gpio i2c spi iobroker
                                  
                                  User that is running 'js-controller':
                                  iobroker
                                  HOME=/home/iobroker
                                  GROUPS=iobroker tty dialout audio video plugdev bluetooth redis gpio i2c
                                  
                                  *** DISPLAY-SERVER SETUP ***
                                  Display-Server: false
                                  Desktop:
                                  Terminal:       tty
                                  
                                  *** MEMORY ***
                                                 total        used        free      shared  buff/cache   available
                                  Mem:            8.5G        4.7G        1.2G        5.7M        2.6G        3.7G
                                  Swap:           209M          0B        209M
                                  Total:          8.7G        4.7G        1.4G
                                  
                                  Active iob-Instances:   50
                                  
                                           8064 M total memory
                                           4491 M used memory
                                           4577 M active memory
                                           1788 M inactive memory
                                           1166 M free memory
                                            824 M buffer memory
                                           1674 M swap cache
                                            199 M total swap
                                              0 M used swap
                                            199 M free swap
                                  
                                  *** top - Table Of Processes  ***
                                  top - 18:28:33 up  2:06,  2 users,  load average: 1.77, 1.60, 1.25
                                  Tasks: 233 total,   1 running, 232 sleeping,   0 stopped,   0 zombie
                                  %Cpu(s):  0.0 us, 33.3 sy,  0.0 ni, 66.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
                                  MiB Mem :   8064.1 total,   1164.0 free,   4494.5 used,   2499.0 buff/cache
                                  MiB Swap:    200.0 total,    200.0 free,      0.0 used.   3569.6 avail Mem
                                  
                                  *** FAILED SERVICES ***
                                  
                                    UNIT LOAD ACTIVE SUB DESCRIPTION
                                  0 loaded units listed.
                                  
                                  
                                  *** DMESG CRITICAL ERRORS ***
                                  No critical errors detected
                                  
                                  *** FILESYSTEM ***
                                  Filesystem     Type      Size  Used Avail Use% Mounted on
                                  udev           devtmpfs  3.9G     0  3.9G   0% /dev
                                  tmpfs          tmpfs     807M  5.4M  802M   1% /run
                                  /dev/nvme0n1p2 ext4      938G   18G  873G   2% /
                                  tmpfs          tmpfs     4.0G     0  4.0G   0% /dev/shm
                                  tmpfs          tmpfs     5.0M   48K  5.0M   1% /run/lock
                                  /dev/nvme0n1p1 vfat      511M   65M  447M  13% /boot/firmware
                                  tmpfs          tmpfs     807M     0  807M   0% /run/user/1000
                                  
                                  Messages concerning ext4 filesystem in dmesg:
                                  [Fri Jun 13 16:21:43 2025] Kernel command line: reboot=w coherent_pool=1M 8250.n                                                                                                                                                             r_uarts=1 pci=pcie_bus_safe cgroup_disable=memory numa_policy=interleave  numa=f                                                                                                                                                             ake=8 system_heap.max_order=0 smsc95xx.macaddr=2C:CF:67:38:30:C8 vc_mem.mem_base                                                                                                                                                             =0x3fc00000 vc_mem.mem_size=0x40000000  console=ttyAMA10,115200 console=tty1 roo                                                                                                                                                             t=PARTUUID=d86775b7-02 rootfstype=ext4 fsck.repair=yes rootwait cfg80211.ieee802                                                                                                                                                             11_regdom=AT
                                  [Fri Jun 13 16:21:46 2025] EXT4-fs (nvme0n1p2): mounted filesystem 4e43b7ef-50b8                                                                                                                                                             -4db8-af9c-bba08ba271ec ro with ordered data mode. Quota mode: none.
                                  [Fri Jun 13 16:21:47 2025] EXT4-fs (nvme0n1p2): re-mounted 4e43b7ef-50b8-4db8-af                                                                                                                                                             9c-bba08ba271ec r/w. Quota mode: none.
                                  
                                  Show mounted filesystems:
                                  TARGET           SOURCE         FSTYPE OPTIONS
                                  /                /dev/nvme0n1p2 ext4   rw,noatime
                                  `-/boot/firmware /dev/nvme0n1p1 vfat   rw,relatime,fmask=0022,dmask=0022,codepag                                                                                                                                                             e=437,iocharset=ascii,shortname=mixed,errors=remount-ro
                                  
                                  Files in neuralgic directories:
                                  
                                  /var:
                                  8.8G    /var/
                                  4.0G    /var/cache/apt
                                  4.0G    /var/cache
                                  3.9G    /var/cache/apt/archives
                                  3.1G    /var/lib
                                  
                                  Archived and active journals take up 1.5G in the file system.
                                  
                                  /opt/iobroker/backups:
                                  41M     /opt/iobroker/backups/
                                  
                                  /opt/iobroker/iobroker-data:
                                  2.7G    /opt/iobroker/iobroker-data/
                                  2.0G    /opt/iobroker/iobroker-data/history
                                  532M    /opt/iobroker/iobroker-data/files
                                  228M    /opt/iobroker/iobroker-data/files/vis
                                  221M    /opt/iobroker/iobroker-data/files/vis/widgets
                                  
                                  The five largest files in iobroker-data are:
                                  47M     /opt/iobroker/iobroker-data/objects.jsonl
                                  16M     /opt/iobroker/iobroker-data/states.jsonl
                                  9.8M    /opt/iobroker/iobroker-data/files/vis-2/material-icons/knx-uf.json
                                  9.8M    /opt/iobroker/iobroker-data/files/homekit-controller.admin/static/js/mai                                                                                                                                                             n.f592ece1.js
                                  8.1M    /opt/iobroker/iobroker-data/files/backitup.admin/assets/index-BFvcOIQE.j                                                                                                                                                             s
                                  
                                  USB-Devices by-id:
                                  USB-Sticks -  Avoid direct links to /dev/tty* in your adapter setups, please alw                                                                                                                                                             ays prefer the links 'by-id':
                                  
                                  /dev/serial/by-id/usb-ITead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_d4edcf55336cef1193                                                                                                                                                             0b9fadc169b110-if00-port0
                                  
                                  *** ZigBee Settings ***
                                  
                                  Your zigbee.0 COM-Port is matching 'by-id'. Very good!
                                  Zigbee Network Settings on your coordinator/in nvbackup are:
                                  
                                  zigbee.X
                                  Extended Pan ID:
                                  *** MASKED ***
                                  Pan ID:
                                  *** MASKED ***
                                  Channel:
                                  *** MASKED ***
                                  Network Key:
                                  *** MASKED ***
                                  
                                  To unmask the settings run 'iob diag --unmask'
                                  
                                  
                                  *** NodeJS-Installation ***
                                  
                                  /usr/bin/nodejs         v20.19.2
                                  /usr/bin/node           v20.19.2
                                  /usr/bin/npm            10.8.2
                                  /usr/bin/npx            10.8.2
                                  /usr/bin/corepack       0.31.0
                                  
                                  nodejs:
                                    Installed: 20.19.2-1nodesource1
                                    Candidate: 20.19.2-1nodesource1
                                    Version table:
                                   *** 20.19.2-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                          100 /var/lib/dpkg/status
                                       20.19.1-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.19.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.18.3-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.18.2-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.18.1-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.18.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.17.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.16.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.15.1-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.15.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.14.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.13.1-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.13.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.12.2-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.12.1-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.12.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.11.1-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.11.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.10.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.9.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.8.1-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.8.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.7.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.6.1-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.6.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.5.1-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.5.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.4.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.3.1-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.3.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.2.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.1.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       20.0.0-1nodesource1 1001
                                          500 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages
                                       18.19.0+dfsg-6~deb12u2 500
                                          500 http://deb.debian.org/debian bookworm/main arm64 Packages
                                       18.19.0+dfsg-6~deb12u1 500
                                          500 http://deb.debian.org/debian-security bookworm-security/main arm64 P                                                                                                                                                             ackages
                                  
                                  Temp directories causing deletion problem: 0
                                  No problems detected
                                  
                                  Errors in npm tree: 0
                                  No problems detected
                                  
                                  *** ioBroker-Installation ***
                                  
                                  ioBroker Status
                                  iobroker is running on this host.
                                  
                                  
                                  Objects type: jsonl
                                  States  type: jsonl
                                  
                                  Hosts:
                                  raspberrypi5a       raspberrypi5a (version: 7.0.7, hostname: raspberrypi5a , ali                                                                                                                                                             ve, uptime: 7601)
                                  
                                  Core adapters versions
                                  js-controller:  7.0.7
                                  admin:          7.6.19
                                  javascript:     9.0.3
                                  
                                  nodejs modules from github:     0
                                  
                                  Adapter State
                                  + system.adapter.accuweather.0            : accuweather           : raspberrypi5a                            -  enabled
                                  + system.adapter.admin.0                  : admin                 : raspberrypi5a                            -  enabled, port: 8081, bind: 0.0.0.0, run as: admin
                                  + system.adapter.alexa2.0                 : alexa2                : raspberrypi5a                            -  enabled
                                    system.adapter.awattar.0                : awattar               : raspberrypi5a                            -  enabled
                                  + system.adapter.backitup.0               : backitup              : raspberrypi5a                            -  enabled
                                  + system.adapter.ble.0                    : ble                   : raspberrypi5a                            -  enabled
                                  + system.adapter.bydhvs.0                 : bydhvs                : raspberrypi5a                            -  enabled
                                  + system.adapter.cloud.0                  : cloud                 : raspberrypi5a                            -  enabled
                                  + system.adapter.countdown.0              : countdown             : raspberrypi5a                            -  enabled
                                    system.adapter.daswetter.0              : daswetter             : raspberrypi5a                            -  enabled
                                    system.adapter.daswetter.1              : daswetter             : raspberrypi5a                            -  enabled
                                    system.adapter.devices.0                : devices               : raspberrypi5a                            - disabled
                                  + system.adapter.discovery.0              : discovery             : raspberrypi5a                            -  enabled
                                  + system.adapter.echarts.0                : echarts               : raspberrypi5a                            -  enabled
                                  + system.adapter.energiefluss-erweitert.0 : energiefluss-erweitert: raspberrypi5a                            -  enabled
                                  + system.adapter.evcc.0                   : evcc                  : raspberrypi5a                            -  enabled, port: 7070
                                  + system.adapter.fritzdect.0              : fritzdect             : raspberrypi5a                            -  enabled
                                  + system.adapter.fronius-solarweb.0       : fronius-solarweb      : raspberrypi5a                            -  enabled
                                  + system.adapter.fronius-wattpilot.0      : fronius-wattpilot     : raspberrypi5a                            -  enabled
                                  + system.adapter.fronius-wattpilot.1      : fronius-wattpilot     : raspberrypi5a                            -  enabled
                                  + system.adapter.fronius.0                : fronius               : raspberrypi5a                            -  enabled
                                  + system.adapter.fronius.1                : fronius               : raspberrypi5a                            -  enabled
                                  + system.adapter.history.0                : history               : raspberrypi5a                            -  enabled
                                    system.adapter.homekit-controller.0     : homekit-controller    : raspberrypi5a                            - disabled
                                    system.adapter.ical.0                   : ical                  : raspberrypi5a                            -  enabled
                                  + system.adapter.influxdb.0               : influxdb              : raspberrypi5a                            -  enabled, port: 8086
                                    system.adapter.iot.0                    : iot                   : raspberrypi5a                            - disabled
                                  + system.adapter.iqontrol.0               : iqontrol              : raspberrypi5a                            -  enabled
                                  + system.adapter.javascript.0             : javascript            : raspberrypi5a                            -  enabled
                                  + system.adapter.meross.0                 : meross                : raspberrypi5a                            -  enabled
                                  + system.adapter.modbus.0                 : modbus                : raspberrypi5a                            -  enabled
                                  + system.adapter.modbus.1                 : modbus                : raspberrypi5a                            -  enabled
                                  + system.adapter.mqtt.0                   : mqtt                  : raspberrypi5a                            -  enabled, port: 1883, bind: 0.0.0.0
                                  + system.adapter.node-red.0               : node-red              : raspberrypi5a                            -  enabled, port: 1880, bind: 0.0.0.0
                                    system.adapter.ocpp.0                   : ocpp                  : raspberrypi5a                            - disabled, port: 9220
                                  + system.adapter.parser.0                 : parser                : raspberrypi5a                            -  enabled
                                  + system.adapter.ping.0                   : ping                  : raspberrypi5a                            -  enabled
                                  + system.adapter.pvforecast.0             : pvforecast            : raspberrypi5a                            -  enabled
                                  + system.adapter.pvforecast.1             : pvforecast            : raspberrypi5a                            -  enabled
                                  + system.adapter.shelly.0                 : shelly                : raspberrypi5a                            -  enabled, port: 1884, bind: 0.0.0.0
                                  + system.adapter.shelly.1                 : shelly                : raspberrypi5a                            -  enabled, port: 1882, bind: 0.0.0.0
                                  + system.adapter.smartgarden.0            : smartgarden           : raspberrypi5a                            -  enabled
                                    system.adapter.smartmeter.0             : smartmeter            : raspberrypi5a                            - disabled
                                  + system.adapter.smartthings.0            : smartthings           : raspberrypi5a                            -  enabled
                                    system.adapter.sonoff.0                 : sonoff                : raspberrypi5a                            - disabled, port: 1884, bind: 0.0.0.0
                                  + system.adapter.sourceanalytix.0         : sourceanalytix        : raspberrypi5a                            -  enabled
                                  + system.adapter.synochat.0               : synochat              : raspberrypi5a                            -  enabled
                                  + system.adapter.terminal.0               : terminal              : raspberrypi5a                            -  enabled, port: 8088, bind: 0.0.0.0, run as: admin
                                  + system.adapter.tr-064.0                 : tr-064                : raspberrypi5a                            -  enabled
                                  + system.adapter.tr-064.1                 : tr-064                : raspberrypi5a                            -  enabled
                                  + system.adapter.tr-064.2                 : tr-064                : raspberrypi5a                            -  enabled
                                  + system.adapter.trashschedule.0          : trashschedule         : raspberrypi5a                            -  enabled
                                  + system.adapter.tuya.0                   : tuya                  : raspberrypi5a                            -  enabled
                                    system.adapter.vis-2-widgets-energy.0   : vis-2-widgets-energy  : raspberrypi5a                            - disabled
                                    system.adapter.vis-2-widgets-gauges.0   : vis-2-widgets-gauges  : raspberrypi5a                            - disabled
                                    system.adapter.vis-2-widgets-jaeger-design.0: vis-2-widgets-jaeger-design: raspberrypi5a                            - disabled
                                    system.adapter.vis-2-widgets-material.0 : vis-2-widgets-material: raspberrypi5a                            - disabled
                                  + system.adapter.vis-2.0                  : vis-2                 : raspberrypi5a                            -  enabled
                                    system.adapter.vis-hqwidgets.0          : vis-hqwidgets         : raspberrypi5a                            - disabled
                                  + system.adapter.vis-inventwo.0           : vis-inventwo          : raspberrypi5a                            -  enabled
                                    system.adapter.vis-materialdesign.0     : vis-materialdesign    : raspberrypi5a                            - disabled
                                    system.adapter.vis-metro.0              : vis-metro             : raspberrypi5a                            - disabled
                                    system.adapter.vis.0                    : vis                   : raspberrypi5a                            -  enabled
                                    system.adapter.volvo.0                  : volvo                 : raspberrypi5a                            - disabled
                                    system.adapter.volvo.1                  : volvo                 : raspberrypi5a                            - disabled
                                  + system.adapter.weather-warnings.0       : weather-warnings      : raspberrypi5a                            -  enabled
                                  + system.adapter.web.0                    : web                   : raspberrypi5a                            -  enabled, port: 8082, bind: 0.0.0.0, run as: admin
                                  + system.adapter.whatsapp-cmb.0           : whatsapp-cmb          : raspberrypi5a                            -  enabled
                                    system.adapter.yr.0                     : yr                    : raspberrypi5a                            -  enabled
                                  + system.adapter.zigbee.0                 : zigbee                : raspberrypi5a                            -  enabled, port: /dev/serial/by-id/usb-ITead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_d4edcf55336cef11930b9fadc169b110-if00-port0
                                    system.adapter.zigbee2mqtt.0            : zigbee2mqtt           : raspberrypi5a                            - disabled
                                  
                                  + instance is alive
                                  
                                  Enabled adapters with bindings
                                  + system.adapter.admin.0                  : admin                 : raspberrypi5a                            -  enabled, port: 8081, bind: 0.0.0.0, run as: admin
                                  + system.adapter.evcc.0                   : evcc                  : raspberrypi5a                            -  enabled, port: 7070
                                  + system.adapter.influxdb.0               : influxdb              : raspberrypi5a                            -  enabled, port: 8086
                                  + system.adapter.mqtt.0                   : mqtt                  : raspberrypi5a                            -  enabled, port: 1883, bind: 0.0.0.0
                                  + system.adapter.node-red.0               : node-red              : raspberrypi5a                            -  enabled, port: 1880, bind: 0.0.0.0
                                  + system.adapter.shelly.0                 : shelly                : raspberrypi5a                            -  enabled, port: 1884, bind: 0.0.0.0
                                  + system.adapter.shelly.1                 : shelly                : raspberrypi5a                            -  enabled, port: 1882, bind: 0.0.0.0
                                  + system.adapter.terminal.0               : terminal              : raspberrypi5a                            -  enabled, port: 8088, bind: 0.0.0.0, run as: admin
                                  + system.adapter.web.0                    : web                   : raspberrypi5a                            -  enabled, port: 8082, bind: 0.0.0.0, run as: admin
                                  + system.adapter.zigbee.0                 : zigbee                : raspberrypi5a                            -  enabled, port: /dev/serial/by-id/usb-ITead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_d4edcf55336cef11930b9fadc169b110-if00-port0
                                  
                                  ioBroker-Repositories
                                  ┌─────────┬──────────┬─────────────────────────────────────────────────────────┬──────────────┐
                                  │ (index) │ name     │ url                                                     │ auto upgrade │
                                  ├─────────┼──────────┼─────────────────────────────────────────────────────────┼──────────────┤
                                  │ 0       │ 'stable' │ 'http://download.iobroker.net/sources-dist.json'        │ false        │
                                  │ 1       │ 'beta'   │ 'http://download.iobroker.net/sources-dist-latest.json' │ false        │
                                  └─────────┴──────────┴─────────────────────────────────────────────────────────┴──────────────┘
                                  
                                  Active repo(s): beta
                                  Upgrade policy: patch
                                  
                                  Installed ioBroker-Adapters
                                  Used repository: beta
                                  Adapter    "accuweather"  : 2.1.0    , installed 2.1.0
                                  Adapter    "admin"        : 7.6.19   , installed 7.6.19
                                  Adapter    "alexa2"       : 3.26.7   , installed 3.26.7
                                  Adapter    "awattar"      : 1.0.6    , installed 1.0.6
                                  Adapter    "backitup"     : 3.2.2    , installed 3.2.2
                                  Adapter    "ble"          : 0.14.1   , installed 0.14.1
                                  Adapter    "bydhvs"       : 1.5.0    , installed 1.5.0
                                  Adapter    "cloud"        : 5.0.1    , installed 5.0.1
                                  Adapter    "countdown"    : 3.0.0    , installed 3.0.0
                                  Adapter    "daswetter"    : 3.2.3    , installed 3.2.3
                                  Adapter    "devices"      : 1.2.6    , installed 1.2.6
                                  Adapter    "discovery"    : 5.0.0    , installed 5.0.0
                                  Adapter    "echarts"      : 2.0.6    , installed 2.0.6
                                  Adapter    "energiefluss-erweitert": 0.7.7, installed 0.7.7
                                  Adapter    "evcc"         : 0.2.2    , installed 0.2.2
                                  Adapter    "fritzdect"    : 2.6.2    , installed 2.6.2
                                  Adapter    "fronius"      : 2.1.1    , installed 2.1.1
                                  Adapter    "fronius-solarweb": 0.1.1 , installed 0.1.1
                                  Adapter    "fronius-wattpilot": 4.6.3, installed 4.6.3
                                  Adapter    "history"      : 3.0.1    , installed 3.0.1
                                  Adapter    "homekit-controller": 0.5.11, installed 0.5.11
                                  Adapter    "ical"         : 1.16.1   , installed 1.16.1
                                  Adapter    "influxdb"     : 4.0.2    , installed 4.0.2
                                  Adapter    "iot"          : 3.5.2    , installed 3.5.2
                                  Adapter    "iqontrol"     : 3.0.0    , installed 3.0.0
                                  Adapter    "javascript"   : 9.0.3    , installed 9.0.3
                                  Controller "js-controller": 7.0.7    , installed 7.0.7
                                  Adapter    "meross"       : 1.17.0   , installed 1.17.0
                                  Adapter    "modbus"       : 6.4.0    , installed 6.4.0
                                  Adapter    "mqtt"         : 6.1.4    , installed 6.1.4
                                  Adapter    "node-red"     : 6.0.7    , installed 6.0.7
                                  Adapter    "ocpp"         : 0.12.5   , installed 0.12.5
                                  Adapter    "parser"       : 2.3.1    , installed 2.3.1
                                  Adapter    "ping"         : 1.7.9    , installed 1.7.9
                                  Adapter    "pvforecast"   : 5.0.0    , installed 5.0.0
                                  Adapter    "shelly"       : 10.0.0   , installed 10.0.0
                                  Adapter    "smartgarden"  : 2.0.1    , installed 2.0.1
                                  Adapter    "smartmeter"   : 3.4.0    , installed 3.4.0
                                  Adapter    "smartthings"  : 0.2.2    , installed 0.2.2
                                  Adapter    "socketio"     : 7.0.8    , installed 7.0.8
                                  Adapter    "sonoff"       : 3.2.1    , installed 3.2.1
                                  Adapter    "sourceanalytix": 0.4.14  , installed 0.4.14
                                  Adapter    "synochat"     : 1.3.3    , installed 1.3.3
                                  Adapter    "terminal"     : 1.0.0    , installed 1.0.0
                                  Adapter    "tr-064"       : 4.3.0    , installed 4.3.0
                                  Adapter    "trashschedule": 4.0.0    , installed 4.0.0
                                  Adapter    "tuya"         : 3.17.0   , installed 3.17.0
                                  Adapter    "vis"          : 1.5.6    , installed 1.5.6
                                  Adapter    "vis-2"        : 2.12.10  , installed 2.12.10
                                  Adapter    "vis-2-widgets-energy": 1.0.2, installed 1.0.2
                                  Adapter    "vis-2-widgets-gauges": 1.1.1, installed 1.1.1
                                  Adapter    "vis-2-widgets-jaeger-design": 1.4.3, installed 1.4.3
                                  Adapter    "vis-2-widgets-material": 1.4.10, installed 1.4.10
                                  Adapter    "vis-hqwidgets": 1.5.1    , installed 1.5.1
                                  Adapter    "vis-inventwo" : 3.3.5    , installed 3.3.5
                                  Adapter    "vis-materialdesign": 0.5.9, installed 0.5.9
                                  Adapter    "vis-metro"    : 1.2.0    , installed 1.2.0
                                  Adapter    "volvo"        : 0.1.2    , installed 0.1.2
                                  Adapter    "weather-warnings": 0.7.4 , installed 0.7.4
                                  Adapter    "web"          : 7.0.9    , installed 7.0.9
                                  Adapter    "whatsapp-cmb" : 0.3.0    , installed 0.3.0
                                  Adapter    "ws"           : 3.0.19   , installed 3.0.19
                                  Adapter    "yr"           : 5.3.0    , installed 5.3.0
                                  Adapter    "zigbee"       : 3.0.1    , installed 3.0.1
                                  Adapter    "zigbee2mqtt"  : 3.0.8    , installed 3.0.8
                                  
                                  Objects and States
                                  Please stand by - This may take a while
                                  Objects:        46620
                                  States:         39800
                                  
                                  *** OS-Repositories and Updates ***
                                  Hit:1 http://archive.raspberrypi.com/debian bookworm InRelease
                                  Hit:2 http://deb.debian.org/debian bookworm InRelease
                                  Hit:3 https://apt.grafana.com stable InRelease
                                  Hit:4 https://repos.influxdata.com/debian stable InRelease
                                  Hit:5 http://deb.debian.org/debian-security bookworm-security InRelease
                                  Hit:6 https://deb.nodesource.com/node_20.x nodistro InRelease
                                  Get:7 https://dl.evcc.io/public/evcc/stable/deb/debian bookworm InRelease
                                  Hit:8 http://deb.debian.org/debian bookworm-updates InRelease
                                  Fetched 5127 B in 1s (7101 B/s)
                                  Reading package lists...
                                  Pending Updates: 1
                                  
                                  *** Listening Ports ***
                                  Active Internet connections (only servers)
                                  Proto Recv-Q Send-Q Local Address           Foreign Address         State       User       Inode      PID/Program name
                                  tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      0          4834       817/sshd: /usr/sbin
                                  tcp        0      0 127.0.0.1:1883          0.0.0.0:*               LISTEN      107        5615       814/mosquitto
                                  tcp        0      0 127.0.0.1:9001          0.0.0.0:*               LISTEN      1001       6934       995/iobroker.js-con
                                  tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      1001       6939       995/iobroker.js-con
                                  tcp        0      0 0.0.0.0:1884            0.0.0.0:*               LISTEN      1001       10488      1421/io.shelly.0
                                  tcp        0      0 0.0.0.0:1880            0.0.0.0:*               LISTEN      1001       6044       1195/node-red
                                  tcp        0      0 127.0.0.1:6379          0.0.0.0:*               LISTEN      108        5653       802/redis-server 12
                                  tcp6       0      0 :::22                   :::*                    LISTEN      0          4836       817/sshd: /usr/sbin
                                  tcp6       0      0 ::1:6379                :::*                    LISTEN      108        5654       802/redis-server 12
                                  tcp6       0      0 :::7070                 :::*                    LISTEN      109        8274       891/evcc
                                  tcp6       0      0 :::3000                 :::*                    LISTEN      106        5813       994/grafana
                                  tcp6       0      0 ::1:1883                :::*                    LISTEN      107        5616       814/mosquitto
                                  tcp6       0      0 :::8086                 :::*                    LISTEN      999        7548       904/influxd
                                  tcp6       0      0 :::8082                 :::*                    LISTEN      1001       15161      2061/io.web.0
                                  tcp6       0      0 :::8081                 :::*                    LISTEN      1001       6982       1051/io.admin.0
                                  tcp6       0      0 :::8088                 :::*                    LISTEN      1001       15581      1947/io.terminal.0
                                  udp        0      0 0.0.0.0:5353            0.0.0.0:*                           104        5515       694/avahi-daemon: r
                                  udp        0      0 0.0.0.0:5683            0.0.0.0:*                           1001       10526      1439/io.shelly.1
                                  udp        0      0 0.0.0.0:59008           0.0.0.0:*                           104        5517       694/avahi-daemon: r
                                  udp        0      0 0.0.0.0:6666            0.0.0.0:*                           1001       9111       1510/io.tuya.0
                                  udp        0      0 0.0.0.0:6667            0.0.0.0:*                           1001       9112       1510/io.tuya.0
                                  udp6       0      0 fe80::8810:fd5e:d9b:546 :::*                                0          5760       735/NetworkManager
                                  udp6       0      0 fe80::2cd7:eb6f:729:546 :::*                                0          5754       735/NetworkManager
                                  udp6       0      0 :::5353                 :::*                                104        5516       694/avahi-daemon: r
                                  udp6       0      0 :::56267                :::*                                104        5518       694/avahi-daemon: r
                                  
                                  *** Log File - Last 25 Lines ***
                                  
                                  2025-06-13 18:29:15.968  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.Sys.lon, value: 16.3662
                                  2025-06-13 18:29:15.968  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.Sys.debugEnabled, value: false
                                  2025-06-13 18:29:16.052  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.WiFi.apEnabled, value: false
                                  2025-06-13 18:29:16.195  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.Mqtt.topicPrefix, value: "shellyplusplugs-b0b21c1309fc"
                                  2025-06-13 18:29:16.195  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.Mqtt.rpcNotifications, value: true
                                  2025-06-13 18:29:16.195  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.Mqtt.statusNotifications, value: true
                                  2025-06-13 18:29:16.195  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.Mqtt.clientId, value: "shellyplusplugs-b0b21c1309fc"
                                  2025-06-13 18:29:16.283  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.Cloud.enabled, value: true
                                  2025-06-13 18:29:16.435  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.PLUGS_UI.Mode, value: "switch"
                                  2025-06-13 18:29:16.435  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.PLUGS_UI.PowerBrightness, value: 30
                                  2025-06-13 18:29:16.435  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.PLUGS_UI.SwitchOnBrightness, value: 20
                                  2025-06-13 18:29:16.435  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.PLUGS_UI.SwitchOnColor, value: "8,100,13"
                                  2025-06-13 18:29:16.435  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.PLUGS_UI.SwitchOffBrightness, value: 20
                                  2025-06-13 18:29:16.435  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.PLUGS_UI.SwitchOffColor, value: "100,0,6"
                                  2025-06-13 18:29:16.435  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.PLUGS_UI.NightModeEnabled, value: false
                                  2025-06-13 18:29:16.436  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.PLUGS_UI.NightModeBrightness, value: 80
                                  2025-06-13 18:29:16.520  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.Relay0.ChannelName, value: null
                                  2025-06-13 18:29:16.520  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.Relay0.InitialState, value: "off"
                                  2025-06-13 18:29:16.520  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.Relay0.AutoTimerOn, value: false
                                  2025-06-13 18:29:16.520  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.Relay0.AutoTimerOnDelay, value: 60
                                  2025-06-13 18:29:16.520  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.Relay0.AutoTimerOff, value: false
                                  2025-06-13 18:29:16.520  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.Relay0.AutoTimerOffDelay, value: 60
                                  2025-06-13 18:29:16.520  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.Relay0.LimitPower, value: 2500
                                  2025-06-13 18:29:16.520  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.Relay0.LimitCurrent, value: 12
                                  2025-06-13 18:29:16.520  - debug: shelly.0 (1421) [httpIoBrokerState] State change 192.168.178.31 (shellyplusplugs / shellyplusplugs-b0b21c1309fc / shellyplusplugs#b0b21c1309fc#1): state: shellyplusplugs#b0b21c1309fc#1.Relay0.LimitVoltage, value: 280
                                  
                                  

                                  ============ Mark until here for C&P =============

                                  iob diag has finished.

                                  1 Reply Last reply Reply Quote 0
                                  • Thomas Maul
                                    Thomas Maul last edited by Thomas Maul

                                    @mg99 said in Tester für Javascript 9.0.1 gesucht:

                                    Veränderungen von bereits bestehenden Skripten teilweise nicht möglich.
                                    D.h. die Buttons Speichern bzw. Abbrechen kommen nicht.
                                    Das passiert allerdings nicht bei allen blocklys.
                                    F5 - hilft nicht.

                                    Kann ich bestätigen.

                                    EDIT plus: neues Skript anlegen funktioniert auch nicht.

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

                                      Ich wollte gerade ein Blockly kopieren. Dazu habe ich ein vorhandenes Exportiert und in die Zwischenablage kopiert,
                                      dann ein neues, leeres angelegt und wollt dann importieren:

                                      d0b11978-765a-4a5e-86c3-78409a53d1ee-image.png

                                      TypeError: this.blocklyWorkspace.paste is not a function
                                      

                                      Falls das mal jemand verifizieren kann.

                                      S 1 Reply Last reply Reply Quote 0
                                      • S
                                        Shadowhunter23 @BananaJoe last edited by Shadowhunter23

                                        @bananajoe
                                        Kann ich, ist bei mir auch.
                                        Dazu gibt's auch ein Issue:
                                        https://github.com/ioBroker/ioBroker.javascript/issues/1890

                                        Matzebhv created this issue in ioBroker/ioBroker.javascript

                                        open [Bug]: blockly import does not work #1890

                                        1 Reply Last reply Reply Quote 1
                                        • amg_666
                                          amg_666 last edited by

                                          ich möchte ein vorthandenes Blockly Script umbauen und will hierfür eine Funktion einbauen.
                                          Ich habe die Funktion inkl deren Aufruf mehrfach in Blockly eingegeben und gespeichert. wenn ich den Editor zu und wieder aufmache sind die Änderungen weg...
                                          Browser Cache habe ich gelöscht und Browser neu gestartet.
                                          Mir ist noch aufgefallen: Wenn ich das Script öffne und dann einen "Funktion" Baustein in das Script ziehe, dann erscheint der Button "Speichern" nicht. Wenn ich im Script irgendwas anderes ändere (einen Block lösche, einen Trigger einfüge etc), dann erscheint "Speichern".
                                          Hat hir jemand eine Idee woran es liegen könnte?
                                          Firefox Browser, iob auf proxmox container, Beta repo
                                          node-js 20.19.2
                                          npm 10.8.2
                                          js-controller 7.0.7
                                          javascript adapter 9.0.3

                                          T 1 Reply Last reply Reply Quote 0
                                          • T
                                            TT-Tom @amg_666 last edited by

                                            @amg_666

                                            Der Javascript Adapter ist noch Beta in deiner Version. Bitte zurück auf stable.
                                            Hier ist der Testpost dazu.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            831
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            13
                                            23
                                            665
                                            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