Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Javascript 6.1.0 - Neue Funktionen (Beta)

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.6k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.8k

Javascript 6.1.0 - Neue Funktionen (Beta)

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
52 Beiträge 11 Kommentatoren 6.4k Aufrufe 16 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M Marty56

    @apollon77
    Schön, dass es wieder ein Update gibt und dass es createAlias gibt. deleteAlias fände ich auch noch wünschenswert.

    Der Bug, dass bei on schedule ()... und Neustart des entsprechenden Scripts die Timer nicht gelöscht werden, ist noch drin oder?

    apollon77A Offline
    apollon77A Offline
    apollon77
    schrieb am zuletzt editiert von apollon77
    #3

    @marty56 sagte in Javascript 6.1.0 - Neue Funktionen (Beta):

    Schön, dass es wieder ein Update gibt und dass es createAlias gibt. deleteAlias fände ich auch noch wünschenswert.

    delObject ist exakt das gleiche, also unnötig.

    Der Bug, dass bei on schedule ()... und Neustart des entsprechenden Scripts die Timer nicht gelöscht werden, ist noch drin oder?

    Dann poste ich mal das ganze Changelog, dann beantwortet sich deine Frage von allein:

    • (Apollon77) Add a configurable check for number of setStates per Minute to prevent scripts from taking down ioBroker. Default are 1000 setState per minute. Only stops if the number is reached 2 minutes in a row!
    • (Apollon77) Add createAlias method to create aliases for states
    • (Apollon77) Add setStateDelayed to selector
    • (Apollon77) Add options to exec command
    • (Apollon77) Fix issues with cancelling schedules when stopping scripts
    • (bluefox) Corrected debug mode

    Gefixter Debugger und das mit den Schedules fällt unter die "Fehlerbehebungen" die oben genannt, aber nicht weiter ausgeführt, sind ;)

    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
    M D 2 Antworten Letzte Antwort
    0
    • apollon77A apollon77

      @marty56 sagte in Javascript 6.1.0 - Neue Funktionen (Beta):

      Schön, dass es wieder ein Update gibt und dass es createAlias gibt. deleteAlias fände ich auch noch wünschenswert.

      delObject ist exakt das gleiche, also unnötig.

      Der Bug, dass bei on schedule ()... und Neustart des entsprechenden Scripts die Timer nicht gelöscht werden, ist noch drin oder?

      Dann poste ich mal das ganze Changelog, dann beantwortet sich deine Frage von allein:

      • (Apollon77) Add a configurable check for number of setStates per Minute to prevent scripts from taking down ioBroker. Default are 1000 setState per minute. Only stops if the number is reached 2 minutes in a row!
      • (Apollon77) Add createAlias method to create aliases for states
      • (Apollon77) Add setStateDelayed to selector
      • (Apollon77) Add options to exec command
      • (Apollon77) Fix issues with cancelling schedules when stopping scripts
      • (bluefox) Corrected debug mode

      Gefixter Debugger und das mit den Schedules fällt unter die "Fehlerbehebungen" die oben genannt, aber nicht weiter ausgeführt, sind ;)

      M Offline
      M Offline
      Marty56
      schrieb am zuletzt editiert von
      #4

      @apollon77 Sorry, dass ich nicht das Changelog gelesen hatte. Aber Danke!

      HW:NUC (16 GB Ram)
      OS: Debian Bullseye, Promox V7, node v16.x npm 8.19.3

      apollon77A 1 Antwort Letzte Antwort
      1
      • M Marty56

        @apollon77 Sorry, dass ich nicht das Changelog gelesen hatte. Aber Danke!

        apollon77A Offline
        apollon77A Offline
        apollon77
        schrieb am zuletzt editiert von
        #5

        @marty56 Also bitte gern prüfen. Bei mir lokal war es damit gefixt ... war eine interessante Challenge bis ich das problem mal verstanden hab ... der Fix waren dann 2 Mins :-)

        Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

        • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
        • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
        SteffS 1 Antwort Letzte Antwort
        0
        • apollon77A apollon77

          @marty56 Also bitte gern prüfen. Bei mir lokal war es damit gefixt ... war eine interessante Challenge bis ich das problem mal verstanden hab ... der Fix waren dann 2 Mins :-)

          SteffS Offline
          SteffS Offline
          Steff
          schrieb am zuletzt editiert von
          #6

          @apollon77,

          Update auf 6.1.0 hat problemlos funktioniert, Der Schedule Bug ist weg.

          Super Arbeit!

          Gruß Steffen

          ioBroker auf Intel NUC 7CJYH / Debian 11 / States in Redis / Objects in JSONL / Repo --> Beta / HM CCU2 V2.61.7 / Siemens LOGO! (0BA7 / 0BA8)
          Admin V7.4.7 / Node V20.18.1 / NPM V10.8.2 / JSC V7.0.6 / JSE V8.8.3

          1 Antwort Letzte Antwort
          1
          • apollon77A apollon77

            Hallo alle zusammen,

            im Laufe des Tages sollte JavaScript 6.1.0 im Beta Repository auftauchen und bringt neben Fehlerbehebungen ein paar Neuigkeiten mit über die ich gern Informieren möchte:

            Schutz vor Amoklaufenden Skripten

            In letzter Zeit hatten wir häufiger Supportfälle wogesamte ioBroker Systeme sehr unresponsive/langsam wurden. Ursache waren mehrfach "Amok laufende Skripte", die durch Fehler einfach massive viele State Werte gesetzt haben.

            Der JavaScript Adapter überwacht ab sofort die Anzahl der setState pro Skript und wenn dies pro Minute mehr als 1000 sind (der Wert ist global im Adapter konfigurierbar) - 1000/Min sind 16 pro Sekunde - wird das Skript beendet! Ein Fehler wird geloggt.

            Technisch wird auch nicht direkt bei der "ersten Minute" das Skript beendet sondern erst wenn es 2 aufeinanderfolgende Minuten mehr als 1000 waren, um zB größere Skripte die viele Dinge beim Start tun nicht direkt wieder abzuschiessen.

            Wem 1000 zu wenig ist kann dies ändern in der Adapter-Konfiguration.

            Ich denke mit solch einem Schutz sollten wir in der Zukunft solche Probleme vermeiden

            createState Methode

            Auf vielfachen Wunsch gibt es jetzt eine createAlias Methode analog zu createState.
            Doku: https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#createalias

            Im einfachsten Fall bekommt diese Methode nur die ID des Ursprungsobjekts und übernimmt auch die Common Werte von diesem. Weiterhin können aber auch alle anderen Varianten (read/write IDs mit Funktions angegeben werden oder common (partiell) mit einem angegebenen Objekt überschrieben werden.

            setStateDelayed im Selector

            setStateDelayed ist nun auch als Methode im Selector verfügbar

            exec hat "options" Objekt

            Mit dem Options Objekt, welches direkt an nodejs durchgegeben wird können für exec's weitere Einstellungen vorgenommen werden.
            Was geht steht hier: https://nodejs.org/api/child_process.html#child_processexeccommand-options-callback

            Viel Spass mit der neuen Version und Feedback dazu bitte gern hier im Thread.

            Ingo

            paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von paul53
            #7

            @apollon77
            Anmerkung zur Doku: Es ist kein Wunder, dass Nutzer immer wieder den Begriff "Variable" für einen "Datenpunkt" verwenden, wenn es in der Doku so vorgelebt wird.

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            HomoranH 1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @apollon77
              Anmerkung zur Doku: Es ist kein Wunder, dass Nutzer immer wieder den Begriff "Variable" für einen "Datenpunkt" verwenden, wenn es in der Doku so vorgelebt wird.

              HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #8

              @paul53 hast du einen Link?

              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              paul53P 1 Antwort Letzte Antwort
              0
              • HomoranH Homoran

                @paul53 hast du einen Link?

                paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #9

                @homoran sagte: Link?

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                HomoranH apollon77A 2 Antworten Letzte Antwort
                1
                • apollon77A apollon77

                  @marty56 sagte in Javascript 6.1.0 - Neue Funktionen (Beta):

                  Schön, dass es wieder ein Update gibt und dass es createAlias gibt. deleteAlias fände ich auch noch wünschenswert.

                  delObject ist exakt das gleiche, also unnötig.

                  Der Bug, dass bei on schedule ()... und Neustart des entsprechenden Scripts die Timer nicht gelöscht werden, ist noch drin oder?

                  Dann poste ich mal das ganze Changelog, dann beantwortet sich deine Frage von allein:

                  • (Apollon77) Add a configurable check for number of setStates per Minute to prevent scripts from taking down ioBroker. Default are 1000 setState per minute. Only stops if the number is reached 2 minutes in a row!
                  • (Apollon77) Add createAlias method to create aliases for states
                  • (Apollon77) Add setStateDelayed to selector
                  • (Apollon77) Add options to exec command
                  • (Apollon77) Fix issues with cancelling schedules when stopping scripts
                  • (bluefox) Corrected debug mode

                  Gefixter Debugger und das mit den Schedules fällt unter die "Fehlerbehebungen" die oben genannt, aber nicht weiter ausgeführt, sind ;)

                  D Online
                  D Online
                  darkiop
                  Most Active
                  schrieb am zuletzt editiert von
                  #10

                  @apollon77 sagte in Javascript 6.1.0 - Neue Funktionen (Beta):

                  Der Bug, dass bei on schedule ()... und Neustart des entsprechenden Scripts die Timer nicht gelöscht werden, ist noch drin oder?

                  Dann poste ich mal das ganze Changelog, dann beantwortet sich deine Frage von allein:

                  Dabei fällt mir gerade folgende Frage ein: Kann man die laufenden Timer irgendwo sehen?

                  Proxmox-ioBroker-Redis-HA Doku: https://forum.iobroker.net/topic/47478/dokumentation-einer-proxmox-iobroker-redis-ha-umgebung

                  1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @homoran sagte: Link?

                    HomoranH Nicht stören
                    HomoranH Nicht stören
                    Homoran
                    Global Moderator Administrators
                    schrieb am zuletzt editiert von
                    #11

                    @paul53 Danke!

                    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                    M 1 Antwort Letzte Antwort
                    0
                    • HomoranH Homoran

                      @paul53 Danke!

                      M Offline
                      M Offline
                      Marty56
                      schrieb am zuletzt editiert von
                      #12

                      Ich habe tatsächlich diesen neuen Fehler "setState Checker" bekommen, bei einem Script.

                      Script script.js.common.Energie is calling setState more than 1000 times per minute! Stopping Script now! Please check your script
                      

                      Es wäre schön, wenn man etwas mehr Infos zu dem State oder der Zeile bekommen könnte, wo dieser Fehler auftritt.

                      HW:NUC (16 GB Ram)
                      OS: Debian Bullseye, Promox V7, node v16.x npm 8.19.3

                      HomoranH apollon77A 2 Antworten Letzte Antwort
                      0
                      • M Marty56

                        Ich habe tatsächlich diesen neuen Fehler "setState Checker" bekommen, bei einem Script.

                        Script script.js.common.Energie is calling setState more than 1000 times per minute! Stopping Script now! Please check your script
                        

                        Es wäre schön, wenn man etwas mehr Infos zu dem State oder der Zeile bekommen könnte, wo dieser Fehler auftritt.

                        HomoranH Nicht stören
                        HomoranH Nicht stören
                        Homoran
                        Global Moderator Administrators
                        schrieb am zuletzt editiert von
                        #13

                        @marty56 ich hab keine Ahnung von javascript.
                        Aber was für Infos fehlen dir denn?

                        such mal alle setState()
                        da scheinen in einer Schleife im Millisekundentakt States geprüft zu werden.

                        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                        1 Antwort Letzte Antwort
                        0
                        • M Marty56

                          Ich habe tatsächlich diesen neuen Fehler "setState Checker" bekommen, bei einem Script.

                          Script script.js.common.Energie is calling setState more than 1000 times per minute! Stopping Script now! Please check your script
                          

                          Es wäre schön, wenn man etwas mehr Infos zu dem State oder der Zeile bekommen könnte, wo dieser Fehler auftritt.

                          apollon77A Offline
                          apollon77A Offline
                          apollon77
                          schrieb am zuletzt editiert von
                          #14

                          @marty56 er zählt alle set state pro Skript. Des Weiteren einmal pro Minute schaut er nach der Zahl. Wie soll man das denn auf ein einzelnes setState runterbrechen? Das geht nicht.

                          Starte dein Skript im verbose Mode und jede Aktion wird geloggt. Dann siehst du vllt mehr.

                          Und ja es kann ja sein das das für das Skript ok ist. Aber solltest du prüfen bevor du das Limit hoch setzt.

                          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                          1 Antwort Letzte Antwort
                          0
                          • paul53P paul53

                            @homoran sagte: Link?

                            apollon77A Offline
                            apollon77A Offline
                            apollon77
                            schrieb am zuletzt editiert von
                            #15

                            @paul53 hm … ok ich stehende einen Fehler das in Beispielen createState kommt. Aber wo ist variable? Ok muss ich nachher mal am pc suchen. Oder mach nen pr :-))

                            Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                            • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                            • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                            HomoranH paul53P 2 Antworten Letzte Antwort
                            0
                            • apollon77A apollon77

                              @paul53 hm … ok ich stehende einen Fehler das in Beispielen createState kommt. Aber wo ist variable? Ok muss ich nachher mal am pc suchen. Oder mach nen pr :-))

                              HomoranH Nicht stören
                              HomoranH Nicht stören
                              Homoran
                              Global Moderator Administrators
                              schrieb am zuletzt editiert von Homoran
                              #16

                              @apollon77 createState('myAlias', {id: {read: 'myReadValiable', write: 'myWriteVariable'}})
                              vielleicht besser datapoint

                              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                              apollon77A 1 Antwort Letzte Antwort
                              1
                              • M Online
                                M Online
                                MCU
                                schrieb am zuletzt editiert von
                                #17

                                @darkiop
                                https://forum.iobroker.net/topic/39912/liste-aller-aktiven-scheduler/2

                                NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                                Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                                D 1 Antwort Letzte Antwort
                                2
                                • HomoranH Homoran

                                  @apollon77 createState('myAlias', {id: {read: 'myReadValiable', write: 'myWriteVariable'}})
                                  vielleicht besser datapoint

                                  apollon77A Offline
                                  apollon77A Offline
                                  apollon77
                                  schrieb am zuletzt editiert von
                                  #18

                                  @homoran ok my fault dann. Fixe Doku nachher

                                  Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                  • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                  • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                  1 Antwort Letzte Antwort
                                  1
                                  • apollon77A apollon77

                                    @paul53 hm … ok ich stehende einen Fehler das in Beispielen createState kommt. Aber wo ist variable? Ok muss ich nachher mal am pc suchen. Oder mach nen pr :-))

                                    paul53P Offline
                                    paul53P Offline
                                    paul53
                                    schrieb am zuletzt editiert von
                                    #19

                                    @apollon77 sagte: mach nen pr :-))

                                    Erledigt.

                                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                    apollon77A 2 Antworten Letzte Antwort
                                    1
                                    • paul53P paul53

                                      @apollon77 sagte: mach nen pr :-))

                                      Erledigt.

                                      apollon77A Offline
                                      apollon77A Offline
                                      apollon77
                                      schrieb am zuletzt editiert von
                                      #20

                                      @paul53 Danke!!

                                      Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                      • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                      • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                      1 Antwort Letzte Antwort
                                      0
                                      • M MCU

                                        @darkiop
                                        https://forum.iobroker.net/topic/39912/liste-aller-aktiven-scheduler/2

                                        D Online
                                        D Online
                                        darkiop
                                        Most Active
                                        schrieb am zuletzt editiert von
                                        #21

                                        @mcu Danke dir, kein fehler da etwas transparenz zu haben ;)

                                        Proxmox-ioBroker-Redis-HA Doku: https://forum.iobroker.net/topic/47478/dokumentation-einer-proxmox-iobroker-redis-ha-umgebung

                                        1 Antwort Letzte Antwort
                                        0
                                        • paul53P paul53

                                          @apollon77 sagte: mach nen pr :-))

                                          Erledigt.

                                          apollon77A Offline
                                          apollon77A Offline
                                          apollon77
                                          schrieb am zuletzt editiert von
                                          #22

                                          @paul53 Danke! merged und auch noch ein anderer Fehler gefixt.

                                          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

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

                                          552

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe