Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Einstieg in die Adapterentwicklung

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Einstieg in die Adapterentwicklung

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

      Hallo zusammen,

      ich habe mir, da ich im Ping Adapter eine Funktion vermisse die ich gerne hätte dazu entschlossen die Erweiterung selbst einzufügen. Ich bin bereits mehrjähriger PHP Entwickler und habe auch schon mit Javascript gearbeitet. Jedoch muss ich sagen, das für mich NPM und vorallem Javascript Backend Entwicklung absolutes Neuland ist.

      Habe mich auch eigentlich sofort in der Struktur des Codes von Github (https://github.com/ioBroker/ioBroker.ping) zurecht gefunden und soweit meine Änderungen eingefügt. Jetzt möchte ich das natürlich auch mal testen und in meinem iobroker installieren. Dazu habe ich den Inhalt des Ordners als .tar.gz gepackt und über die "von URL importieren" Funktion versucht die Sache einzufügen.

      Ich habe versucht die Sache als tar.gz und zip über die "von URL importieren" Funktion den Adapter zu importieren, leider ohne Erfolg. Als Ausgabe bekomme ich (mit Debug an) immer diese Ausgabe:

      $ iobroker url https://node1.***********.de:8081/iobroker.ping.tar.gz --host iobroker --debug
      
      install https://node1.************.de:8081/iobroker.ping.tar.gz
      
      NPM version: 6.14.15npm install https://node1.*******.de:8081/iobroker.ping.tar.gz --prefix "/opt/iobroker" (System call)
      
      npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.3.2 (node_modules/fsevents):
      
      npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
      
      npm WARN optional SKIPPING OPTIONAL DEPENDENCY: osx-temperature-sensor@1.0.7 (node_modules/osx-temperature-sensor):
      
      npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for osx-temperature-sensor@1.0.7: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
      
      + iobroker.ping@1.5.1updated 1 package in 5.275s
      
      73 packages are looking for funding run `npm fund` for details
      
      host.iobroker Cannot install https://node1.********.de:8081/iobroker.ping.tar.gz: 0
      
      ERROR: Process exited with code 25
      

      Wenn hier Logs oder Sachen fehlen die euch Helfen könnten bitte ich das zu entschuldigen, aber ich hab wirklich mein bestes versucht 🙂

      Grüße basti
      iobroker.ping.tar.gz

      arteck AlCalzone Jey Cee 3 Replies Last reply Reply Quote 0
      • arteck
        arteck Developer Most Active @basti4557 last edited by

        @basti4557 warum so kompliziert.. kopier doch einfach nur den source direkt unter

        /opt/iobroker/node_modules/iobroker.ping

        rein
        mach ein updload und fertig ..

        oder forke den ping mach die änderung auf GIT und installiere es von da ..aus deinem fork

        B 1 Reply Last reply Reply Quote 1
        • AlCalzone
          AlCalzone Developer @basti4557 last edited by

          @basti4557 Die ganz einfache Lösung ist https://github.com/ioBroker/dev-server

          Damit kannst du in deinem Adapter-Dev-Verzeichnis einfach eine frische ioBroker-Instanz starten, in der nur der aktuell entwickelte Adapter ist. Änderungen werden synchronisiert, etc.

          B 1 Reply Last reply Reply Quote 2
          • B
            basti4557 @arteck last edited by

            @arteck so gehts natürlich bedeutend einfacher 🙂

            Nur zum Verständnis:

            wenn ich "iob upload ping" ausführe, was genau passiert dann ? Soweit ich das jetzt interpretieren würde wird dann kompiliert und die Abhängigkeiten geladen oder ?

            arteck paul53 2 Replies Last reply Reply Quote 0
            • B
              basti4557 @AlCalzone last edited by

              @alcalzone Danke dir, das ist natürlich die eleganteste Lösung 🙂 Werd ich mal bei Zeiten aufsetzen, jetzt am Anfang werd ich erstmal die direkte Methode mit SSH Upload und iob upload benutzen

              1 Reply Last reply Reply Quote 0
              • arteck
                arteck Developer Most Active @basti4557 last edited by arteck

                @basti4557 nein bei uload werden nur der admin ordner aktualisiert..wenn du an den Admin Einstellungen nix gemacht hast..dann brauchst das auch nicht machen..

                1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @basti4557 last edited by paul53

                  @basti4557 sagte: wird dann kompiliert

                  Kompiliert wird bei Instanz-Start.

                  1 Reply Last reply Reply Quote 0
                  • Jey Cee
                    Jey Cee Developer @basti4557 last edited by

                    @basti4557 sagte in Einstieg in die Adapterentwicklung:

                    , da ich im Ping Adapter eine Funktion vermisse die

                    Welche Funktion hast du den vermisst?

                    B OliverIO 2 Replies Last reply Reply Quote 0
                    • B
                      basti4557 @Jey Cee last edited by basti4557

                      @jey-cee Meine Steuerung ist so gebaut das sobald mein Handy das Haus verlässt das dann alles abgeschalten wird. Leider geht ab und zu mal ein ping Request verloren an das Android Handy, wodurch dann immer fälschlicher Weise alles abgeschalten wurde. Ich habe im Hintergrund das momentan so das einfach als Javascript ein Counter hochzählt und sobald das Handy 5 mal nicht erreicht wird abgeschalten wird. Jetzt bin ich gerade dabei den Adapter so zu erweitern das sobald ein Request fehlschlägt erneut eine Einstellbare Anzahl an Neuversuchen gestartet wird bis der Ping Adapter das Gerät als Offline feststellt.

                      Funktioniert soweit jetzt auch schon so halbwegs, werde das dann auch sobald ich das mal etwas getestet habe und es funktioniert hast als Merge Request reinstellen

                      ? 1 Reply Last reply Reply Quote 0
                      • ?
                        A Former User @basti4557 last edited by

                        @basti4557 ich freue mich auf deine Erweiterung!

                        B 1 Reply Last reply Reply Quote 0
                        • B
                          basti4557 @Guest last edited by

                          @brainbug Kannst es theoretisch schon testen 🙂 https://github.com/basti4557/ioBroker.ping

                          ? 1 Reply Last reply Reply Quote 0
                          • OliverIO
                            OliverIO @Jey Cee last edited by OliverIO

                            @jey-cee sagte in Einstieg in die Adapterentwicklung:

                            @basti4557 sagte in Einstieg in die Adapterentwicklung:

                            , da ich im Ping Adapter eine Funktion vermisse die

                            Welche Funktion hast du den vermisst?

                            das wäre gut noch in den ping oder radar adapter zu integrieren.
                            aufruf von hping3, falls es vorhanden ist.

                            https://forum.iobroker.net/topic/49880/iphone-verliert-immer-das-wlan/6?_=1639851614917

                            das verbessert die anwesenheitserkennung bei bestimmten iphone modellen, bei denen die normale methode nicht funktioniert. ein muster konnte da noch nicht erkannt werden, aber bei manchen funktioniert der normale mechanismus nicht zuverlässig. dann hilft hping3

                            1 Reply Last reply Reply Quote 0
                            • ?
                              A Former User @basti4557 last edited by

                              @basti4557 hab es mal installiert, mal schauen ob meine ebenfalls verlorenen Pings damit verbessert werden.

                              B 1 Reply Last reply Reply Quote 0
                              • B
                                basti4557 @Guest last edited by

                                @brainbug musst das aber auch in den Einstellungen hochstellen. Momentan ist der default auf 1 gestellt, also gleiches verhalten wie vorher

                                ? 2 Replies Last reply Reply Quote 0
                                • ?
                                  A Former User @basti4557 last edited by

                                  @basti4557 hab ich, das hab ich gesehen 🙂

                                  1 Reply Last reply Reply Quote 0
                                  • ?
                                    A Former User @basti4557 last edited by

                                    @basti4557 aktuell bin ich mit 3 unterwegs und momentan gibt es keine Probleme mit Pings die verloren gehen. Ich warte noch einige Tage und gehe dann auf 2 und beobachte.

                                    B 1 Reply Last reply Reply Quote 0
                                    • B
                                      basti4557 @Guest last edited by

                                      @brainbug Also ich habs auf 2 und hab bis jetzt keine Probleme gehabt. Wenn das Gerät erreichbar ist wird ja sowieso immer nur ein Ping gesendet, die Anzahl der Versuche wird wirklich nur bei Nchterreichbarkeit ausgereizt. Was man jetzt noch überlegen könnte abzufragen ob das Gerät als letztes als online gekenzeichnet wurde und nur dann die Anzahl der Versuche auszureizen. Momentan ist es ja so das immer, egal ob das Gerät online oder offline ist, die Anzahl der Versuche ausgereizt wird.

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

                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      639
                                      Online

                                      31.6k
                                      Users

                                      79.4k
                                      Topics

                                      1.3m
                                      Posts

                                      7
                                      17
                                      855
                                      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