Hallo,
ich bin auch dabei mir das Geofancy Modul einzurichten.
Hardware
htc android EgiGeoZone
Raspberry Pi 2 Raspbian alle Updates gemacht, auch fhem.
Der Teil der Probleme macht :
Ich möchte ereichen das das Licht eingeschaltet wird wenn ich nach Hause komme aber nur wenn es dunkel ist. Klappt aber leider nicht.
Später sollen noch andere Aktionen, wie Heizung und so dazukommen aber erst mal muss es erkannt werden.
twighlight ist zwar schon definiert aber noch nicht "eingebaut" da ja erstmal die Erkennung klappen muss.
fhem ist von aussen per ssh über /geo erreichbar ( Nach langem Theater da ich nur noch IPV6 hatte.)
Aufgebaut habe ich es nach dem Wiki Artikel "Anwesenheitserkennung"
define dunkel Twilight 52.411739 13.372548 3 638242
define geofancy GEOFANCY geo
attr geofancy devAlias fd1198de-99a4-3261-b627-172cae77627e:Stefan
attr geofancy event-on-change-reading state
attr geofancy room Unsorted
define FileLog_geofancy FileLog ./log/fhem-%Y-%m.log geofancy
attr FileLog_geofancy logtype text
define n_Stefan.Presence notify geofancy:currLoc_Stefan:.home set Stefan.homestatus:FILTER=STATE!=home home
attr n_stefan.Presence room Residents
define n_Stefan.absence notify geofancy:currLoc_Stefan:.home {\
if (Value("Stefan.homestatus") ne "gone") {\
fhem("set Stefan.homestatus:FILTER=STATE!=absent absent");;\
}\
}
define Licht_an notify n_Stefan.Presence set WZ.Schrank on
define Licht_aus notify n_Stefan.absence set WZ.Schrank off
Im Log erscheint das, da ich die URL aus dem Browser aufrufe um schneller testen zu können, fehlt date: lat: long: . Das dürft aber nicht das Problem sein.
GEOFANCY geofancy id:fd1198de-99a4-3261-b627-172cae77627e name:home trig:0 date: lat: long: dev:Stefan
GEOFANCY geofancy id:fd1198de-99a4-3261-b627-172cae77627e name:home trig:1 date: lat: long: dev:Stefan
Ich habe vorher diese Variante probiert, geht aber auch nicht
#define n_Stefan.Presence notify geofancy:currLoc_Stefan:.home IF ([dunkel:twilight] <= 4) (set WZ.Schrank on)
#define n_Stefan.Presence notify geofancy:currLoc_Stefan:.home set WZ.Schrank on
In den Readings wird es richtig ausgewertet, jetzt steht da Büro, daq ich im Büro. Sonst steht da home:
Readings
Stefan
arrived Büro
2015-10-09 10:43:23
currLocLat_Stefan
52.45xxxxxx
2015-10-09 10:43:23
currLocLong_Stefan
13.45xxxxxx
2015-10-09 10:43:23
currLocTime_Stefan
2015-10-09 10:43:23
2015-10-09 10:43:23
currLoc_Stefan
Büro
2015-10-09 10:43:23
lastArr
Stefan Büro
2015-10-09 10:43:23
lastDep
Stefan Büro
2015-10-09 08:52:32
lastDevice
Stefan
2015-10-09 10:43:23
lastLocArr_Stefan
2015-10-09 07:32:46
2015-10-09 08:52:32
lastLocDep_Stefan
2015-10-09 08:52:32
2015-10-09 08:52:32
lastLocLat_Stefan
52.4531851
2015-10-09 08:52:32
lastLocLong_Stefan
13.4558214
2015-10-09 08:52:32
lastLoc_Stefan
Büro
2015-10-09 08:52:32
HILFE
Geofancy empfängt zwar die Meldung von der app, löst aber das Notify nicht aus, bzw erkennt es nicht .
Stefan
So ich habe es mit dem Beispiel von hier http://www.tatsch-it.de/abwesenheitsgesteuerte-anrufweiterleitung-mit-fritzbox-und-fhem/ (//http://) hinbekommen.
War mit Residents doch einfacher und flexibler.
define MCS RESIDENTS
attr MCS alias Residents
attr MCS devStateIcon .*home:status_available:absent .*absent:status_away_1:home .*gone:status_standby:home .*none:control_building_empty .*gotosleep:status_night:asleep .*asleep:status_night:awoken .*awoken:status_available:home
attr MCS group Wer
attr MCS icon control_building_filled
attr MCS room Zuhause
attr MCS webCmd state
define rr_Stefan ROOMMATE MCS
attr rr_Stefan alias Stefan
attr rr_Stefan 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
attr rr_Stefan group Wer
attr rr_Stefan icon people_sensor
attr rr_Stefan room Zuhause
attr rr_Stefan rr_locationHome home
attr rr_Stefan sortby 0
attr rr_Stefan webCmd state:mood
define rr_Manuela ROOMMATE MCS
attr rr_Manuela alias Manuela
attr rr_Manuela 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
attr rr_Manuela group Wer
attr rr_Manuela icon people_sensor
attr rr_Manuela room Zuhause
attr rr_Manuela rr_locationHome home
attr rr_Manuela sortby 0
attr rr_Manuela webCmd state:mood
define rr_Charly ROOMMATE MCS
attr rr_Charly alias Charly
attr rr_Charly 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
attr rr_Charly group Wer
attr rr_Charly icon people_sensor
attr rr_Charly room Zuhause
attr rr_Charly rr_locationHome home
attr rr_Charly sortby 0
attr rr_Charly webCmd state:mood
define dunkel Twilight 52.411739 13.372548 3 638242
define geofancy GEOFANCY geo
attr geofancy devAlias fd1198de-99a4-3261-b627-172cae77627e:Stefan
attr geofancy event-on-change-reading state
attr geofancy room Unsorted
define FileLog_geofancy FileLog ./log/fhem-%Y-%m.log geofancy
attr FileLog_geofancy logtype text
define locationNotifierStefan notify geofancy:currLoc_Stefan.* set rr_Stefan location $EVTPART1
define stefanHomeNotify notify rr_Stefan:home {\
fhem("set WZ.Schrank on");;\
}
define stefanAbsentNotify notify rr_Stefan:absent {\
fhem("set WZ.Schrank off");;\
}
Jetzt muss nur Twilight eingebaut werden.
Stefan
und so sieht es dann mit twighlight aus :
define stefanHomeNotify notify rr_Stefan:home {\
if (Value("dunkel light") <= 3) {\
fhem("set WZ.Schrank on");;\
}\
}
Falss es mal jemad braucht ;)