Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Adapter: Geofency

    NEWS

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Adapter: Geofency

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

      Hallo

      Ich habe für die Webhooks von Geofency einen Adapter erstellt (das selbe gab's auch schon für ccu.io - aber nicht von mir).

      Geofency http://www.geofency.comist eine mobile app (leider nur ios) um zu tracken wie lange man sich an definierten Orten aufgehalten hat. Z.B. zu Hause, im Büro, etc. Zusätzlich bietet es aber noch die Möglichkeit über einen Webhook einen HTTP Request zu versenden beim eintreten und verlassen eines definierten Ortes. Also z.B. beim Verlassen oder nach Hause kommen. in der Hausautomation also eine ganz sinnvolle Information 8-)

      also zum Adapter:

      installieren mit:

      npm install iobroker.geofency

      anschliessend ist der Adapter im Admin-Gui verfügbar und kann installiert werden.

      Konfiguration:

      Der Port, an den der Request der mobile app geschickt wird kann konfiguriert werden, sowie Benutzername und Passwort für die Autorisierung. Zur Zeit wird nur HTTP unterstützt.
      299_geofencyconfig.png

      Konfiguration der Mobile-App:

      In der Mobile App einen Ort erstellen. Anschliessen in den Einstellungen "webhook" auswählen:

      • in den URL Einstellungen die Domain (inkl. konfiguriertem Port) eintragen. Die URL soll lediglich den Ortsnamen enthalten (unter dem die Events dann im ioBroker gespeichert werden). Ansonsten so wie in dem Beispiel:
        299_img_9800.png 299_img_9798.png 299_img_9799.png

      Zum Testen sind die beiden Buttons "Betreten" und "Verlassen" sehr praktisch :idea:

      Nach dem ersten Event werden die Status für diesen Ort erzeugt:
      299_geofencystatus1.png
      "Entry" wir beim Eintreten auf 1 und beim Verlassen auf 0 gesetzt. Das Datum habe ich als eigenen Status eingefügt damit es (zumindest in meinem Fall) einfacher ist es in einem Script zu verwenden.

      Unter dem <ortsnamen>verstecken sich noch alle anderen Attribute aus dem geofency Aufruf:
      299_geofencystatus2.png

      Ich hoffe der Adapter ist hilfreich - Feedback nehme ich gerne entgegen.

      viele Grüsse

      Daniel</ortsnamen>

      bergjet 1 Reply Last reply Reply Quote 0
      • M
        Maxtox last edited by

        @Dschaedl:

        Feedback nehme ich gerne entgegen.

        viele Grüsse

        Daniel `

        Danke…teste ich auch mal 🙂

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

          Hallo Daniel,

          eine tolle Idee von dir, vielen Dank dafür. Ich wollte den adapter testen, allerdings tauchen bei der install warnungen auf und der Adapter leider nicht im Admin.

          root@raspberrypi:~# npm install iobroker.geofency
          npm http GET https://registry.npmjs.org/iobroker.geofency
          npm http 304 https://registry.npmjs.org/iobroker.geofency
          npm http GET https://registry.npmjs.org/request
          npm http 304 https://registry.npmjs.org/request
          npm http GET https://registry.npmjs.org/extend
          npm http GET https://registry.npmjs.org/json-stringify-safe
          npm http GET https://registry.npmjs.org/forever-agent
          npm http GET https://registry.npmjs.org/form-data
          npm http GET https://registry.npmjs.org/mime-types
          npm http GET https://registry.npmjs.org/node-uuid
          npm http GET https://registry.npmjs.org/tunnel-agent
          npm http GET https://registry.npmjs.org/qs
          npm http GET https://registry.npmjs.org/tough-cookie
          npm http GET https://registry.npmjs.org/http-signature
          npm http GET https://registry.npmjs.org/oauth-sign
          npm http GET https://registry.npmjs.org/hawk
          npm http GET https://registry.npmjs.org/aws-sign2
          npm http GET https://registry.npmjs.org/stringstream
          npm http GET https://registry.npmjs.org/combined-stream
          npm http GET https://registry.npmjs.org/isstream
          npm http GET https://registry.npmjs.org/is-typedarray
          npm http GET https://registry.npmjs.org/har-validator
          npm http GET https://registry.npmjs.org/bl
          npm http GET https://registry.npmjs.org/caseless
          npm http 304 https://registry.npmjs.org/json-stringify-safe
          npm http 304 https://registry.npmjs.org/extend
          npm http 304 https://registry.npmjs.org/forever-agent
          npm http 304 https://registry.npmjs.org/form-data
          npm http 304 https://registry.npmjs.org/node-uuid
          npm http 304 https://registry.npmjs.org/mime-types
          npm http 304 https://registry.npmjs.org/tunnel-agent
          npm http 304 https://registry.npmjs.org/qs
          npm http 304 https://registry.npmjs.org/tough-cookie
          npm http 304 https://registry.npmjs.org/http-signature
          npm http 304 https://registry.npmjs.org/oauth-sign
          npm http 304 https://registry.npmjs.org/hawk
          npm http 304 https://registry.npmjs.org/aws-sign2
          npm http 304 https://registry.npmjs.org/stringstream
          npm http 304 https://registry.npmjs.org/combined-stream
          npm http 304 https://registry.npmjs.org/isstream
          npm http 304 https://registry.npmjs.org/is-typedarray
          npm http 304 https://registry.npmjs.org/har-validator
          npm http 304 https://registry.npmjs.org/bl
          npm http 304 https://registry.npmjs.org/caseless
          npm WARN engine hawk@3.1.2: wanted: {"node":">=0.10.32"} (current: {"node":"v0.10.22","npm":"1.3.14"})
          npm http GET https://registry.npmjs.org/delayed-stream
          npm http GET https://registry.npmjs.org/mime-db
          npm http GET https://registry.npmjs.org/async
          npm http 304 https://registry.npmjs.org/delayed-stream
          npm http 304 https://registry.npmjs.org/mime-db
          npm http 304 https://registry.npmjs.org/async
          npm http GET https://registry.npmjs.org/readable-stream
          npm http GET https://registry.npmjs.org/sshpk
          npm http GET https://registry.npmjs.org/assert-plus
          npm http GET https://registry.npmjs.org/jsprim
          npm http 304 https://registry.npmjs.org/readable-stream
          npm http 304 https://registry.npmjs.org/sshpk
          npm http 304 https://registry.npmjs.org/assert-plus
          npm http 304 https://registry.npmjs.org/jsprim
          npm http GET https://registry.npmjs.org/chalk
          npm http GET https://registry.npmjs.org/commander
          npm http GET https://registry.npmjs.org/is-my-json-valid
          npm http GET https://registry.npmjs.org/pinkie-promise
          npm http 304 https://registry.npmjs.org/commander
          npm http 304 https://registry.npmjs.org/chalk
          npm http 304 https://registry.npmjs.org/is-my-json-valid
          npm http 304 https://registry.npmjs.org/pinkie-promise
          npm http GET https://registry.npmjs.org/pinkie
          npm http GET https://registry.npmjs.org/verror/1.3.6
          npm http GET https://registry.npmjs.org/extsprintf/1.0.2
          npm http GET https://registry.npmjs.org/json-schema/0.2.2
          npm http GET https://registry.npmjs.org/ansi-styles
          npm http GET https://registry.npmjs.org/escape-string-regexp
          npm http GET https://registry.npmjs.org/has-ansi
          npm http GET https://registry.npmjs.org/strip-ansi
          npm http GET https://registry.npmjs.org/supports-color
          npm http 304 https://registry.npmjs.org/pinkie
          npm http 304 https://registry.npmjs.org/escape-string-regexp
          npm http 304 https://registry.npmjs.org/has-ansi
          npm http 304 https://registry.npmjs.org/ansi-styles
          npm http 304 https://registry.npmjs.org/strip-ansi
          npm http 304 https://registry.npmjs.org/supports-color
          npm http GET https://registry.npmjs.org/graceful-readlink
          npm http 304 https://registry.npmjs.org/verror/1.3.6
          npm http 304 https://registry.npmjs.org/extsprintf/1.0.2
          npm http 304 https://registry.npmjs.org/graceful-readlink
          npm http 304 https://registry.npmjs.org/json-schema/0.2.2
          npm http GET https://registry.npmjs.org/ansi-regex
          npm http 304 https://registry.npmjs.org/ansi-regex
          npm http GET https://registry.npmjs.org/isarray/0.0.1
          npm http GET https://registry.npmjs.org/process-nextick-args
          npm http GET https://registry.npmjs.org/string_decoder
          npm http GET https://registry.npmjs.org/util-deprecate
          npm http GET https://registry.npmjs.org/core-util-is
          npm http GET https://registry.npmjs.org/inherits
          npm http 304 https://registry.npmjs.org/string_decoder
          npm http 304 https://registry.npmjs.org/isarray/0.0.1
          npm http 304 https://registry.npmjs.org/process-nextick-args
          npm http 304 https://registry.npmjs.org/util-deprecate
          npm http 304 https://registry.npmjs.org/core-util-is
          npm http 304 https://registry.npmjs.org/inherits
          npm http GET https://registry.npmjs.org/asn1
          npm http GET https://registry.npmjs.org/dashdash
          npm http GET https://registry.npmjs.org/jsbn
          npm http GET https://registry.npmjs.org/jodid25519
          npm http GET https://registry.npmjs.org/ecc-jsbn
          npm http GET https://registry.npmjs.org/tweetnacl
          npm http 304 https://registry.npmjs.org/dashdash
          npm http 304 https://registry.npmjs.org/jsbn
          npm http 304 https://registry.npmjs.org/jodid25519
          npm http 304 https://registry.npmjs.org/tweetnacl
          npm http 304 https://registry.npmjs.org/asn1
          npm http 304 https://registry.npmjs.org/ecc-jsbn
          npm http GET https://registry.npmjs.org/generate-function
          npm http GET https://registry.npmjs.org/generate-object-property
          npm http GET https://registry.npmjs.org/xtend
          npm http GET https://registry.npmjs.org/jsonpointer/2.0.0
          npm http 304 https://registry.npmjs.org/generate-function
          npm http 304 https://registry.npmjs.org/generate-object-property
          npm http 304 https://registry.npmjs.org/xtend
          npm http 304 https://registry.npmjs.org/jsonpointer/2.0.0
          npm http GET https://registry.npmjs.org/hoek
          npm http GET https://registry.npmjs.org/boom
          npm http GET https://registry.npmjs.org/cryptiles
          npm http GET https://registry.npmjs.org/sntp
          npm http 304 https://registry.npmjs.org/hoek
          npm http 304 https://registry.npmjs.org/boom
          npm http 304 https://registry.npmjs.org/cryptiles
          npm http 304 https://registry.npmjs.org/sntp
          npm WARN engine hoek@2.16.3: wanted: {"node":">=0.10.40"} (current: {"node":"v0.10.22","npm":"1.3.14"})
          npm WARN engine boom@2.10.1: wanted: {"node":">=0.10.40"} (current: {"node":"v0.10.22","npm":"1.3.14"})
          npm WARN engine cryptiles@2.0.5: wanted: {"node":">=0.10.40"} (current: {"node":"v0.10.22","npm":"1.3.14"})
          npm http GET https://registry.npmjs.org/is-property
          npm http 304 https://registry.npmjs.org/is-property
          npm http GET https://registry.npmjs.org/assert-plus
          npm http 304 https://registry.npmjs.org/assert-plus
          iobroker.geofency@0.0.1 node_modules/iobroker.geofency
          └── request@2.67.0 (is-typedarray@1.0.0, aws-sign2@0.6.0, forever-agent@0.6.1, caseless@0.11.0, stringstream@0.0.5, tunnel-agent@0.4.2, oauth-sign@0.8.0, isstream@0.1.2, json-stringify-safe@5.0.1, extend@3.0.0, node-uuid@1.4.7, combined-stream@1.0.5, qs@5.2.0, tough-cookie@2.2.1, form-data@1.0.0-rc3, mime-types@2.1.9, bl@1.0.0, har-validator@2.0.5, http-signature@1.1.0, hawk@3.1.2)
          

          Gruss Sven

          1 Reply Last reply Reply Quote 0
          • P
            pix last edited by

            Hallo,

            hervorragend! Habe den Adpter schon unter CCU.IO genutzt und bin wirklich froh, dass du ihn zu ioBroker portiert hast. Er funktioniert ohne Murren.

            😄

            Danke und Gruß,

            Pix

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

              Ich habe dich zu Collaborators hinzugefügt.
              48_2016-01-16_13_14_05-collaborators.png
              Du kannst direkt dorthin puschen. Oder falls du bei sich den lassen willst, dann werde ich aus ioBroker Organisation löschen.

              P.S. Habe 2 Push-Request gestellt.

              1 Reply Last reply Reply Quote 0
              • D
                Dschaedl last edited by

                @Bluefox: Cool, danke!

                Ich habe die Pfade nun auf iobroker/iobroker.gefency angepasst und als Version 0.0.2 auf npm publiziert - und dich als collaborator zum npm dazugefügt.

                viele Grüsse

                Daniel

                1 Reply Last reply Reply Quote 0
                • D
                  Dschaedl last edited by

                  @Sven
                  > Ich wollte den adapter testen, allerdings tauchen bei der install warnungen auf und der Adapter leider nicht im Admin.

                  hmm.. sieht eigetnlich nur nach Warnungen ein. Deine nodejs Version scheint nicht die gewünschte zu sein.

                  Hast du nach dem npm install auch ein Refresh der Adapter im Admin-Gui gemacht?

                  viele Grüsse

                  Daniel

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

                    Hallo Daniel,

                    leider ist auch nach dem refresh nichts unter Adapter erschienen. Allerdings gibt es auch keine neuere nodejs Version die mir im Admin angezeigt wird.

                    Aber mal anders, nachdem du hinzugefügt bist für den Adapter, müsste dieser doch eh mit dabei sein. Oder?

                    Gruß Sven

                    Gesendet von iPhone mit Tapatalk

                    1 Reply Last reply Reply Quote 0
                    • D
                      Dschaedl last edited by

                      @Sven

                      noch eine blöde Frage: Von wo aus hast du npm aufgerufen? Du solltest dich dafür im iobroker Verzeichnis befinden.

                      viele Grüsse

                      Daniel

                      P.S.

                      es geht nicht um die Version von ioBroker, sondern um die node.js Version - die lässt sich nich im GUI updaten :roll:

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

                        Hey vielen Dank,

                        ich habe den Ordner natürlich nicht vorher gewechselt. Ich Depp!

                        Vielen dank nun funktioniert es soweit 100%

                        Danke für den tollen Adapter.

                        gruß Sven

                        1 Reply Last reply Reply Quote 0
                        • B
                          BlueEssi last edited by

                          Top!!! Funktioniert auf Anhieb!!! Vielen Dank!

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

                            Hallo, ich nochmal

                            ich habe heute die geofancy Meldung bekommen, das der Status abwesend nicht gesetzt werden kann.

                            Ist ja auch logisch, der Url nach habe ich ja auch die ip des raspi/Port/ablageort eingegeben. So ist diese von außen natürlich nicht erreichbar.

                            Kann ich nun die "feste ip"/Port/ablageort nehmen? Denn eigentlich fehlt ja die Zuordnung zum raspi dann oder?

                            2. Frage

                            mit welchem Widget habt ihr die Visualisierung für an bzw. Abwesenheit gemacht?

                            Frage 3

                            Ist es möglich das ich ein Icon als Widget nutze, das bei Anwesenheit grün/ bei Abwesenheit rot/ und bei Anwesenheit im Büro gelb ist?

                            Und wenn ja wie kann man das anlegen?

                            Ergibt ein weiterer geofancy Ort wenn ich den unter raspi ip/Port/ablageort 2 ?

                            Danke schonmal für eure Mühe :-))

                            Gruß Sven

                            Gesendet von iPhone mit Tapatalk

                            1 Reply Last reply Reply Quote 0
                            • P
                              pix last edited by

                              Hallo Sven:

                              zu 2 und 3) damit:

                              ! 261_bildschirmfoto_2016-01-20_um_18.07.58.png
                              Metro Tile ValueList Widget

                              [{"tpl":"tplMetroTileList8","data":{"oid":"geofency.0.pix.Zu Hause.entry","visibility-cond":"==","visibility-val":1,"label0":"abwesend","label1":"zu Hause","label2":"Value list","label3":"Value list","label4":"Value list","label5":"Value list","label6":"Value list","label7":"Value list","bg_class0":"bg-transparent","bg_class1":"bg-transparent","bg_class2":"bg-indigo","bg_class3":"bg-indigo","bg_class4":"bg-indigo","bg_class5":"bg-indigo","bg_class6":"bg-indigo","bg_class7":"bg-indigo","icon_class0":"icon-custom","icon_class1":"icon-custom","icon_class2":"icon-pencil","icon_class3":"icon-pencil","icon_class4":"icon-pencil","icon_class5":"icon-pencil","icon_class6":"icon-pencil","icon_class7":"icon-pencil","icon_badge0":"icon-custom","icon_badge1":"icon-custom","icon_badge2":"icon-pencil","icon_badge3":"icon-pencil","icon_badge4":"icon-pencil","icon_badge5":"icon-pencil","icon_badge6":"icon-pencil","icon_badge7":"icon-pencil","badge_bg_class0":"","badge_bg_class1":"","badge_bg_class2":"bg-cyan","badge_bg_class3":"bg-cyan","badge_bg_class4":"bg-cyan","badge_bg_class5":"bg-cyan","badge_bg_class6":"bg-cyan","badge_bg_class7":"bg-cyan","brand_bg_class0":"bg-darkOrange","brand_bg_class1":"bg-olive","brand_bg_class2":"ribbed-steel","brand_bg_class3":"ribbed-steel","brand_bg_class4":"ribbed-steel","brand_bg_class5":"ribbed-steel","brand_bg_class6":"ribbed-steel","brand_bg_class7":"ribbed-steel","badge_top":"0","badge_left":"0","name":"Geoposition J","label_prepend":"","comment":"Daten aus Handyortung","icon0":"/icons-mfd-png/status_man.png","icon1":"/icons-mfd-png/status_man.png","icon_width":"79","icon_height":"79","icon_top":"22","icon_left":"32"},"style":{"left":"588px","top":"434px","z-index":"25","width":"137px","height":"137px"},"widgetSet":"metro"}]
                              

                              Jetzt zu meinem Problem:

                              Ich nutze ioBroker rauf Mac OS X. Leider ist der Mac, nachdem Geofency den Status geändert hat, nicht mehr erreichbar. Er läuft noch, aber weder Bildschirmfreigabe noch Zugriffe auf die Webserver funktionieren noch (also kein VIS, etc..). Ich habe es durch Probieren definitiv auf den Adapter eingrenzen können.

                              <size size="50">Kann ich den Port (7999) ändern, den der Adapter für seinen Webserver nutzt? Habe das Gefühl, der ist schon belegt.</size>

                              EDIT: Peinlich, peinlich. GIbt es ja in den Einstellungen :oops: :oops: :oops:

                              Gruß

                              Pix

                              1 Reply Last reply Reply Quote 0
                              • R
                                RobS last edited by

                                Hallo zusammen und Danke Dschaedl für den Adapter,

                                leider bin ich nicht in der Lage ihn zu installieren. Nach der Eingabe von "npm install iobroker.geofency" im Ordner "/node modules" ist alles wunderbar ohne Mucken durchgelaufen. Es wird auch das Verzeichnis iobroker.geofency angelegt nur leider findet sich der Adapter nun nirgendwo wieder. Weder im Admin-GUI noch in der Konsole unter "list adapters"…

                                Habe ich noch irgendetwas nicht bedacht oder wo könnte der Fehler bei mir liegen?

                                Vielen Dank und Grüße,

                                Rob

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

                                  Nicht im Ordner node_modules installieren, sondern eine Ebene höher.

                                  npm install legt automatisch seine Software in den node_modules Ordner

                                  Gesendet von meinem iPhone mit Tapatalk

                                  1 Reply Last reply Reply Quote 0
                                  • R
                                    RobS last edited by

                                    Hey, Danke für die schnelle Anwort versteckt.

                                    So hatte ich es eigentlich schon als allererstes gemacht. Habe jetzt nochmal das Verzeichnis gelöscht und so installiert, wie von dir beschrieben und siehe da, der Adapter taucht auf… :shock:

                                    Vielen Dank!

                                    Rob
                                    305_heizungsscript_220_b03_temp.txt

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

                                      Kann jemand ausprobieren, ob die neue Änderungen funktionieren?

                                      cd /opt/iobroker
                                      npm install https://github.com/ioBroker/ioBroker.geofency/tarball/master
                                      

                                      Ich habe kein iPhone.

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

                                        Hallo Bluefox,

                                        was hast du denn geändert?

                                        Also auf was muss ich achten?

                                        Gruß Sven

                                        Gesendet von iPhone mit Tapatalk

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

                                          @Sven2013:

                                          Hallo Bluefox,

                                          was hast du denn geändert?

                                          Also auf was muss ich achten?

                                          Gruß Sven

                                          Gesendet von iPhone mit Tapatalk `
                                          Ich habe ein Pull-Request gemerged. Was das genau macht weiß ich nicht:

                                          https://github.com/ioBroker/ioBroker.ge … 349de2871f

                                          Vermutlich werden neue States erzeugt: "lastLeave", "lastEnter"

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

                                            Hallo Bluefox,

                                            ich teste das nachher wenn ich zu Hause bin.

                                            @all

                                            kann mir nochmal einer sagen welche URL ihr angegeben habt bei Geofancy? Denn der Status kann nicht gesetzt werden sagt geofancy.

                                            Und was ich auch versuche, es ändert sich leider nichts 😞

                                            Gruß Sven

                                            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

                                            615
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            50
                                            205
                                            46409
                                            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