Geofencing Modul für Geofency.com und Geofancy.com

Begonnen von Loredo, 07 Januar 2014, 16:57:26

Vorheriges Thema - Nächstes Thema

Loredo

#420
da war noch ein Dreher in 10_RESIDENTS, den ich gerade korrigiert habe (siehe Readings residentsTotalWayhome*).
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

egmontr

#421
Hallo!

einer meiner EgiGeoZone-User hat mir folgenden Fehler in mein Forum dargestellt, welchen ich so nun weitergeben möchte.

Danke
Egmont

ZitatHallo,

da ich mich gerade in den USA befinde und ein bisschen mit FHEM und dem Geofancy-Modul spiele, ist mir ein Bug aufgefallen - bei der Übermittlung meiner negativen Longitude gibt er ein "unexpected format" zurück, da er den regulären Ausdruck

m/^[0-9]+([.][0-9]+)?$/

im Modul 98_GEOFANCY.pm nicht matched. Selbiges würde auch bei einer negativen Latitude auftreten.

Ich habe das momentan gelöst, indem ich den Ausdruck um ein [-\d] erweitert habe:

m/^[-\d][0-9]+([.][0-9]+)?$/

Vielleicht kann das ja beim nächsten Modulupdate mit eingearbeitet werden ;)

Viele Grüße aus Texas
LG Egmont

RPI B+ mit FHEM und CUL V3 868MHZ

Loredo

Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

djcysmic

Hallo,

erstmal danke an Egmont für das Posten im richtigen Forum.

Bei der vorgeschlagenen Lösung ist mir noch aufgefallen, dass er so einstellige positive Werte nicht akzeptieren würde. Da ich bei den Regexpressions nicht zu 100% fit bin, bin ich durch Ausprobieren zu folgender Lösung gekommen:

^[-]*[\d]{1,3}([.][0-9]+)?$

Aber vielleicht hat jemand noch eine bessere Lösung...

Viele Grüße

Loredo

Ich habe ohnehin nicht die Lösung übernommen.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

djcysmic

Okay. Dann brauche ich mir ja darüber keine Gedanken weiter machen...

pnewman

#426
Hallo,

ich hatte nur ein notify.

Nun habe ich meine UUID in ROOMMATE eingetragen und bekomme folgendes im LOG:

2016.01.17 22:13:57 4: GEOFANCY geofancy: Found matching UUID at ROOMMATE device rr_Ralf
2016.01.17 22:13:57 4: GEOFANCY geofancy: id=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX name=Zu-Hause trig=1 date=1453065237 lat=XXXXXXXXXXXXXXXXX long=XXXXXXXXXXXXXXXXX address:- dev=XXXXXXXXXXXXXXXXXXXXXXX devAlias=rr_Ralf
2016.01.17 22:13:57 1: PERL WARNING: Odd number of elements in anonymous hash at (eval 2919) line 1.
2016.01.17 22:13:58 1: PERL WARNING: Odd number of elements in anonymous hash at (eval 2921) line 1.


Dies tritt immer beim verlassen meines Zu-Hause auf!
Nicht beim ankommen.

Und wenn ich die Testmeldungen in der APP absende.

Bei meiner Frau immer!

Habe ich einen Fehler eingebaut?

Ein LIST rr_Ralf ergibt:

Internals:
   DEF        rgr_Residents,rgr_Parents
   NAME       rr_Ralf
   NR         407
   NTFY_ORDER 50-rr_Ralf
   RESIDENTGROUPS rgr_Residents,rgr_Parents,
   STATE      home
   TYPE       ROOMMATE
   Readings:
     2016-01-17 22:13:57   durTimerAbsence 00:00:00
     2016-01-15 21:56:37   durTimerAbsence_cr 0
     2016-01-17 22:29:57   durTimerPresence 00:16:52
     2016-01-17 22:29:57   durTimerPresence_cr 17
     2016-01-08 23:50:45   durTimerSleep   00:00:00
     2016-01-08 23:50:45   durTimerSleep_cr 0
     2016-01-17 22:13:57   lastArrival     2016-01-17 22:13:57
     2016-01-17 22:13:53   lastDeparture   2016-01-17 22:13:53
     2016-01-17 22:13:57   lastDurAbsence  00:00:00
     2016-01-17 22:13:57   lastDurAbsence_cr 0
     2016-01-17 22:13:53   lastDurPresence 00:06:03
     2016-01-17 22:13:53   lastDurPresence_cr 6
     2016-01-17 22:13:57   lastLocation    Zu-Hause
     2016-01-17 22:13:57   lastLocationAddr -
     2016-01-17 22:13:57   lastLocationLat XXXXXXXXXXXXXXX
     2016-01-17 22:13:57   lastLocationLong XXXXXXXXXXXXXXX
     2016-01-17 22:13:53   lastMood        calm
     2016-01-17 22:13:57   lastState       absent
     2016-01-17 22:13:57   location        Zu-Hause
     2016-01-17 22:13:57   locationAddr    -
     2016-01-17 22:13:57   locationLat     XXXXXXXXXXXXXXX
     2016-01-17 22:13:57   locationLong    XXXXXXXXXXXXXXXX
     2016-01-17 22:13:57   locationPresence present
     2016-01-17 22:13:57   mood            calm
     2016-01-17 22:13:57   presence        present
     2016-01-17 22:13:57   state           home
     2016-01-08 23:51:17   wayhome         0
   Timer:
     Rr_ralf_durationtimer:
       HASH       rr_Ralf
       MODIFIER   DurationTimer
       NAME       rr_Ralf_DurationTimer
Attributes:
   alias      Status
   devStateIcon .*home:user_available:absent .*absent:user_away:home .*gone:user_ext_away:home .*gotosleep:scene_toilet:asleep .*asleep:scene_sleeping:awoken .*awoken:scene_sleeping_alternat:home .*:user_unknown:home
   group      Ralf
   icon       people_sensor
   room       Residents
   rr_geofenceUUIDs XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
   rr_locationHome Zu-Hause
   rr_realname group
   sortby     1
   webCmd     state



Mit folgendem NOTIFY hatte ich dies nicht:

define n_rr_Ralf notify geofancy:currLoc_Ralf.* set rr_Ralf:FILTER=location!=$EVTPART1 location $EVTPART1


Meine Frau aber immer!

Kann dies an den verschiedenen Handys liegen?
Ich= iPhone4 IOS 7.1.2
Frau= iPhone5s IOS 9.2

Wie behebe ich das Problem?


Gruß
Ralf
Raspberry Pi3B+ / Nano-Cul 868 - MAX!=Heizung, HM-Lan - Rollo+Licht, JeeLink-Clone 868 - LaCrosse, JeeLink-Clone 868 - PCA301, CUL 434 - IT-Steckdosen+Fernbedienung

Loredo

Hallo Ralf,


ich habe da keine Idee und bekomme das bei mir nicht nachgestellt.
Wechseln der Status des ROOMMMATE Device denn ordnungsgemäß?


Das wahrscheinlichste ist, dass die Odd Number Meldungen von einem Notify oder DOIF kommen, welche entweder auf das GEOFANCY oder ROOMMATE Device reagieren.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

pnewman

Hallo Loredo,

der Status des ROOMMATE wechselt wie versprochen.
Mit dem Eintrag der UUID in die ROOMMATE sind bei mir 2 Notify weggefallen, die für den Statuswechsel verantwortlich waren.

Im Moment habe ich nur noch ein DOIF:

([rgr_Parents] eq "absent" and [{sunrise("CIVIL")}-{sunset("CIVIL")}]) (set R_Alle Zu)
DOELSEIF ([rgr_Parents] eq "home" and ([08:00|8] or [10:00|7])-{sunset("CIVIL")}) (set R_Alle Auf)


Zum Test für meine Rollladen.

Und tatsächlich, wenn ich dieses DOIF auf disable setze, kommt kein PEARL WARNING mehr!

Und nun?
Ist mein DOIF irgendwie falsch?

Gruß
Ralf
Raspberry Pi3B+ / Nano-Cul 868 - MAX!=Heizung, HM-Lan - Rollo+Licht, JeeLink-Clone 868 - LaCrosse, JeeLink-Clone 868 - PCA301, CUL 434 - IT-Steckdosen+Fernbedienung

Loredo

Das ist wohl in erster Linie eine Fachfrage an Damian.


Du kannst mal versuchen [rgr_Parents:state] anzugeben, damit explizit das entsprechende Reading statt dem Internal STATE beobachtet wird. Das mache ich generell immer so, weil man so sicher sein kann auf das Reading zu reagieren, welches man wirklich meint. STATE kann sich auch mal plötzlich ganz unerwartet verhalten (zB nach einem Update oder weil man eventMap, stateFormat o.ä. benutzt)
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

pnewman

Hallo Loredo,

vielen Dank für den Lösungsvorschlag.
Den werde ich heute Nachmittag testen, und dann Berichten.


Gruß
Ralf
Raspberry Pi3B+ / Nano-Cul 868 - MAX!=Heizung, HM-Lan - Rollo+Licht, JeeLink-Clone 868 - LaCrosse, JeeLink-Clone 868 - PCA301, CUL 434 - IT-Steckdosen+Fernbedienung

pnewman

Hallo Loredo,

ich habe mein DOIF nun nach deinem Vorschlag abgeändert:

([rgr_Parents:state] eq "absent" and [{sunrise("CIVIL")}-{sunset("CIVIL")}]) (set R_Alle Zu)
DOELSEIF ([rgr_Parents:state] eq "home" and ([08:00|8] or [10:00|7])-{sunset("CIVIL")}) (set R_Alle Auf)


Eigenartig ist nur dass, als ich Heute zum Mittag Zu-Hause ankam, gab es kein PEARL WARNING!

Dies ist mir aber auch erst eben beim testen aufgefallen.

Als ich nun das DOIF abgeändert hatte und per APP die Verlassen Meldung manuell ausgelöst habe kam wieder die PEARL WARNING.

In meinem LOG kann ich aber sehen dass diese PEARL WARNING unregelmäßig auftaucht.
Da ich aber auf der Couch sitze und die Meldungen aus der APP heraus Manuell sende, werde ich erstmal beobachten wie es sich im Ernstfall verhält.

Danke für deine Hilfe.
Und vor allem für deine Arbeit.


Gruß
Ralf
Raspberry Pi3B+ / Nano-Cul 868 - MAX!=Heizung, HM-Lan - Rollo+Licht, JeeLink-Clone 868 - LaCrosse, JeeLink-Clone 868 - PCA301, CUL 434 - IT-Steckdosen+Fernbedienung

WolfgangV

Hallo,

ich bin seit kurzem stolzer Besitzer von 4 Ibeacons der Marke Ghostyu.
Mein Ziel war, damit das Licht etwas stabiler zu schalten, da es - auch unter Einbeziehung eines Dummys - doch ziemlich häufig vorkommt, dass es bei mangelnder Bewegung im Wohnzimmer plötzlich dunkel wird.
Es ist mir auch gelungen, die Ibeacons auszulesen und mit der App Geofency entsprechend anzusprechen und Ortswechsel im Haus an das Fhem-Modul weiterzureichen.

Meine Frage ist, wie ich kann andere Locations anlegen kann außer "home"?

Leider habe ich auch im Wiki und auch hier im Forum nichts wirklich Erhellendes zur Einrichtung von Ibeacons zur Anwesenheitserkennung gefunden, außer, dass einige Leute hier hin und wieder damit experimentieren.

Könnt ihr mir mit Tipps oder Verweisen hier irgendwie weiterhelfen?

Gruß


Wolfgang
Raspi5  HmUART, Jeelink, VU+Duo2, Viera, Sonos, HM-CC-RT-DN,     
HM-WDS30-OT2-SM, HM-LC-Dim1TPBU-FM,    
Jeelink, TUL

wmr72

Hast du denn in Geofency weitere Locations für die Beacons angelegt? Und dieser Name kommt dann als Location in FHEM an?

Ich selbst nutze ROOMMATE zusammen mit Geofency, wenn du dahin die Lokation weiterreichst kannst Du im Attribut rr_locationHome die Namen aller Locations eintragen, die als "Home" gewertet sollen.

WolfgangV

Hallo,

danke für die Antwort, aber das mit den locations hatte ich inzwischen auch schon hingekriegt.

Allerdings hatte ich mir mehr von den Ibeacons versprochen: Es gibt recht häufig Verbindungsabbrüche. Zwar gelingt mir jetzt ein stabileres Schalten, aber nur in Verbindung mit den bereits vorhandenen Bewegungsmeldern und einem Anwesenheitsdummy.

Leider lässt Sendestärke  der Ibeacons nur in Stufen von -23, -6, 0 und +4 regulieren. Entweder sind sie dann zu schwach oder so stark, dass sie (in meinem Altbau mit Holzbalkendecken) bis in den nächsten Stock oder sogar in den übernächsten hineinstrahlen, wo sie dann in den Bereich eines anderen Ibeacons hineinstrahlen und dort zu falschen locations führen.

Schwierig war auch, dass sich die Dinger bloß mit einer teil chinesischsprachen und teils englischen app überhaupt erstmal programmieren lassen, indem  UUIDs zugewiesen und Namen vergeben werden müssen.

Kann Geofancy denn mit den verschiedenen Nähestufen der Ibeacons oder dem Major Value und dem Minor Value etwas anfangen? Dann könnte man etwas genauer damit arbeiten.

Gruß


Wolfgang
Raspi5  HmUART, Jeelink, VU+Duo2, Viera, Sonos, HM-CC-RT-DN,     
HM-WDS30-OT2-SM, HM-LC-Dim1TPBU-FM,    
Jeelink, TUL