NEWS
[gelöst][VIS-2] Kartenwidget um Traccar-Route darzustellen
-
Hallo, bevor ich jetzt alle Map-Widgets durchprobiere, Frag ich mal in die Runde.
Gibt es ein Map Widget für VIS-2 mit dem ich eine Route aus Traccar darstellen kann?
Die Daten liegen im Json Format vor:
[ [ 6.561572, 50.72576 ], [ 6.561578, 50.72575 ], [ 6.558029, 50.73009 ], [ 6.552406, 50.735543 ], [ 6.557035, 50.737909 ], [ 6.566655, 50.732889 ], [ 6.574844, 50.722826 ], [ 6.577997, 50.718762 ], [ 6.578188, 50.718086 ], [ 6.567638, 50.717448 ], [ 6.560781, 50.725156 ], [ 6.561572, 50.725749 ], [ 6.561571, 50.725757 ], [ 6.561558, 50.725756 ] ]Ich habe bisher nur Widgets gefunden die eine einzelne Position anzeigen.
-
Hallo, bevor ich jetzt alle Map-Widgets durchprobiere, Frag ich mal in die Runde.
Gibt es ein Map Widget für VIS-2 mit dem ich eine Route aus Traccar darstellen kann?
Die Daten liegen im Json Format vor:
[ [ 6.561572, 50.72576 ], [ 6.561578, 50.72575 ], [ 6.558029, 50.73009 ], [ 6.552406, 50.735543 ], [ 6.557035, 50.737909 ], [ 6.566655, 50.732889 ], [ 6.574844, 50.722826 ], [ 6.577997, 50.718762 ], [ 6.578188, 50.718086 ], [ 6.567638, 50.717448 ], [ 6.560781, 50.725156 ], [ 6.561572, 50.725749 ], [ 6.561571, 50.725757 ], [ 6.561558, 50.725756 ] ]Ich habe bisher nur Widgets gefunden die eine einzelne Position anzeigen.
Ja, hier
https://forum.iobroker.net/topic/82214/test-iobroker-vis-mapwidgetshttps://github.com/oweitman/ioBroker.vis-mapwidgets
Man hat eine Menge Möglichkeiten.
Punkte
Pfade
Linien
Geometrische Formen
Etc.Man muss die Daten als json in einen Datenpunkt packen.
Format ist aber einfach und ich hab einige Beispiele dafür.Für mich funktioniert es gut
Wurde aber von anderen noch nicht ausreichend getestet
Daher ist er noch nicht im Beta gelandetMuss daher direkt von GitHub installiert werden
Stehe aber im fall von Fragen zur Verfügung
Funktioniert auch in vis2
Für dein konkretes Beispiel müsstest du nur deine Daten in ein json Objekt mit polyline/ latlng einbauen
Ich hoffe das ich beim zusammenbauen des jsons am Handy keinen Fehler gemacht habe. Aber das Prinzip müsste klar sein
{ "polyline": [ { "latlng": [ [ 6.561572, 50.72576 ], [ 6.561578, 50.72575 ], [ 6.558029, 50.73009 ], [ 6.552406, 50.735543 ], [ 6.557035, 50.737909 ], [ 6.566655, 50.732889 ], [ 6.574844, 50.722826 ], [ 6.577997, 50.718762 ], [ 6.578188, 50.718086 ], [ 6.567638, 50.717448 ], [ 6.560781, 50.725156 ], [ 6.561572, 50.725749 ], [ 6.561571, 50.725757 ], [ 6.561558, 50.725756 ] ] } } -
Ok, ich hab das Widget jetzt mal installiert.
Hab mein Script welches die Daten von Traccar holt angepasst, so das die Koordinaten für das Leaflet Widget passen, ich bekomme auch die Route angezeigt.
Das Problem ist, wenn ich in VIS in eine andere View wechsel und dann wieder zurück, dann ist die Route weg. keine Fehlermeldung, nix.
Wenn ich dann einfach die OID vom DP leermache, und den DP neu auswähle, passiert auch nix.
Wenn ich dann im Admin die Daten verändere, also einfach die letzte Stelle einer Koordinate z.B. von 2 auf 3, und das bestätige, dann ist die Route wieder da, die dann wieder verschwindet wenn ich auf eine andere Seite wechsel. Die Karte bleibt aber immer sichtbar. -
Ok, ich hab das Widget jetzt mal installiert.
Hab mein Script welches die Daten von Traccar holt angepasst, so das die Koordinaten für das Leaflet Widget passen, ich bekomme auch die Route angezeigt.
Das Problem ist, wenn ich in VIS in eine andere View wechsel und dann wieder zurück, dann ist die Route weg. keine Fehlermeldung, nix.
Wenn ich dann einfach die OID vom DP leermache, und den DP neu auswähle, passiert auch nix.
Wenn ich dann im Admin die Daten verändere, also einfach die letzte Stelle einer Koordinate z.B. von 2 auf 3, und das bestätige, dann ist die Route wieder da, die dann wieder verschwindet wenn ich auf eine andere Seite wechsel. Die Karte bleibt aber immer sichtbar.dann müsste es eine fehlermeldung im browser gegeben haben.
kannst du bitte mit F12 in die browserconsole gehen und dort nach Fehlermeldungen schauen? Auf der Linken Seite kann man danach filtern.hier ein kleines video zur demonstration
f3d7520d-0460-4943-9890-1177395bb619-20260703-1232-33.8368107.mp4 -
Hm, ich kapiers nich. Jetzt hab ich das Widget in die richtige VIS View kopiert (war vorher auf meiner Test-Seite) jetzt passiert das nicht mehr. Bin verwirrt, aber egal wenns jetzt so bleibt is es ja gut.
kein problem.
wie gesagt, ich habe für mich "eigentlich" schon ausreichend getestet.
Allerdings schließt das nicht aus, das ich etwas übersehen habe oder das in bestimmten Konstellationen dann doch etwas ist das ich nicht bedacht habe.Ich habe darauf getippt, das deine Daten nicht ganz dem Format entsprechen.
Habe mittlerweile beschlossen mal noch eine schemaüberüfung einzubauen um dem Anwender entsprechende Hinweise zu geben, was an der json falsch ist.
Muss das aber mal testen, wie das mit der performance ist. Evtl auch nur eine Funktion für den editor und nicht für die runtime.Wenn du Zeit hast, wäre ich dankbar wenn du noch ein bisschen mit rumspielst. Evtl gebe ich den Adapter dann auch in den beta channel.
wenn du mit pfaden/polyyline arbeitest könnte evtl noch diese option interessant sein
https://github.com/oweitman/ioBroker.vis-mapwidgets#fitbounds
wenn du diese option setzt zoomt die map so, das der ganze pfad schön zentriert ist und der richtige zoom level gewählt wird -
Bei mir sieht es jetzt so aus:

und was mir aufgefallen ist, das im Widget die bezeichnung für 'long' verwirrend ist.
Das müsstest du vielleicht noch ändern.Siehe Bild rote Markierung:

-
Bei mir sieht es jetzt so aus:

und was mir aufgefallen ist, das im Widget die bezeichnung für 'long' verwirrend ist.
Das müsstest du vielleicht noch ändern.Siehe Bild rote Markierung:

mit ein wenig javascript, einer select dropdown, mit hilfe von local_ variablen und einem eigenen json format könntest du auch noch ein Auswahlfeld einbauen, bei dem du mehrere pfade (bspw. der letzten 5 Tage) dir dynamisch anzeigen lassen könntest.
Ich glaube ich baue in den nächsten Tagen da mal ein usecase dazu -
Kann man in das Widget noch einbauen, das der Startpunkt und der Zielpunkt durch z.B einen Marker (z.B dein schönes leaf) kenntlich gemacht werden kann oder z.B. die aktuelle Position.
Wenn ich jetzt nur eine Strecke fahre dann sieht man ja nicht von 'wo' nach 'wo' gefahren wurde, weil ist ja nur eine Linie (nich so wie auf meinem Bild von oben, da sieht man ja einmal hin und wieder zurück = zwei Linien).
Im Traccar Adapter hab ich ja einen DP der die aktuelle Position angibt (also als Lat/Long)Oder müsste ich mir das in mein Script einbauen?
-
Kann man in das Widget noch einbauen, das der Startpunkt und der Zielpunkt durch z.B einen Marker (z.B dein schönes leaf) kenntlich gemacht werden kann oder z.B. die aktuelle Position.
Wenn ich jetzt nur eine Strecke fahre dann sieht man ja nicht von 'wo' nach 'wo' gefahren wurde, weil ist ja nur eine Linie (nich so wie auf meinem Bild von oben, da sieht man ja einmal hin und wieder zurück = zwei Linien).
Im Traccar Adapter hab ich ja einen DP der die aktuelle Position angibt (also als Lat/Long)Oder müsste ich mir das in mein Script einbauen?
Das kannst du jetzt schon.
Einfach noch 2 Marker hinzufügen.
Dann wird erstmal das Standard Marker Icon genommen.
Wenn du eigene icons verwenden willst, auch für Start und Ziel separat, dann einfach noch die icons im icons Abschnitt definieren und im Marker mit dem entsprechenden Namen referenzieren.Ein Beispiel findest du hier
Das entsprechende Bildchen muss in vis hochgeladen sein und der Pfad bei icons angegeben sein
Die Bilderdateien findest du hier
https://github.com/oweitman/ioBroker.vis-mapwidgets/tree/main/example/test-images -
Kann man in das Widget noch einbauen, das der Startpunkt und der Zielpunkt durch z.B einen Marker (z.B dein schönes leaf) kenntlich gemacht werden kann oder z.B. die aktuelle Position.
Wenn ich jetzt nur eine Strecke fahre dann sieht man ja nicht von 'wo' nach 'wo' gefahren wurde, weil ist ja nur eine Linie (nich so wie auf meinem Bild von oben, da sieht man ja einmal hin und wieder zurück = zwei Linien).
Im Traccar Adapter hab ich ja einen DP der die aktuelle Position angibt (also als Lat/Long)Oder müsste ich mir das in mein Script einbauen?
so usecase ist fertig und hier zu finden.
https://github.com/oweitman/ioBroker.vis-mapwidgets/blob/main/example/example.md#directory-examplepathhistoryDie geforderte Datenstruktur und weitere Vorgehensweise ist dort beschrieben.
es muss eine neuere vis2 version verwendet werden. in einer älteren version (weiß nicht mehr welche), gab es Probleme mit den local_ datenpunkten.

-
Ich setzt das hier mal auf gelöst.
Wenn ich weiter getestet habe und noch Fragen hab dann poste ich das direkt in deinem Widget-Thread, sonst wird das hier doppelt.
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