Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. "Homematic Manager Adapter" First Steps

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    "Homematic Manager Adapter" First Steps

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

      @StefSign:

      Morgen,

      bin gerade am "Sichten" welche Möglichkeiten wir mit einer Homematic GUI in ioBroker haben.

      Dabei bin ich auf Homematic Manager von HobbyQuaker gestossen.

      Fragen:

      Wäre ein einfacher ioBroker Adapter denkbar der einfach einen "redirect" auf einen Homematic Manager Instance macht? So wie Vis oder NodeRed.

      Gibt es schon eine Entwicklung in der Richtung? (Also Homematic GUI für ioBroker)

      Lizenz Fragen:

      Erlaubt die Lizenz "Copyright © 2014 Anli, Hobbyquaker" überhaupt eine Weiterverwendung/Weiterentwicklung?

      Danke

      Steve `
      Die Integration sollte ohne Probleme möglich sein. (Steve hat schon gerade die hälfte gemacht 🙂 )

      Lizenz ist CC BY-NC-SA 4.0. (Frei für nicht kommerzielle Nutzung).. Sollte auch möglich sein, aber nur für Zuhause.

      1 Reply Last reply Reply Quote 0
      • S
        StefSign last edited by

        Morgen,

        leider ist mir die Architektur der ioBroker Adapter immer noch nicht ganz klar, obwohl ich mir alle ioBroker Adapter Sourcen angesehen habe (na ja, wohl eher überflogen).

        Deswegen kurz ein paar Fragen:

        • Gibt es eine Doku wie man aus einem eigenen ioBroker Adapter ein NPM Installations Packet erzeugt? Ich denke dies steckt im Gruntfile.js?

        • Welche Architektur/Pattern steckt in ioBroker und seinen Adaptern? Ein paar Stichpunkte reichen natürlich.

        Danke schon mal für die Zeit zum beantworten der Adapter Fragen. Um allen/mir einen Einstieg in die Adapter Programmierung zu geben sind sie wohl leider notwendig. Trotz meiner einjährigen Hobby Javascript Programmier Erfahrung ist da eine gewisse "Hürde" bzw. Herausforderung.

        🙂

        Wenn ich damit fertig bin, wäre ich bereit ein "How to" zur Adapter Programmierung zu erstellen, falls es jemand interessiert. Sogar auf Englisch!

        🙂

        cu

        Steve

        1 Reply Last reply Reply Quote 0
        • V
          versteckt last edited by

          Hab mal versucht nach dieser Anleitung einen HMM Adapter zu bauen.

          Variablen hab ich alle drinnen, bin grad dabei, noch eigene Instanzen anzulegen.

          Dann geht es daran, den hm-manager.js so umzubauen, das er über ioBroker startbar ist.

          Wenn ich fertig bin, gebe ich Bescheid.

          1 Reply Last reply Reply Quote 0
          • V
            versteckt last edited by

            So, weiter geht's, der Prozess des HMM lässt sich schon mal von ioBroker aus stoppen und starten.

            Jetzt geht's an die Ablage / Abfrage der richtigen Konfiguration.

            1 Reply Last reply Reply Quote 0
            • V
              versteckt last edited by

              So, Config wird richtig gebaut, funktioniert auch wunderbar mit "Änderungen zur Laufzeit".

              Jetzt aber eine blöde Frage, ist es möglich, bestehende Instanzen (in diesem Fall hm-rpc) abzufragen, welche Config

              dort beinhaltet ist?

              Weil dann könnte ich gleich direkt die bestehenden hm-rpc Adapter einbinden und müsste diese nicht doppelt konfigurieren.

              1 Reply Last reply Reply Quote 0
              • V
                versteckt last edited by

                Anbei mal eine Ansicht der Admin Einstellungen des Adapters.
                301_admin-console.png

                1 Reply Last reply Reply Quote 0
                • S
                  StefSign last edited by

                  Hallo versteckt,

                  na Du legst ein Tempo hin…

                  🙂

                  Leider kann ich dir (momentan) nicht direkt weiterhelfen. Bin gerade dabei mit Webstorm mir eine Entwicklungsumgebung aufzubauen.

                  Fragen:

                  Wie könnte man den Sourcecode sharen?

                  Was nutzt Du zum entwickeln? Ich hoffe nicht vi.

                  Danke

                  Steve

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

                    @versteckt:

                    So, Config wird richtig gebaut, funktioniert auch wunderbar mit "Änderungen zur Laufzeit".

                    Jetzt aber eine blöde Frage, ist es möglich, bestehende Instanzen (in diesem Fall hm-rpc) abzufragen, welche Config

                    dort beinhaltet ist?

                    Weil dann könnte ich gleich direkt die bestehenden hm-rpc Adapter einbinden und müsste diese nicht doppelt konfigurieren. `
                    Du kannst hm-rega abschauen.

                    https://github.com/ioBroker/ioBroker.hm … index.html

                    Es gibt schon fertige Funktion:

                    `var instances = {};
                    getAdapterInstances('hm-rpc', function (arr) {
                       var count = arr.length;
                       for (var i = 0; i < arr.length; i++) {
                            getObject('system.adapter.' + arr[i], function(err, obj) {
                                 instances[obj._id] = obj;
                                 count--;
                                 if (!count) {
                                    // finished, do something with your array
                                    console.log(JSON.stringify(instances));
                                 }
                            }
                       }
                       console.log(JSON.stringify(arr));
                    }` [/i]
                    
                    1 Reply Last reply Reply Quote 0
                    • S
                      StefSign last edited by

                      …oder vielleicht doch.

                      Die Konfiguration von Adaptern steht doch in einem ibBroker Object wie hm-rpc oder system.adapter.hm-rpc?

                      Steve

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

                        @StefSign:

                        …oder vielleicht doch.

                        Die Konfiguration von Adaptern steht doch in einem ibBroker Object wie hm-rpc oder system.adapter.hm-rpc?

                        Steve `
                        Die steht in "system.adapter.hm-rpc.X", wo X Instanznummer ist.

                        1 Reply Last reply Reply Quote 0
                        • V
                          versteckt last edited by

                          Im Moment benutze ich noch Xcode, bin ja auf Apple unterwegs.

                          Muss erst mal schauen, inwiefern ich Eclipse einsetze. Komm ja noch aus der C bzw. Java Schiene, ist halt auch schon 12 Jahre her.

                          Werde mal versuchen die Objekte so auszulesen und dann mal ein Paket schnüren, damit es alle nutzen können.

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

                            @StefSign:

                            • Gibt es eine Doku wie man aus einem eigenen ioBroker Adapter ein NPM Installations Packet erzeugt? Ich denke dies steckt im Gruntfile.js? `
                              Nein. Das ist allein package.json.
                            • Erst Account auf https://www.npmjs.com/ erzeugen.

                            • Danach````
                              npm init

                            
                            - Danach packet.json ergänzen ([https://docs.npmjs.com/files/package.json](https://docs.npmjs.com/files/package.json) oder bei anderen Adapter abschauen)
                            
                            -````
                            npm publish
                            

                            ioBroker Adapters müssen immer mit "iobroker." anfangen, sonst werden die ignoriert beim start.

                            @StefSign:

                            • Welche Architektur/Pattern steckt in ioBroker und seinen Adaptern? Ein paar Stichpunkte reichen natürlich. `
                              Example ist gar nicht so schlecht um zu verstehen wie einen Adapter funktioniert. Ich suche immer noch die Inspiration für ADAPTER.md :?
                            1 Reply Last reply Reply Quote 0
                            • V
                              versteckt last edited by

                              Bin die Woche ziemlich ausgelastet, werde also erst am Samstag versuchen die Daten hochzuladen.

                              Gesendet von meinem iPhone mit Tapatalk

                              1 Reply Last reply Reply Quote 0
                              • V
                                versteckt last edited by

                                Bin heute mal ein Stück weitergekommen:

                                Es werden nun automatisch alle hm-rpc Objekte in die Admin Seite geladen.

                                Somit muss man diese nicht manuell reinkonfigurieren.

                                Das Thema mit npm Install kommt dann als nächstes dran, hatte heute schon mal Zeit mich ein wenig einzulesen.

                                301_admin-console.png

                                1 Reply Last reply Reply Quote 0
                                • V
                                  versteckt last edited by

                                  Es ist vollbracht, eine initiale Version des iobroker.hmm ist in Git bzw. npm zu finden.

                                  Bitte nicht erschlagen, es ist noch nichts dokumentiert und sicherlich Fehler behaftet.

                                  Ausserdem sind beide Abhängigkeiten im Git mitdrinnen.

                                  Könnt ihr trotzdem mal versuchen diesen zu installieren (im ioBroker Root-Dir einfach "npm install iobroker.hmm" eingeben)?

                                  Dann weiss ich zumindest gleich mal, was ich alles noch machen muss.

                                  1 Reply Last reply Reply Quote 0
                                  • V
                                    versteckt last edited by

                                    Und gleich eine Installationsanleitung hinterhergeschossen GG:

                                    cd IOBROKERDIR

                                    npm install iobroker.hmm

                                    cd node_modules/iobroker.hmm/node_modules

                                    curl -o master.zip https://codeload.github.com/hobbyquaker … zip/master

                                    unzip master.zip

                                    rm master.zip

                                    mv homematic-manager-master homematicmanager

                                    cd homematicmanager

                                    npm install

                                    Danach in der Admin Seite den Adapter hinzufügen.

                                    Dieser muss dann noch konfiguriert werden.

                                    Ich habe die RPC Listen IP immer auf ein physikalisches Interface gesetzt.

                                    Wenn bereits hm-rpc Adapter da sind, werden diese in der Liste automatisch gesetzt.

                                    Falls kein hm-rpc Adapter aktiv ist, müssen folgende Parameter gesetzt werden:

                                    Name: Ein aussagekräftiger Name

                                    Type: BidCos-RF

                                    IP: Die IP-Adresse des Homegear / CCU2

                                    Port: 2001

                                    isCcu: true

                                    init: true

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

                                      ich habs versucht:

                                      root@quad-pi:/opt/iobroker# npm install iobroker.hmm
                                      npm http GET https://registry.npmjs.org/iobroker.hmm
                                      npm http 200 https://registry.npmjs.org/iobroker.hmm
                                      npm http GET https://registry.npmjs.org/iobroker.hmm/-/iobroker.hmm-0.0.6.tgz
                                      npm http 200 https://registry.npmjs.org/iobroker.hmm/-/iobroker.hmm-0.0.6.tgz
                                      npm http GET https://registry.npmjs.org/fs.notify
                                      npm http 200 https://registry.npmjs.org/fs.notify
                                      npm http GET https://registry.npmjs.org/retry
                                      npm http GET https://registry.npmjs.org/async
                                      npm http 200 https://registry.npmjs.org/async
                                      npm http 200 https://registry.npmjs.org/retry
                                      iobroker.hmm@0.0.6 node_modules/iobroker.hmm
                                      └── fs.notify@0.0.4 (retry@0.6.1, async@0.1.22)
                                      root@quad-pi:/opt/iobroker# cd node_modules/iobroker.hmm/node_modules
                                      root@quad-pi:/opt/iobroker/node_modules/iobroker.hmm/node_modules# curl -o master.zip https://codeload.github.com/hobbyquaker ... zip/master
                                        % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                                                       Dload  Upload   Total   Spent    Left  Speed
                                      100    21  100    21    0     0     33      0 --:--:-- --:--:-- --:--:--    46
                                      curl: (6) Couldn't resolve host '...'
                                      curl: (6) Couldn't resolve host 'zip'
                                      root@quad-pi:/opt/iobroker/node_modules/iobroker.hmm/node_modules# unzip master.zip
                                      Archive:  master.zip
                                        End-of-central-directory signature not found.  Either this file is not
                                        a zipfile, or it constitutes one disk of a multi-part archive.  In the
                                        latter case the central directory and zipfile comment will be found on
                                        the last disk(s) of this archive.
                                      unzip:  cannot find zipfile directory in one of master.zip or
                                              master.zip.zip, and cannot find master.zip.ZIP, period.
                                      root@quad-pi:/opt/iobroker/node_modules/iobroker.hmm/node_modules# rm master.zip
                                      root@quad-pi:/opt/iobroker/node_modules/iobroker.hmm/node_modules# mv homematic-manager-master homematicmanager
                                      mv: Aufruf von stat für „homematic-manager-master“ nicht möglich: Datei oder Verzeichnis nicht gefunden
                                      root@quad-pi:/opt/iobroker/node_modules/iobroker.hmm/node_modules# cd homematicmanager
                                      -bash: cd: homematicmanager: Datei oder Verzeichnis nicht gefunden
                                      root@quad-pi:/opt/iobroker/node_modules/iobroker.hmm/node_modules# npm install
                                      npm WARN package.json iobroker.hmm@0.0.6 No repository field.
                                      root@quad-pi:/opt/iobroker/node_modules/iobroker.hmm/node_modules#
                                      
                                      

                                      sagt dir das was?

                                      1 Reply Last reply Reply Quote 0
                                      • V
                                        versteckt last edited by

                                        Ja, die URL ist falsch.

                                        Kopiere sie dir bitte mit "rechter Maustaste | Copy Link (oder was auch immer).

                                        Wenn du den Text so kopierst, kopiert er die URL mit …

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

                                          danke, ich bin ja blind :oops:

                                          das hätte ich ja nu wirklich selbst sehen können.

                                          Gruß

                                          Rainer

                                          1 Reply Last reply Reply Quote 0
                                          • V
                                            versteckt last edited by

                                            Kein Problem, ich bin leider schon "Betriebsblind"…

                                            Gesendet von meinem iPhone mit Tapatalk

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            841
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            8
                                            66
                                            12419
                                            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