Verwenden der TomTom-Routing-API für die geschätzte Ankunftszeit

Ein Tutorial zur Verwendung unserer API zur Berechnung einer genauen Ankunftszeit

(Bre Teiko) (22. Oktober 2020)

KURZE ZUSAMMENFASSUNG DER ROUTING-API

Die Routing-API ist ein leistungsstarkes Tool, mit dem Sie genaue Anweisungen für verschiedene Fahrzeugtypen erhalten können – mit Routen wie der schnellsten, kürzesten, aufregendsten usw. Sie kann auch die geometrische Form der gewünschten Route und angeben Anweisungen.

Eine von der API übersehene Funktion ist jedoch die Option, eine Zusammenfassung der angeforderten Routen abzurufen. Es ist nützlich, dem Benutzer Möglichkeiten anzuzeigen, wie in diesem Beispiel: Wir müssen das nächstgelegene Krankenhaus oder die nächstgelegene Apotheke finden. Indem wir die Zusammenfassungen erhalten, können wir eine bessere Auswahl unter Verwendung des Matrix-Routing-Beispiels anbieten, das hier .

Ein weiterer klassischer Anwendungsfall hierfür ist eine Ride Sharing-Anwendung. Die Berechnung eines Fahrers mit der besten Wahl aus einer Liste von Anbietern, die in einem Gebiet verteilt sind, wird schwierig, wenn wir keine Routen zum Vergleichen erstellen müssen, da wir nur entweder Fahrentfernung oder ETAs benötigen. Dies ist der Zeitpunkt, an dem die Zusammenfassung ihre Wirkung entfaltet.

Die Zusammenfassung wird mit dem folgenden Parameter angefordert:

Der Wert polyline gibt die grafische Darstellung der Route in einem LatLng-Paar-Array zurück, während die ZusammenfassungOnly Ihnen einen zusätzlichen JSON-Abschnitt in der Antwort wie dieser liefert :

Hier gibt es einige interessante Daten Dies unterscheidet diese API selbst insbesondere von anderen:

  1. Sie können sehen, dass es verschiedene ETAs ohne Berücksichtigung von Verkehr, Live-Verkehr und historischem Verkehr gibt.
  2. Sie können alternative Routen erhalten und sehen Sie, wie viel Abweichung von der ursprünglichen vorhanden ist.

HINWEIS: Die Abweichungen und alternativen Routen sind nur verfügbar, wenn eine anfängliche Route vorliegt zuerst berechnet.

HINWEIS 2: Der Kraftstoffverbrauch on wird geschätzt. Wenn wir jedoch Verbrauchsmodelle übergeben – entweder für Fahrzeuge mit Elektro- oder Verbrennungsmotor – wird die Berechnung viel genauer.

Lassen Sie uns nun einen Real- Lebensbeispiel…

VERSCHIEDENE TYPEN, VERSCHIEDENE ETAS

Wir werden ein paar verschiedene ETAs von unserem Hotel in der Innenstadt von Chicago aus überprüfen – wie wäre es mit „La Quinta Inn“? Für dieses Hotel verwenden wir den Standort:

Vom Hotel aus möchten wir ein Restaurant in der Nähe finden, ein kreolisches Restaurant im Cajun-Stil. Hierfür können wir die Kategoriesuch-API [ https://developer.tomtom.com/search-api/search-api-documentation-search/category-search], um eine Liste möglicher Restaurants rund um das Hotel zu erhalten (unter Verwendung der LatLng des Hotels als Positionsverzerrung).

Wenn Sie nicht verwendete Daten entfernen, erhalten Sie eine kleine Liste. Dies ist das erste Element:

Also Sie sehen, als Teil des Ergebnisses erhalten wir auch die Entfernung zu unserem Hotel. Dieser Wert – in Metern – ist jedoch eine direkte Sichtentfernung, nicht die tatsächliche Entfernung beim Fahren oder Gehen. Sie können meine Ergebnisse replizieren, indem Sie diesen Curl-Befehl ausführen.

Für die tatsächliche Fahrstrecke verwenden wir die Routing-API, fordern nur die Zusammenfassung an und fügen die Option zur Berechnung für verschiedene Fahrzeiten hinzu. Dies ist der API-Endpunkt, den wir verwenden können:

Was uns gibt:

Dies ist zwar vorerst gut genug, aber wir müssen noch MEHR Routen vergleichen, und dafür ist nichts besser als die Verwendung der Matrix-Routing-API.

ALLE MÖGLICHEN ROUTEN / ROUTEN ZU VIELEN ZIELEN ERHALTEN

Aus der Dokumentation in unserem Entwicklerportal:

Der Matrix-Routing-Dienst ermöglicht die Berechnung einer Matrix von Routenzusammenfassungen für eine Reihe von Routen, die mit Ursprungs- und Zielorten definiert sind.

  • Für jeden gegebenen Ursprung berechnet dieser Dienst die Kosten für das Routing von diesem Ursprung zu jedem gegebenen Ziel.
  • Die Menge der Ursprünge und die Menge der Ziele kann als Spalten- und Zeilenkopfzeile einer Tabelle betrachtet werden, während jede Zelle in der Tabelle die Kosten für das Routing von der Tabelle enthält Ursprung zum Ziel für diese Zelle.

Die folgenden Kosten werden für jede Route berechnet:

  • Fahrzeiten
  • Entfernungen

Die vollständige Dokumentation finden Sie hier: https://developer.tomtom.com/routing-api/routing-api-documentation-matrix-routing/synchronous-matrix

Das sieht genau so aus, wie wir es brauchen.

In unserem Fall werden wir Fahr- und Fußgängerzusammenfassungen berechnen, damit wir entscheiden können, ob wir gehen oder fahren möchten, und da die Anforderungen einfach genug sind – hier keine komplizierten Routen -, können wir die synchrone Version verwenden: Wir wartet auf eine Antwort, sobald alle Routen berechnet wurden.

HINWEIS: Bei der synchronen Version der Matrix-Routing-API tritt eine Zeitüberschreitung auf Nach 60 Sekunden sollten Sie es daher nur für kleine Routen verwenden.

Der Endpunkt ist eine HTTP-POST-Anforderung. Dies ist die URL, die wir verwenden werden:

Der POST-Text: Hier werden die Anforderungen für verschiedene Routen (gleicher Ursprung, verschiedene Ziele) festgelegt. Es folgt diesem Format:

Also in In unserem Fall ist dies unser POST-Body:

Mit dieser Anfrage erhalten wir das folgende Ergebnis, das für redaktionelle Zwecke abgeschnitten wurde:

Für jedes Ziel erhalten wir ein Antwortobjekt und seine RouteSummary mit denselben Informationen, die wir durch die Ausführung eines einfachen Aufrufs erhalten haben. Hier sehen wir, dass das Restaurant „Cajun Grill“ uns am nächsten zum Fahren ist. Damit können wir eine Liste oder eine Anzeige für den Benutzer füllen. Versuchen Sie, den Reisemodus auf Fußgänger zu ändern, wenn Sie eine Wanderroute wünschen. Ex. Für Fußgängerwege:

Verwenden dieser Anforderung Wir sehen, dass das Restaurant Cajun Grill AUCH zu Fuß am nächsten zu uns liegt. Falls wir jedoch verschiedene Restaurants zur Auswahl haben, können wir immer die Batch Routing API verwenden, um alle benötigten Routen mit einer einzigen zu erstellen Rufen Sie auf diese Weise Folgendes auf: https://developer.tomtom.com/routing-api/routing-api-documentation/batch-routing

Wir erstellen nur die Routen, die wir dem Benutzer anzeigen müssen.

ZUSAMMENFASSUNG

In diesem Artikel haben wir uns die Routing-API und das Abrufen von ETAs und echtem Fahren oder angesehen Gehentfernungen über das Summary-Objekt in der Antwort der Matrix-Routing-API.

Mit der Matrix-Routing-API können wir mit einem einzigen Aufruf verschiedene Zusammenfassungen abrufen, mit denen wir solche ETAs von verschiedenen Zielen abrufen können.

Ich hoffe, dieser Artikel hilft Ihnen dabei, die TomTom Routing-API besser zu verstehen. Vielen Dank für Ihre Unterstützung ading and Happy Mapping!

Weitere Informationen zu TomToms Diensten und Lösungen für Mobilitäts- und Transportdienste auf der letzten Meile finden Sie auf der Seite Mobilität und On-Demand hier .

Dieser Artikel erschien ursprünglich auf https://developer.tomtom.com/blog . Der ursprüngliche Autor ist Jose Jose Rojas.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.