Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Wie erstelle ich eigene Adapter?

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Wie erstelle ich eigene Adapter?

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

      Nachdem es hunderte Requests für Adapter gibt aber offensichtlich viel zu wenig Leute die welche programmieren würde mich mal interessieren, ob es irgendwo eine Art eines "How to.." gibt?
      Das wäre doch eigentlich eine schöne Sache für einen Workshop oder einen netten Youtube Kurs...?

      Wal OliverIO 2 Replies Last reply Reply Quote 1
      • Wal
        Wal Developer @JoergH last edited by

        @joergh ,
        habe mit dem Angefangen und danach bei anderen Adaptern abgeschaut.

        J 1 Reply Last reply Reply Quote 0
        • J
          JoergH @Wal last edited by

          @wal said in Wie erstelle ich eigene Adapter?:

          @joergh ,
          habe mit dem Angefangen und danach bei anderen Adaptern abgeschaut.

          Danke! Das schau ich mir mal an...

          1 Reply Last reply Reply Quote 0
          • OliverIO
            OliverIO @JoergH last edited by

            @joergh

            wenn du den adapter creator verwendest, dann erhällst du einen lauffähiges adapter grundgerüst, das du nur noch mit eigenen funktionen füllen musst.

            J 1 Reply Last reply Reply Quote 0
            • J
              JoergH @OliverIO last edited by JoergH

              @oliverio said in Wie erstelle ich eigene Adapter?:

              @joergh

              wenn du den adapter creator verwendest, dann erhällst du einen lauffähiges adapter grundgerüst, das du nur noch mit eigenen funktionen füllen musst.

              Aha. Danke für den Tipp. Gibt es auch eine Übersicht über die Struktur dessen was ich eigentlich machen muss? Ich hoffe mal mich so aus der Helikopterperspektive nähern zu können. Diese Github Beschreibungen sind ja im Grunde immer schon für Leute die sich sehr gut auskennen angelegt. Dazu zähle ich aber nicht, weil mir die Grundlagen des generellen Setups noch fehlen.

              Wal OliverIO 2 Replies Last reply Reply Quote 0
              • Wal
                Wal Developer @JoergH last edited by Wal

                @joergh ,
                in der Gihubbeschreibung wird gezeigt wie du den Adapter Creator nutzt. Du musst nur lesen.

                1 Reply Last reply Reply Quote 0
                • OliverIO
                  OliverIO @JoergH last edited by OliverIO

                  @joergh
                  Der adapter creator erzeugt dir alles.
                  in den dateien steht drin an welcher stelle du etwas eintragen kannst.

                  die hauptdatei main.js enthält 5 ereignisse

                  onReady
                  onUnload
                  onStateChange
                  onObjectChange (ist auskommentiert)
                  onMessage (ist aber auskommentiert)

                  Das wichtigste ist onReady
                  Dort startet deine Logik, was auch immer du machen möchtest

                  onStateChange
                  wird immer dann aufgerufen, wenn sich ein Datenpunkt ändert,
                  so das deine Logik darauf reagieren kann.

                  schaue dir mal einfache adapter an, was die da machen.
                  gern kannst du dir mal meinen adapter rssfeed anschauen.
                  der ist nicht so kompliziert.
                  wenn du fragen hast, gerne

                  J 1 Reply Last reply Reply Quote 0
                  • J
                    JoergH @OliverIO last edited by

                    @OliverIO

                    Vielen Dank für die Infos. Das hilft mir schon einmal weiter.

                    @Wal

                    Lesen kriege ich glaube ich hin. Ist einiges zu lesen. Werde mir das mal alles ansehen.

                    TheBam 1 Reply Last reply Reply Quote 0
                    • J
                      JoergH last edited by JoergH

                      Disregard

                      1 Reply Last reply Reply Quote 0
                      • TheBam
                        TheBam @JoergH last edited by

                        @joergh
                        Gibt auf YouTube von Matthias kleine ein Video wie man einen Adapter macht. Teils zwar schon etwas veraltet aber dennoch gut für die Grundzüge zu lernen bzw. Zu verstehen. Ich habe damit auch meine ersten Adapter gebaut

                        Xenon 1 Reply Last reply Reply Quote 0
                        • Xenon
                          Xenon Forum Testing Developer @TheBam last edited by Xenon

                          @thebam sagte in Wie erstelle ich eigene Adapter?:

                          @joergh
                          Gibt auf YouTube von Matthias kleine ein Video wie man einen Adapter macht. Teils zwar schon etwas veraltet aber dennoch gut für die Grundzüge zu lernen bzw. Zu verstehen. Ich habe damit auch meine ersten Adapter gebaut

                          Nein, viel zu veraltet. Es wird auch immer komplexer für Neueinsteiger einen Adapter zu entwickeln, ich spreche da aus Erfahrung.
                          Oben wurde das grundlegendste ja bereits beschrieben. Adapter sind in Klassen geschrieben, der JS-Controller stellt sehr viele Funktionen zur Verfügung, damit man nicht alles selber neu erfinden muss.
                          Ich habe damals die meiste Hilfe auf dem Discord bekommen, bei Fragen kannst du dich gerne melden 🙂 Auch gibts eine iobroker developer Gruppe bei Telegram (ist auch mit dem Discord verknüpft). Sollte man mal nicht mehr weiterkommen, da wird dir auf jeden Fall geholfen

                          Hilfreich wäre auch zu wissen, was du denn vor hast?

                          Das ist mein erster, relativ übersichtlich und einfach gehalten device-reminder github-link, sehr viel GUI und auch Logik zum abschauen vorhanden 😉

                          J P 2 Replies Last reply Reply Quote 0
                          • J
                            JoergH @Xenon last edited by JoergH

                            @xenon
                            Zum einen möchte ich gerne den Powerfox Adapter mal fehler bereinigen, zum anderen wollte ich aber hauptsächlich einen Adapter für meinen Netro Whisperer Bodenfeuchtigkeits- Temperatur-, Lichtsensor erstellen.
                            Im Grunde kein sehr kompliziertes Projekt, wenn es um die Funktionalität geht, da die Werte nur aus der Cloud geholt werden müssen. Das Drumherum, also Einrichten der Entwicklerumgebung und Verstehen wie das alles aufgebaut ist, ist schwieriger, abgesehen davon, dass ich auch bisher kein Javascript programmiert habe...aber irgendwann muss man ja mal anfangen...

                            Xenon 1 Reply Last reply Reply Quote 0
                            • Xenon
                              Xenon Forum Testing Developer @JoergH last edited by

                              @joergh uff ohne js Kenntnisse wird das nix. Auch um js zu lernen ist das schon eine harte Nuss. Ich würde zuerst deine Projekte im js Adapter rum iobroker üben und zum Laufen bringen bevor man mit einem eigenen Adapter anfängt. Der Frust kommt sonst sehr schnell und man bricht ab. Ein Adapter besteht aus zahlreichen Komponenten die man behandeln muss. Zusätzlich muss man sich mit HTML, css und eventuell sogar react auseinander setzen. Das ist schon alles sehr zeitintensiv.

                              Mein Tipp: fang klein im js Adapter an zu üben 🙂

                              J 1 Reply Last reply Reply Quote 0
                              • J
                                JoergH @Xenon last edited by

                                @xenon said in Wie erstelle ich eigene Adapter?:

                                @joergh uff ohne js Kenntnisse wird das nix. Auch um js zu lernen ist das schon eine harte Nuss. Ich würde zuerst deine Projekte im js Adapter rum iobroker üben und zum Laufen bringen bevor man mit einem eigenen Adapter anfängt. Der Frust kommt sonst sehr schnell und man bricht ab. Ein Adapter besteht aus zahlreichen Komponenten die man behandeln muss. Zusätzlich muss man sich mit HTML, css und eventuell sogar react auseinander setzen. Das ist schon alles sehr zeitintensiv.

                                Mein Tipp: fang klein im js Adapter an zu üben 🙂

                                Ich habe früher verschiedenes programmiert, Basic, Pascal, bisschen C, C++, Assembler und bin kein völliger Laie, habe aber die letzten 25 Jahre nichts mehr wirklich geschrieben. Jetzt will ich wieder einsteigen, aber ein "Hello World" in js reizt mich nicht wirklich 😉

                                liv-in-sky Xenon 2 Replies Last reply Reply Quote 0
                                • liv-in-sky
                                  liv-in-sky @JoergH last edited by

                                  @joergh

                                  ein hello world muss es ja nicht sein - es gibt genügend möglichkeiten, ein einfachs js script zu machen - auch mit deinem project. datenpunjkte anlegen, async holen der daten, aufbereiten und speichern der daten, für andere verfügbar machen, die fehler bei anderen rauszufinden, ....

                                  da kann man gut üben und testen , ohne gleich einen adapter installieren zu müssen

                                  Basic, Pascal, bisschen C, C++, Assembler mußte ich auch mal lernen - hat aber wenig mit javascript in einer iobroker umgebung zu tun - außer , dass man die logic des progrmammierens verstanden hat

                                  1 Reply Last reply Reply Quote 1
                                  • Xenon
                                    Xenon Forum Testing Developer @JoergH last edited by Xenon

                                    @joergh das hat nichts mit hello World zu tun. Viele Adapter haben mal als JS im iobroker begonnen. Und es macht auch nicht immer Sinn Adapter zu erstellen, die dann nur für eventuell sehr wenige User überhaupt interessant sind. Ich habe auch skripte gebaut, welche ich auf github veröffentliche, auch Integration von Hardware. Da aber die User Nachfrage sehr gering ist, spare ich mir die aufwendige Erstellung eines zusätzlichen Adapters 🙂
                                    Es ist ja nicht nur das Erstellen, sondern auch die anschließende Wartung, die einen Aufwand bedeutet

                                    J 1 Reply Last reply Reply Quote 0
                                    • J
                                      JoergH @Xenon last edited by

                                      @xenon @liv-in-sky

                                      Ok, ich habe das etwas falsch verstanden, sorry! Dachte ich soll erstmal mit was ganz anderem anfangen um JS zu lernen. Da ich aber hochmotiviert bin meinen Sensor auszulesen, wollte ich mich nicht mit anderem beschäftigen. Aber ich verstehe, dass ihr meint, dass ich erstmal den Code zum Auslesen in JS vom IOB selber schreiben kann, bevor ich mich mit dem anderen "Zubehör" des Adapters beschäftige. Das macht ja auch Sinn, wobei ich inzwischen VS, git, nodejs, etc. auf dem PC installiert habe und mir das Grundgerüst eines Adapters bereits erstellt habe. Aber gut, schadet ja nicht, erstmal nur den "Kern" der Logik zu erstellen und von da auch weiter zu machen.

                                      OliverIO 1 Reply Last reply Reply Quote 0
                                      • OliverIO
                                        OliverIO @JoergH last edited by OliverIO

                                        @joergh
                                        der adapter wie er aus dem adapter creator herauskommt ist sowas wie ein hello-world adapter.

                                        wenn du mit js noch nicht so firm bist, dann würd ich dir auch empfehlen den reinen funktionscode ersteinmal separat lauffähig zu machen und erst dann den code
                                        in den adapter zu integrieren.
                                        ansonsten hast du evtl zu viel stellen, an denen ein problem auftreten kann und du siehst den baum vor lauter wald nicht.

                                        für die formalen anforderungen eines adapters, das er später in das repository aufgenommen werden kann kannst du auch den adapter checker mal ausprobieren
                                        https://adapter-check.iobroker.in/
                                        dazu muss der code sich aber schon in github befinden

                                        J 1 Reply Last reply Reply Quote 0
                                        • J
                                          JoergH @OliverIO last edited by

                                          @oliverio
                                          Danke für den weitern Tipp. Das werde ich dann mal angehen.

                                          Das Video von Matthias Kleine habe ich auch noch einmal gesehen. Nachdem ich das vor ein paar Monaten mal angefangen hatte zu gucken und nur "Bahnhof" verstanden habe, muss ich sagen, habe ich diesmal schon viel besser verstanden was er da so macht. Gibt Hoffnung 😀

                                          TheBam 1 Reply Last reply Reply Quote 0
                                          • TheBam
                                            TheBam @JoergH last edited by

                                            @joergh
                                            Ansonsten schau doch mal im discord vorbei da kann dir auch recht viel gezeigt werden

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

                                            Support us

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

                                            469
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            8
                                            22
                                            4878
                                            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