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. Entwicklung
  4. Problem beim Einbinden eines node.js Adapters

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    324

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.5k

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

Problem beim Einbinden eines node.js Adapters

Geplant Angeheftet Gesperrt Verschoben Entwicklung
dependenciesgyp errornode.js
36 Beiträge 3 Kommentatoren 3.4k Aufrufe 3 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.
  • B Boardy

    @UncleSam ok dann versuch ich erst mal den Docker Container lokal zum laufen zu bringen...

    B Offline
    B Offline
    Boardy
    schrieb am zuletzt editiert von
    #24

    @Boardy so, läuft dank der Diskussion zu den Containern
    Link Text
    ging es relativ einfach...

    Was ich im Debugger sehe, er springt direkt von
    b4af4ba4-b218-40ad-a59c-860c1c9aeb52-grafik.png
    zu
    bf0623bb-2cb2-4dc8-b1f3-ed337cca64be-grafik.png
    zu
    6b75ab1c-8053-4160-8c22-13d16dffe9a8-grafik.png b2b601db-585b-4284-885f-379e1708dc5c-grafik.png

    Fehlt mir da noch was? sieht für mich aus als würde er alles deklarieren und dann normal beenden...

    UncleSamU AlCalzoneA 2 Antworten Letzte Antwort
    0
    • B Boardy

      @Boardy so, läuft dank der Diskussion zu den Containern
      Link Text
      ging es relativ einfach...

      Was ich im Debugger sehe, er springt direkt von
      b4af4ba4-b218-40ad-a59c-860c1c9aeb52-grafik.png
      zu
      bf0623bb-2cb2-4dc8-b1f3-ed337cca64be-grafik.png
      zu
      6b75ab1c-8053-4160-8c22-13d16dffe9a8-grafik.png b2b601db-585b-4284-885f-379e1708dc5c-grafik.png

      Fehlt mir da noch was? sieht für mich aus als würde er alles deklarieren und dann normal beenden...

      UncleSamU Offline
      UncleSamU Offline
      UncleSam
      Developer
      schrieb am zuletzt editiert von
      #25

      @Boardy sagte in Problem beim Einbinden eines node.js Adapters:

      Fehlt mir da noch was? sieht für mich aus als würde er alles deklarieren und dann normal beenden...

      Das sieht grundsätzlich gut aus. Ich würde Breakpoints allerdings in der Klasse selber setzen (zB im Konstruktor) und nicht in den Deklarationen. Zudem kannst du mal ganz unten links die Option einschalten, dass der Debugger anhalten soll, wenn eine Exception geschieht (und zwar beides: caught und uncaught). Wenn also was schief geht, hält der Debugger an.

      Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
      ♡-lichen Dank an meine Sponsoren

      B 1 Antwort Letzte Antwort
      0
      • UncleSamU UncleSam

        @Boardy sagte in Problem beim Einbinden eines node.js Adapters:

        Fehlt mir da noch was? sieht für mich aus als würde er alles deklarieren und dann normal beenden...

        Das sieht grundsätzlich gut aus. Ich würde Breakpoints allerdings in der Klasse selber setzen (zB im Konstruktor) und nicht in den Deklarationen. Zudem kannst du mal ganz unten links die Option einschalten, dass der Debugger anhalten soll, wenn eine Exception geschieht (und zwar beides: caught und uncaught). Wenn also was schief geht, hält der Debugger an.

        B Offline
        B Offline
        Boardy
        schrieb am zuletzt editiert von
        #26

        @UncleSam ok da hab ich mich unklar ausgedrückt. Im Konstruktror saß ein Breakpoint - wurde nicht angesprungen..
        nun hab die die Exceptions aktiviert - auch hier werden nur die 3 Coding Stellen s.o. angeprungen... ist sicher ein ganz dummer Anfängerfehler...
        b1c9011f-f7a0-4447-a712-b9d2ce6c0248-grafik.png

        B 1 Antwort Letzte Antwort
        0
        • B Boardy

          @UncleSam ok da hab ich mich unklar ausgedrückt. Im Konstruktror saß ein Breakpoint - wurde nicht angesprungen..
          nun hab die die Exceptions aktiviert - auch hier werden nur die 3 Coding Stellen s.o. angeprungen... ist sicher ein ganz dummer Anfängerfehler...
          b1c9011f-f7a0-4447-a712-b9d2ce6c0248-grafik.png

          B Offline
          B Offline
          Boardy
          schrieb am zuletzt editiert von
          #27

          @Boardy ich habe es hinbekommen.. ich habe den Konstruktor umgebaut analog deinem Luxtronix, nun geht es....

          1 Antwort Letzte Antwort
          0
          • B Boardy

            @Boardy so, läuft dank der Diskussion zu den Containern
            Link Text
            ging es relativ einfach...

            Was ich im Debugger sehe, er springt direkt von
            b4af4ba4-b218-40ad-a59c-860c1c9aeb52-grafik.png
            zu
            bf0623bb-2cb2-4dc8-b1f3-ed337cca64be-grafik.png
            zu
            6b75ab1c-8053-4160-8c22-13d16dffe9a8-grafik.png b2b601db-585b-4284-885f-379e1708dc5c-grafik.png

            Fehlt mir da noch was? sieht für mich aus als würde er alles deklarieren und dann normal beenden...

            AlCalzoneA Offline
            AlCalzoneA Offline
            AlCalzone
            Developer
            schrieb am zuletzt editiert von
            #28

            @Boardy in deinem Screenshot verwendest du require.main zum Prüfen, ob das Modul importiert oder direkt gestartet wurde. Bist du sicher, dass der Check nicht falsch ist (siehe auch https://stackoverflow.com/a/45137096/10179833)?

            if (require.main === module) {
                 // this module was run directly from the command line as in node xxx.js
            } else {
                 // this module was not run directly from the command line and probably loaded by something else
            }
            

            Auf Github sieht es noch so aus
            https://github.com/Bordman-ger/ioBroker.nanodmx/blob/master/src/main.ts#L203-L209
            was funktionieren sollte (und im Übrigen vom Adapter-Creator auch so erzeugt wird).

            Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

            B 1 Antwort Letzte Antwort
            0
            • AlCalzoneA AlCalzone

              @Boardy in deinem Screenshot verwendest du require.main zum Prüfen, ob das Modul importiert oder direkt gestartet wurde. Bist du sicher, dass der Check nicht falsch ist (siehe auch https://stackoverflow.com/a/45137096/10179833)?

              if (require.main === module) {
                   // this module was run directly from the command line as in node xxx.js
              } else {
                   // this module was not run directly from the command line and probably loaded by something else
              }
              

              Auf Github sieht es noch so aus
              https://github.com/Bordman-ger/ioBroker.nanodmx/blob/master/src/main.ts#L203-L209
              was funktionieren sollte (und im Übrigen vom Adapter-Creator auch so erzeugt wird).

              B Offline
              B Offline
              Boardy
              schrieb am zuletzt editiert von
              #29

              @AlCalzone Vielen Dank dass du dir das auch noch mal angesehen hast...
              direct nach dem Creator hatte ich da etwas rumoptimiert weil ich folgenden Hinweis bekommen habe:
              242b8fcc-7266-4fd5-a7f7-f99b12fb1400-grafik.png

              Was nun optimal wäre habe ich noch nicht verstanden aber mit module.parent geht es ja endlich (-:

              Bist du sicher, dass der Check nicht falsch ist
              ich bin mir bei gar nichts sicher, alles Neuland, IOBroker erst seit ein paar Wochen und Node.js, JS, Typescript, VSCode, alles neu... daher stochere ich da sehr im Trüben und versuche bis was bei rauskommt...

              Auf Github sieht es noch so aus
              nein, da ist schon die neue Version es sieht WIEDER gut aus, seit heute Mittag läuft mein Adapter und ich konnte auch schon was damit ansteuern... das Adapter Gerüst war wohl das größte Problem...

              Auch hier noch mal Danke für das schöne Video zum Typescript und eure Hilfe...
              nun geht es vermutlich schnell weiter mit dem proggen..

              Vielen Dank und Gute Nacht (-:

              Uwe

              AlCalzoneA 1 Antwort Letzte Antwort
              1
              • B Boardy

                @AlCalzone Vielen Dank dass du dir das auch noch mal angesehen hast...
                direct nach dem Creator hatte ich da etwas rumoptimiert weil ich folgenden Hinweis bekommen habe:
                242b8fcc-7266-4fd5-a7f7-f99b12fb1400-grafik.png

                Was nun optimal wäre habe ich noch nicht verstanden aber mit module.parent geht es ja endlich (-:

                Bist du sicher, dass der Check nicht falsch ist
                ich bin mir bei gar nichts sicher, alles Neuland, IOBroker erst seit ein paar Wochen und Node.js, JS, Typescript, VSCode, alles neu... daher stochere ich da sehr im Trüben und versuche bis was bei rauskommt...

                Auf Github sieht es noch so aus
                nein, da ist schon die neue Version es sieht WIEDER gut aus, seit heute Mittag läuft mein Adapter und ich konnte auch schon was damit ansteuern... das Adapter Gerüst war wohl das größte Problem...

                Auch hier noch mal Danke für das schöne Video zum Typescript und eure Hilfe...
                nun geht es vermutlich schnell weiter mit dem proggen..

                Vielen Dank und Gute Nacht (-:

                Uwe

                AlCalzoneA Offline
                AlCalzoneA Offline
                AlCalzone
                Developer
                schrieb am zuletzt editiert von
                #30

                @Boardy sagte in Problem beim Einbinden eines node.js Adapters:

                Was nun optimal wäre habe ich noch nicht verstanden aber mit module.parent geht es ja endlich (-:

                Lass es so, ist nur ein Hinweis. Über eine Änderung kann man nachdenken, wenn Node 14 unsere minimal unterstützte Version ist.

                Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                B 1 Antwort Letzte Antwort
                0
                • AlCalzoneA AlCalzone

                  @Boardy sagte in Problem beim Einbinden eines node.js Adapters:

                  Was nun optimal wäre habe ich noch nicht verstanden aber mit module.parent geht es ja endlich (-:

                  Lass es so, ist nur ein Hinweis. Über eine Änderung kann man nachdenken, wenn Node 14 unsere minimal unterstützte Version ist.

                  B Offline
                  B Offline
                  Boardy
                  schrieb am zuletzt editiert von
                  #31

                  @AlCalzone @UncleSam eine Kleinigkeit fehlt noch, dann hab ich den Adapter soweit um mein Minimalziel zu erreichen und die Objektänderungen vom IOBroker kommen im USB Stick an... aber ich hänge noch - vermutlich eine Variablendeklarationsproblem...

                  Könnt ihr bitte noch mal gucken was da schief gehen könnte?
                  1a0c9ecf-56d0-4b7a-a7cf-c6081900a3c0-grafik.png

                  irgend was mit der Portnummer ist schief - es ändert auch nichts wenn ich diese als String definiere, wenn ich den Festwert als 11 oder "11" übergebe geht es... wa sist da falsch?

                  das log
                  346a6bf0-278b-4202-b813-28d6a42d775b-grafik.png

                  Debuggen kann ich leider noch nicht da ich nun in den Synology Container reindebuggen mpüsste und SSH noch nicht läuft

                  mein GitHub ist wieder aktuell

                  AlCalzoneA 1 Antwort Letzte Antwort
                  0
                  • B Boardy

                    @AlCalzone @UncleSam eine Kleinigkeit fehlt noch, dann hab ich den Adapter soweit um mein Minimalziel zu erreichen und die Objektänderungen vom IOBroker kommen im USB Stick an... aber ich hänge noch - vermutlich eine Variablendeklarationsproblem...

                    Könnt ihr bitte noch mal gucken was da schief gehen könnte?
                    1a0c9ecf-56d0-4b7a-a7cf-c6081900a3c0-grafik.png

                    irgend was mit der Portnummer ist schief - es ändert auch nichts wenn ich diese als String definiere, wenn ich den Festwert als 11 oder "11" übergebe geht es... wa sist da falsch?

                    das log
                    346a6bf0-278b-4202-b813-28d6a42d775b-grafik.png

                    Debuggen kann ich leider noch nicht da ich nun in den Synology Container reindebuggen mpüsste und SSH noch nicht läuft

                    mein GitHub ist wieder aktuell

                    AlCalzoneA Offline
                    AlCalzoneA Offline
                    AlCalzone
                    Developer
                    schrieb am zuletzt editiert von
                    #32

                    @Boardy Wenn ich das richtig deute, fehlen da da die eckigen Klammern:

                    ....update({ [portnumber]: state.val }); // setzt die Eigenschaft "11", wenn in portnumber 11 steht
                    

                    One die eckigen Klammern setzt du die Eigenschaft "portnumber" des Objekts.

                    ==> https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Operators/Objekt_Initialisierer, scrolle zu Berechnete Bezeichnernamen

                    Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                    B 2 Antworten Letzte Antwort
                    1
                    • AlCalzoneA AlCalzone

                      @Boardy Wenn ich das richtig deute, fehlen da da die eckigen Klammern:

                      ....update({ [portnumber]: state.val }); // setzt die Eigenschaft "11", wenn in portnumber 11 steht
                      

                      One die eckigen Klammern setzt du die Eigenschaft "portnumber" des Objekts.

                      ==> https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Operators/Objekt_Initialisierer, scrolle zu Berechnete Bezeichnernamen

                      B Offline
                      B Offline
                      Boardy
                      schrieb am zuletzt editiert von
                      #33

                      @AlCalzone :+1: :man_dancing:
                      Dank dir das wars..

                      1 Antwort Letzte Antwort
                      0
                      • AlCalzoneA AlCalzone

                        @Boardy Wenn ich das richtig deute, fehlen da da die eckigen Klammern:

                        ....update({ [portnumber]: state.val }); // setzt die Eigenschaft "11", wenn in portnumber 11 steht
                        

                        One die eckigen Klammern setzt du die Eigenschaft "portnumber" des Objekts.

                        ==> https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Operators/Objekt_Initialisierer, scrolle zu Berechnete Bezeichnernamen

                        B Offline
                        B Offline
                        Boardy
                        schrieb am zuletzt editiert von
                        #34

                        @AlCalzone
                        @UncleSam
                        So, noch mal vielen Dank für die Hilfe, der Adapter lief nun einige Wochen im Test und es gab keine Probleme... was muss ich denn noch machen um den Adapter der Community verfügbar zu machen?

                        UncleSam, mein Adapter sollte universell für ein paar verschiedene DMX Treiber funktionieren, vielleicht läuft er ja auch bei dir?

                        Aus diesem Grund habe ich ihn noch mal umbenannt und er ist nun hier als nodedmx zu finden:
                        https://github.com/Bordman-ger/ioBroker.nodedmx.git

                        LG Uwe

                        UncleSamU 1 Antwort Letzte Antwort
                        0
                        • B Boardy

                          @AlCalzone
                          @UncleSam
                          So, noch mal vielen Dank für die Hilfe, der Adapter lief nun einige Wochen im Test und es gab keine Probleme... was muss ich denn noch machen um den Adapter der Community verfügbar zu machen?

                          UncleSam, mein Adapter sollte universell für ein paar verschiedene DMX Treiber funktionieren, vielleicht läuft er ja auch bei dir?

                          Aus diesem Grund habe ich ihn noch mal umbenannt und er ist nun hier als nodedmx zu finden:
                          https://github.com/Bordman-ger/ioBroker.nodedmx.git

                          LG Uwe

                          UncleSamU Offline
                          UncleSamU Offline
                          UncleSam
                          Developer
                          schrieb am zuletzt editiert von
                          #35

                          @Boardy sagte in Problem beim Einbinden eines node.js Adapters:

                          was muss ich denn noch machen um den Adapter der Community verfügbar zu machen?

                          Du musst ihn nun im Repository eintragen. Alle Infos findest du hier:
                          https://github.com/ioBroker/ioBroker.repositories/

                          UncleSam, mein Adapter sollte universell für ein paar verschiedene DMX Treiber funktionieren, vielleicht läuft er ja auch bei dir?

                          Werde ich mir gerne anschauen. Und wenn es (noch) nicht geht, dann werde ich sicher schauen, dass wir meinen Code bei dir einbringen können.

                          Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
                          ♡-lichen Dank an meine Sponsoren

                          B 1 Antwort Letzte Antwort
                          0
                          • UncleSamU UncleSam

                            @Boardy sagte in Problem beim Einbinden eines node.js Adapters:

                            was muss ich denn noch machen um den Adapter der Community verfügbar zu machen?

                            Du musst ihn nun im Repository eintragen. Alle Infos findest du hier:
                            https://github.com/ioBroker/ioBroker.repositories/

                            UncleSam, mein Adapter sollte universell für ein paar verschiedene DMX Treiber funktionieren, vielleicht läuft er ja auch bei dir?

                            Werde ich mir gerne anschauen. Und wenn es (noch) nicht geht, dann werde ich sicher schauen, dass wir meinen Code bei dir einbringen können.

                            B Offline
                            B Offline
                            Boardy
                            schrieb am zuletzt editiert von Boardy
                            #36

                            @UncleSam Danke - na so richtiger Massentest fehlt ja noch dann mach ich noch mal einen Post im Forum mit etwas aussagekräftigerem Namen und lasse es erst mal dabei...

                            hier geht es weiter:
                            https://forum.iobroker.net/topic/40458/neuer-adapter-für-dmx-controler

                            1 Antwort Letzte Antwort
                            1
                            Antworten
                            • In einem neuen Thema antworten
                            Anmelden zum Antworten
                            • Älteste zuerst
                            • Neuste zuerst
                            • Meiste Stimmen


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            724

                            Online

                            32.5k

                            Benutzer

                            81.7k

                            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