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

      @Bluefox:

      Kann jemand ausprobieren, ob die neue Änderungen funktionieren?

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

      funktioniert bestens bei mir. :mrgreen:

      Daniel

      1 Reply Last reply Reply Quote 0
      • F
        freeki last edited by

        Hallo.

        Geofency läuft bei mir soweit.

        Allerdings habe ich ein Phänomen entdeckt, welches mir einige Probleme bereit.

        Ich kann nicht sagen, ob es ab geofency Adapter liegt, oder an etwas anderem.

        Wenn ich per Web Hook einen neuen Status übermittele, dann ich diesen aktuell unter "Ereignisse" und im Log.

        <size size="85">geofency-0 2016-01-22 13:04:22 info adapter geofency received webhook from device marc with values: name: Akazienweg 4, entry: 1</size>

        Wo ich ihn allerdings NICHT sehe, ist unter Objekte!

        Dort aktualisiert sich der Status nicht!

        geofency.0.marc.Akazienweg 4.entry ändert sich nicht!

        Wie gesagt… keine Ahnung, ob das an geofency, oder an was anderem liegt.

        Aktuell ist es z.B. auch so, dass ein createState im JS keinen solchen im JS Modul erzeugt...

        alles sehr seltsam.

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

          Hallo,

          Vielen Dank, bei mir funktioniert es nun. Ich hatte eine falsche Portweiterleitung eingerichtet.

          Darüber hinaus hatte ich den Namen meines Ortes von Straßenname in zu Hause geändert. Dadurch stimmte die Variable leider nicht mehr. Und die neue Variable war erst nicht zu finden.

          Aber nun geht's. Vielen Dank nochmal.

          Nun bleibt nur noch die Frage ob ich mit einem Widget 2 Variablen abfragen kann?

          Zu Hause grün

          Büro gelb

          Nicht zu Hause und nicht im Büro rot

          Und kann ich die Variable irgendwie auch in der Ccu anzeigen lassen, um sie da für Programme zu nutzen?

          Gruß Sven

          Gesendet von iPhone mit Tapatalk

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

            Es gibt neue Version von Geofency von soaf.

            Weil ich es nicht testen kann, konnte jemand das ausprobieren und Bescheid sagen?

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

            Falls dann alles OK ist, dann publische ich das auf npm.

            Danke,

            Bluefox

            1 Reply Last reply Reply Quote 0
            • Mr. Burns
              Mr. Burns last edited by

              Hallo,

              ist es möglich eine globale Variable im Adapter anzulegen, welche die letze Aktion wiedergibt?

              z.B. "xy hat die Arbeitsstelle betreten" oder "xy ist zu Zuhause angekommen"

              Oder hat einer von euch ein fertiges Script mit welchem ihr das gelöst habt?

              Bin ganz frisch und tue mich noch etwas schwer mit dem Scripten.
              9054_1-abwesend.jpg
              9054_2-anwesend.jpg

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

                Klasse, dass es Geofency nun als Adapter gibt 😉 Top!

                Folgende Punkte sind mir aufgefallen:

                Adapter Version 0.1.1 (neuste Version)

                1.) Kategorie: Wartung

                Passt nicht. Ich wüsste aber auch nicht die richtige Kategorie

                2.) atHome funktioniert bei mir nicht

                Ich habe als Ortsnahme für Zuhause Wohnung eingetragen.

                Mein Device ist in der Webholk-URL mit 0 bezeichnet.

                Der Datenpunkt 0.Wohnung.entry ändert sich auch korrekt.

                Die Datenpunkte atHome und atHomeCount bleiben leer.

                1 Reply Last reply Reply Quote 0
                • Mr. Burns
                  Mr. Burns last edited by

                  Wofür könnte man das brauchen, wenn die übergeordnete Variable at Home sich auch ändert?

                  Mir sind die zwei "globalen" Variablen auch aufgefallen und das sie sich nicht ändern, hab das aber auf meine fehlprogrammierung des Adapters geschoben.

                  Ich hatte gehofft, dass es sich um einen String handelt, welcher den aktuellen Standort respetive den letzten Standort im Klartext wiedergibt. Der count könnte so schön die verstrichene Zeit in min. Wiedergeben…das wäre doch was :roll:

                  Gruß

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

                    Hi Mr. Burns,

                    ich verstehe das so:

                    atHome

                    hier werden die Personen eingetragen, die derzeit am definierten Ort "zuhause" sind.

                    Die Namen der Personen sind dann die, die in der URL in geofency eingetragen sind.

                    z.B: "Gabi, Horst,"

                    atHomeCount

                    Die Anzahl der Personen, die gerade zuhause sind.

                    Im Beispiel oben: 2

                    Kann man auch selbst per Script lösen. Mit den beiden Datenpunkten ist diese Info für eine Anwesenheitserkennung über Geofency direkt als State verfügbar, ohne dass man ein Script verwenden muss.

                    Was Du möchtest kannst Du auch in Javascript lösen.

                    Du machst je Person ein on( mit RegEx auf den Ort) und erhält damit immer den jeweiligen aktuellen Ort (oder verlassenen Ort) der entsprechenden Person.

                    Meine Wünsche an den Adapter:

                    • Leerzeichen in Ortsnamen werden in _ gewandelt. ein Punkt bleibt ein Punkt, z.B. in Dr. xyz. Damit habe ich eine Ebene mehr im Datensatz. Ggf. Konfigurierbar, ob Punkte auch im _ umgewandelt werden sollen.

                    • die Info ob iBeacon oder Ort kann ich aus dem Device Object mit getObject extrahieren. schön wäre ggf. ein Datenpunkt mit der Info, bzw. konfigurierbar, dass man iBeacon Infos ausblenden kann. Wenn mein Auto in der Nähe meines Büros parkt, bin ich z.B. über iBeacon im Auto und gleichzeitig im Büro. Bekommt man aber auch per Javascript hin.

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

                      Hallo,

                      das Ersetzen eines Punktes durch einen Unterstrich habe ich implementiert und dafür einen Pullrequest gestellt.

                      Nicht ganz verstanden habe ich deinen Wunsch nach der Behandlung eine Beacons. Wenn der Beacon einen

                      eigenen Ortsnamen hat, kannst Du ihn doch von den Geo-Orten unterscheiden. Eine ggf. übergebene Beacon-ID

                      als Datenpunkt anzulegen ist aber kein Problem. Aber wo ist der tiefere Sinn, wenn durch den "Ortsnamen" schon

                      bekannt ist, dass es sich um einen Beacon handelt.

                      Viele Grüße.

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

                        Danke soef 🙂

                        ich glaube die Unterscheidung mit den iBeacons braucht man wirklich nicht 🙂

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

                          Ein toller Adapter…

                          vielen Dank dafür.

                          Hat schon jemand hinbekommen, das sich die Übergeordnete Variable ändert?

                          Bei mir bekomme ich das leider nicht hin.

                          Wenn ja könntet Ihr mal sagen wie Ihr das eingerichtet habt?

                          Gruß Sven

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

                            Zwei Punkte noch zum Adapter:

                            1.)

                            Die Datenpunkte atHome und atHomeCount füllen sich nicht

                            2.)

                            bei iBeacons kann man einstellen, dass die Adresse des Standorts aktualisiert wird.

                            Diese Daten werden in keinem Datenpunkt abgebildet (latitude, longitude, address)

                            Anwendungsfall:

                            iBeacon im Auto. ioBroker weiss, wo das Auto steht.

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

                              Hallo,

                              bin nicht so in der Adapterentwickjlung drinn.

                              Die HomeVariablen werden nicht gefüllt, weil das adapter.getState schief geht:

                              function setAtHome(userName, body) {
                                  if (body.name.toLowerCase() !== adapter.config.atHome.toLowerCase()) return;
                                  var atHomeCount, atHome;
                                  adapter.getState(stateAtHomeCount, function (err, obj) {
                                      if (err || !obj) return;
                                      atHomeCount = obj.val;
                                      adapter.getState(stateAtHome, function (err, obj) {
                                          if (err || !obj) return;
                                          atHome = obj.val ? JSON.parse(obj.val) : [];
                                          var idx = atHome.indexOf(userName);
                                          if (body.entry === '1') {
                                              if (idx < 0) {
                                                  atHome.push(userName);
                                                  adapter.setState(stateAtHome, JSON.stringify(atHome), true);
                                              }
                                          } else {
                                              if (idx >= 0) {
                                                  atHome.splice(idx, 1);
                                                  adapter.setState(stateAtHome, JSON.stringify(atHome), true);
                                              }
                                          }
                                          if (atHomeCount != atHome.length) adapter.setState(stateAtHomeCount, atHome.length, true);
                                      });
                                  });
                              }
                              

                              Warum: Aus meiner Sicht sieht alles gut aus…

                              err und obj sind beide "null".

                              => Fehler? Beide States sind vorhanden, allerdings leer.

                              Hier müßte also 0 und "" zurück gegeben werden?

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

                                Hallo,

                                Umgehungslösung:

                                atHomeCount mit "0"

                                und

                                atHome mit "[]"

                                befüllen. Danach läuft es.

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

                                  Hallo,

                                  Beim Hinzufügen eines zweiten Gerätes:

                                  raspberrypi	2016-03-07 00:43:19	error	instance system.adapter.geofency.0 terminated with code 6 (uncaught exception)
                                  geofency-0	2016-03-07 00:43:19	info	terminating http server on port 8000
                                  TypeError:	2016-03-07 00:43:19	error	at Decoder.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/index.js:247:12)
                                  TypeError:	2016-03-07 00:43:19	error	at Decoder.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/node_modules/component-emitter/index.js:134:20)
                                  TypeError:	2016-03-07 00:43:19	error	at Decoder. (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                                  TypeError:	2016-03-07 00:43:19	error	at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:333:8)
                                  TypeError:	2016-03-07 00:43:19	error	at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
                                  TypeError:	2016-03-07 00:43:19	error	at Manager. (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                                  TypeError:	2016-03-07 00:43:19	error	at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:229:12)
                                  TypeError:	2016-03-07 00:43:19	error	at Socket.onack (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:305:9)
                                  TypeError:	2016-03-07 00:43:19	error	at Socket. (/opt/iobroker/node_modules/iobroker.geofency/geofency.js:186:26)
                                  TypeError:	2016-03-07 00:43:19	error	at setStates (/opt/iobroker/node_modules/iobroker.geofency/geofency.js:140:12)
                                  TypeError:	2016-03-07 00:43:19	error	Cannot read property 'entry' of undefined
                                  uncaught	2016-03-07 00:43:18	error	exception: Cannot read property 'entry' of undefined
                                  geofency-0	2016-03-07 00:43:18	info	adapter geofency received webhook from device ipadwh with values: name: Home, entry: 0
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • ruhr70
                                    ruhr70 last edited by

                                    @sissiwup:

                                    Hallo,

                                    Umgehungslösung:

                                    atHomeCount mit "0"

                                    und

                                    atHome mit "[]"

                                    befüllen. Danach läuft es. `

                                    Super analyse! Danke!

                                    Kannst Du ein Pull-Request (heisst das so?) auf Github machen?

                                    Was wäre der beste Weg?in der io-package.json bei beiden Datenpunkten "def": anpassen?

                                    https://github.com/ioBroker/ioBroker.ge … ckage.json

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

                                      Hallo,

                                      hab' die Defaults angepasst. Auch müsste die vorgenommene Änderung am Source die beiden States bei Bedarf beim Start anpassen.

                                      Pull Request ist gestellt. Müsste Bluefox nach seinem Urlaub dann mergen.

                                      Viele Grüße.

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

                                        Hallo zusammen!

                                        Ich oute mich mal als ioBroker Anfänger.

                                        Aktuell habe ich 2 Fragen zu dem Geofency Adapter:

                                        • Was muss ich einstellen, damit https funktioniert?

                                        Nach dem einfachen aktivieren erhalte ich nur diese Meldung im Log:

                                        Error Cannot enable secure web server, because no certificates found: undefined, undefined

                                        • Und ich verstehe nicht, warum es empfohlen ist, einen Reverse-Proxy vor den Dienst zu setzen?

                                        Ob nun die FritzBox weiterleitet oder noch Proxy dazwischen ist, kommt doch auf´s selbe raus, oder?

                                        Kennwort kann doch auch im Adapter aktiviert werden.

                                        Ich danke euch im Voraus!

                                        Gruß

                                        Rene

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

                                          Hallo,

                                          dir fehlen dann wahrscheinlich in den Systemeinstellungen von ioBroker (ganz oben rechts das Zahnrad) die Zertifikate.

                                          Viele Grüße.

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

                                            Danke für deine Antwort.

                                            Ich habe jetzt mal Zertifikate hinzugefügt (zusätzlich zu den Standard-Zertifikaten).

                                            Der Fehler tritt weiterhin auf.

                                            Ich vermute, ich kenne die Stelle nicht, an der man die zu verwendenden Zertifikate definiert.

                                            Die Fehlermeldung sagt ja undefined. Aber in den Parametern und in der Doku finde ich nix.

                                            Beste Grüße

                                            René

                                            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

                                            358
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

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