Recuperare i dati sul percorso

Per ricevere aggiornamenti sui dati sul percorso da Google Maps o Waze, configura il backend utilizzando una delle seguenti opzioni:

  • Un metodo pull che utilizza l'API Navigation Connect oppure
  • Un metodo push basato sugli eventi che utilizza Google Cloud Pub/Sub.

Opzione 1: utilizza l'API Navigation Connect

Per recuperare manualmente l'ultimo stato della corsa, chiama il metodo GetTrip con l'ID corsa univoco.

L'esempio seguente mostra come chiamare l'API dalla riga di comando utilizzando le credenziali predefinite dell'applicazione (ADC) per autorizzare la richiesta da server a server.

#!/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"

Personalizzare i formati delle polilinee (solo Waze)

Se hai attivato il report sul percorso rimanente durante la creazione del viaggio, puoi personalizzare la rappresentazione della polilinea del percorso attivo restituito quando chiami il metodo GetTrip.

Per scegliere un formato per la polilinea, includi il parametro routePolylineFormat nella richiesta. I formati supportati includono:

  • ENCODED: una stringa polilinea codificata standard (5 cifre decimali).
  • S2ENCODED: una S2Polyline codificata.
  • GEO_JSON: un formato LineString GeoJSON.

Opzione 2: utilizza Google Cloud Pub/Sub

Per ricevere aggiornamenti regolari sul viaggio, iscriviti a un argomento Google Cloud Pub/Sub. Dopo il consenso del conducente, Navigation Connect invia gli aggiornamenti direttamente al tuo argomento.

Per un'introduzione alla messaggistica, consulta la guida rapida di Pub/Sub.

Le sezioni seguenti descrivono come utilizzare Google Cloud Pub/Sub per ricevere dati da una sessione di navigazione con Google Maps o Waze.

1. Crea un argomento

Crea un argomento denominato esattamente navigation_connect_trip_notifications nel tuo progetto Google Cloud, come segue:

  1. Abilita l'API Pub/Sub.
  2. Vai alla pagina degli argomenti Pub/Sub nella console Google Cloud.
  3. Fai clic su Crea argomento.
  4. Inserisci navigation_connect_trip_notifications nel campo ID argomento.

  5. Fai clic su Crea.

La console mostra il nome completo dell'argomento come projects/project-number/topics/navigation_connect_trip_notifications, dove project-number è il numero di progetto univoco.

2. Concedi l'autorizzazione di pubblicazione al service account di Navigation Connect

Google utilizza un service account per pubblicare gli aggiornamenti del viaggio negli argomenti Google Cloud Pub/Sub. Per ricevere aggiornamenti nell'argomento, concedi l'autorizzazione projects.topics.publish per questo argomento al seguente service account: geo-navigation-connect-pubsub@system.gserviceaccount.com.

Per saperne di più, consulta la documentazione di Pub/Sub sul controllo dell'accesso.

3. Integrare con il backend

Per elaborare gli aggiornamenti, scrivi un'applicazione lato server che esegua l'autenticazione e si iscriva al tuo argomento. Utilizza le librerie client Pub/Sub per uno sviluppo semplificato. Per i test, puoi utilizzare anche gcloud CLI e la console Google.

4. Testare l'abbonamento

Verifica la configurazione utilizzando gcloud CLI o la console Google Cloud.

gcloud CLI

Esegui il pull dei messaggi da una sottoscrizione (ad esempio my-sub) utilizzando il seguente comando:

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

Console Google Cloud

Nella console Google Cloud, segui questi passaggi:

  1. Apri la pagina Abbonamenti.
  2. Seleziona l'abbonamento e fai clic sulla scheda Messaggi.
  3. Fai clic su Pull.

Passaggi successivi

Una volta che inizi a ricevere i dati sul percorso, analizzali per utilizzarli nei tuoi sistemi e nelle tue app.

Gestire i dati sul percorso