Para recibir actualizaciones de datos de viajes de Google Maps o Waze, configura tu backend con una de las siguientes opciones:
- Un método de extracción con la API de Navigation Connect
- Un método de envío basado en eventos con Google Cloud Pub/Sub
Opción 1: Usa la API de Navigation Connect
Para recuperar manualmente el estado más reciente del viaje, llama al método GetTrip con el ID de viaje único.
En el siguiente ejemplo, se muestra cómo llamar a la API desde la línea de comandos con tus credenciales predeterminadas de la aplicación (ADC) para autorizar la solicitud de servidor a servidor.
#!/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"
Personaliza los formatos de polilíneas (solo en Waze)
Si habilitaste el informe de ruta restante
durante la creación del viaje, puedes personalizar la representación de la polilínea de ruta activa que se muestra cuando llamas al método GetTrip.
Para elegir un formato para la polilínea, incluye el parámetro routePolylineFormat en tu solicitud. Los formatos compatibles incluyen los siguientes:
ENCODED: Una cadena de polilínea codificada estándar (5 puntos decimales)S2ENCODED: Una S2Polyline codificadaGEO_JSON: Un formato GeoJSON LineString
Opción 2: Usa Google Cloud Pub/Sub
Para recibir actualizaciones periódicas de viajes, suscríbete a un tema de Google Cloud Pub/Sub. Después de que el conductor dé su consentimiento, Navigation Connect enviará las actualizaciones directamente a tu tema.
Para obtener una introducción a la mensajería, consulta la guía de inicio rápido de Pub/Sub.
En las siguientes secciones, se describe cómo usar Google Cloud Pub/Sub para recibir datos de una sesión de navegación con Google Maps o Waze.
1. Crea un tema
Crea un tema llamado exactamente navigation_connect_trip_notifications en tu proyecto de Google Cloud, de la siguiente manera:
- Habilita la API de Pub/Sub.
- Ve a la página Temas de Pub/Sub en la consola de Google Cloud.
- Haz clic en Crear tema.
Ingresa
navigation_connect_trip_notificationsen el campo ID del tema.Haz clic en Crear.
La consola muestra el nombre completo del tema como projects/project-number/topics/navigation_connect_trip_notifications, en el que project-number es tu número de proyecto único.
2. Otorga permiso de publicación a la cuenta de servicio de Navigation Connect
Google usa una cuenta de servicio para publicar actualizaciones de viajes en temas de Google Cloud Pub/Sub. Para recibir actualizaciones en tu tema, otorga el permiso projects.topics.publish para este tema a la siguiente cuenta de servicio: geo-navigation-connect-pubsub@system.gserviceaccount.com.
Para obtener más información, consulta la documentación de Pub/Sub sobre el control de acceso.
3. Integra con tu backend
Para procesar actualizaciones, escribe una aplicación del servidor que se autentique y se suscriba a tu tema. Usa las bibliotecas cliente de Pub/Sub para un desarrollo optimizado. Para realizar pruebas, también puedes usar la CLI de gcloud y la consola de Google.
4. Prueba tu suscripción
Verifica tu configuración con la CLI de gcloud o la consola de Google Cloud.
gcloud CLI
Extrae mensajes de una suscripción (por ejemplo, my-sub) con el siguiente comando:
gcloud pubsub subscriptions pull my-sub --auto-ack
Consola de Google Cloud
En la consola de Google Cloud, sigue estos pasos:
- Abre la página Suscripciones.
- Selecciona tu suscripción y haz clic en la pestaña Mensajes.
- Haz clic en Extraer.
¿Qué sigue?
Una vez que comiences a recibir datos de viajes, analiza los datos para usarlos en tus sistemas y apps.