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:
- Aktivieren Sie die Pub/Sub API.
- Rufen Sie in der Google Cloud Console die Seite Pub/Sub-Themen auf.
- Klicken Sie auf Thema erstellen.
Geben Sie
navigation_connect_trip_notificationsin das Feld Themen-ID ein.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:
- Öffnen Sie die Seite Abos.
- Wählen Sie Ihr Abo aus und klicken Sie auf den Tab Nachrichten.
- 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.