Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Problem bei Entwicklung

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Problem bei Entwicklung

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

      Ich bin gerade dabei, einen Adapter zu entwickeln.

      Als Hilfe dazu habe ich zum einen das Video unter https://www.youtube.com/watch?v=fUMtyYOtRcQ sowie die Dokumentation des ioBroker-Templates https://github.com/ioBroker/ioBroker.template genutzt.

      Damit habe ich es zumindest geschafft, dass ich das Template dann in ioBroker starten konnte.

      Momentan habe ich allerdings noch zwei große Hürden, über die ich noch nicht hinweg komme:

      1. Ich will ebenfalls einen Adapter bauen, der mit Schedule läuft. Die notwendigen Anpassungen werden im Video ja schön beschrieben. Man muss in der Datei io-package.json den Parameter mode ändern und den Parameter schedule passend einfügen.

      Bei mir schaut das so aus````
      "platform": "Javascript/Node.js",
      "mode": "schedule",
      "schedule": "*/5 * * * *",

      Trotzdem ist mein Adapter der Meinung, dass es durchgehend laufen muss. In den Instanzen habe ich keine Möglichkeit einen Schedule zu ändern und auch das Log-File sagt, dass der Adapter durchläuft.
      
      Was mache ich hier falsch?
      
      2\. Ich habe auch versucht, die Parametrieroberfläche in der Datei ****admin/index_m.html**** an meine Daten anzupassen. Aber ich sehe weiterhin die alte Oberfläche.
      
      Was muss ich machen, damit ich endlich die neue Oberfläche sehen und testen kann?
      1 Reply Last reply Reply Quote 0
      • htrecksler
        htrecksler Forum Testing last edited by

        zu 2.

        iobroker upload DEINADAPTER
        
        1 Reply Last reply Reply Quote 0
        • Jey Cee
          Jey Cee Developer last edited by

          Der Adapter Upload sollte beide Probleme beheben.

          Im Zweifelsfall noch den Browser cache leeren.

          1 Reply Last reply Reply Quote 0
          • apollon77
            apollon77 last edited by

            Und im Notfall iobroker restarten.

            Bei solchen Änderungen musst du auch existierende Instanzen löschen! Der typ kann nur über Umwege geändert werden.

            1 Reply Last reply Reply Quote 0
            • K
              Karl_999 last edited by

              Danke erst einmal für die Antworten.

              Jetzt wollte ich frohen Mutes noch einmal von vorne starten und falle noch einen Schritt früher auf die Nase.

              Nach dem Klonen des ioBroker.templates scheitert der "npm install"

              npm install
              npm ERR! path /opt/iobroker/node_modules/iobroker.myadapter
              npm ERR! code EISGIT
              npm ERR! git /opt/iobroker/node_modules/iobroker.myadapter: Appears to be a git repo or submodule.
              npm ERR! git     /opt/iobroker/node_modules/iobroker.myadapter
              npm ERR! git Refusing to remove it. Update manually,
              npm ERR! git or move it out of the way first.
              
              npm ERR! A complete log of this run can be found in:
              npm ERR!     /home/pi/.npm/_logs/debug.log
              
              

              Gestern hatte dies noch problemlos geklappt 😮

              Was will mir diese Fehlermeldung sagen?

              Was mache ich falsch?

              Nachtrag: Dieses Problem ist gelöst. Ich hatte den "npm install" im falschen Verzeichnis gestartet. Korrekt ist das Unterverzeichnis iobroker.adaptername

              1 Reply Last reply Reply Quote 0
              • K
                Karl_999 last edited by

                Mittlerweile habe ich den Adapter bereits am Laufen.

                Der Adapter funktioniert mit Schedule und soll zyklisch Daten lesen.

                Allerdings funktioniert er nur im debug-Modus mit manuellem Start (wie in viewtopic.php?f=24&t=4577 beschrieben).

                Er läuft (allerdings ohne Schedule) einmal durch, liest die Daten und beendet sich nach getaner Arbeit. Im Logfile sehe ich auch alle Ausgaben des Adapters.

                Starte ich ihn jedoch über die ioBroker-Konsole (Instanzen), so habe ich folgendes Verhalten:

                Zunächst scheint alles ordnungsgemäß zu laufen: Die Meldungen des host.iobroker sagen, dass der Adapter eine Schedule erhalten hat. Ausgabe des Adapters gibt's zu diesem Zeitpunkt noch keine.

                Sobald dann die Triggerzeit gemäß Schedule erreicht ist, startet der Adapter selbst (Meldung des host.iobroker) und wird kurz danach mit der Fehlermeldung````
                code 7 (Adapter already running)

                
                Vom Adapter selbst sehe ich überhaupt keine Ausgaben.
                
                Was mache ich falsch?
                
                Muss ich noch ein Startereignis abfangen und den Adapter dann stoppen?
                
                In vergleichbaren Adaptern (z.B. DWD-Adapter) habe ich nichts gefunden.
                1 Reply Last reply Reply Quote 0
                • apollon77
                  apollon77 last edited by

                  Wie beendest Du den Adapter denn wenn er fertig ist? prcoess.exit()? adapter.stop()?

                  1 Reply Last reply Reply Quote 0
                  • K
                    Karl_999 last edited by

                    @apollon77:

                    Wie beendest Du den Adapter denn wenn er fertig ist? `
                    Ich nutze den adapter.stop() am Ende von adapter.on("ready").

                    Ein Versuch, den prcoess.exit() zu nutzen brachte keine Änderung.

                    Meines Erachtens auch verständlich, da er ja bereits beim (ersten) Aufruf zu scheitern scheint und gar nicht nicht bis hier durchkommt.

                    Die Objekte, die ebenfalls in adapter.on("ready") angelegt werden sollten, werden auch nicht generiert. Der Aufruf scheint also bereits vor diesem Punkt zu scheitern.

                    1 Reply Last reply Reply Quote 0
                    • apollon77
                      apollon77 last edited by

                      Naja, dann schau ob noch ein Prozess davon läuft. Das bedeutet Error 7 an sich

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

                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      931
                      Online

                      31.6k
                      Users

                      79.4k
                      Topics

                      1.3m
                      Posts

                      4
                      9
                      580
                      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