Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Adapter wird 2x installiert

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Adapter wird 2x installiert

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

      @Baumert und was ist mit repetierApi

      allen konfigs initialisieren

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

        @OliverIO erledigt...

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

          @Baumert #44 sieht schon mal besser aus

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

            @OliverIO wird langsam...

            Baumert 1 Reply Last reply Reply Quote 0
            • Baumert
              Baumert @Baumert last edited by Baumert

              @Baumert so...

              6Travis CI.png

              allerdings noch ohne Script "- npm run test:unit", hier gibt es noch Errors. Dies und das doppelte Installieren des Adapters (siehe Post 1) gehe ich morgen an.

              Vielen Dank für Eure Tipps und Unterstützung.

              OliverIO AlCalzone 2 Replies Last reply Reply Quote 0
              • OliverIO
                OliverIO @Baumert last edited by

                @Baumert 👍

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

                  @Baumert sagte in Adapter wird 2x installiert:

                  allerdings noch ohne Script "- npm run test:unit", hier gibt es noch Errors.

                  Dann lass das raus. Der Integration Test ist wichtiger.

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

                    @AlCalzone
                    sollte er nicht, da sein Adapter noch nicht kompatibel mit dem compact mode ist.
                    da muss er noch reparieren

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

                      @OliverIO Hast Recht, ich habs gerade gesehen:

                      Error: The unload callback was not called within the timeout
                      Error: The adapter's main file must export a function in compact mode!
                      

                      Beides valide Fehler, die es zu beheben gilt.

                      @Baumert Was hast du eigentlich für eine Vorlage verwendet? Einige deiner Probleme hier sollten mit einer aktuellen Vorlage bzw. dem Adapter-Creator gar nicht erst auftreten.

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

                        Und weil wir schon bei Quasi Reviews hier sind ... bitte schau Dir auch mal https://github.com/ioBroker/ioBroker.repositories#development-and-coding-best-practices an ... und überlege was dich betreffen kann ...

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

                          @apollon77 @OliverIO Ich mache dies jetzt richtig, der Adapter soll alle Prüfungen bestehen und es soll auch alles andere passen. 'development-and-coding-best-practices' gehe ich jetzt Punkt für Punkt durch und bearbeite es entsprechend.

                          Baumert 1 Reply Last reply Reply Quote 1
                          • Baumert
                            Baumert @Baumert last edited by

                            Ich habe einen anderen Adapter als Vorlage genommen, da mein Adapter immer umfangreicher wurde, kam es zu den aktuellen Problemen. Ich baue jetzt meinen Adapter noch einmal neu auf und nehme hierzu die Vorlage '...ioBroker.template/JavaScript/'!
                            Kann sein, dass ich hier oder da noch einmal Unterstützung benötige.

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

                              @Baumert Template ist ok ... aber warum nimmst Du nicht den adapter creator?

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

                                Hallo, ich habe doch noch eine Frage - ich habe mehrere Funktionen, die über verschiedene Zeitintervall wieder durchlaufen werden sollen. Bis jetzt habe ich es mit Setinterval() in der Funktion main() realisiert, finde es aber nicht geschickt. Gibt es ein Beispielcode, wie ich den zeitlichen Aufruf einer Funktion, z.B. alle 10 Sekunden, vernünftig realisieren kann. Sollte innerhalb der Funktion etwas schief gehen, sollte dies abgefangen werden. Bei SetInterval() wird die Funktion doch immer 'hart' ausgeführt.

                                apollon77 OliverIO 2 Replies Last reply Reply Quote 0
                                • apollon77
                                  apollon77 @Baumert last edited by

                                  @Baumert nimm setTimeout und setzte immer am Ende der Methode einen neuen timeout für den nächsten Lauf. In fehlerfällen must du überlegen ob neuer Lauf oder was auch immer

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

                                    @Baumert
                                    du kannst bei squeezenoderpc schauen
                                    ich verwende verschiedene timer

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

                                      @OliverIO @apollon77 so, ich habe jetzt meinen Adapter neu aufgebaut -> main.js aus ioBroker.template übernommen und mein Programm dort entsprechend integriert, weiterhin habe ich die Timerfunkionen von setintervall() auf individuellen settimout() geändert.
                                      Die Travis-CI Tests:

                                      script:
                                        - npm run test:package
                                        - npm run test:unit
                                        - export DEBUG=testing:*
                                        - npm run test:integration
                                      

                                      laufen fehlerfrei durch...
                                      7Travis CI.png👍

                                      Jetzt bin ich allerdings wieder bei meinem ursprünglichen Problem - der Adapter wird, wenn er von GITHUB, installiert wird, 2x im Verzeichnis '.../node_modules/' installiert, 1x mit kleinem b und 1x mit großem B in iobroker:
                                      ordner1.png
                                      Auszug aus Verzeichnis '.../node_modules/' (sorry für die Darstellung).

                                      Instanz kann normal hinzugefügt, startet nach Angabe der Parameter und macht das was er soll. Da doppelte Verzeichnis macht nur Probleme, wenn der Adapter aus der Adapterübersicht gelöscht werden soll. Dabei wird nur der Adapter/Verzeichnis mit dem kleinen 'b' gelöscht, das andere Verzeichnis bleibt und der Adapter kann nicht wieder neu installiert werden, außer man löscht das Verzeichnis manuell über die Konsole.
                                      Diese Problem möchte ich noch beheben, habe aber keine Ahnung, wo ich hier angreifen soll.

                                      Grüße Thomas

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

                                        @Baumert schreib mal den kompletten pfad wo dein iobroker isntalliert ist
                                        und in welchem Verzeichnis du den adapter entwickelst

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

                                          @OliverIO Den Adapter entwicklen ich auf einem Windowsrechner (Installiert mit iobroker-1.5.14.b-windows-installer.exe) , auf dem ich eine eigene Testumgebung mit iobroker und VS Code aufgebaut haben. Dort läuft alles im Verzeichnis:

                                          C:\Program Files\iobroker\Testsystem1\node_modules\iobroker.repetierserver

                                          Das 'Lifesystem', bei dem das Verzeichnis doppelt angelegt wird, läuft auf einem extra Server mit Ubuntu 18.04.3 LTS. Dort werden beim Installier von GITHUB aus in die Verzeichnisse:

                                          /opt/iobroker/node_modules/iobroker.repetierserver
                                          /opt/iobroker/node_modules/ioBroker.repetierserver

                                          erstellt.

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

                                            @Baumert ok,
                                            dann schaue mal auf deinem live system die folgende datei an:
                                            /opt/iobroker/package.json
                                            ob dort dein adapter 2mal auftaucht.

                                            ob ja oder nein
                                            deinstalliere über die iobroker oberfläche deinen adapter im live system

                                            schaue in der
                                            /opt/iobroker/package.json
                                            nach ob dein adapter da noch drin ist.

                                            wenn ja, dann führe auf der commandozeile im verzeichnis /opt/iobroker
                                            den befehl
                                            npm u <name deines adapters wie er im package.json drinsteht>

                                            wenn nein dann weiß ich nicht weiter. meine vermutung ist, dass irgendwann der name iobroker mit großem b war
                                            und das in package.json 2 mal drin steht

                                            im anschluß kannst du deinen adapter im live system wieder von guthub installieren

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            580
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            gelb installation instanz nodemodules
                                            4
                                            55
                                            2492
                                            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