Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. [Frage] Adapterentwicklung Anleitung für Einsteiger

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    [Frage] Adapterentwicklung Anleitung für Einsteiger

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

      Danke! Ich finde mich mittlerweise halbwegs zurecht. Habe mir die Bausteine aus anderen Adaptern und dem Forum zusammengesucht. Was mir aber in der Doku ein bisschen fehlt, ist so eine Art "Best Practise" mit Minimalbeispielen zur Adapterentwicklung:

      Wie starte ich

      => Adapter-Template

      => Empfohlene Einstellungen in (io-)package.json

      Konfiguration (ganz großes Fragezeichen)

      => Wo kommt adapterspezifische Konfiguration hin?

      ===> Wie lese ich die im Adapter aus?

      ===> Wie greife ich darauf in admin.html zu (lesen/schreiben)?

      => Wo kommt anwendungsspezifische Konfiguration (Temperaturprofil von Räumen/ etc.) hin?

      ===> Wie lese ich die im Adapter aus?

      ===> Wie schreibe ich die im Adapter?

      Sonstiges

      => Wie gehe ich am besten mit States um? Subscriben und buffern im Adapter oder immer frisch lesen via getState?

      => Beispiele für immer wiederkehrende Patterns bei der Entwicklung (z.b. Objektlisten beobachten). Wofür mache ich das und wie am besten?

      […]

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

        @apollon77:

        Haste mal nen Link zum aktuellen Skript ?! `
        Hier ist er Link zum Thread (das aktuelle Script ist im ersten Posting mit drin) ==> http://forum.iobroker.net/viewtopic.php?f=21&t=2645

        Ich schaue aber heute Abend nochmal zu Hause nach, ob es noch eine aktuellere Version (auf meinem Rechner) gibt. Viel geändert hat sich da aber nicht mehr - die Grundfunktion ist gleich.

        Gruß,

        Eric

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

          @AlCalzone:

          Danke! Ich finde mich mittlerweise halbwegs zurecht. Habe mir die Bausteine aus anderen Adaptern und dem Forum zusammengesucht. Was mir aber in der Doku ein bisschen fehlt, ist so eine Art "Best Practise" mit Minimalbeispielen zur Adapterentwicklung: `

          Dann lasst uns das gemeinsam erstellen!

          @AlCalzone:

          Wie starte ich

          => Adapter-Template

          => Empfohlene Einstellungen in (io-)package.json `
          Versuche ich grob in meinem Vortrag abzudecken. Mal schauen wie weit ich komme, weil die haben m,einen Slot auf 30 Mins gekürzt, aber kann ja als Grundlage dienen 🙂

          @AlCalzone:

          Konfiguration (ganz großes Fragezeichen)

          => Wo kommt adapterspezifische Konfiguration hin?

          ===> Wie lese ich die im Adapter aus?

          ===> Wie greife ich darauf in admin.html zu (lesen/schreiben)? `
          Adapter: adapter.config.*

          Ja, Admin ist das interessante. An Sich muss man ja nicht viel tun weil das admin.html das schon macht. Es gibt zwei Stellen wo man was tun muss …

          Versuche ich im Vortrag mit reinzunehmen.

          @AlCalzone:

          => Wo kommt anwendungsspezifische Konfiguration (Temperaturprofil von Räumen/ etc.) hin?

          ===> Wie lese ich die im Adapter aus?

          ===> Wie schreibe ich die im Adapter? `

          Wenn es Statist ist: Adapterkonfig, wenn es dynamisch während der Laufzeit geändert werden soll: States.

          Objekte anlegen, setState, getState ist im Vortrag mit drin.

          Aber die meisten Dinge sind im iobroker.template wenigstens angeteasert und drin … also eine Grundlagekönnte da sein. Auch wenn ein bissl mehr "Prosa" garantiert hilft 🙂

          @AlCalzone:

          Sonstiges

          => Wie gehe ich am besten mit States um? Subscriben und buffern im Adapter oder immer frisch lesen via getState?

          => Beispiele für immer wiederkehrende Patterns bei der Entwicklung (z.b. Objektlisten beobachten). Wofür mache ich das und wie am besten?

          […] `
          1.) Das ist jetzt "Geschmackssache" 🙂 Ich persönlich denke das aus Last&Performancegründen lokales caching sinn macht da der minimale RAM Verbrauch gegen den Performancegewinn gewinnt. Alle states die man nur selbst als Adapter kontrolliert (also nur der Adapter schreiben darf) muss auch nicht subscriben. In Adaptern ist getState in jedem Fall asynchron, das heisst je nachdem wie viele Daten man braucht kann auch das caching alles sehr vereinfachen.

          2.) Was meinst Du damit?

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

            > Beispiele für immer wiederkehrende Patterns bei der Entwicklung
            Ein Beispiel wäre der zwave-Adapter, der liest beim Start die Objektliste aus:

            adapter.objects.getObjectList({
                startkey: adapter.namespace + '.',
                endkey:   adapter.namespace + '.\u9999',
            [...]
            

            Das machen diverse andere Adapter auch, scheint also eine vernünftige Vorgehensweise zu sein. In der Doku hab ich dazu nur gefunden "experts only".

            –

            Btw, danke für die Antworten. Einiges davon ist mir inzwischen klar, sollte aber in die Grundlagendoku, denn das sucht man anfangs. Und selbst wenn es keine eindeutige Weisheit gibt (wie beim State-Handling), ist es interessant 1-2 Ansätze demonstriert zu bekommen.


            Noch was:

            Wenn man aus der JS-Adapter-Ecke kommt, macht createState unerwartet was anderes (und hat auch ne andere Signatur). Korrekt scheint zu sein, per setObject ein Objekt mit common.role="state" anzulegen, das anschließend per setState beschrieben werden kann. Habe ich auch nur in einem Entwicklerthread hier im Forum gefunden.


            > Adapterkonfiguration / adapter.config.*
            Die https://github.com/ioBroker/ioBroker/wiki/Adapter-Development-Documentation liefert hierzu zwei Punkte:
            ` > config - native part of adapter settings

            common - common part of adapter settings `
            Was der Zweck ist, wird allerdings nicht klar. Das meinte ich mit "best practise / was kommt wo hin?"

            Was mache ich als Adapter-Entwickler mit .config und .common? Macht es Sinn, bzw. ist es möglich aus dem laufenden Adapter in diese Objekte zu schreiben?

            Allgemein ist die Doku recht technisch gehalten, was als Nachschlagewerk sicher gut ist. Zum "warm werden" mit der Adapter-Entwicklung müsste es allerdings anwendungsbezogener sein. Typische Aufgaben im Lebenszyklus einer Adapter-Entwicklung ansprechen und Lösungen aufzeigen.

            Wie sind bestimmte Dinge gedacht? Wie sollten sie benutzt werden?

            1 Reply Last reply Reply Quote 0
            • kmxak
              kmxak Most Active last edited by

              Ganz interessante Beiträge! !! Würde mir gerne anhören was du auf dem treffen sagst. Leider muss ich arbeiten. Das wäre genau das was ich brauche! Ich würde so gerne einen Adapter machen aber ich brauche Hilfe. Wie schon gesagt wo kommt was hin usw. Ein Workshop wäre toll. Auch wenn nur über das Internet aber das würde mich sicherlich sehr viel weiter bringen. Per Skype o.ä alle mal zusammensetzen die daran Interesse haben und einer der es kann 🙂

              Gesendet von meinem SM-G928F mit Tapatalk

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

                @apollon77:

                Versuche ich grob in meinem Vortrag abzudecken. Mal schauen wie weit ich komme, weil die haben m,einen Slot auf 30 Mins gekürzt, aber kann ja als Grundlage dienen 🙂 `
                Wird es eine Aufzeichnung geben?

                1 Reply Last reply Reply Quote 1
                • M
                  Marcolotti last edited by

                  Ich fände es besser, wenn es hier oder an anderer Stelle etwas gibt, was jeder nachlesen und sich anschauen kann. Ich bin am 6.5. auch anwesend aber viele andere können es nicht sein.

                  Gruß Marco

                  1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators last edited by

                    Es wird definitiv eine ausführliche Doku auf der Website geben!

                    im Moment liegt diese https://github.com/ioBroker/ioBroker/wi … umentation noch auf Github.

                    Wenn ihr mitmacht kann diese nach euren Wünschen und Anforderungen angepasst werden und später in die neue Website einfließen.

                    Gruß

                    Rainer

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

                      Schon klar. Lasst hier sammeln, das kann bestimmt einen Platz auf der neuen Webseite bekommen …

                      1 Reply Last reply Reply Quote 0
                      • kmxak
                        kmxak Most Active last edited by

                        Guide for Developers :?

                        Ich habe teilweise mehrere Sachen die ich gerne als Adapter umsetzen würde. Leider scheitert es an meinem Können.

                        In HTM bekomme ich es ggf noch hin allerdings ist das hier für mich etwas völlig anderes.

                        Ich würde es begrüßen wenn einer der es kann und Lust dazu hat ggf. mal am Wocheende einen Workshop über das Internet macht.

                        Was haltet ihr davon?

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

                          Bist Du Anfang Mai in Kassel beim HM-Usertreffen? Da gibts nen Vortrag und ggf Zeit drumrum …

                          1 Reply Last reply Reply Quote 0
                          • kmxak
                            kmxak Most Active last edited by

                            das ist es ja. da kann ich nicht.

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

                              Ich stelle den Vortrag danach zur Verfügung und dann schauen wir mal was wir machen können

                              madjack84 1 Reply Last reply Reply Quote 0
                              • D
                                DeepCore last edited by

                                @Homoran:

                                Es wird definitiv eine ausführliche Doku auf der Website geben!

                                im Moment liegt diese https://github.com/ioBroker/ioBroker/wi … umentation noch auf Github. `

                                Unter folgendem Link habe ich gute Informationen gefunden, die mit zur Adapter-Entwicklung gehören.

                                Und auch irgendwie verlinkt werden sollten. Ich bin nur per Zufall drüber gestolpert :?

                                https://github.com/ioBroker/ioBroker/wiki/Installation,-setup-and-first-steps-with-an-ioBroker-Development-Environment

                                Gruß

                                DeepCore

                                1 Reply Last reply Reply Quote 0
                                • Homoran
                                  Homoran Global Moderator Administrators last edited by

                                  @DeepCore:

                                  Unter folgendem Link habe ich gute Informationen gefunden, die mit zur Adapter-Entwicklung gehören. `
                                  Da sollte der Link von mir auch hingehen, warum der sich jetzt verbogen hat weiß ich auch nicht 😉

                                  Wahrscheinlich habe ich da zu oberflächlich gesucht :oops:

                                  Sorry,

                                  Rainer

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

                                    @apollon77 Thread mit Bart, aber kannst du den Vortrag mal linken? Würde mich interessieren 🙂
                                    Will mich ins Adapter Geschäft einarbeiten 🙂

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    921
                                    Online

                                    31.6k
                                    Users

                                    79.4k
                                    Topics

                                    1.3m
                                    Posts

                                    9
                                    21
                                    3205
                                    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