NEWS
Life360ng Adapter - Widget anbieten
-
Hallo zusammen.
Ich habe den Life360 Adapter ĂŒberarbeitet und eine neue Version als Life360ng veröffentlicht.
So weit, so gut.
Jetzt kommt der schwierige Part:Ich habe vor, eine Art 'Fahrtenbuch' zu integrieren und bekomme jeden Tag ein GeoJSON mit folgendem Inhalt:
(lÀuft zur Zeit bei mir lokal im Script Adapter){"type":"Feature","geometry":{"type":"LineString","coordinates":[[8.1092108,53.375156],[8.1092214,53.3753376],[8.109268,53.3751492],[8.1092831,53.3755614],[8.1087375,53.3752636],[8.1091828,53.3752033],[8.1061711,53.3707939],[8.1204745,53.3577902],[8.1178562,53.3568921],[8.1169575,53.3571844],[8.1178577,53.3568928],[8.1207508,53.357289],[8.1201376,53.358266],[8.1188753,53.3591781],[8.1151099,53.3618768],[8.1138014,53.3628293],[8.1071239,53.3681901],[8.1083342,53.3749194],[8.1091339,53.3752177]]},"properties":{"timestamps":[1776809217372,1776839037107,1776853064038,1776854521466,1776854946156,1776855492689,1776856707181,1776857010849,1776857314572,1776877018575,1776878051562,1776884737864,1776884798671,1776884859406,1776884920151,1776884981224,1776885041832,1776885224092,1776885284738]}}Da kann so niemand etwas mit anfangen.
Jetzt meine Idee:
Ein Karten-Widget (VIS2) anzubieten, auf der man die Strecke sieht.
Aus dem oben genannten json wird z.B. diese Karte:

In der Runtime dann ein Dropdown um die passende json auswÀhlen zu können

Auf einen anderen Adapter verweisen (zum Beispiel das Widget bei unserm Widget-Adapter einzubauen) finde ich persönlich schwierig. Man zwingt somit den User einen weiteren Adapter installieren zu mĂŒssen.
Alternative wÀre das Map Widget von @oliverio .... das will ich mir am Wochenende angucken. Ich möchte es so userfreundlich wie möglich gestallten.
Ich habe gar keine Erfahrungen mit Widgets und möchte hier nachfragen, ob es ĂŒberhaupt umsetzbar ist oder ob ich meine Idee direkt sein lassen sollte, bevor ich mich in etwas verrenne.
PS.:
@homoran .. wenn ich hier in der falschen Kategorie bin, bitte verschieben. -
H Homoran verschob dieses Thema von Entwicklung am
-
Hallo zusammen.
Ich habe den Life360 Adapter ĂŒberarbeitet und eine neue Version als Life360ng veröffentlicht.
So weit, so gut.
Jetzt kommt der schwierige Part:Ich habe vor, eine Art 'Fahrtenbuch' zu integrieren und bekomme jeden Tag ein GeoJSON mit folgendem Inhalt:
(lÀuft zur Zeit bei mir lokal im Script Adapter){"type":"Feature","geometry":{"type":"LineString","coordinates":[[8.1092108,53.375156],[8.1092214,53.3753376],[8.109268,53.3751492],[8.1092831,53.3755614],[8.1087375,53.3752636],[8.1091828,53.3752033],[8.1061711,53.3707939],[8.1204745,53.3577902],[8.1178562,53.3568921],[8.1169575,53.3571844],[8.1178577,53.3568928],[8.1207508,53.357289],[8.1201376,53.358266],[8.1188753,53.3591781],[8.1151099,53.3618768],[8.1138014,53.3628293],[8.1071239,53.3681901],[8.1083342,53.3749194],[8.1091339,53.3752177]]},"properties":{"timestamps":[1776809217372,1776839037107,1776853064038,1776854521466,1776854946156,1776855492689,1776856707181,1776857010849,1776857314572,1776877018575,1776878051562,1776884737864,1776884798671,1776884859406,1776884920151,1776884981224,1776885041832,1776885224092,1776885284738]}}Da kann so niemand etwas mit anfangen.
Jetzt meine Idee:
Ein Karten-Widget (VIS2) anzubieten, auf der man die Strecke sieht.
Aus dem oben genannten json wird z.B. diese Karte:

In der Runtime dann ein Dropdown um die passende json auswÀhlen zu können

Auf einen anderen Adapter verweisen (zum Beispiel das Widget bei unserm Widget-Adapter einzubauen) finde ich persönlich schwierig. Man zwingt somit den User einen weiteren Adapter installieren zu mĂŒssen.
Alternative wÀre das Map Widget von @oliverio .... das will ich mir am Wochenende angucken. Ich möchte es so userfreundlich wie möglich gestallten.
Ich habe gar keine Erfahrungen mit Widgets und möchte hier nachfragen, ob es ĂŒberhaupt umsetzbar ist oder ob ich meine Idee direkt sein lassen sollte, bevor ich mich in etwas verrenne.
PS.:
@homoran .. wenn ich hier in der falschen Kategorie bin, bitte verschieben. -
-
H Homoran verschob dieses Thema von ioBroker Allgemein am
-
Da hattest du wohl einen RĂŒckfahrschein gelöst

-
Hallo zusammen.
Ich habe den Life360 Adapter ĂŒberarbeitet und eine neue Version als Life360ng veröffentlicht.
So weit, so gut.
Jetzt kommt der schwierige Part:Ich habe vor, eine Art 'Fahrtenbuch' zu integrieren und bekomme jeden Tag ein GeoJSON mit folgendem Inhalt:
(lÀuft zur Zeit bei mir lokal im Script Adapter){"type":"Feature","geometry":{"type":"LineString","coordinates":[[8.1092108,53.375156],[8.1092214,53.3753376],[8.109268,53.3751492],[8.1092831,53.3755614],[8.1087375,53.3752636],[8.1091828,53.3752033],[8.1061711,53.3707939],[8.1204745,53.3577902],[8.1178562,53.3568921],[8.1169575,53.3571844],[8.1178577,53.3568928],[8.1207508,53.357289],[8.1201376,53.358266],[8.1188753,53.3591781],[8.1151099,53.3618768],[8.1138014,53.3628293],[8.1071239,53.3681901],[8.1083342,53.3749194],[8.1091339,53.3752177]]},"properties":{"timestamps":[1776809217372,1776839037107,1776853064038,1776854521466,1776854946156,1776855492689,1776856707181,1776857010849,1776857314572,1776877018575,1776878051562,1776884737864,1776884798671,1776884859406,1776884920151,1776884981224,1776885041832,1776885224092,1776885284738]}}Da kann so niemand etwas mit anfangen.
Jetzt meine Idee:
Ein Karten-Widget (VIS2) anzubieten, auf der man die Strecke sieht.
Aus dem oben genannten json wird z.B. diese Karte:

In der Runtime dann ein Dropdown um die passende json auswÀhlen zu können

Auf einen anderen Adapter verweisen (zum Beispiel das Widget bei unserm Widget-Adapter einzubauen) finde ich persönlich schwierig. Man zwingt somit den User einen weiteren Adapter installieren zu mĂŒssen.
Alternative wÀre das Map Widget von @oliverio .... das will ich mir am Wochenende angucken. Ich möchte es so userfreundlich wie möglich gestallten.
Ich habe gar keine Erfahrungen mit Widgets und möchte hier nachfragen, ob es ĂŒberhaupt umsetzbar ist oder ob ich meine Idee direkt sein lassen sollte, bevor ich mich in etwas verrenne.
PS.:
@homoran .. wenn ich hier in der falschen Kategorie bin, bitte verschieben. -
Ich wĂŒrde sagen das ist umsetzbar.
Wenn du Fragen zur Logik von mapwidget hast, kannst du sie gerne stellen.
Der Adapter ist nicht im repository -
@Homoran .. und genau da war ich mit nicht sicher. Es sollte schon eine Frage an die Entwickler sein.
Bei Telegram geht es schnell unter. Ich muss mir wohl doch noch an Discord gewöhnen. ich hatte hier auf einen 'internen' gehofft ;)
@skvarel Deine Abneigung zu Discord versteh ich. In denen wo ich drin bin, ist es auch schnell unĂŒbersichtlich :(
Die Leute zu "zwingen" einen weiteren adapter zu installieren sehe ich nicht als Problem.
es muss ja niemand das Widget nutzen. Gibt da auch andere Adapter, die z.B. dann Datenpunkte fĂŒr eCharts bereitstellen. -
Vielleicht kann @oliverio sein Widget so vorbereiten, das man einfach mein GeoJSON per Bindung einsetzen kannn

-
Vielleicht kann @oliverio sein Widget so vorbereiten, das man einfach mein GeoJSON per Bindung einsetzen kannn

puh das ist ein komplett anderes datenformat wie das standard Leaflet format (an das ich mich gehalten habe).
Das widget hat recht umfangreiche Logik zur synchronisation, so das bei einzelnen Ănderungen nicht alle einzelnen Marker,Linien,etc gelöscht und wieder hinzugefĂŒgt werden mĂŒssen (man stelle 10000 Marker vor und nur einer davon wird geĂ€ndert.
Ich habe Modifikationen bei den Icons/Images vorgenommen, so das es einfacher ist auf in vis verfĂŒgbare Grafiken referenzieren kann.Generell kann Leaflet auch GeoJSON
https://leafletjs.com/examples/geojson/Theoretisch kann man mit javascript im browser das auch nutzen.
Gern können wir gemeinsam mal schauen, wie du leaflet in einem eigenen widget geladen bekommst und dann geojson vom datenpunkt lÀdst -
puh das ist ein komplett anderes datenformat wie das standard Leaflet format (an das ich mich gehalten habe).
Das widget hat recht umfangreiche Logik zur synchronisation, so das bei einzelnen Ănderungen nicht alle einzelnen Marker,Linien,etc gelöscht und wieder hinzugefĂŒgt werden mĂŒssen (man stelle 10000 Marker vor und nur einer davon wird geĂ€ndert.
Ich habe Modifikationen bei den Icons/Images vorgenommen, so das es einfacher ist auf in vis verfĂŒgbare Grafiken referenzieren kann.Generell kann Leaflet auch GeoJSON
https://leafletjs.com/examples/geojson/Theoretisch kann man mit javascript im browser das auch nutzen.
Gern können wir gemeinsam mal schauen, wie du leaflet in einem eigenen widget geladen bekommst und dann geojson vom datenpunkt lĂ€dst@OliverIO ... können wir uns da ĂŒber Telegram mal dĂŒber unterhalten? ... oder ist dir Discord lieber?
Ich weiĂ nicht, wie aufwendig es ist einen 'mormalen' Adapter fit fĂŒr React (VIS2) zu bekommen. Deswegen die Idee, in meinem Adapter den Code und die Daten bereitzustellen und sie an einen Widget Adapter zu ĂŒbergeben.
Ich habe noch eine Idee, die ich am Samtstag testen will. Ănhlich wie ich es mit den einzelnen Karten mache. Da lege ich in einem Datenpunkt eine URL fĂŒr einen iFrame ab.
Eventuell klappt das auch mit einer Route ?! Dann könnte ich 'einfach' pro GeoJSON eine URL bereitstellen.
-
@OliverIO ... können wir uns da ĂŒber Telegram mal dĂŒber unterhalten? ... oder ist dir Discord lieber?
Ich weiĂ nicht, wie aufwendig es ist einen 'mormalen' Adapter fit fĂŒr React (VIS2) zu bekommen. Deswegen die Idee, in meinem Adapter den Code und die Daten bereitzustellen und sie an einen Widget Adapter zu ĂŒbergeben.
Ich habe noch eine Idee, die ich am Samtstag testen will. Ănhlich wie ich es mit den einzelnen Karten mache. Da lege ich in einem Datenpunkt eine URL fĂŒr einen iFrame ab.
Eventuell klappt das auch mit einer Route ?! Dann könnte ich 'einfach' pro GeoJSON eine URL bereitstellen.
kannst du mir mal einen export der datenpunkte deines adapters machen, in dem entsprechende testdaten enthalten sind?
leider habe ich selbst kein live360also einfach in der objektansicht den adapter markieren
dann auf den download/safe knopf drĂŒcken und in der folgenden ansicht
dann auf "only selected" drĂŒcken

-
kannst du mir mal einen export der datenpunkte deines adapters machen, in dem entsprechende testdaten enthalten sind?
leider habe ich selbst kein live360also einfach in der objektansicht den adapter markieren
dann auf den download/safe knopf drĂŒcken und in der folgenden ansicht
dann auf "only selected" drĂŒcken

@OliverIO .. von den GeoJSON? Die habe ich noch nicht im Adapter, weil das Script dazu zum Testen noch bei mir lokal im Javascript Adapter lÀuft.
Ich habe ein Javascript, welches mir die Koordionaten in das GeoJSON schreibt und jeden Tag um 00:00 wird ein neues GeoJSON angelegt.
Die Datei von den Adapterobjekten kann ich natĂŒrlich auch geben. Die hatte ich beim PR hochgeladen.
Ich habe hier am PC gerade keinen Zugriff auf Github. Ich versuche es ĂŒbers Handy ...... moment
EDIT:
Ich bekomme die json vom Handy aus nicht hier ins Forum. Ich bin erst weider gegen 22 Uhr an meinem PC und/oder morgen Vormittag -
@OliverIO .. von den GeoJSON? Die habe ich noch nicht im Adapter, weil das Script dazu zum Testen noch bei mir lokal im Javascript Adapter lÀuft.
Ich habe ein Javascript, welches mir die Koordionaten in das GeoJSON schreibt und jeden Tag um 00:00 wird ein neues GeoJSON angelegt.
Die Datei von den Adapterobjekten kann ich natĂŒrlich auch geben. Die hatte ich beim PR hochgeladen.
Ich habe hier am PC gerade keinen Zugriff auf Github. Ich versuche es ĂŒbers Handy ...... moment
EDIT:
Ich bekomme die json vom Handy aus nicht hier ins Forum. Ich bin erst weider gegen 22 Uhr an meinem PC und/oder morgen Vormittagich habe verstanden, das die daten so hinterlegt sind

ich interpretiere, das das viele einzelne datenpunkte sind, also fĂŒr jeden Nutzer ein Ordner und jeweils ein Datenpunkt fĂŒr einen Tag mit den Pfadangaben im Format GeoJSON.
In dieser Struktur ist es fĂŒr ein widget etwas unhandlich, da man eigentlich im widget konkrete Datenpunkte angeben muss.
Ich habe bei mir zwar Mechanismen eingebaut, die selbst Datenpunkte abonnieren können, das ist aber mit vis1/vis2 KompatibilitÀt schwierig.Besser wÀre es ein oder mehrere sendTo Funktionen einzubauen, die einem widget oder auch einem Skript aus dem javascript Adapter die Daten liefern kann.
Entweder alle Daten ĂŒber eine Abfrage oder sogar mit ein wenig Filtern, so ala
Gib mir alle Daten fĂŒr einen Nutzer (Sven) im Zeitraum A bis B.
Dann kommen die Daten in einem Objekt im widget an.
Vorteil, du musst deine DatenpunktStruktur nicht Àndern.
Ein Adapter hat relativ einfachen Zugang zu seinen Datenpunkten. -
@OliverIO .. von den GeoJSON? Die habe ich noch nicht im Adapter, weil das Script dazu zum Testen noch bei mir lokal im Javascript Adapter lÀuft.
Ich habe ein Javascript, welches mir die Koordionaten in das GeoJSON schreibt und jeden Tag um 00:00 wird ein neues GeoJSON angelegt.
Die Datei von den Adapterobjekten kann ich natĂŒrlich auch geben. Die hatte ich beim PR hochgeladen.
Ich habe hier am PC gerade keinen Zugriff auf Github. Ich versuche es ĂŒbers Handy ...... moment
EDIT:
Ich bekomme die json vom Handy aus nicht hier ins Forum. Ich bin erst weider gegen 22 Uhr an meinem PC und/oder morgen Vormittag -
ich habe verstanden, das die daten so hinterlegt sind

ich interpretiere, das das viele einzelne datenpunkte sind, also fĂŒr jeden Nutzer ein Ordner und jeweils ein Datenpunkt fĂŒr einen Tag mit den Pfadangaben im Format GeoJSON.
In dieser Struktur ist es fĂŒr ein widget etwas unhandlich, da man eigentlich im widget konkrete Datenpunkte angeben muss.
Ich habe bei mir zwar Mechanismen eingebaut, die selbst Datenpunkte abonnieren können, das ist aber mit vis1/vis2 KompatibilitÀt schwierig.Besser wÀre es ein oder mehrere sendTo Funktionen einzubauen, die einem widget oder auch einem Skript aus dem javascript Adapter die Daten liefern kann.
Entweder alle Daten ĂŒber eine Abfrage oder sogar mit ein wenig Filtern, so ala
Gib mir alle Daten fĂŒr einen Nutzer (Sven) im Zeitraum A bis B.
Dann kommen die Daten in einem Objekt im widget an.
Vorteil, du musst deine DatenpunktStruktur nicht Àndern.
Ein Adapter hat relativ einfachen Zugang zu seinen Datenpunkten.@OliverIO .. genau und der Inhalt der Datenpunkte ist folgendes:
{"type":"Feature","geometry":{"type":"LineString","coordinates":[[8.1092108,53.375156],[8.1092214,53.3753376],[8.109268,53.3751492],[8.1092831,53.3755614],[8.1087375,53.3752636],[8.1091828,53.3752033],[8.1061711,53.3707939],[8.1204745,53.3577902],[8.1178562,53.3568921],[8.1169575,53.3571844],[8.1178577,53.3568928],[8.1207508,53.357289],[8.1201376,53.358266],[8.1188753,53.3591781],[8.1151099,53.3618768],[8.1138014,53.3628293],[8.1071239,53.3681901],[8.1083342,53.3749194],[8.1091339,53.3752177]]},"properties":{"timestamps":[1776809217372,1776839037107,1776853064038,1776854521466,1776854946156,1776855492689,1776856707181,1776857010849,1776857314572,1776877018575,1776878051562,1776884737864,1776884798671,1776884859406,1776884920151,1776884981224,1776885041832,1776885224092,1776885284738]}}Das sind dann die Koordinaten von einer Person ĂŒber einen 24 Stunden Zeitraum.
-
Das mit den 24 Stunden habe ich mir bei Life360 abgeguckt. Da gibt es eine History fĂŒr jeden Tag. Da komme ich ĂŒber die API aber nicht ran, deswegen die Idee, es nachzubauen.
Wie gesagt, noch lÀuft es separat, ausserhalb vom Adapter.
Vorgehen:
Der Adapter holt sich alle 60 Sekunden den aktuellen Standort aller hinterlegten Personen;
Wenn die Entfernung zweier Standorte gröĂer als 20m ist, schreibt das Script die Koordinaten ins GeoJSON .... und erweitert das json dann bis es um 00:00 ein neues json anlegt.Dadurch habe ich die Möglichkeit, mir jeden Tag die Tagesroute anzueigen zu lassen.
Ob man das nun umbedingt im Adapter braucht ?! Ist aber halt 'nice to have', wenn es machbar wÀre.
-
@OliverIO .. genau und der Inhalt der Datenpunkte ist folgendes:
{"type":"Feature","geometry":{"type":"LineString","coordinates":[[8.1092108,53.375156],[8.1092214,53.3753376],[8.109268,53.3751492],[8.1092831,53.3755614],[8.1087375,53.3752636],[8.1091828,53.3752033],[8.1061711,53.3707939],[8.1204745,53.3577902],[8.1178562,53.3568921],[8.1169575,53.3571844],[8.1178577,53.3568928],[8.1207508,53.357289],[8.1201376,53.358266],[8.1188753,53.3591781],[8.1151099,53.3618768],[8.1138014,53.3628293],[8.1071239,53.3681901],[8.1083342,53.3749194],[8.1091339,53.3752177]]},"properties":{"timestamps":[1776809217372,1776839037107,1776853064038,1776854521466,1776854946156,1776855492689,1776856707181,1776857010849,1776857314572,1776877018575,1776878051562,1776884737864,1776884798671,1776884859406,1776884920151,1776884981224,1776885041832,1776885224092,1776885284738]}}Das sind dann die Koordinaten von einer Person ĂŒber einen 24 Stunden Zeitraum.
habe mir gerade mal den adapter in einer dev umgebung installiert.
Sag mir mal wie die Datenstruktur weitergeht.Ich vermute mal unterhalb von people sieht man dann das aus dem Bild?
Also hat man dann einen Ordner mitlife360.0.people.Sven
und dann
life360.0.people.Sven.History_2026-04-21
life360.0.people.Sven.History_2026-04-22
und so fort
? -
habe mir gerade mal den adapter in einer dev umgebung installiert.
Sag mir mal wie die Datenstruktur weitergeht.Ich vermute mal unterhalb von people sieht man dann das aus dem Bild?
Also hat man dann einen Ordner mitlife360.0.people.Sven
und dann
life360.0.people.Sven.History_2026-04-21
life360.0.people.Sven.History_2026-04-22
und so fort
?
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen BeitrĂ€ge zu scrollen? Wenn du dich fĂŒr ein Konto anmeldest, kommst du immer genau dorthin zurĂŒck, wo du zuvor warst, und kannst dich ĂŒber neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und BeitrĂ€ge positiv bewerten, um anderen Community-Mitgliedern deine WertschĂ€tzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden đ
Registrieren Anmelden

