Modul: 98_livetracking - Geokoordinaten von OwnTracks / Life360 / Swarm (4Sq)

Begonnen von Markus M., 22 Mai 2015, 02:01:46

Vorheriges Thema - Nächstes Thema

Markus M.

Zitat von: binford6000 am 11 Februar 2019, 20:04:29
Hallo Markus,
ich habe so das Gefühl das mit addressReading auf 1 keine Adressen geholt werden.

Nach meinem Verständnis müsste doch zweimal die Adresse geholt werden oder?
Einmal v durch das Attribut addressReading auf 1 und dann nochgmal durch das manuelle
get iphone5se address aus dem at?
addressReading holt keine Adressen, es speichert sie nur in ein Reading.
Ich werde ins Modul keinen Mechanismus einbauen, der bei jeder Positionsänderung eine Reverse-Geocoding Anfrage abschickt.
Sonst gibt es diesen kostenlosen Dienst spätestens nächste Woche nicht mehr.

Mit anderen Worten: Geht sparsam mit den Anfragen um, dann haben wir hoffentlich noch länger was davon.
FHEM dev + HomeBridge + Lenovo Flex15 + HM-CFG-USB + RFXtrx433 + Fritz!Box 7590/7580/546E

HM Aktor/Sensor/Winmatic/Keymatic/Thermostat, HUE, Netatmo Weather/Security/Heating, Xiaomi AirPurifier/Vacuum, Withings Aura/BPM/Cardio/Go/Pulse/Thermo, VSX828, Harmony, Siro ERB15LE
https://paypal.me/mm0

binford6000

Zitat von: Markus M. am 11 Februar 2019, 20:29:21
addressReading holt keine Adressen, es speichert sie nur in ein Reading.
Ich werde ins Modul keinen Mechanismus einbauen, der bei jeder Positionsänderung eine Reverse-Geocoding Anfrage abschickt.
Sonst gibt es diesen kostenlosen Dienst spätestens nächste Woche nicht mehr.

Mit anderen Worten: Geht sparsam mit den Anfragen um, dann haben wir hoffentlich noch länger was davon.

Danke, habs kapiert.
Ich mache das get address ja auch nur beim Eintritt in eine Zone. Was bei genauerer Betrachtung eigentlich Quatsch ist,
da ich die Zone ja manuell angelegt habe - und somit die Adresse kenne...

Ich nehme es aus dem notify raus und belasse es beim manuellen Abfragen über einen Telegramm-Dialog.  ;)

VG Sebastian

Thk30

Hallo,

hiermit bedanke ich mich bei allen. Dank diesem Beitrag, hab ich jetzt ein Livetracking in Tablet UI. Es funtioniert super.

LG Thomas

hkspks

Hallo zusammen,

gibt es eine Zusammenfassung zur Integration von OwnTracks über http in FHEM? Ich habe den Thread gelesen, aber wirklich schlauer was jetzt funktioniert und welche Komponenten notwendig sind, bin ich noch nicht. Sicherlich wäre das eine gute Ergänzung für das Wiki, welches bislang nur die MQTT Version aufzeigt. Gerne helfe ich mit, wenn mich jemand von den erfolgreichen Umsetzern noch ein wenig aufschlaut :-)

https://wiki.fhem.de/wiki/Anwesenheitserkennung#livetracking-Modul

VG!

Markus M.

Guck mal in die Hilfe unter dem Attribut osmandServer.
Dort solltest du alles nötige finden, d.h. die URL die du für OwnTracks verwenden musst.
FHEM dev + HomeBridge + Lenovo Flex15 + HM-CFG-USB + RFXtrx433 + Fritz!Box 7590/7580/546E

HM Aktor/Sensor/Winmatic/Keymatic/Thermostat, HUE, Netatmo Weather/Security/Heating, Xiaomi AirPurifier/Vacuum, Withings Aura/BPM/Cardio/Go/Pulse/Thermo, VSX828, Harmony, Siro ERB15LE
https://paypal.me/mm0

kadettilac89

Zitat von: hkspks am 12 März 2019, 12:28:55
Hallo zusammen,

gibt es eine Zusammenfassung zur Integration von OwnTracks über http in FHEM? Ich habe den Thread gelesen, aber wirklich schlauer was jetzt funktioniert und welche Komponenten notwendig sind, bin ich noch nicht. Sicherlich wäre das eine gute Ergänzung für das Wiki, welches bislang nur die MQTT Version aufzeigt. Gerne helfe ich mit, wenn mich jemand von den erfolgreichen Umsetzern noch ein wenig aufschlaut :-)

https://wiki.fhem.de/wiki/Anwesenheitserkennung#livetracking-Modul


Markus hats schon angedeutet, in der Commandref sollte alles drin sein was du brauchst. Ich habe es mit Onetrack im Einsatz, wenn du ein Problem hast konkret nachfragen dann kann ich Input geben

hkspks

Exakt, war dann wirklich straight forward. Für die Allgemeinheit:

Anwendungsfall Livetracking zweier Personen P1/P2 inkl. Anwesenheitskontrolle zu OrtA über owntracks und FHEM mit osmand-server hinter reverse Proxy mit basic auth:

1) App owntracks auf Handys installieren (gibt es für iPhone und Android)
a) Verbindung anlegen:
- Mode: HTTP privat
- Host: FHEM-Server-IP/fhem/osmand
- Identification: Benutzername/ Passwort = Reverse-Proxy-Daten (sofern vorhanden), DeviceId (afaik egal), TrackerId = 2-Zeichen-Kürzel zur Unterscheidung von verschiedenen Personen, z.B. P1 und P2
b) Zonen = Orte anlegen, z.B. OrtA

2) Livetracking definieren (habe 2 verschiedene user)

defmod Tracker livetracking
attr Tracker osmandServer 1
attr Tracker userReadings presence_home_P1 { if(ReadingsVal($name,"id",0) eq "P1") {(ReadingsVal($name,"zone_0",0) eq "active") ? "present" : "absent"},\
presence_home_P2 { if(ReadingsVal($name,"id",0) eq "P2") {(ReadingsVal($name,"zone_0",0) eq "active") ? "present" : "absent"} }
attr Tracker zonename_0 OrtA


Individuell sind jeweils OrtA sowie die beiden userReadings für die Personen, hier P1/P2

3) Roommates anlegen

defmod P1 ROOMMATE Bewohner
attr P1 rr_presenceDevices Tracker:presence_home_P1

defmod P2 ROOMMATE Bewohner
attr P2 rr_presenceDevices Tracker:presence_home_P2


Hier erkennt man gut den Link zwischen den userreadings aus 2) und der Anwesenheitsanzeige der Roommates in 3)

Wer die GPS-Daten noch in die Roommates übertragen möchte, kann folgendes Notify verwenden:

defmod Tracker.change notify Tracker:.* { \
if(ReadingsVal("Tracker","id",0) eq "P1") { \
  fhem("setreading P1 locationLat [Tracker:latitude];;") ;;\
  fhem("setreading P1 locationLong [Tracker:longitude];;") ;;\
}\
if(ReadingsVal("Tracker","id",0) eq "P2") { \
  fhem("setreading P2 locationLat [Tracker:latitude];;") ;;\
  fhem("setreading P2 locationLong [Tracker:longitude];;") ;;\
}\
}


Ggf. nicht die charmanteste Lösung, scheint bei mir aber zu klappen. Kennt jemand einen charmanteren Weg?

binford6000

ZitatDie Lösung mit den userreadings für die beiden Personen ist glaub noch nicht 100%-schön - da freue ich mich gerne über Nachhilfe. Weiterhin schreibt jetzt natürlich das livetracking den letzten Standort nicht in die Roommates... gibt es hier noch einen charmanteren Weg als über notifys?

Schau mal hier:
https://forum.fhem.de/index.php/topic,93565.0.html

VG Sebastian

hkspks

Zitat von: binford6000 am 13 März 2019, 07:07:59
Schau mal hier:
https://forum.fhem.de/index.php/topic,93565.0.html

VG Sebastian

Danke, war mir noch zu unstable :-) - behalte ich aber im Auge. Habe es jetzt über ein einfaches Notify gelöst (siehe Beitrag oben). Reicht für meine einfachen Ansprüche zunächst.

@binford6000: Wir scheinen ein recht gleiches Setup zu haben; schaffst Du es, dass man in der owntracks-app die anderen Nutzer auf dem Server sieht? Kann man den osmand-Server dahingehend konfigurieren?

Ansonsten: soll ich die Lösung oben ins Wiki eintragen?

binford6000

Zitat@binford6000: Wir scheinen ein recht gleiches Setup zu haben; schaffst Du es, dass man in der owntracks-app die anderen Nutzer auf dem Server sieht? Kann man den osmand-Server dahingehend konfigurieren?

Ich habe nur einen Nutzer. Von daher nein.
VG Sebastian

Markus M.

Zitat von: hkspks am 13 März 2019, 14:43:13schaffst Du es, dass man in der owntracks-app die anderen Nutzer auf dem Server sieht? Kann man den osmand-Server dahingehend konfigurieren?
Ich bin mir ziemlich sicher, dass das nur mit MQTT funktioniert.
FHEM dev + HomeBridge + Lenovo Flex15 + HM-CFG-USB + RFXtrx433 + Fritz!Box 7590/7580/546E

HM Aktor/Sensor/Winmatic/Keymatic/Thermostat, HUE, Netatmo Weather/Security/Heating, Xiaomi AirPurifier/Vacuum, Withings Aura/BPM/Cardio/Go/Pulse/Thermo, VSX828, Harmony, Siro ERB15LE
https://paypal.me/mm0

mike.d

Hallo Markus,

glaubst du es ist mit vertretbarem Aufwand möglich auch das OwnTracks CSV-Format zu implementieren!?

Hier beschrieben: https://github.com/owntracks/gw/blob/master/manual/mqtt.md#csv

Lieben Dank,
Michael

Markus M.

Also ich persönlich bewerte den vertretbaren Aufwand dafür mit 0 ;)

Traust du dir das selbst zu?
In Zeile 1516 versuchst du die ID aus den CSV Daten (sofern vorhanden) zu bekommen und ab Zeile 1562 dann den Rest, wenn es nicht schon http oder osmand war, was angekommen ist.
FHEM dev + HomeBridge + Lenovo Flex15 + HM-CFG-USB + RFXtrx433 + Fritz!Box 7590/7580/546E

HM Aktor/Sensor/Winmatic/Keymatic/Thermostat, HUE, Netatmo Weather/Security/Heating, Xiaomi AirPurifier/Vacuum, Withings Aura/BPM/Cardio/Go/Pulse/Thermo, VSX828, Harmony, Siro ERB15LE
https://paypal.me/mm0

mike.d

wow....

vielen Dank für den Fingerzeig. Ich probier mich da gerne mal dran.... :- )
Wenn Ichs hinbekommen hab oder nicht weiterkomme, melde ich mich einfach nochmal!

Markus M.

Zitat von: mike.d am 14 März 2019, 17:22:00
vielen Dank für den Fingerzeig. Ich probier mich da gerne mal dran.... :- )
Wenn Ichs hinbekommen hab oder nicht weiterkomme, melde ich mich einfach nochmal!
Könnte auch falsch sein.
Wenn das so nur vie MQTT reinkommt, muss alles in Zeile 896.
Kannst du das mal testen?
Wie aktiviert man das mit CSV überhaupt?
FHEM dev + HomeBridge + Lenovo Flex15 + HM-CFG-USB + RFXtrx433 + Fritz!Box 7590/7580/546E

HM Aktor/Sensor/Winmatic/Keymatic/Thermostat, HUE, Netatmo Weather/Security/Heating, Xiaomi AirPurifier/Vacuum, Withings Aura/BPM/Cardio/Go/Pulse/Thermo, VSX828, Harmony, Siro ERB15LE
https://paypal.me/mm0