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

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

Vorheriges Thema - Nächstes Thema

Parador

Hallo Markus,

mach ich gerne.. lat/lon hab ich etwas gekürzt ;-)

Internals:
   CFGFN     
   CID        MarcE197F2D1E8CB4B5A92D8A84E50AC372F
   DEF        MarcE197F2D1E8CB4B5A92D8A84E50AC372F
   DEVICETOPIC MQTT_iPhone
   FUUID      5ca5dc3c-f33f-3c2f-8b57-28ec75873693a21a
   IODev      MyMQTT2server
   LASTInputDev MyMQTT2server
   MSGCNT     56
   MyMQTT2server_MSGCNT 56
   MyMQTT2server_TIME 2019-04-04 14:19:34
   NAME       MQTT_iPhone
   NR         11214
   STATE      ???
   TYPE       MQTT2_DEVICE
   READINGS:
     2019-04-04 14:19:34   E197F2D1-E8CB-4B5A-92D8-A84E50AC372F__type location
     2019-04-04 14:19:34   E197F2D1-E8CB-4B5A-92D8-A84E50AC372F_acc 65
     2019-04-04 14:19:34   E197F2D1-E8CB-4B5A-92D8-A84E50AC372F_alt 341
     2019-04-04 14:19:34   E197F2D1-E8CB-4B5A-92D8-A84E50AC372F_batt 86
     2019-04-04 13:15:41   E197F2D1-E8CB-4B5A-92D8-A84E50AC372F_cog 228
     2019-04-04 14:19:34   E197F2D1-E8CB-4B5A-92D8-A84E50AC372F_conn w
     2019-04-04 13:26:15   E197F2D1-E8CB-4B5A-92D8-A84E50AC372F_inregions_1 H1
     2019-04-04 14:19:34   E197F2D1-E8CB-4B5A-92D8-A84E50AC372F_lat 51.9
     2019-04-04 14:19:34   E197F2D1-E8CB-4B5A-92D8-A84E50AC372F_lon 15.5
     2019-04-04 14:19:34   E197F2D1-E8CB-4B5A-92D8-A84E50AC372F_p 95.2
     2019-04-04 14:19:34   E197F2D1-E8CB-4B5A-92D8-A84E50AC372F_t t
     2019-04-04 14:19:34   E197F2D1-E8CB-4B5A-92D8-A84E50AC372F_tid MF
     2019-04-04 14:19:34   E197F2D1-E8CB-4B5A-92D8-A84E50AC372F_tst 1554376581
     2019-04-04 14:19:34   E197F2D1-E8CB-4B5A-92D8-A84E50AC372F_vac 10
     2019-04-04 13:15:41   E197F2D1-E8CB-4B5A-92D8-A84E50AC372F_vel 0
     2019-04-04 12:37:18   waypoint__type  waypoint
     2019-04-04 12:37:18   waypoint_desc   H1
     2019-04-04 12:37:18   waypoint_lat    51.9
     2019-04-04 12:37:18   waypoint_lon    15.5
     2019-04-04 12:37:18   waypoint_rad    10
     2019-04-04 12:37:18   waypoint_tst    1554374171
Attributes:
   IODev      MyMQTT2server
   event-on-change-reading .*
   group      MQTT
   readingList MarcE197F2D1E8CB4B5A92D8A84E50AC372F:owntracks/Marc/E197F2D1-E8CB-4B5A-92D8-A84E50AC372F:.* { json2nameValue($EVENT, 'E197F2D1-E8CB-4B5A-92D8-A84E50AC372F_', $JSONMAP) }

Markus M.

Klappt so nicht. Livetracking erwartet ein Reading mit dem kompletten JSON String der von OwnTracks gesendet wird.
Bei dir ist das schon aufgetrennt.
Aktuell weder Smarthome noch FHEM vorhanden

Parador

naja, das kommt so vom MQTT2 Server der das Device direkt angelegt hat...
Am Server kommt (vermutlich) mehr an...

Parador

Am Server gibt es ein Reading "Retain":

{"owntracks/M/E197F2D1-E8CB-4B5A-92D8-A84E50AC372F":"{\u0022cog\u0022:189,\u0022batt\u0022:64,\u0022lon\u0022:11.5,\u0022acc\u0022:50,\u0022p\u0022:96.0,\u0022vel\u0022:3,\u0022vac\u0022:24,\u0022lat\u0022:49.9,\u0022conn\u0022:\u0022w\u0022,\u0022tst\u0022:1554291918,\u0022tid\u0022:\u0022MF\u0022,\u0022_type\u0022:\u0022location\u0022,\u0022alt\u0022:344}","owntracks/MF/E197F2D1-E8CB-4B5A-92D8-A84E50AC372F":"{\u0022cog\u0022:189,\u0022batt\u0022:64,\u0022lon\u0022:11.5,\u0022acc\u0022:50,\u0022p\u0022:95.9,\u0022vel\u0022:3,\u0022vac\u0022:24,\u0022lat\u0022:49.9,\u0022conn\u0022:\u0022w\u0022,\u0022tst\u0022:1554291918,\u0022tid\u0022:\u0022MF\u0022,\u0022_type\u0022:\u0022location\u0022,\u0022alt\u0022:344}","owntracks/Ma/E197F2D1-E8CB-4B5A-92D8-A84E50AC372F":"{\u0022cog\u0022:189,\u0022batt\u0022:64,\u0022lon\u0022:11.5,\u0022acc\u0022:50,\u0022p\u0022:96.0,\u0022vel\u0022:3,\u0022vac\u0022:24,\u0022lat\u0022:49.9,\u0022conn\u0022:\u0022w\u0022,\u0022tst\u0022:1554291918,\u0022tid\u0022:\u0022MF\u0022,\u0022_type\u0022:\u0022location\u0022,\u0022alt\u0022:344}","owntracks/Mar/E197F2D1-E8CB-4B5A-92D8-A84E50AC372F":"{\u0022cog\u0022:189,\u0022batt\u0022:64,\u0022lon\u0022:11.5,\u0022acc\u0022:50,\u0022p\u0022:96.0,\u0022vel\u0022:3,\u0022vac\u0022:24,\u0022lat\u0022:49.9,\u0022conn\u0022:\u0022w\u0022,\u0022tst\u0022:1554291918,\u0022tid\u0022:\u0022MF\u0022,\u0022_type\u0022:\u0022location\u0022,\u0022alt\u0022:344}","owntracks/Marc/E197F2D1-E8CB-4B5A-92D8-A84E50AC372F":"{\u0022cog\u0022:189,\u0022batt\u0022:64,\u0022lon\u0022:11.5,\u0022acc\u0022:50,\u0022p\u0022:96.0,\u0022vel\u0022:3,\u0022vac\u0022:24,\u0022lat\u0022:49.9,\u0022conn\u0022:\u0022w\u0022,\u0022tst\u0022:1554291918,\u0022tid\u0022:\u0022MF\u0022,\u0022_type\u0022:\u0022location\u0022,\u0022alt\u0022:344}","owntracks/Marc/E197F2D1-E8CB-4B5A-92D8-A84E50AC372F":"{\u0022cog\u0022:189,\u0022batt\u0022:64,\u0022lon\u0022:11.5,\u0022acc\u0022:50,\u0022p\u0022:96.0,\u0022vel\u0022:3,\u0022vac\u0022:24,\u0022lat\u0022:49.9,\u0022conn\u0022:\u0022w\u0022,\u0022tst\u0022:1554291918,\u0022tid\u0022:\u0022MF\u0022,\u0022_type\u0022:\u0022location\u0022,\u0022alt\u0022:344}","owntracks/Marc/E197F2D1-E8CB-4B5A-92D8-A84E50AC372F":"{\u0022batt\u0022:94,\u0022lon\u0022:11.5,\u0022acc\u0022:65,\u0022p\u0022:95.3,\u0022vac\u0022:10,\u0022lat\u0022:49.9,\u0022t\u0022:\u0022t\u0022,\u0022conn\u0022:\u0022w\u0022,\u0022tst\u0022:1554376581,\u0022alt\u0022:341,\u0022_type\u0022:\u0022location\u0022,\u0022tid\u0022:\u0022MF\u0022}"}

rcmcronny

Hoi,

bezüglich dem Owntracks CSV Format von hier (Seite 25/26):

Zitat von: mike.d am 14 März 2019, 11:48:05
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

Zitat von: Markus M. am 17 März 2019, 23:00:11
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?

Da ich auch das "pico" Device mir nachgebaut habe, interessiert mich die  CSV codierte Variante natürlich auch.

Ich habe mir heute das Modul mal angeschaut und denke eine Lösung gefunden zu haben. Zumindest bei mir läuft diese seit einigen Stunden, wie sie soll :)

Ich hänge mal einen OldSchool Patch File an. Optimieren kann man es sicher noch, aber ich hoffe es passt halbwegs bezüglich der Qualität.

Ronny

EDIT:  Info -> Battery habe ich fest auf 99 gesetzt, da dies nicht gesendet wird.

Markus M.

Zitat von: rcmcronny am 11 April 2019, 15:39:09Ich hänge mal einen OldSchool Patch File an. Optimieren kann man es sicher noch, aber ich hoffe es passt halbwegs bezüglich der Qualität.
EDIT:  Info -> Battery habe ich fest auf 99 gesetzt, da dies nicht gesendet wird.
battery kann man dann auch einfach weglassen.
Probier mal den Anhang
Aktuell weder Smarthome noch FHEM vorhanden

Markus M.

Zitat von: Parador am 04 April 2019, 18:45:35Am Server gibt es ein Reading "Retain"
Du brauchst irgendwo ein Reading in dem die JSON Nachricht drin ist.
Und zwar nur eine und ohne wirres Encoding, ca. so:
{"cog":189,"batt":64,"lon":11.5,"acc":50,"p":95.9,"vel":3,"vac":24,"lat":49.9,"conn":"w","tst":1554291918,"tid":"MF","_type":"location","alt":344}
Auf dieses Reading könntest du das Modul dann loslassen.
Aktuell weder Smarthome noch FHEM vorhanden

rcmcronny

Zitat von: Markus M. am 11 April 2019, 22:30:22
battery kann man dann auch einfach weglassen.
Probier mal den Anhang

Hi Markus,

sieht wie meine angepaßte Datei aus und verhält sich auch so wie gewollt bei mir zumindest  ;D
(Ich hab paar Daten ausgeXt, also nicht verwirren lassen bitte)


2019-04-11 22:35:57 livetracking livetracking_ronny_car latitude: 50.xxxxxx
2019-04-11 22:35:57 livetracking livetracking_ronny_car longitude: 11.xxxxx
2019-04-11 22:35:57 livetracking livetracking_ronny_car location: 50.xxxxxx,11.xxxxx
2019-04-11 22:35:57 livetracking livetracking_ronny_car altitude: 290
2019-04-11 22:35:57 livetracking livetracking_ronny_car id: 21
2019-04-11 22:35:57 livetracking livetracking_ronny_car velocity: 0
2019-04-11 22:35:57 livetracking livetracking_ronny_car heading: 270
2019-04-11 22:35:57 livetracking livetracking_ronny_car trigger: frequent
2019-04-11 22:35:57 livetracking livetracking_ronny_car distance: 0
2019-04-11 22:35:57 livetracking livetracking_ronny_car locationLat: 50.xxxxx
2019-04-11 22:35:57 livetracking livetracking_ronny_car locationLong: 11.xxxxx
2019-04-11 22:35:57 livetracking livetracking_ronny_car locationLat: 50.xxxxxx
2019-04-11 22:35:57 livetracking livetracking_ronny_car locationLong: 11.xxxx
2019-04-11 22:35:57 MQTT_DEVICE owntracks_ronny_car 12d8fr20: 21,5CAFA52D,v,50xxxxxxx,11xxxxxx,27,0,29,1,0


Nun wäre es gut, wenn  mike.d  nochmal testet und dann würd ich sagen im Betrieb halt genauer schauen, ob alle Fälle mit dem Regex abgebildet werden. Da kann man aber noch nachjustieren wenns nötig ist.

Danke :)
Ronny

Markus M.

Sobald ihr mir beide sagt dass es ok ist, checke ich die Version ein.
Wäre nett wenn neben mir auch noch jemand mit testen kann der das nicht nutzt.
Aktuell weder Smarthome noch FHEM vorhanden

87insane

Hallo liebe Gemeinde :)

Hat hier jemand zufällig eine komplette Anleitung um Owntracks ans rennen zu bekommen?

Was habe ich?
- MQTT2 (Fhem)
- Port wäre frei aber intern kann ich auch direkt testen

Problem:
- Wenn ich TLS aktiv schalte in der App (Adroid) bekomme ich immer einen Fehler.
Android: Fehler - Endpoint state, Nicht verfügbar - Endpoint state message
Apple: idle Der Vorgang konnte nicht abgeschlossen werden. (OSStatus-Fehler -9806.) {"_kCFStreamErrorCodeKey" = "-9806"; "__kCFStreamErrorDomainKey" = 3;} --- Hier ist auch vollkommen egal was man einstellt in der App. Sobald die Adresse stimmt, kann man mit oder ohne Auth oder mit oder ohne validate usw. Der Fehler bleibt gleich.

Ohne TLS würde ich das aber niemals laufen lassen!

In FHEM sehe ich mit verbose 5 auf meinem MQTT Device auch das etwas sprechen möchte.
2019.04.12 16:22:08 4 : Connection accepted from MQTT2_FHEM_Server_2.247.241.136_2980
2019-04-12 16:22:08 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 8


Danach springt er wieder zurück auf 7 Clients und weiter passiert nichts (kein autocreate).
Stelle ich TLS aus, erscheint direkt das entsprechende Gerät.

EventLog wenn man mit TLS auf aktualisieren in der App drückt..öfter nacheinander:
2019-04-12 19:15:59 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 8
2019-04-12 19:15:59 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 7
2019-04-12 19:15:59 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 8
2019-04-12 19:15:59 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 7
2019-04-12 19:15:59 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 8
2019-04-12 19:15:59 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 7
2019-04-12 19:15:59 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 8
2019-04-12 19:15:59 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 7
2019-04-12 19:15:59 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 8
2019-04-12 19:15:59 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 7
2019-04-12 19:16:00 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 8
2019-04-12 19:16:00 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 7
2019-04-12 19:16:00 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 8
2019-04-12 19:16:00 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 7
2019-04-12 19:16:00 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 8
2019-04-12 19:16:00 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 7
2019-04-12 19:16:00 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 8
2019-04-12 19:16:00 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 7
2019-04-12 19:16:01 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 8
2019-04-12 19:16:01 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 7
2019-04-12 19:16:01 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 8
2019-04-12 19:16:01 MQTT2_SERVER MQTT2_FHEM_Server nrclients: 7


Mal davon ab das die Anleitung und das Wiki echt im minimal Betrieb ist.... Komme hier leider nicht weiter.

Was mir auch fehlt, ist eine Anleitung wie man das gut einbindet in FHEM. Kann ich hier wie bei geofacy einfach die ID des Gerätes in Residents übernehmen oder ist das nach wie vor über manuelle Anpassung zu machen? Ggf. habe ich ja nicht alles gefunden....

PS: Leider gibt es hier kein Template für MQTT2 für bisher ;) @Beta-User

EDIT: Nachdem ich nun langsam keine Lust mehr habe, habe ich mal das ApplePhone ausgepackt. Hier das gleiche nur das die App an sich x mal besser aussieht und die Bedienung besser ist. Hinzu gibt es hier Menu-Punkte die ich im Androiden nicht gefunden habe. Sowas wie das auch Zertifikate erlaubt werden die nicht offiziell sind. Aber das hat auch nichts gebracht. Ggf. hilft es das Problem zu finden.

Markus M.

MQTT2 hilft dir aktuell so wie es aussieht eh nichts, weil es keine vernünftigen Daten in Readings schreibt - das Problem hatten wir weiter oben.
Zu den Zertifikaten findest du vielleicht was im OwnTracks Booklet zur Konfigurations-Datei. Über das UI funktioniert das nicht.
Aktuell weder Smarthome noch FHEM vorhanden

87insane

Was ist dann aktuell überhaupt noch möglich in diese Richtung hier? Also nicht falsch verstehen, aber ich hab viel gelesen und bisher werde ich quasi immer weiter geschoben. Jetzt bin ich hier und das hier geht auch nicht mehr so richtig.

Eigentlich wollte ich nur TLS. Wenn ich für jedes Gerät eine Datei hin und her transportieren muss (händisch) wäre das für mich ein noGo. Aber wenn es nur ein PW oder so mehr wäre, okay. Kannst du dazu ggf. auch mehr sagen? Das Booklet hat mich nur zum weinen gebracht. Also mal ohne Spaß... Ich weiß ggf. einfach nicht was ich suchen muss in diesem Fall :-\

MQTT2 geht bei mir ohne TLS und hat bei mir auch richtige werte geliefert. Also Breite.-/Länge hat auf jeden Fall gepasst. Wenn ich ggf. was helfen kann als "dummy" - gern!

rcmcronny

Hoi,

Mosquitto als MQTT Server und dort TLS Konfiguieren (so schwer ist das nicht) dann die Clients da einrichten (FHEM und halt die Geräte) und dann klappt auch LiveTracking ?

Ronny

87insane

Aus einem Fluss, viele machen und am ende wieder zusammen führen. Erscheint mir etwas umständlich.
Es gibt viele Wege, ggf. sogar einen bisher nicht bekannten. Denke hierzu haben viele eine Idee.

Danke Dir aber!

kadettilac89

gibt es einen grund warum du mqtt willst? du hattest egigeozone, d. h. zugang von außen über http(s) war schon da. wenn https musst du ggf. noch zertifikate erstellen (ggf. letsencrypt) und dann modul schon laufen.