Notification

En raison d'une faible utilisation, l'assistance par chat ne sera plus disponible après le vendredi 10 mai. Notre équipe pourra ainsi se concentrer sur notre offre par e-mail afin d'améliorer l'expérience de communication avec nos partenaires dans sa globalité. À compter de cette date, veuillez nous contacter par e-mail pour toute demande.

Processus de publication de votre flux

Choisir une méthode pour l'envoi des données

Une fois que vous disposez d'un flux en temps réel valide (même s'il ne contient aucune donnée), vous pouvez spécifier la méthode à utiliser pour envoyer des données à Google.

Vous pouvez fournir des données de transports en commun en temps réel de deux manières:

  • La méthode fetch permet à Google de récupérer vos données à partir d'un emplacement sur le Web
  • La méthode push vous permet d'importer vos données via HTTP POST.

Pour les données d'alerte de service, si vous ne pouvez pas fournir d'alertes de service via les méthodes fetch ou push, vous pouvez créer manuellement des alertes de service à l'aide de l'éditeur des alertes de service.

Publier les alertes de service

Si vous ne parvenez pas à fournir d'alertes de service à l'aide des méthodes "fetch" ou "push", vous pouvez créer manuellement des alertes de service à l'aide de l'éditeur des alertes de service.

Méthode fetch

Vous pouvez héberger chacun de vos flux en temps réel à un emplacement spécifique du Web. Google y récupère (ou "extrait") alors ces données toutes les 30 secondes.

Pour autoriser Google à effectuer cette opération de manière sécurisée, vous pouvez utiliser l'une des options d'authentification suivantes :

  • Authentification de base (nom d'utilisateur et mot de passe)
  • En-têtes spécifiques à ajouter dans la requête
Si vous choisissez d'utiliser l'authentification de base, veuillez fournir les identifiants appropriés à l'équipe d'assistance Google Transports en commun.

Push

Vous pouvez transmettre vous-même les données à Google à l'aide de la méthode "push". Vous configurez alors des importations automatiques de vos données GTFS en temps réel via HTTP POST, en utilisant l'authentification OAuth2.0 pour assurer la sécurité de votre flux de données en temps réel.

Pour fournir aux utilisateurs les informations les plus récentes et les plus précises possible sur les transports en commun, nous vous recommandons d'envoyer fréquemment des mises à jour de données en temps réel. Idéalement, vous devriez transmettre les données de modification de trajets et de position des véhicules toutes les 30 secondes, et les alertes de service toutes les 30 secondes à deux minutes.

Conseil : Si vous avez configuré la méthode push avant 2023, vous utilisez une autre méthode OAuth. Pour vous assurer que les transferts de flux continueront de fonctionner, utilisez la nouvelle méthode décrite ci-dessous.
Avant de commencer
Avant d'effectuer des tests ou une quelconque implémentation, assurez-vous de disposer des éléments suivants :
  • Un compte Google enregistré dans le tableau de bord des partenaires Google Transports en commun
  • Un compte Google pouvant ouvrir Google Cloud
  • Le fichier de flux en temps réel que vous souhaitez envoyer au tableau de bord des partenaires Google Transports en commun
Créer un projet cloud.google.com
Important : Pour créer un projet cloud.google.com, vous devez disposer d'un compte Google Cloud.
Sur cloud.google.com, créez un projet Cloud. Vous n'avez pas besoin de payer pour partager vos données, mais vous devez indiquer un mode de paiement pour des raisons de sécurité.
Créer un compte de service et une clé de compte de service
  1. Sur la gauche, dans l'onglet "API et services", cliquez sur Identifiants.
  2. En haut, cliquez sur Créer des identifiants puis Compte de service.
  3. Dans le champ "Nom du compte de service", saisissez un nom.
  4. Cliquez sur Créer et continuer puis OK.

Vous pouvez choisir n'importe quel nom de compte de service. Nous l'appellerons "push-uploads" pour cet exemple. Cette étape crée une adresse e-mail pour le compte de service. Elle sera utilisée plus tard dans le tableau de bord des partenaires Google Transports en commun pour permettre au compte de service d'effectuer des modifications. Si cette adresse e-mail ne nécessite aucune autorisation ni aucun accès utilisateur au tableau de bord, vous pouvez ignorer les étapes 2 et 3.
Pour créer une clé pour les requêtes de transfert authentifiées :
  1. Dans la console Google Cloud, cliquez sur Menu Plus puis IAM et administration.
  2. Sur la gauche, cliquez sur Comptes de service puis Ajouter une clé.
  3. Sous "Type de clé", sélectionnez JSON.
  4. Cliquez sur Créer.

Autoriser le compte de service
  1. Pour ajouter le compte de service en tant qu'utilisateur au tableau de bord des partenaires Google Transports en commun, cliquez sur Ouvrir la boîte de dialogue d'invitation en haut à droite de la page.
  2. Dans la boîte de dialogue, saisissez l'adresse e-mail du compte de service.
  3. En haut à droite, cliquez sur le bouton Ouvrir la boîte de dialogue d'invitation , puis saisissez l'adresse e-mail de votre compte de service.
  4. Pour autoriser la transmission de nouveaux flux en temps réel, assurez-vous que votre compte de service dispose de l'autorisation Accès (par défaut).
  5. Cliquez sur Invite (Inviter).

Pour savoir comment ajouter des utilisateurs, consultez Accéder au tableau de bord des partenaires Google Transports en commun

Authentifier les requêtes d'importation
Pour envoyer des requêtes de serveur à serveur autorisées via Python, Java et REST, découvrez comment utiliser OAuth 2.0 pour les applications de serveur à serveur.
Avec la clé de compte de service téléchargée (service-account-key.json), vous pouvez effectuer une requête POST autorisée dans le tableau de bord des partenaires Google Transports en commun. Pour le champ d'application requis, utilisez https://www.googleapis.com/auth/partnerdash.upload. La requête contient un formulaire HTML (Content-Type: multipart/form-data) comportant deux champs :
  • realtime_feed_id : ID du flux en temps réel importé
  • file : contenu du fichier GTFS-RT importé
Voici un exemple d'implémentation du code d'importation de flux en Python :

#!/usr/bin/env python3

import requests

from google.oauth2 import service_account

from google.auth.transport.requests import AuthorizedSession

SCOPES = ["https://www.googleapis.com/auth/partnerdash.upload"]

SERVICE_ACCOUNT_FILE = 'service-account-key.json'

credentials = service_account.Credentials.from_service_account_file(SERVICE_ACCOUNT_FILE, scopes=SCOPES)

form = {'realtime_feed_id': '[REALTIME_FEED_NAME]'}

files = {'file': open("feed_version.pb", 'rb')}

req = requests.Request( 'POST', 'https://partnerdash.google.com/push-upload',data=form, files=files).prepare()

authed_session = AuthorizedSession(credentials)

resp = authed_session.request(url="https://partnerdash.google.com/push-upload",method="POST",

data=req.body,

headers={

'Content-Length': req.headers["Content-Length"],

'Content-Type': req.headers["Content-Type"]})

print(resp.headers)

print(resp.reason)

print(resp.raise_for_status())

Vous avez encore besoin d'aide ?

Essayez les solutions ci-dessous :

Recherche
Effacer la recherche
Fermer le champ de recherche
Menu principal
5254207393168466692
true
Rechercher dans le centre d'aide
true
true
true
true
true
82656
false
false