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. Diskussion zum HowTo nodejs-Installation und upgrade

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.9k

Diskussion zum HowTo nodejs-Installation und upgrade

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
nodejs
844 Beiträge 91 Kommentatoren 234.6k Aufrufe 63 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.
  • Thomas BraunT Thomas Braun

    @siggi0904 sagte in Diskussion zum HowTo nodejs-Installation und upgrade:

    wann wird eigentlich die recommended version vom node-js auf Version 20 angehoben?

    Seit ein paar Tagen ist das im js-controller6 drin.

    
    Nothing to do - Your installation is using the correct paths.
    
    You are running nodejs v22.4.1. Do you want to install recommended version 20.15.1? 
    
    Press <y> to continue or any other key to quit
    
    
    
    Siggi0904S Offline
    Siggi0904S Offline
    Siggi0904
    schrieb am zuletzt editiert von
    #786

    @thomas-braun habe gerade iob nodejs-update gemacht und da wurde noch Version 18 gemeldet.

    HomoranH Thomas BraunT 2 Antworten Letzte Antwort
    0
    • Siggi0904S Siggi0904

      @thomas-braun habe gerade iob nodejs-update gemacht und da wurde noch Version 18 gemeldet.

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

      @siggi0904 sagte in Diskussion zum HowTo nodejs-Installation und upgrade:

      @thomas-braun habe gerade iob nodejs-update gemacht und da wurde noch Version 18 gemeldet.

      und?
      Hast du

      @thomas-braun sagte in Diskussion zum HowTo nodejs-Installation und upgrade:

      js-controller6

      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
      • Siggi0904S Siggi0904

        @thomas-braun habe gerade iob nodejs-update gemacht und da wurde noch Version 18 gemeldet.

        Thomas BraunT Online
        Thomas BraunT Online
        Thomas Braun
        Most Active
        schrieb am zuletzt editiert von
        #788

        @siggi0904 Und welchen js-controller fährst du? In der stabilen Version 5.0.19 ist das noch nicht drin.

        Linux-Werkzeugkasten:
        https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
        NodeJS Fixer Skript:
        https://forum.iobroker.net/topic/68035/iob-node-fix-skript
        iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

        Siggi0904S 1 Antwort Letzte Antwort
        0
        • Thomas BraunT Thomas Braun

          @siggi0904 Und welchen js-controller fährst du? In der stabilen Version 5.0.19 ist das noch nicht drin.

          Siggi0904S Offline
          Siggi0904S Offline
          Siggi0904
          schrieb am zuletzt editiert von
          #789

          @thomas-braun jo, alles stable. Also mach ich es per apt. Kein Thema.

          HomoranH Thomas BraunT 2 Antworten Letzte Antwort
          0
          • Siggi0904S Siggi0904

            @thomas-braun jo, alles stable. Also mach ich es per apt. Kein Thema.

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

            @siggi0904 sagte in Diskussion zum HowTo nodejs-Installation und upgrade:

            @thomas-braun jo, alles stable. Also mach ich es per apt. Kein Thema.

            ...oder per iob nodejs-update 20

            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
            • Siggi0904S Siggi0904

              @thomas-braun jo, alles stable. Also mach ich es per apt. Kein Thema.

              Thomas BraunT Online
              Thomas BraunT Online
              Thomas Braun
              Most Active
              schrieb am zuletzt editiert von Thomas Braun
              #791

              @siggi0904 sagte in Diskussion zum HowTo nodejs-Installation und upgrade:

              Also mach ich es per apt.

              Du sollst das sowieso primär per apt machen.
              iob nodejs-update ist nur zum Wechsel der Major-Version gedacht und um verfummelte sonstige Installationen wieder gerade zu biegen.

              Linux-Werkzeugkasten:
              https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
              NodeJS Fixer Skript:
              https://forum.iobroker.net/topic/68035/iob-node-fix-skript
              iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

              Siggi0904S 1 Antwort Letzte Antwort
              0
              • Thomas BraunT Thomas Braun

                @siggi0904 sagte in Diskussion zum HowTo nodejs-Installation und upgrade:

                Also mach ich es per apt.

                Du sollst das sowieso primär per apt machen.
                iob nodejs-update ist nur zum Wechsel der Major-Version gedacht und um verfummelte sonstige Installationen wieder gerade zu biegen.

                Siggi0904S Offline
                Siggi0904S Offline
                Siggi0904
                schrieb am zuletzt editiert von
                #792

                @thomas-braun aber da muss man immer dran denken den iob zu stoppen.
                Das macht das skript fein selbst. :-)

                HomoranH 1 Antwort Letzte Antwort
                0
                • Siggi0904S Siggi0904

                  @thomas-braun aber da muss man immer dran denken den iob zu stoppen.
                  Das macht das skript fein selbst. :-)

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

                  @siggi0904 dann nimm doch das Skript

                  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 -

                  S 1 Antwort Letzte Antwort
                  0
                  • HomoranH Homoran

                    @siggi0904 dann nimm doch das Skript

                    S Offline
                    S Offline
                    skorpil
                    schrieb am zuletzt editiert von
                    #794

                    @homoran welches?

                    HomoranH 1 Antwort Letzte Antwort
                    0
                    • S skorpil

                      @homoran welches?

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

                      @skorpil iob nodejs-update 20

                      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 -

                      S 1 Antwort Letzte Antwort
                      0
                      • HomoranH Homoran

                        @skorpil iob nodejs-update 20

                        S Offline
                        S Offline
                        skorpil
                        schrieb am zuletzt editiert von
                        #796

                        @homoran Danke. Ich verstehe.

                        1 Antwort Letzte Antwort
                        0
                        • P Offline
                          P Offline
                          powerich
                          schrieb am zuletzt editiert von
                          #797

                          Hallo Zusammen
                          auch ich habe versucht eine nodejs update durchzuführen. Leider ohne Erfolg.

                          Folgendes Problem habe ich nach dem Update mit nodejs:

                          node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                          

                          Ich habe alles versucht was ich im Forum gefundeun habe.

                          • Löschen der bisherigen Version
                          • Löschen der Verzeichnisse und Dateiverknüpfungen
                          • Manuelle Installation nach "neuer Anleitung"
                          • Automatische installation

                          Hier schon mal der "iob diag"

                          ======================= SUMMARY =======================
                                                  v.2024-05-22
                          
                          
                             Static hostname: rpiiobroker
                                   Icon name: computer
                            Operating System: Raspbian GNU/Linux 10 (buster)
                                      Kernel: Linux 5.10.103-v7+
                                Architecture: arm
                          
                          Installation:           native
                          Kernel:                 armv7l
                          Userland:               32 bit
                          Timezone:               Europe/Berlin (CEST, +0200)
                          User-ID:                1000
                          Display-Server:         false
                          Boot Target:            graphical.target
                          
                          Pending OS-Updates:     0
                          node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                          Pending iob updates:    0
                          
                          Nodejs-Installation:
                          nodejs: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by nodejs)
                          /usr/bin/nodejs
                          nodejs: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by nodejs)
                          node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                          /usr/bin/node
                          node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                          node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                          /usr/bin/npm
                          node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                          node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                          /usr/bin/npx
                          node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                          node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                          /usr/bin/corepack
                          node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                          
                          Recommended versions are nodejs  and npm
                          Your nodejs installation is correct
                          
                          MEMORY:
                                        total        used        free      shared  buff/cache   available
                          Mem:           923M         50M        113M         16M        758M        792M
                          Swap:           99M        2.0M         97M
                          Total:         1.0G         53M        211M
                          
                          Active iob-Instances:   0
                          node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                          
                          node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                          ioBroker Core:          js-controller
                          node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                                                  admin
                          
                          node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                          ioBroker Status:
                          
                          Status admin and web instance:
                          
                          Objects:                0
                          States:                 0
                          
                          Size of iob-Database:
                          
                          1.3M    /opt/iobroker/iobroker-data/objects.json.bak
                          1.3M    /opt/iobroker/iobroker-data/objects.json
                          148K    /opt/iobroker/iobroker-data/states.json.bak
                          148K    /opt/iobroker/iobroker-data/states.json
                          
                          
                          
                          =================== END OF SUMMARY ====================
                          

                          Vielen Dand für eure neuen Ideen zur Problemlösung.

                          Grüße
                          Ichda

                          Thomas BraunT 1 Antwort Letzte Antwort
                          0
                          • P powerich

                            Hallo Zusammen
                            auch ich habe versucht eine nodejs update durchzuführen. Leider ohne Erfolg.

                            Folgendes Problem habe ich nach dem Update mit nodejs:

                            node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                            

                            Ich habe alles versucht was ich im Forum gefundeun habe.

                            • Löschen der bisherigen Version
                            • Löschen der Verzeichnisse und Dateiverknüpfungen
                            • Manuelle Installation nach "neuer Anleitung"
                            • Automatische installation

                            Hier schon mal der "iob diag"

                            ======================= SUMMARY =======================
                                                    v.2024-05-22
                            
                            
                               Static hostname: rpiiobroker
                                     Icon name: computer
                              Operating System: Raspbian GNU/Linux 10 (buster)
                                        Kernel: Linux 5.10.103-v7+
                                  Architecture: arm
                            
                            Installation:           native
                            Kernel:                 armv7l
                            Userland:               32 bit
                            Timezone:               Europe/Berlin (CEST, +0200)
                            User-ID:                1000
                            Display-Server:         false
                            Boot Target:            graphical.target
                            
                            Pending OS-Updates:     0
                            node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                            Pending iob updates:    0
                            
                            Nodejs-Installation:
                            nodejs: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by nodejs)
                            /usr/bin/nodejs
                            nodejs: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by nodejs)
                            node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                            /usr/bin/node
                            node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                            node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                            /usr/bin/npm
                            node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                            node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                            /usr/bin/npx
                            node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                            node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                            /usr/bin/corepack
                            node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                            
                            Recommended versions are nodejs  and npm
                            Your nodejs installation is correct
                            
                            MEMORY:
                                          total        used        free      shared  buff/cache   available
                            Mem:           923M         50M        113M         16M        758M        792M
                            Swap:           99M        2.0M         97M
                            Total:         1.0G         53M        211M
                            
                            Active iob-Instances:   0
                            node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                            
                            node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                            ioBroker Core:          js-controller
                            node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                                                    admin
                            
                            node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by node)
                            ioBroker Status:
                            
                            Status admin and web instance:
                            
                            Objects:                0
                            States:                 0
                            
                            Size of iob-Database:
                            
                            1.3M    /opt/iobroker/iobroker-data/objects.json.bak
                            1.3M    /opt/iobroker/iobroker-data/objects.json
                            148K    /opt/iobroker/iobroker-data/states.json.bak
                            148K    /opt/iobroker/iobroker-data/states.json
                            
                            
                            
                            =================== END OF SUMMARY ====================
                            

                            Vielen Dand für eure neuen Ideen zur Problemlösung.

                            Grüße
                            Ichda

                            Thomas BraunT Online
                            Thomas BraunT Online
                            Thomas Braun
                            Most Active
                            schrieb am zuletzt editiert von Thomas Braun
                            #798

                            @powerich sagte in Diskussion zum HowTo nodejs-Installation und upgrade:

                            Operating System: Raspbian GNU/Linux 10 (buster)

                            Zu alt, installier da NEU Raspberry OS 12 'Bookworm', bevorzugt in den 64Bit-Variante 'Lite' - Ohne Desktop.

                            https://forum.iobroker.net/topic/51869/installation-auf-raspi-einfacher-geht-s-nicht

                            Linux-Werkzeugkasten:
                            https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                            NodeJS Fixer Skript:
                            https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                            iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                            1 Antwort Letzte Antwort
                            0
                            • S Offline
                              S Offline
                              skorpil
                              schrieb am zuletzt editiert von skorpil
                              #799

                              mein system zeigt bei der Anwendung von

                              iob nodejs-update
                              

                              folgendes an:

                              Recommended nodejs-version is: 18.20.4
                              Checking your installation now. Please be patient!
                              
                              Your current setup is:
                              /usr/bin/nodejs         v18.20.4
                              /usr/bin/node           v18.20.4
                              /usr/bin/npm            10.7.0
                              /usr/bin/npx            10.7.0
                              /usr/bin/corepack       0.28.0
                              We found these nodejs versions available for installation:
                              
                              nodejs:
                                Installed: 18.20.4-1nodesource1
                                Candidate: 18.20.4-1nodesource1
                              
                              

                              mit anderen Worten: die 20 wird NICHT gefunden.

                              Die Info Box sagt:

                              Plattform: linux
                              Betriebssystem: linux
                              Architektur: x64
                              CPUs: 2
                              Geschwindigkeit: 1996 MHz
                              Modell: Intel(R) Celeron(R) J4125 CPU @ 2.00GHz
                              RAM: 3.8 GB
                              System-Betriebszeit: 00:33:29
                              Node.js: v18.20.4
                              time: 1722086029102
                              timeOffset: -120
                              NPM: 10.7.0
                              Adapter-Anzahl: 539
                              Datenträgergröße: 18.6 GB
                              Freier Festplattenspeicher: 9.1 GB
                              Aktive Instanzen: 5
                              Pfad: /opt/iobroker/
                              Betriebszeit: 00:00:22
                              aktiv:
                              
                              

                              meldet also auch, daß kein update notwendig ist.

                              Muß nicht eigentlich irgendwo auf die Notwendigkeit auf die empfohlene 20er Version zu updaten hingewiesen werden? Oder kommt das später? Oder sollte ich überhaupt updaten? Und dann mit:

                              iob nodejs-update 20
                              

                              Obwohl ich ja mit der 20 es schon mal versucht habe und dann Probleme mit httpGet hatte, wollte ich es noch einmal versuchen.

                              Danke für Hilfe.

                              Summery aus diag im spoiler


                              ======================= SUMMARY =======================
                              v.2024-05-22

                              Static hostname: LinuxNeu
                              Icon name: computer-vm
                              Chassis: vm 🖴
                              Virtualization: oracle
                              Operating System: Debian GNU/Linux 12 (bookworm)
                              Kernel: Linux 6.1.0-23-amd64
                              Architecture: x86-64
                              Hardware Vendor: innotek GmbH
                              Hardware Model: VirtualBox
                              Firmware Version: VirtualBox

                              Installation: oracle
                              Kernel: x86_64
                              Userland: 64 bit
                              Timezone: Europe/Berlin (CEST, +0200)
                              User-ID: 1000
                              Display-Server: false
                              Boot Target: graphical.target

                              Pending OS-Updates: 0
                              Pending iob updates: 0

                              Nodejs-Installation:
                              /usr/bin/nodejs v18.20.4
                              /usr/bin/node v18.20.4
                              /usr/bin/npm 10.7.0
                              /usr/bin/npx 10.7.0
                              /usr/bin/corepack 0.28.0

                              Recommended versions are nodejs 18.20.4 and npm 10.7.0
                              Your nodejs installation is correct

                              MEMORY:
                              total used free shared buff/cache available
                              Mem: 4.1G 2.1G 1.6G 2.5M 715M 2.0G
                              Swap: 1.0G 0B 1.0G
                              Total: 5.1G 2.1G 2.6G

                              Active iob-Instances: 16
                              Active repo(s): stable

                              ioBroker Core: js-controller 5.0.19
                              admin 6.17.14

                              ioBroker Status: iobroker is running on this host.

                              Objects type: jsonl
                              States type: jsonl

                              Status admin and web instance:

                              • system.adapter.admin.0 : admin : LinuxNeu - enabled, port: 8081, bind: 0.0.0.0, run as: admin

                              Objects: 19441
                              States: 16301

                              Size of iob-Database:

                              24M /opt/iobroker/iobroker-data/objects.jsonl
                              11M /opt/iobroker/iobroker-data/objects.json.migrated
                              11M /opt/iobroker/iobroker-data/objects.json.bak.migrated
                              0 /opt/iobroker/iobroker-data/objects.json.broken
                              6.7M /opt/iobroker/iobroker-data/states.jsonl
                              1.6M /opt/iobroker/iobroker-data/states.json.migrated
                              1.6M /opt/iobroker/iobroker-data/states.json.bak.migrated
                              0 /opt/iobroker/iobroker-data/states.json.broken

                              =================== END OF SUMMARY ====================

                              
                              === Mark text until here for copying ===
                              [/s]
                              Thomas BraunT 1 Antwort Letzte Antwort
                              0
                              • S skorpil

                                mein system zeigt bei der Anwendung von

                                iob nodejs-update
                                

                                folgendes an:

                                Recommended nodejs-version is: 18.20.4
                                Checking your installation now. Please be patient!
                                
                                Your current setup is:
                                /usr/bin/nodejs         v18.20.4
                                /usr/bin/node           v18.20.4
                                /usr/bin/npm            10.7.0
                                /usr/bin/npx            10.7.0
                                /usr/bin/corepack       0.28.0
                                We found these nodejs versions available for installation:
                                
                                nodejs:
                                  Installed: 18.20.4-1nodesource1
                                  Candidate: 18.20.4-1nodesource1
                                
                                

                                mit anderen Worten: die 20 wird NICHT gefunden.

                                Die Info Box sagt:

                                Plattform: linux
                                Betriebssystem: linux
                                Architektur: x64
                                CPUs: 2
                                Geschwindigkeit: 1996 MHz
                                Modell: Intel(R) Celeron(R) J4125 CPU @ 2.00GHz
                                RAM: 3.8 GB
                                System-Betriebszeit: 00:33:29
                                Node.js: v18.20.4
                                time: 1722086029102
                                timeOffset: -120
                                NPM: 10.7.0
                                Adapter-Anzahl: 539
                                Datenträgergröße: 18.6 GB
                                Freier Festplattenspeicher: 9.1 GB
                                Aktive Instanzen: 5
                                Pfad: /opt/iobroker/
                                Betriebszeit: 00:00:22
                                aktiv:
                                
                                

                                meldet also auch, daß kein update notwendig ist.

                                Muß nicht eigentlich irgendwo auf die Notwendigkeit auf die empfohlene 20er Version zu updaten hingewiesen werden? Oder kommt das später? Oder sollte ich überhaupt updaten? Und dann mit:

                                iob nodejs-update 20
                                

                                Obwohl ich ja mit der 20 es schon mal versucht habe und dann Probleme mit httpGet hatte, wollte ich es noch einmal versuchen.

                                Danke für Hilfe.

                                Summery aus diag im spoiler


                                ======================= SUMMARY =======================
                                v.2024-05-22

                                Static hostname: LinuxNeu
                                Icon name: computer-vm
                                Chassis: vm 🖴
                                Virtualization: oracle
                                Operating System: Debian GNU/Linux 12 (bookworm)
                                Kernel: Linux 6.1.0-23-amd64
                                Architecture: x86-64
                                Hardware Vendor: innotek GmbH
                                Hardware Model: VirtualBox
                                Firmware Version: VirtualBox

                                Installation: oracle
                                Kernel: x86_64
                                Userland: 64 bit
                                Timezone: Europe/Berlin (CEST, +0200)
                                User-ID: 1000
                                Display-Server: false
                                Boot Target: graphical.target

                                Pending OS-Updates: 0
                                Pending iob updates: 0

                                Nodejs-Installation:
                                /usr/bin/nodejs v18.20.4
                                /usr/bin/node v18.20.4
                                /usr/bin/npm 10.7.0
                                /usr/bin/npx 10.7.0
                                /usr/bin/corepack 0.28.0

                                Recommended versions are nodejs 18.20.4 and npm 10.7.0
                                Your nodejs installation is correct

                                MEMORY:
                                total used free shared buff/cache available
                                Mem: 4.1G 2.1G 1.6G 2.5M 715M 2.0G
                                Swap: 1.0G 0B 1.0G
                                Total: 5.1G 2.1G 2.6G

                                Active iob-Instances: 16
                                Active repo(s): stable

                                ioBroker Core: js-controller 5.0.19
                                admin 6.17.14

                                ioBroker Status: iobroker is running on this host.

                                Objects type: jsonl
                                States type: jsonl

                                Status admin and web instance:

                                • system.adapter.admin.0 : admin : LinuxNeu - enabled, port: 8081, bind: 0.0.0.0, run as: admin

                                Objects: 19441
                                States: 16301

                                Size of iob-Database:

                                24M /opt/iobroker/iobroker-data/objects.jsonl
                                11M /opt/iobroker/iobroker-data/objects.json.migrated
                                11M /opt/iobroker/iobroker-data/objects.json.bak.migrated
                                0 /opt/iobroker/iobroker-data/objects.json.broken
                                6.7M /opt/iobroker/iobroker-data/states.jsonl
                                1.6M /opt/iobroker/iobroker-data/states.json.migrated
                                1.6M /opt/iobroker/iobroker-data/states.json.bak.migrated
                                0 /opt/iobroker/iobroker-data/states.json.broken

                                =================== END OF SUMMARY ====================

                                
                                === Mark text until here for copying ===
                                [/s]
                                Thomas BraunT Online
                                Thomas BraunT Online
                                Thomas Braun
                                Most Active
                                schrieb am zuletzt editiert von
                                #800

                                @skorpil sagte in Diskussion zum HowTo nodejs-Installation und upgrade:

                                mit anderen Worten: die 20 wird NICHT gefunden.

                                Das hängt mit dem admin zusammen. Der hat die v18 fix drin. Nichtsdestotrotz ist nodejs@20 die vorgesehene Version.
                                Mit admin@7 funktioniert es dann auch:

                                Nothing to do - Your installation is using the correct paths.
                                
                                You are running nodejs v22.5.1. Do you want to install recommended version 20.16.0? 
                                
                                Press <y> to continue or any other key to quit
                                
                                

                                Linux-Werkzeugkasten:
                                https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                                NodeJS Fixer Skript:
                                https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                                iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                                S 1 Antwort Letzte Antwort
                                0
                                • Thomas BraunT Thomas Braun

                                  @skorpil sagte in Diskussion zum HowTo nodejs-Installation und upgrade:

                                  mit anderen Worten: die 20 wird NICHT gefunden.

                                  Das hängt mit dem admin zusammen. Der hat die v18 fix drin. Nichtsdestotrotz ist nodejs@20 die vorgesehene Version.
                                  Mit admin@7 funktioniert es dann auch:

                                  Nothing to do - Your installation is using the correct paths.
                                  
                                  You are running nodejs v22.5.1. Do you want to install recommended version 20.16.0? 
                                  
                                  Press <y> to continue or any other key to quit
                                  
                                  
                                  S Offline
                                  S Offline
                                  skorpil
                                  schrieb am zuletzt editiert von
                                  #801

                                  @thomas-braun Dankeschön. Und wie komme ich an den Admin 7? Wenn ich dich richtig verstehe, dann erst mit

                                  iob nodejs-update 20
                                  
                                  

                                  updaten und dann später den Admin7, wenn er in den Adaptern als updatable angezeigt wird, updaten?

                                  Thomas BraunT 1 Antwort Letzte Antwort
                                  0
                                  • S skorpil

                                    @thomas-braun Dankeschön. Und wie komme ich an den Admin 7? Wenn ich dich richtig verstehe, dann erst mit

                                    iob nodejs-update 20
                                    
                                    

                                    updaten und dann später den Admin7, wenn er in den Adaptern als updatable angezeigt wird, updaten?

                                    Thomas BraunT Online
                                    Thomas BraunT Online
                                    Thomas Braun
                                    Most Active
                                    schrieb am zuletzt editiert von
                                    #802

                                    @skorpil sagte in Diskussion zum HowTo nodejs-Installation und upgrade:

                                    Und wie komme ich an den Admin 7?

                                    Der kommt irgendwann als stabile Version bei der üblichen Systempflege mit. Musste jetzt gar nix machen.
                                    Bring nodejs auf Version 20 und gut ist...

                                    iob nodejs-update 20
                                    

                                    Linux-Werkzeugkasten:
                                    https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                                    NodeJS Fixer Skript:
                                    https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                                    iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                                    S 1 Antwort Letzte Antwort
                                    0
                                    • Thomas BraunT Thomas Braun

                                      @skorpil sagte in Diskussion zum HowTo nodejs-Installation und upgrade:

                                      Und wie komme ich an den Admin 7?

                                      Der kommt irgendwann als stabile Version bei der üblichen Systempflege mit. Musste jetzt gar nix machen.
                                      Bring nodejs auf Version 20 und gut ist...

                                      iob nodejs-update 20
                                      
                                      S Offline
                                      S Offline
                                      skorpil
                                      schrieb am zuletzt editiert von
                                      #803

                                      @thomas-braun Dankeschön. Ich werde es testen.

                                      Ich war ja schon mal kurz auf der 20, habe aber ein Scriptproblem und bin dann wieder zurück, da ich mein System in der VirtualBox betreibe, ich kann daher stets zurück..

                                      Dieses Script

                                      // ##################################################################

                                      // Erst Ansage, dann Radio ein u. nach 45 min aus

                                      // ##################################################################

                                      // ##################################################################
                                      // Definitionen Ansage
                                      // ##################################################################

                                      // Quellen
                                      var idWetter = "hm-rega.0.29954";
                                      var idTemperatursensor = 'hm-rpc.0.OEQ1296052.1.TEMPERATURE'/Außentemperatur:1 TEMPERATURE/
                                      // var idSayVar = "hm-rega.0.38101";//Variable Sayit <= Alt, wenn Steuerung via CCU Variable;
                                      var idBM = 'hm-rpc.0.JEQ0266058.1.MOTION'/BewMldr Treppenhaus:1 MOTION/

                                      // Definition APIsay Büro Ikea;
                                      // var APIsayBuero = "http://192.168.0.105:5005/Büro Ikea/say/";

                                      // Definition APIsay Schlafzimmer;
                                      // var APIsaySchlafzimmer = "http://192.168.0.105:5005/Schlafzimmer/say/";

                                      // Definition APIsay Kueche;
                                      var APIsayKueche = "http://192.168.0.105:5005/Küche/say/";

                                      // Definition APIsay Terrasse;
                                      // var APIsayTerrasse = "http://192.168.0.105:5005/Terrasse/say/";

                                      // Definition Lautstärke;
                                      var lautstaerke = "50";

                                      var aufstehen = false;

                                      // ####################################################
                                      // Funktionen (Basiswerte ermitteln)
                                      // ####################################################

                                      function ermitteleAnsagedatum () {
                                      //Wochentag ermitteln
                                      var d = new Date ();
                                      var w = new Array("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag");
                                      var wochentag = w[d.getDay()];

                                          //Tagesdatum ermitteln
                                          var tag = d.getDate();
                                      
                                          //Monat ermitteln
                                          var month = new Array("Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember");
                                          var monat = month[d.getMonth()];
                                      
                                          //Jahr ermitteln
                                          var jahr = d.getFullYear();
                                      
                                          //Stunde ermitteln
                                          var stunde = d.getHours();
                                      
                                          //Minute ermitteln
                                          var minute = d.getMinutes();
                                      
                                          //Begrüssung ermitteln
                                          var Begr = " ";
                                          if(stunde<=12){Begr = "Guten Morgen"};
                                          if(stunde>=12 && stunde<=17){Begr = "Guten Tag"};
                                          if(stunde>17){Begr = "Guten Abend"};
                                      
                                          return { // zurückgeben
                                              'Jahr'      : jahr,
                                              'Monat'     : monat,
                                              'Tag'       : tag,
                                              'Wochentag' : wochentag,
                                              'Stunde'    : stunde,
                                              'Minute'    : minute,
                                              'Begr'      : Begr
                                          };
                                      }
                                      

                                      function ermitteleWetter () { // Wetterbedingungen
                                      var wetterdaten = getState(idWetter).val;
                                      // log('Wetter: ' + wetterdaten);
                                      return(wetterdaten);
                                      }

                                      function ermitteleAnsageTemperatur () {
                                      // Die Außentemperatur ist xx. Das Wetter heute ist xx
                                      // Einfache Temperaturansage mit SayIt.
                                      // Variante 1 mittels splitten der Temperatur, damit die Ansage nicht
                                      // "Es sind 18 Punkt 2 Grad " sagt.

                                      var temperatursensor = getState(idTemperatursensor).val;
                                      var temp_string = temperatursensor.toString();
                                      //    log('Temp  ' + temp_string);
                                      var temp_array = [];
                                      temp_array = temp_string.split(".");
                                      
                                      // Fange leere Nachkommastellen ab. Das passiert, wenn die Temperatur z. B. 18.0 ist.
                                      // Es wird dann nur "18" gelesen.
                                      if (!temp_array[1]) {
                                      temp_array[1] = "0";
                                      //log("Die Nach-Kommastelle in temp_array[1] war nicht vorhanden und wird nun fest auf 0 gesetzt.");
                                      }
                                      return{
                                          'Ganzzahl'      : temp_array[0],
                                          'Nachkommazahl' : temp_array[1]
                                          };
                                      }
                                      

                                      // ##########################################################
                                      // ANSAGE (GETRIGGERT via BewMldr)
                                      // EINMALIG im Zeitraum 6:00 - 10:00, wenn BewMldr
                                      // ##########################################################

                                      on(idBM, function(dp) {

                                      log("Motion ausgelöst");

                                      if(dp.state.val && compareTime('6:00', '10:00', 'between') && !aufstehen) {
                                      aufstehen = true;

                                        log("Motion ausgelöst, in der Zeit und aufstehen falsch");
                                      
                                      // ##########################################################
                                      //         ANSAGE Verögerung 10 sec
                                      // ##########################################################
                                      
                                      setTimeout(function() {
                                      
                                        var ansagetext = ermitteleAnsagedatum().Begr + ", heute ist " + ermitteleAnsagedatum().Wochentag + " der " + ermitteleAnsagedatum().Tag + "te " + ermitteleAnsagedatum().Monat + ' ' + ermitteleAnsagedatum().Jahr 
                                                  + ". Es ist " + ermitteleAnsagedatum().Stunde + "  Uhr und " + ermitteleAnsagedatum().Minute + "  Minuten." 
                                                  + " Die Aussentemperatur beträgt " + ermitteleAnsageTemperatur().Ganzzahl + "," + ermitteleAnsageTemperatur().Nachkommazahl + " Grad." 
                                                  + " Wetter Bedingungen, " + ermitteleWetter() +" .";
                                      

                                      // ##################################################################
                                      // Ansagetext zusammenstellen und in Objekt schreiben
                                      // ##################################################################

                                      // Ansagetext
                                          // Basisansage
                                          var Ansage = ansagetext;
                                          
                                          //Geburtstagsansage
                                          var tempGEBURTSTAGE = "javascript.0.Ansage.GeburtstageHEUTE";
                                          var AnsageGEBURTSTAGE = getState(tempGEBURTSTAGE).val;
                                          
                                          //Muellsansage heute
                                          var tempMUELLheute = "javascript.0.Ansage.MuellHEUTE";
                                          var AnsageMUELLheute = getState(tempMUELLheute).val;
                                          
                                          //Muellsansage Zukunft
                                          var tempMUELLzukunft = "javascript.0.Ansage.MuellZUKUNFT";
                                          var AnsageMUELLzukunft = getState(tempMUELLzukunft).val;
                                      
                                      /*log("Tempansage--------------------->" + tempAnsage);
                                      log("Ansage--------------------->" + Ansage);
                                      

                                      {1}
                                      log("tempGEBURTSTAGE--------------------->" + tempGEBURTSTAGE);
                                      log("AnsageGEBURTSTAGE--------------------->" + AnsageGEBURTSTAGE);
                                      {1}
                                      log("tempMUELLheute--------------------->" + tempMUELLheute);
                                      log("AnsageMUELLheute--------------------->" + AnsageMUELLheute);
                                      {1}
                                      log("tempMUELLzukunft--------------------->" + tempMUELLzukunft);
                                      log("AnsageMUELLzukunft--------------------->" + AnsageMUELLzukunft);*/

                                      // ####################################################
                                      // Wenn Geburtstag dann mit ansagen
                                      // ####################################################
                                      
                                      if (AnsageGEBURTSTAGE.length > 2) { // wenn der Inhalt des Objektes "AnsageGEBURTSTAGE" größer als 2 Zeichen lang ist, dann ...
                                          Ansage = Ansage + "Heute haben Geburtstag, " + AnsageGEBURTSTAGE +" .";
                                          //log("Ansage mit Geburtstag--------------------->" + Ansage);
                                      }
                                      
                                      
                                      // ####################################################
                                      // Wenn Müll dann mit ansagen
                                      // ####################################################
                                      
                                      if (AnsageMUELLheute.length > 2) { // wenn der Inhalt des Objektes "AnsageMUELLheute" größer als 2 Zeichen lang ist, dann ...
                                          Ansage = Ansage + "  Achtung, heute ist " + AnsageMUELLheute +" ." + "Bitte an die Strasse stellen" + " !";
                                          //log("Ansage mit Geburtstag und Muell heute--------------------->" + Ansage);
                                      }
                                      
                                      // ####################################################
                                      // Wenn Müll ZUKUNFT, dann mit ansagen
                                      // ####################################################
                                      
                                      if (AnsageMUELLzukunft.length > 2) { // wenn der Inhalt des Objektes "AnsageMUELLzukunft" größer als 2 Zeichen lang ist, dann ...
                                          Ansage = Ansage + "  Achtung, morgen ist " + AnsageMUELLzukunft + " ." + "Bitte MORGEN an die Strasse stellen" + " !";
                                          //log("Ansage mit Geburtstag und Muell heute und morgen--------------------->" + Ansage);
                                      }    
                                      
                                      //Ansage
                                      Ansage = APIsayKueche + Ansage + "/" + lautstaerke;       
                                      
                                      ansagenSonos(Ansage);//Funktion mit HttpGet in Global
                                      

                                      }, 15000);
                                      // Ende timeout/ Verzögerung

                                      //****************************************************************************************** */

                                      //************************************************
                                      //Javascript zum Schalten von Sonos via BewMldr
                                      //************************************************

                                          /* Das folgende sind nur Befehle, die ich mir aufgehoben habe: 
                                          // var idSonosfav = getState("sonos.0.root.192_168_0_63.favorites_list").val;      //speichern des aktuellen Senders
                                          // var idSonosplay = getState ("sonos.0.root.192_168_0_63.state_simple").val;     //Status des Speakers
                                          // laut = getState('sonos.0.root.' + raum + '.volume').val;
                                          // log(idSonosfav);
                                          // log(idSonosplay);*/
                                      

                                      //*******************************************
                                      // Definitionen für Radio
                                      //*******************************************

                                      // *******************************************************************************  
                                      // Info zum Verzeichnis     /home/brs/node-sonos-http-api-master/static/says/;
                                      // Definitionen MP3;
                                      // herzlichWillkommen.mp3";
                                      // var herz = "herzlichWillkommen.mp3";
                                      // HundeGebell.mp3;
                                      // var hund = "HundeGebell.mp3";
                                      // Rolladen.mp3;
                                      // var roll = "Rolladen.mp3";
                                      
                                      //AUFRUF:
                                              //Beispiel: http://192.168.0.105:5005/B%C3%BCro%20Ikea/favorite/RTL - Die besten Hits aller Zeiten
                                      
                                      
                                      // IDsonosAufr = "http://192.168.0.105:5005/"<------hier richtige IP eintragen
                                      
                                      // Definition STRUKTUR
                                      // Achtung, am Ende der Einzelteile des Aufrufs jeweils ein "7"
                                      // IDsonosAufr + IDsonosRaum + IDsonosFunktion + IDsonosSender + laut
                                          
                                          //Favorites bzw. Sender
                                          //IDsonosSender = "104.6 RTL Weihnachtsradio/"
                                          //IDsonosSender = "RTL - Die besten Hits aller Zeiten/"
                                          //IDsonosSender = "RTL - Die besten Hits aller Zeiten/"
                                          //IDsonosSender = "RTL Deutschlands Hit-Radio/"
                                      
                                          //Definition Räume
                                          // Definition raum Büro Ikea;
                                          // IDsonosRaum ="B%C3%BCro%20Ikea/";
                                      
                                          // Definition raum Schlafzimmer;
                                          // IDsonosRaum = "Schlafzimmer/";
                                      
                                          // Definition raum Kueche;
                                          // IDsonosRaum = "K%C3%BCche/";
                                      
                                          // Definition raum Terrasse;
                                          // IDsonosRaum = "Terrasse/";
                                      
                                          // Definition Funktionen
                                          // IDsonosFunktion = "say/"
                                          // IDsonosFunktion = "clip/"
                                          // IDsonosFunktion = "favorite/"
                                          // IDsonosFunktion = "pause"; <-------ohne "/"
                                      
                                      
                                      
                                      //STOP
                                      //BEISPIEL: http://192.168.0.105:5005/B%C3%BCro%20Ikea/pause
                                      //STRUKTUR: IDsonosAufr + IDsonosRaum + IDsonosFunktion
                                      
                                      // das ist der Aufruf
                                      // ansagenSonos(radioAbspiel);
                                      // Funktion mit HttpGet in Global
                                      
                                      // Anweisung setzen LAUTSTAERKE
                                      // var laut = "8";//<------hier gewünschte LAUTSTÄRKE eintragen
                                      
                                      // *******************************************************************************  
                                      

                                      var IDsonosAufr = "http://192.168.0.105:5005/";
                                      var IDsonosRaum = "K%C3%BCche/";

                                      // ************************************************  
                                      // Auswahl Radiosender
                                          // Sender muß in Favoriten vorhanden sein
                                          // momentan: 104.6 RTL Weihnachtsradio, RTL Deutschlands Hit-Radio, RTL - Die besten Hits aller Zeiten
                                      // ************************************************
                                      

                                      var IDsonosSender = "RTL - Die besten Hits aller Zeiten/";
                                      // var radioAbspiel = IDsonosAufr + IDsonosRaum + IDsonosFunktion + IDsonosSender;

                                      setTimeout(function() {
                                      // ************************************************
                                      // nach 60 sekunden starten
                                      // ************************************************

                                      // Befehle ausführen

                                      // ************************************************
                                      // Befehl zum play
                                      // ************************************************
                                      

                                      var IDsonosFunktion = "favorite/";
                                      var radioAbspiel = IDsonosAufr + IDsonosRaum + IDsonosFunktion + IDsonosSender;

                                      ansagenSonos(radioAbspiel);//Funktion mit HttpGet in Global

                                      // Lautstaeke einstellen
                                      var IDsonosFunktion = "volume/";
                                      var laut = "8";
                                      var radioAbspiel = IDsonosAufr + IDsonosRaum + IDsonosFunktion + laut;

                                      ansagenSonos(radioAbspiel);//Funktion mit HttpGet in Global

                                      // Ende lautstaerke

                                      }, 60000);
                                      // Ende timeout für Start

                                      setTimeout(function() {
                                      // ************************************************
                                      // Befehl zum stop nach 45 Minuten
                                      // ************************************************

                                      var IDsonosFunktion = "pause";
                                      var radioAbspielStop = IDsonosAufr + IDsonosRaum + IDsonosFunktion;

                                      log("radioAbspielStop--------------------->" + radioAbspielStop);

                                      ansagenSonos(radioAbspielStop);//Funktion mit HttpGet in Global

                                      }, 2700000);
                                      // Ende timeout für Stop

                                      }
                                      // Ende If

                                      });

                                      // ####################################################
                                      //     var "aufstehen" zurücksetzen auf false um 3 Uhr
                                      // ####################################################
                                      

                                      schedule('0 3 * * *', function() {
                                      aufstehen = false;
                                      });

                                      in Verbindung mit diesem globalen Script


                                      function ansagenSonos(url) {
                                      httpGet(url, {timeout: 30000}, (error) => {
                                      if(error) {
                                      console.error(error);
                                      }
                                      });
                                      }

                                      Unter der Version 18 laufen meine Scripte komplett fehlerfrei durch. Unter der 20er Version entsteht der Fehler "socket hang up".

                                      Ich teste nochmal das update auf die 20 und werde hier berichten.

                                      Thomas BraunT 1 Antwort Letzte Antwort
                                      0
                                      • S skorpil

                                        @thomas-braun Dankeschön. Ich werde es testen.

                                        Ich war ja schon mal kurz auf der 20, habe aber ein Scriptproblem und bin dann wieder zurück, da ich mein System in der VirtualBox betreibe, ich kann daher stets zurück..

                                        Dieses Script

                                        // ##################################################################

                                        // Erst Ansage, dann Radio ein u. nach 45 min aus

                                        // ##################################################################

                                        // ##################################################################
                                        // Definitionen Ansage
                                        // ##################################################################

                                        // Quellen
                                        var idWetter = "hm-rega.0.29954";
                                        var idTemperatursensor = 'hm-rpc.0.OEQ1296052.1.TEMPERATURE'/Außentemperatur:1 TEMPERATURE/
                                        // var idSayVar = "hm-rega.0.38101";//Variable Sayit <= Alt, wenn Steuerung via CCU Variable;
                                        var idBM = 'hm-rpc.0.JEQ0266058.1.MOTION'/BewMldr Treppenhaus:1 MOTION/

                                        // Definition APIsay Büro Ikea;
                                        // var APIsayBuero = "http://192.168.0.105:5005/Büro Ikea/say/";

                                        // Definition APIsay Schlafzimmer;
                                        // var APIsaySchlafzimmer = "http://192.168.0.105:5005/Schlafzimmer/say/";

                                        // Definition APIsay Kueche;
                                        var APIsayKueche = "http://192.168.0.105:5005/Küche/say/";

                                        // Definition APIsay Terrasse;
                                        // var APIsayTerrasse = "http://192.168.0.105:5005/Terrasse/say/";

                                        // Definition Lautstärke;
                                        var lautstaerke = "50";

                                        var aufstehen = false;

                                        // ####################################################
                                        // Funktionen (Basiswerte ermitteln)
                                        // ####################################################

                                        function ermitteleAnsagedatum () {
                                        //Wochentag ermitteln
                                        var d = new Date ();
                                        var w = new Array("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag");
                                        var wochentag = w[d.getDay()];

                                            //Tagesdatum ermitteln
                                            var tag = d.getDate();
                                        
                                            //Monat ermitteln
                                            var month = new Array("Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember");
                                            var monat = month[d.getMonth()];
                                        
                                            //Jahr ermitteln
                                            var jahr = d.getFullYear();
                                        
                                            //Stunde ermitteln
                                            var stunde = d.getHours();
                                        
                                            //Minute ermitteln
                                            var minute = d.getMinutes();
                                        
                                            //Begrüssung ermitteln
                                            var Begr = " ";
                                            if(stunde<=12){Begr = "Guten Morgen"};
                                            if(stunde>=12 && stunde<=17){Begr = "Guten Tag"};
                                            if(stunde>17){Begr = "Guten Abend"};
                                        
                                            return { // zurückgeben
                                                'Jahr'      : jahr,
                                                'Monat'     : monat,
                                                'Tag'       : tag,
                                                'Wochentag' : wochentag,
                                                'Stunde'    : stunde,
                                                'Minute'    : minute,
                                                'Begr'      : Begr
                                            };
                                        }
                                        

                                        function ermitteleWetter () { // Wetterbedingungen
                                        var wetterdaten = getState(idWetter).val;
                                        // log('Wetter: ' + wetterdaten);
                                        return(wetterdaten);
                                        }

                                        function ermitteleAnsageTemperatur () {
                                        // Die Außentemperatur ist xx. Das Wetter heute ist xx
                                        // Einfache Temperaturansage mit SayIt.
                                        // Variante 1 mittels splitten der Temperatur, damit die Ansage nicht
                                        // "Es sind 18 Punkt 2 Grad " sagt.

                                        var temperatursensor = getState(idTemperatursensor).val;
                                        var temp_string = temperatursensor.toString();
                                        //    log('Temp  ' + temp_string);
                                        var temp_array = [];
                                        temp_array = temp_string.split(".");
                                        
                                        // Fange leere Nachkommastellen ab. Das passiert, wenn die Temperatur z. B. 18.0 ist.
                                        // Es wird dann nur "18" gelesen.
                                        if (!temp_array[1]) {
                                        temp_array[1] = "0";
                                        //log("Die Nach-Kommastelle in temp_array[1] war nicht vorhanden und wird nun fest auf 0 gesetzt.");
                                        }
                                        return{
                                            'Ganzzahl'      : temp_array[0],
                                            'Nachkommazahl' : temp_array[1]
                                            };
                                        }
                                        

                                        // ##########################################################
                                        // ANSAGE (GETRIGGERT via BewMldr)
                                        // EINMALIG im Zeitraum 6:00 - 10:00, wenn BewMldr
                                        // ##########################################################

                                        on(idBM, function(dp) {

                                        log("Motion ausgelöst");

                                        if(dp.state.val && compareTime('6:00', '10:00', 'between') && !aufstehen) {
                                        aufstehen = true;

                                          log("Motion ausgelöst, in der Zeit und aufstehen falsch");
                                        
                                        // ##########################################################
                                        //         ANSAGE Verögerung 10 sec
                                        // ##########################################################
                                        
                                        setTimeout(function() {
                                        
                                          var ansagetext = ermitteleAnsagedatum().Begr + ", heute ist " + ermitteleAnsagedatum().Wochentag + " der " + ermitteleAnsagedatum().Tag + "te " + ermitteleAnsagedatum().Monat + ' ' + ermitteleAnsagedatum().Jahr 
                                                    + ". Es ist " + ermitteleAnsagedatum().Stunde + "  Uhr und " + ermitteleAnsagedatum().Minute + "  Minuten." 
                                                    + " Die Aussentemperatur beträgt " + ermitteleAnsageTemperatur().Ganzzahl + "," + ermitteleAnsageTemperatur().Nachkommazahl + " Grad." 
                                                    + " Wetter Bedingungen, " + ermitteleWetter() +" .";
                                        

                                        // ##################################################################
                                        // Ansagetext zusammenstellen und in Objekt schreiben
                                        // ##################################################################

                                        // Ansagetext
                                            // Basisansage
                                            var Ansage = ansagetext;
                                            
                                            //Geburtstagsansage
                                            var tempGEBURTSTAGE = "javascript.0.Ansage.GeburtstageHEUTE";
                                            var AnsageGEBURTSTAGE = getState(tempGEBURTSTAGE).val;
                                            
                                            //Muellsansage heute
                                            var tempMUELLheute = "javascript.0.Ansage.MuellHEUTE";
                                            var AnsageMUELLheute = getState(tempMUELLheute).val;
                                            
                                            //Muellsansage Zukunft
                                            var tempMUELLzukunft = "javascript.0.Ansage.MuellZUKUNFT";
                                            var AnsageMUELLzukunft = getState(tempMUELLzukunft).val;
                                        
                                        /*log("Tempansage--------------------->" + tempAnsage);
                                        log("Ansage--------------------->" + Ansage);
                                        

                                        {1}
                                        log("tempGEBURTSTAGE--------------------->" + tempGEBURTSTAGE);
                                        log("AnsageGEBURTSTAGE--------------------->" + AnsageGEBURTSTAGE);
                                        {1}
                                        log("tempMUELLheute--------------------->" + tempMUELLheute);
                                        log("AnsageMUELLheute--------------------->" + AnsageMUELLheute);
                                        {1}
                                        log("tempMUELLzukunft--------------------->" + tempMUELLzukunft);
                                        log("AnsageMUELLzukunft--------------------->" + AnsageMUELLzukunft);*/

                                        // ####################################################
                                        // Wenn Geburtstag dann mit ansagen
                                        // ####################################################
                                        
                                        if (AnsageGEBURTSTAGE.length > 2) { // wenn der Inhalt des Objektes "AnsageGEBURTSTAGE" größer als 2 Zeichen lang ist, dann ...
                                            Ansage = Ansage + "Heute haben Geburtstag, " + AnsageGEBURTSTAGE +" .";
                                            //log("Ansage mit Geburtstag--------------------->" + Ansage);
                                        }
                                        
                                        
                                        // ####################################################
                                        // Wenn Müll dann mit ansagen
                                        // ####################################################
                                        
                                        if (AnsageMUELLheute.length > 2) { // wenn der Inhalt des Objektes "AnsageMUELLheute" größer als 2 Zeichen lang ist, dann ...
                                            Ansage = Ansage + "  Achtung, heute ist " + AnsageMUELLheute +" ." + "Bitte an die Strasse stellen" + " !";
                                            //log("Ansage mit Geburtstag und Muell heute--------------------->" + Ansage);
                                        }
                                        
                                        // ####################################################
                                        // Wenn Müll ZUKUNFT, dann mit ansagen
                                        // ####################################################
                                        
                                        if (AnsageMUELLzukunft.length > 2) { // wenn der Inhalt des Objektes "AnsageMUELLzukunft" größer als 2 Zeichen lang ist, dann ...
                                            Ansage = Ansage + "  Achtung, morgen ist " + AnsageMUELLzukunft + " ." + "Bitte MORGEN an die Strasse stellen" + " !";
                                            //log("Ansage mit Geburtstag und Muell heute und morgen--------------------->" + Ansage);
                                        }    
                                        
                                        //Ansage
                                        Ansage = APIsayKueche + Ansage + "/" + lautstaerke;       
                                        
                                        ansagenSonos(Ansage);//Funktion mit HttpGet in Global
                                        

                                        }, 15000);
                                        // Ende timeout/ Verzögerung

                                        //****************************************************************************************** */

                                        //************************************************
                                        //Javascript zum Schalten von Sonos via BewMldr
                                        //************************************************

                                            /* Das folgende sind nur Befehle, die ich mir aufgehoben habe: 
                                            // var idSonosfav = getState("sonos.0.root.192_168_0_63.favorites_list").val;      //speichern des aktuellen Senders
                                            // var idSonosplay = getState ("sonos.0.root.192_168_0_63.state_simple").val;     //Status des Speakers
                                            // laut = getState('sonos.0.root.' + raum + '.volume').val;
                                            // log(idSonosfav);
                                            // log(idSonosplay);*/
                                        

                                        //*******************************************
                                        // Definitionen für Radio
                                        //*******************************************

                                        // *******************************************************************************  
                                        // Info zum Verzeichnis     /home/brs/node-sonos-http-api-master/static/says/;
                                        // Definitionen MP3;
                                        // herzlichWillkommen.mp3";
                                        // var herz = "herzlichWillkommen.mp3";
                                        // HundeGebell.mp3;
                                        // var hund = "HundeGebell.mp3";
                                        // Rolladen.mp3;
                                        // var roll = "Rolladen.mp3";
                                        
                                        //AUFRUF:
                                                //Beispiel: http://192.168.0.105:5005/B%C3%BCro%20Ikea/favorite/RTL - Die besten Hits aller Zeiten
                                        
                                        
                                        // IDsonosAufr = "http://192.168.0.105:5005/"<------hier richtige IP eintragen
                                        
                                        // Definition STRUKTUR
                                        // Achtung, am Ende der Einzelteile des Aufrufs jeweils ein "7"
                                        // IDsonosAufr + IDsonosRaum + IDsonosFunktion + IDsonosSender + laut
                                            
                                            //Favorites bzw. Sender
                                            //IDsonosSender = "104.6 RTL Weihnachtsradio/"
                                            //IDsonosSender = "RTL - Die besten Hits aller Zeiten/"
                                            //IDsonosSender = "RTL - Die besten Hits aller Zeiten/"
                                            //IDsonosSender = "RTL Deutschlands Hit-Radio/"
                                        
                                            //Definition Räume
                                            // Definition raum Büro Ikea;
                                            // IDsonosRaum ="B%C3%BCro%20Ikea/";
                                        
                                            // Definition raum Schlafzimmer;
                                            // IDsonosRaum = "Schlafzimmer/";
                                        
                                            // Definition raum Kueche;
                                            // IDsonosRaum = "K%C3%BCche/";
                                        
                                            // Definition raum Terrasse;
                                            // IDsonosRaum = "Terrasse/";
                                        
                                            // Definition Funktionen
                                            // IDsonosFunktion = "say/"
                                            // IDsonosFunktion = "clip/"
                                            // IDsonosFunktion = "favorite/"
                                            // IDsonosFunktion = "pause"; <-------ohne "/"
                                        
                                        
                                        
                                        //STOP
                                        //BEISPIEL: http://192.168.0.105:5005/B%C3%BCro%20Ikea/pause
                                        //STRUKTUR: IDsonosAufr + IDsonosRaum + IDsonosFunktion
                                        
                                        // das ist der Aufruf
                                        // ansagenSonos(radioAbspiel);
                                        // Funktion mit HttpGet in Global
                                        
                                        // Anweisung setzen LAUTSTAERKE
                                        // var laut = "8";//<------hier gewünschte LAUTSTÄRKE eintragen
                                        
                                        // *******************************************************************************  
                                        

                                        var IDsonosAufr = "http://192.168.0.105:5005/";
                                        var IDsonosRaum = "K%C3%BCche/";

                                        // ************************************************  
                                        // Auswahl Radiosender
                                            // Sender muß in Favoriten vorhanden sein
                                            // momentan: 104.6 RTL Weihnachtsradio, RTL Deutschlands Hit-Radio, RTL - Die besten Hits aller Zeiten
                                        // ************************************************
                                        

                                        var IDsonosSender = "RTL - Die besten Hits aller Zeiten/";
                                        // var radioAbspiel = IDsonosAufr + IDsonosRaum + IDsonosFunktion + IDsonosSender;

                                        setTimeout(function() {
                                        // ************************************************
                                        // nach 60 sekunden starten
                                        // ************************************************

                                        // Befehle ausführen

                                        // ************************************************
                                        // Befehl zum play
                                        // ************************************************
                                        

                                        var IDsonosFunktion = "favorite/";
                                        var radioAbspiel = IDsonosAufr + IDsonosRaum + IDsonosFunktion + IDsonosSender;

                                        ansagenSonos(radioAbspiel);//Funktion mit HttpGet in Global

                                        // Lautstaeke einstellen
                                        var IDsonosFunktion = "volume/";
                                        var laut = "8";
                                        var radioAbspiel = IDsonosAufr + IDsonosRaum + IDsonosFunktion + laut;

                                        ansagenSonos(radioAbspiel);//Funktion mit HttpGet in Global

                                        // Ende lautstaerke

                                        }, 60000);
                                        // Ende timeout für Start

                                        setTimeout(function() {
                                        // ************************************************
                                        // Befehl zum stop nach 45 Minuten
                                        // ************************************************

                                        var IDsonosFunktion = "pause";
                                        var radioAbspielStop = IDsonosAufr + IDsonosRaum + IDsonosFunktion;

                                        log("radioAbspielStop--------------------->" + radioAbspielStop);

                                        ansagenSonos(radioAbspielStop);//Funktion mit HttpGet in Global

                                        }, 2700000);
                                        // Ende timeout für Stop

                                        }
                                        // Ende If

                                        });

                                        // ####################################################
                                        //     var "aufstehen" zurücksetzen auf false um 3 Uhr
                                        // ####################################################
                                        

                                        schedule('0 3 * * *', function() {
                                        aufstehen = false;
                                        });

                                        in Verbindung mit diesem globalen Script


                                        function ansagenSonos(url) {
                                        httpGet(url, {timeout: 30000}, (error) => {
                                        if(error) {
                                        console.error(error);
                                        }
                                        });
                                        }

                                        Unter der Version 18 laufen meine Scripte komplett fehlerfrei durch. Unter der 20er Version entsteht der Fehler "socket hang up".

                                        Ich teste nochmal das update auf die 20 und werde hier berichten.

                                        Thomas BraunT Online
                                        Thomas BraunT Online
                                        Thomas Braun
                                        Most Active
                                        schrieb am zuletzt editiert von
                                        #804

                                        @skorpil sagte in Diskussion zum HowTo nodejs-Installation und upgrade:

                                        und werde hier berichten.

                                        Bitte nicht hier. Mach einen eigenen Thread mit deinem Skript auf.

                                        Linux-Werkzeugkasten:
                                        https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                                        NodeJS Fixer Skript:
                                        https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                                        iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                                        S 1 Antwort Letzte Antwort
                                        1
                                        • Thomas BraunT Thomas Braun

                                          @skorpil sagte in Diskussion zum HowTo nodejs-Installation und upgrade:

                                          und werde hier berichten.

                                          Bitte nicht hier. Mach einen eigenen Thread mit deinem Skript auf.

                                          S Offline
                                          S Offline
                                          skorpil
                                          schrieb am zuletzt editiert von
                                          #805

                                          @thomas-braun okay! Da es offenbar mit nodejs zusammenhängt anderseits auch das Scripten betrifft: in welches Kategorie sollte ich das posten, damit es die richtigen Leute sehen?

                                          Und nochmals danke!

                                          Thomas BraunT 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

                                          585

                                          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