Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. NPM-Modul dgram

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    NPM-Modul dgram

    This topic has been deleted. Only users with topic management privileges can see it.
    • joergeli
      joergeli last edited by

      Hallo zusammen,

      ich habe eine Frage an die Experten hier:
      Muß im JavaScript-Adapter zusätzlich das NPM-Modul dgram eingetragen werden oder wurde es bereits mit dem Adapter installiert?

      Hintergrund der Frage ist, daß bei einem Bastlerkollegen an einer "ioBroker Matrix Anzeige" (Laufschrift) keine Daten aus ioBroker ankommen und wir nach der Ursache forschen.
      siehe : esp-matrix-anzeige-fully-iobroker-steuerbar

      Mit einem Javascript sollen per UDP Daten an die Laufschrift gesendet werden.
      Hier der Code-Schnipsel, der die Daten senden soll:

      
      
          // "update" an WEMOS senden (pushen), damit dort die Laufschrift sofort aktualisiert wird
          const dgram = require('dgram');
          var udpPort = 6610
          var udpMessage = "update"
          var client = dgram.createSocket('udp4');
          client.send(udpMessage, 0, udpMessage.length, udpPort, udpIP, function(err, bytes) {
              if (err) throw err;
              client.close();
          })
      
      

      Bei meiner Laufschrift funktioniert es, bei seiner nicht.
      Allerdings habe ich meine Laufschrift schon vor ca. 1 Jahr gebaut und bin mir nicht sicher, ob ich damals "dgram" unter den zusätzliche JS-Modulen eingetragen hatte.
      Nach Upgrade von Raspi3 auf Raspi4 und JS-Controller 2.xx ist es bei mir unter den zusätzlichen JS-Modulen nicht mehr zu sehen. Wenn ich es jetzt dort manuell eintrage, startet nur die JS-Instanz neu und im Log ist diesbzgl. auch nichts zu sehen.

      Gruß und Danke
      Jörg

      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @joergeli last edited by

        @joergeli sagte:

        Muß im JavaScript-Adapter zusätzlich das NPM-Modul dgram eingetragen werden oder wurde es bereits mit dem Adapter installiert?

        dgram wurde bereits mit dem JS-Adapter installiert.

        joergeli 1 Reply Last reply Reply Quote 0
        • joergeli
          joergeli @paul53 last edited by

          @paul53
          Danke, dann kann unser Problem nicht damit zusammenhängen.

          Gruß
          Jörg

          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @joergeli last edited by paul53

            @joergeli
            Korrektur: Offenbar wird das Modul dgram doch nicht mit dem JS-Controller installiert, denn es fehlt im Verzeichnis /opt/iobroker/node_modules/iobroker.javascript/node_modules und ist in den "dependencies" nicht aufgeführt.
            In der "main.js" des Adapters, Zeile 42 steht die Anweisung

                dgram:            require('dgram'),
            

            , was zu meiner Annahme führte, dass das Modul installiert sein müsste.

            joergeli 1 Reply Last reply Reply Quote 0
            • foxriver76
              foxriver76 Developer last edited by foxriver76

              dgram wird grundsätzlich mit npm/node installiert - ist ein Core Package - s. a. https://www.npmjs.com/package/dgram

              Und wenn require('dgram') fehlschlagen sollte, müsste ja auch was im Log stehen. Gibt es denn eine Fehlermeldung im Log, die evtl. Aufschluss gibt warum dein Programm nicht läuft?

              joergeli 1 Reply Last reply Reply Quote 1
              • joergeli
                joergeli @paul53 last edited by joergeli

                @paul53
                Mmmmh.., bei mir ist in obigem Verzeichnis der Ordner dgram vorhanden (wahrscheinlich weil ich es mal manuell unter den Zusatzmodulen des JS-Adapters eingetragen hatte).
                Allerdings steht dort in der README.md:

                # Security holding package
                
                This package name is not currently in use, but was formerly occupied
                by another package. To avoid malicious use, npm is hanging on to the
                package name, but loosely, and we'll probably give it to you if you
                want it.
                
                You may adopt this package by contacting support@npmjs.com and
                requesting the name.
                

                Anscheinend wird es nur noch aus "Sicherheitsgründen?" dort vorgehalten.

                AlCalzone 1 Reply Last reply Reply Quote 0
                • joergeli
                  joergeli @foxriver76 last edited by

                  @foxriver76
                  Bei mir läuft es ja, ich versuche nur einem Bastlerkollegen (s. Link im ersten Post) zu helfen, bei dem Daten, die aus ioBroker via UDP verschickt werden sollen, nicht ankommen, bzw. empfangen werden.
                  Kann aber auch sein, daß das Problem beim Empfänger (WEMOS D1 mini) liegt.
                  Ich versuche, das Problem einzugrenzen und habe ihn jetzt gebeten, mir sein Script mal zum Testen zur Verfügung zu stellen.

                  Danke
                  Jörg

                  1 Reply Last reply Reply Quote 0
                  • AlCalzone
                    AlCalzone Developer @joergeli last edited by AlCalzone

                    @joergeli @paul53 dgram ist (wie fs, path, etc...) ein Kernmodul von Node.js und daher immer vorhanden. https://nodejs.org/api/dgram.html

                    paul53 1 Reply Last reply Reply Quote 1
                    • paul53
                      paul53 @AlCalzone last edited by

                      @AlCalzone
                      Danke. Es hätte mich auch gewundert, wenn der JS-Adapter ein nicht installiertes Modul anfordert.

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

                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      763
                      Online

                      31.7k
                      Users

                      79.8k
                      Topics

                      1.3m
                      Posts

                      4
                      9
                      452
                      Loading More Posts
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes
                      Reply
                      • Reply as topic
                      Log in to reply
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                      The ioBroker Community 2014-2023
                      logo