Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. JAVA Script Adapter - unerklärliche Fehlermeldung

    NEWS

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    JAVA Script Adapter - unerklärliche Fehlermeldung

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators @Automatisierer 0 last edited by

      @automatisierer-0 sagte in JAVA Script Adapter - unerklärliche Fehlermeldung:

      @asgothian said in JAVA Script Adapter - unerklärliche Fehlermeldung:

      Zeig mal das ganze Skript - als Text in Code-Tags

      ich bin kein IOBroker Profi.
      Bitte un genaue Anweisung was und wie ich machen soll

      Hinweise und Anleitung gibt's hier
      https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1

      1 Reply Last reply Reply Quote 0
      • Asgothian
        Asgothian Developer @Automatisierer 0 last edited by

        @automatisierer-0 sagte in JAVA Script Adapter - unerklärliche Fehlermeldung:

        @asgothian
        Wen der Fehler bei mir ist würde ich den auch selbstverständlich selbst suchen.
        Nur wie soll ich das machen, wenn es heisst: Fehler in Zeile 174 und der Code hört bei 137 auf?

        TS Code zeilen passen nicht immer zum Compiler output. Deswegen der Wunsch das komplette Skript zu sehen.

        A.

        A 2 Replies Last reply Reply Quote 0
        • A
          Automatisierer 0 @Asgothian last edited by

          @asgothian
          Übrigens: Global ist auch leer

          var Wind_Max_Minute, Wind_Min_Minute: number;
          var Wert_Gerundet: number;
          var Wind_Max_15Minuten: number = 0;
          var Txt_Debug:string;
          var i:number;
          var Arr_Max:number[] = new Array(15)
          var ANZ_ELEMENTE:number = 15;
          var DP_ADRESSE:string = "openknx.0.Wetter_(WS).Dachboden.WS_-_DB_-_Wetter_-_FW_Wind_Max_-_15Min"
          
          //Arrow Function: 1 Übergabeparameter, kein Retval
          var My_Debug_Wind = (Txt_Debug: string) => {
              if (getState("0_userdata.0.Debug.f_debug_Wind").val == 1) {
              // console.log("------> WIND   :  " + Txt_Debug);
              }
          }
          
          
          //Arrow Function: 1 Übergabeparameter, kein Retval
          var Wind_SendData = () => {
            //My_Debug_Wind ("Jetzt den Maximalwert zum KNX senden...")
            setState("openknx.0.Wetter_(WS).Dachboden.WS_-_DB_-_Wetter_-_FW_Wind_Max_-_15Min", Wind_Max_15Minuten);
            //setState("openknx.0.Wetter_(WS).Dachboden.WS_-_DB_-_Wetter_-_FW_Wind_Max_-_15Min",12);
          
            // Jetzt in die KNX-Datenpunkte eintragen
            var Knx_Adresse:string;
            // Jetzt in die KNX-Datenpunkte eintragen
            for (i = 0; i < ANZ_ELEMENTE; i++) {
              //My_Debug_Wind ("In der FOR Schleife, i = " + i);
              Knx_Adresse = "openknx.0.Wetter_(WS).Dachboden.WS_-_DB_-_Wetter_-_FW_Wind_Max_-_15Min" + (i+1);
              //My_Debug_Wind("IN DER SCHLEIFE --- Die KNX Adresse ist: " + Knx_Adresse + " Zu schreibender Wert = "+ Arr_Max[i]);
              setState(Knx_Adresse, Arr_Max[i]);
            }
          }
          
          
          // Initialisierung
          console.warn('Initalisierung WIND START');
          // Den Debugstatus ausgeben
          My_Debug_Wind("f_debug_Wind = " + getState("0_userdata.0.Debug.f_debug_Wind").val);
          Wind_Max_Minute = 0;
          Wind_Min_Minute = 100;
          Wind_Max_15Minuten = 0;
          // Das Wertearray Inititialisieren
          for (i = 0; i<ANZ_ELEMENTE; i++) {
            Arr_Max[i] = 0;
          }
          console.warn('Initalisierung Wind ENDE');
          
          
          /*
          on({id: "openknx.0.Wetter_(WS).Dachboden.WS_-_DB_-_Wetter_-_FW_Wind_Max_-_15Min2" , change: "any"}, async function (obj) {
            console.error("Trigger: openknx.0.Wetter_(WS).Dachboden.WS_-_DB_-_Wetter_-_FW_Wind_Max_-_15Min2");
            console.error("Trigger: openknx.0.Wetter_(WS).Dachboden.WS_-_DB_-_Wetter_-_FW_Wind_Max_-_15Min2");
            console.error("Trigger: openknx.0.Wetter_(WS).Dachboden.WS_-_DB_-_Wetter_-_FW_Wind_Max_-_15Min2");
          });
          */
          
          
          
          on({id: "openknx.0.Wetter_(WS).Dachboden.WS_-_DB_-_Wetter_-_FW_Wind_Generalabfrage", change: "any"}, async function (obj) {
            var value = obj.state.val;
            var oldValue = obj.oldState.val;
            console.warn("Trigger: WIND Generalabfrage");
            Wind_SendData();
            console.warn("Trigger: WIND Generalabfrage FERTIG");
          });
          
          
          on({id: 'openknx.0.Wetter_(WS).Dachboden.WS_-_DB_-_Wetter_-_AW_Windgeschwindigkeit', change: "ne"}, async function (obj) {
            var value = obj.state.val;
            var oldValue = obj.oldState.val;
            //console.warn("Trigger: WIND Wertänderung");
            // Auf 2 Nachkommastellen
            var Wert_Gerundet = Math.round((value + Number.EPSILON)*100)/100;
            // return +(Math.round(num + "e+2")  + "e-2");
            My_Debug_Wind("Windgeschwindigkeit geändert. Neuer (gerundeter) Wert ist: " + Wert_Gerundet + " --> Alter Wert = " + Math.round((oldValue + Number.EPSILON)*100)/100);
            My_Debug_Wind("Alter Wert von Wind_MIN/MAX_Minute ist: " + Wind_Min_Minute + " / " + Wind_Max_Minute);
            if (Wert_Gerundet > Wind_Max_Minute) {
              My_Debug_Wind("Neuer Wert MAX ist größer. Es wird jetzt eingetragen MAX: " + String(Wert_Gerundet));
              Wind_Max_Minute = Wert_Gerundet;
              //My_Debug_Wind("Neuer Wert MAX ist geschrieben. Neuer Wert von Wind_Max_Minute ist: " + String(Wind_Max_Minute));
            }
            if (Wert_Gerundet < Wind_Min_Minute) {
              My_Debug_Wind("Neuer Wert MIN ist kleiner. Es wird jetzt eingetragen MIN: " + String(Wert_Gerundet));
              Wind_Min_Minute = Wert_Gerundet;
              //My_Debug_Wind('Neuer Wert MIN ist geschrieben. Neuer Wert von Wind_Min_Minute ist: ' + String(Wind_Min_Minute));
            }
            My_Debug_Wind("neuer Wert von Wind_MIN/MAX_Minute ist: " + Wind_Min_Minute + " / " + Wind_Max_Minute);
            //console.warn("Trigger: WIND Wertänderung FERTIG");
          });
          
          
          schedule("* * * * *", async function () {
            // Läuft jede Minute
            //console.warn("Trigger --- Cron läuft");
            //My_Debug_Wind("Aktuelle Werte der Liste Max_Minute anzeigen...");
          
            Txt_Debug = "";
            for (i = 0; i < ANZ_ELEMENTE; i++) {
              Txt_Debug += String(Arr_Max[i]);
              if (i<ANZ_ELEMENTE-1) {Txt_Debug += ' / '; }
            }
            My_Debug_Wind(Txt_Debug + "  ---> 0 ..14" + " Aktuelle Werte");
          
            // Jetz wird veschoben d.h. Element 14-->15, Element 13-->14 , Element 1-->2
            for (i =  ANZ_ELEMENTE-1; i > 0; i--) {
              //My_Debug_Wind("i =" + i);
              //My_Debug_Wind("i = " + (i) + " Wert = " + Arr_Max[i] + " wird kopiert auf i-2 = " + (i-1) + " Wert = " + Arr_Max[i-1]);
              Arr_Max[i] = Arr_Max[i-1];
            }
            Arr_Max[0] = Wind_Max_Minute;  // Element 0 ist der letzte Minutenwert Wind
            My_Debug_Wind(" Element 0 eintragen, Element 0 ist der letzte Minutenwert Wind, Wert = " + Wind_Max_Minute);
            //My_Debug_Wind("Jetzt die verschobenen Werte Max_Minute anzeigen");
            Txt_Debug = "";
            for (i = 0; i < ANZ_ELEMENTE; i++) {  // Nur 1 bis 14
              Txt_Debug += String(Arr_Max[i]);
              if (i<ANZ_ELEMENTE-1) {Txt_Debug += ' / '; }
            }
            My_Debug_Wind(Txt_Debug + "  ---> 0 ..14" + " Verschobene Werte");
            Wind_Max_Minute = 0;
            Wind_Min_Minute = 100;
          
            // Maximalwert der 15 Werte ermitteln
            Wind_Max_15Minuten = 0;
            for (i = 0; i < ANZ_ELEMENTE; i++) {
              if (Arr_Max[i] > Wind_Max_15Minuten) {
                 Wind_Max_15Minuten = Arr_Max[i]
              }
            }
            My_Debug_Wind("Maximalwert der letzten 15 Minuten ist ausgerechnet = "+ Wind_Max_15Minuten);
            Wind_SendData();
          
            //console.warn("Trigger --- Cron FERTIG");
          });
          
          
          // ENDE
          

          Wie man sieht ist bei Zeile 137 Schluss.
          Und die Fehlermeldung sagt einen Compilerfehler in 174

          amg_666 1 Reply Last reply Reply Quote 0
          • A
            Automatisierer 0 @Asgothian last edited by

            @asgothian
            Noch eine Zusatzinfo:
            ich meine der Code hat in der Version V6.1.4 keinen Fehler gebracht

            1 Reply Last reply Reply Quote 0
            • A
              Automatisierer 0 @Asgothian last edited by Homoran

              @asgothian
              Noch eine Zusatzinfo:
              Hier der Auszug aus dem LOG:

              javascript.0
              	2024-09-15 21:18:06.340	error	at processImmediate (node:internal/timers:485:21)
              javascript.0
              	2024-09-15 21:18:06.340	error	at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/main.js:1732:17)
              javascript.0
              	2024-09-15 21:18:06.340	error	at /opt/iobroker/node_modules/iobroker.javascript/main.js:2322:17
              javascript.0
              	2024-09-15 21:18:06.339	error	at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:2290:37)
              javascript.0
              	2024-09-15 21:18:06.339	error	at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1956:21)
              javascript.0
              	2024-09-15 21:18:06.339	error	at new Script (node:vm:116:7)
              javascript.0
              	2024-09-15 21:18:06.339	error	SyntaxError: Unexpected identifier 'registered'
              javascript.0
              	2024-09-15 21:18:06.339	error	^^^^^^^^^^
              javascript.0
              	2024-09-15 21:18:06.339	error	log(`registered ${__engine.__subscriptions} subscription${__engine.__subscriptions === 1 ? '' : 's'}, ${__engine.__schedules} schedule${__engine.__schedules === 1 ? '' : 's'}, ${__engine.__subscriptionsMessage} message${__engine.__subscriptionsMessage === 1 ? '' : 's'}, ${__engine.__subscriptionsLog} log${__engine.__subscriptionsLog === 1 ? '' : 's'} and ${__engine.__subscriptionsFile} file subscription${__engine.__subscriptionsFile === 1 ? '' : 's'}`);
              javascript.0
              	2024-09-15 21:18:06.339	error	script.js._Wetter_Wind compile failed: at script.js._Wetter_Wind:174
              

              MOD-EDIT: Code in code-tags gesetzt!

              A 1 Reply Last reply Reply Quote 0
              • A
                Automatisierer 0 @Automatisierer 0 last edited by

                @automatisierer-0 said in JAVA Script Adapter - unerklärliche Fehlermeldung:

                MOD-EDIT: Code in code-tags gesetzt!

                Sorry, aber ich fange mit dem nichts an was du mir da schreibst.
                Was willst du mir damit sagen?

                Codierknecht 1 Reply Last reply Reply Quote 0
                • Codierknecht
                  Codierknecht Developer Most Active @Automatisierer 0 last edited by

                  @automatisierer-0 sagte in JAVA Script Adapter - unerklärliche Fehlermeldung:

                  Was willst du mir damit sagen?

                  Dass Ausgaben aus dem Log oder der Konsole in Code-Tags </> gesetzt werden sollen.
                  Das hat hier im Nachgang ein Moderator für Dich erledigt.

                  1 Reply Last reply Reply Quote 0
                  • Ro75
                    Ro75 @Asgothian last edited by

                    @asgothian sagte in JAVA Script Adapter - unerklärliche Fehlermeldung:

                    @automatisierer-0

                    • Code des Skripts kopieren
                    • im Forum code tags setzen (</>)
                    • kopierten Code einfügen

                    A.
                    p.s. Das hat nix mit ioBroker zu tun 🙂

                    Würde alles gesagt. @Automatisierer-0 mach es einfach.

                    Ro75

                    A 1 Reply Last reply Reply Quote 0
                    • A
                      Automatisierer 0 @Ro75 last edited by

                      @ro75
                      Wie du oben siehst: Habe ich schon gemacht...

                      Asgothian 1 Reply Last reply Reply Quote 0
                      • Asgothian
                        Asgothian Developer @Automatisierer 0 last edited by Asgothian

                        @automatisierer-0 Bring bitte mal den JS Adapter auf den aktuellen (stable) Stand. Damit gibt es bei mir keine Auffälligkeiten und das Skript kompiliert ohne weiteres.

                        A.

                        Codierknecht A 2 Replies Last reply Reply Quote 0
                        • amg_666
                          amg_666 @Automatisierer 0 last edited by

                          @automatisierer-0 sagte in JAVA Script Adapter - unerklärliche Fehlermeldung:

                          Wie man sieht ist bei Zeile 137 Schluss.
                          Und die Fehlermeldung sagt einen Compilerfehler in 174

                          Das könnte auch daran liegen, dass er in Zeile 174 etwas erwartet und nicht findet. Klassiker wäre z.B. eine "}" zu wenig, oder ein ";" zuviel...
                          Sicher dass der Code mal gelaufen ist oder hast du irgendwas kopiert/gelöscht/eingefügt ?

                          1 Reply Last reply Reply Quote 0
                          • Codierknecht
                            Codierknecht Developer Most Active @Asgothian last edited by

                            @asgothian
                            Compiliert auf meiner Testkiste auch mit 8.8.3 problemlos.

                            A 1 Reply Last reply Reply Quote 0
                            • A
                              Automatisierer 0 @Asgothian last edited by

                              @asgothian
                              Wie ich oben geschrieben habe, wurde der Adapter heute gegen Mittag von GitHUB auf V8.8.3 aktualisiert.
                              Das wurde mir von Thomas Braun aufgetragen.
                              Siehe: JAVA Script Adapter - Import Scripts nicht möglich
                              ich benötige 8.8.3 weil in der aktuellen Stable version kann man keine Scripts importieren.

                              Du schreibst:
                              Bring bitte mal den JS Adapter auf den aktuellen (stable) Stand. Damit gibt es bei mir keine Auffälligkeiten und das Skript kompiliert ohne weiteres.

                              Ich kenne leider mich nicht mehr aus was ich machen soll.

                              Homoran Thomas Braun 2 Replies Last reply Reply Quote 0
                              • Homoran
                                Homoran Global Moderator Administrators @Automatisierer 0 last edited by

                                @automatisierer-0
                                du kannst wahrscheinlich auf 8.8.3 bleiben, denn

                                @codierknecht sagte in JAVA Script Adapter - unerklärliche Fehlermeldung:

                                @asgothian
                                Compiliert auf meiner Testkiste auch mit 8.8.3 problemlos.

                                1 Reply Last reply Reply Quote 0
                                • A
                                  Automatisierer 0 @Codierknecht last edited by

                                  @codierknecht
                                  Compiliert auf meiner Testkiste auch mit 8.8.3 problemlos.

                                  Fein, dann liegt es offensichtlich nicht an meinem Code und nicht an der Version V8.8.3

                                  Wer kann mir nun weiter helfen, warum die oben genannten Compilerfehler kommen?

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

                                    @automatisierer-0 sagte in JAVA Script Adapter - unerklärliche Fehlermeldung:

                                    von GitHUB auf V8.8.3 aktualisiert.
                                    Das wurde mir von Thomas Braun aufgetragen.

                                    Von GitHub? Bestimmt nicht. Die Beta-Version aus dem entsprechenden Kanal vielleicht, aber keinen GitHub-Code.

                                    A 1 Reply Last reply Reply Quote 0
                                    • Homoran
                                      Homoran Global Moderator Administrators @Automatisierer 0 last edited by

                                      @automatisierer-0 da steht dass nichts neu compiliert wird, weil nichts geändert wurde.
                                      dann würde ich mal was ändern und sehen was dann passiert

                                      A 1 Reply Last reply Reply Quote 0
                                      • A
                                        Automatisierer 0 @Homoran last edited by

                                        @homoran
                                        ich habe ganz am Anfang eine Variable dazugefügt und den code neu gestartet.
                                        Jetzt kommt die Fehlermeldung um eine Zeile höher (statt 174 auf 175)
                                        Der Code hört jetzt auf zeile 138 statt 137 auf

                                        Codierknecht F 2 Replies Last reply Reply Quote 0
                                        • A
                                          Automatisierer 0 @Thomas Braun last edited by

                                          @thomas-braun
                                          Wenn ich mich nicht täusche steht in dem screenshot:
                                          Den Adapter von GitHUB installieren oder aktualisieren...
                                          GitHUB.jpg

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

                                            @automatisierer-0

                                            Du solltest den markierten Reiter 'npm' wählen.

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

                                            Support us

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

                                            649
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            8
                                            42
                                            1637
                                            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