Fahrtdaten abrufen

Wenn Sie Aktualisierungen von Fahrtdaten von Google Maps oder Waze erhalten möchten, konfigurieren Sie Ihr Backend mit einer der folgenden Optionen:

  • Eine Pull-Methode mit der Navigation Connect API oder
  • Eine ereignisgesteuerte Push-Methode mit Google Cloud Pub/Sub.

Option 1: Navigation Connect API verwenden

Wenn Sie den aktuellen Status einer Fahrt manuell abrufen möchten, rufen Sie die Methode GetTrip mit der eindeutigen Fahrt-ID auf.

Das folgende Beispiel zeigt, wie Sie die API über die Befehlszeile aufrufen und Ihre Standardanmeldedaten für Anwendungen (ADC) verwenden, um die Server-zu-Server-Anfrage zu autorisieren.

#!/bin/bash

gcloud auth application-default login
access_token="$(gcloud auth application-default print-access-token)"

# Call the GetTrip method
curl -X GET "https://navigationconnect.googleapis.com/v1/projects/PROJECT_ID/trips/TRIP_ID" \
-H "Authorization: Bearer ${access_token}" \
-H "Content-Type: application/json"

Polylinienformate anpassen (nur Waze)

Wenn Sie beim Erstellen der Fahrt Berichte zur verbleibenden Route aktiviert haben, können Sie die Darstellung der zurückgegebenen aktiven Routen-Polylinie beim Aufrufen der Methode GetTrip anpassen.

Wenn Sie ein Format für die Polylinie auswählen möchten, fügen Sie den Parameter routePolylineFormat in Ihre Anfrage ein. Folgende Formate werden unterstützt:

  • ENCODED: Ein standardmäßig codierter Polylinien-String (5 Dezimalstellen).
  • S2ENCODED: Eine codierte S2Polyline.
  • GEO_JSON: Ein GeoJSON-LineString-Format.

Option 2: Google Cloud Pub/Sub verwenden

Wenn Sie regelmäßige Aktualisierungen zu Fahrten erhalten möchten, abonnieren Sie ein Google Cloud Pub/Sub-Thema. Nachdem der Fahrer zugestimmt hat, sendet Navigation Connect Updates direkt an Ihr Thema.

Eine Einführung in das Messaging finden Sie in der Pub/Sub-Kurzanleitung.

In den folgenden Abschnitten wird beschrieben, wie Sie Google Cloud Pub/Sub verwenden, um Daten aus einer Navigationssitzung mit Google Maps oder Waze zu empfangen.

1. Thema erstellen

Erstellen Sie in Ihrem Google Cloud-Projekt ein Thema mit dem Namen navigation_connect_trip_notifications:

  1. Aktivieren Sie die Pub/Sub API.
  2. Rufen Sie in der Google Cloud Console die Seite Pub/Sub-Themen auf.
  3. Klicken Sie auf Thema erstellen.
  4. Geben Sie navigation_connect_trip_notifications in das Feld Themen-ID ein.

  5. Klicken Sie auf Erstellen.

In der Konsole wird der vollständige Themenname als projects/project-number/topics/navigation_connect_trip_notifications angezeigt, wobei project-number Ihre eindeutige Projektnummer ist.

2. Dem Navigation Connect-Dienstkonto die Berechtigung zum Veröffentlichen gewähren

Google verwendet ein Dienstkonto, um Aktualisierungen von Fahrten in Google Cloud Pub/Sub-Themen zu veröffentlichen. Wenn Sie Aktualisierungen zu Ihrem Thema erhalten möchten, gewähren Sie dem folgenden Dienstkonto die Berechtigung für dieses Thema: geo-navigation-connect-pubsub@system.gserviceaccount.com.projects.topics.publish

Weitere Informationen finden Sie in der Pub/Sub-Dokumentation zur Zugriffssteuerung.

3. In Ihr Backend einbinden

Um Updates zu verarbeiten, schreiben Sie eine serverseitige Anwendung, die sich authentifiziert und Ihr Thema abonniert. Verwenden Sie die Pub/Sub-Clientbibliotheken, um die Entwicklung zu optimieren. Zum Testen können Sie auch die GCloud CLI und die Google Console verwenden.

4. Abo testen

Prüfen Sie Ihre Einrichtung mit der gcloud CLI oder der Google Cloud Console.

gcloud-CLI

Mit dem folgenden Befehl können Sie Nachrichten aus einem Abo (z. B. my-sub) abrufen:

gcloud pubsub subscriptions pull my-sub --auto-ack

Google Cloud Console

Führen Sie in der Google Cloud Console die folgenden Schritte aus:

  1. Öffnen Sie die Seite Abos.
  2. Wählen Sie Ihr Abo aus und klicken Sie auf den Tab Nachrichten.
  3. Klicken Sie auf Pull.

Nächste Schritte

Sobald Sie Fahrtendaten erhalten, müssen Sie sie parsen, um sie in Ihren Systemen und Apps verwenden zu können.

Fahrtdaten verarbeiten