Fornire informazioni sulle corse in tempo reale con TripUpdates

Importante: per fornire informazioni in tempo reale su una corsa con il feed TripUpdate, consulta Selezionare una corsa con TripDescriptor. Se il tuo sistema non può generare previsioni per intere corse, assicurati che il tuo feed GTFS in tempo reale sia preciso utilizzando un semplice feed TripUpdate.

Aggiornare gli orari, i binari e le fermate di una corsa

Puoi utilizzare il feed TripUpdates per visualizzare gli aggiornamenti relativi a orari di arrivo, variazioni di binario ed eventuali fermate che verranno saltate.

Aggiornare l'orario di arrivo

Un messaggio stop_time_update può fornire informazioni sull'arrivo o sulla partenza presso una fermata di una determinata corsa. Per aggiornare l'orario di arrivo, fornisci un feed TripUpdates con un TripDescriptor corrispondente e informazioni stop_time_update precise per le fermate e il timestamp rispetto al quale viene misurato l'avanzamento.

Devi seguire alcune linee guida di base:

  • Il feed TripUpdates deve includere la migliore previsione disponibile del successivo StopTimeUpdate.
  • Se possibile, il feed deve continuare a includere eventuali fermate precedentemente visitate. Utilizza StopTimeUpdates per rappresentare le fermate utilizzando stop_id o stop_sequence, con i valori che indicano gli orari definitivi di quando il veicolo è arrivato o è partito dalla fermata.
  • Se disponibile, includi un TripUpdate.timestamp del momento in cui è stata effettuata l'ultima misurazione del veicolo associato.

Quando crei correttamente un TripUpdate, supportiamo la rielaborazione del percorso basata sugli orari di partenza e di arrivo in tempo reale, forniti tramite i feed TripUpdate in tempo reale GTFS.

Quando fornisci sia TripUpdate sia VehiclePosition per la stessa corsa, decideremo quale tipo di messaggio utilizzare:

  • Messaggio di TripUpdate con orari di arrivo stimati basati sulle informazioni di stop_time_update.
  • Messaggio VehiclePosition basato sulle informazioni relative alla posizione con una previsione degli orari di arrivo stimati dal nostro algoritmo di previsione.

Esempio

La partenza della corsa T è programmata per oggi alle 19:00 dalla stazione S. Il feed TripUpdate in tempo reale GTFS indica che la corsa ha un ritardo di cinque minuti alla stazione S. Da questo momento, quando cerchi i collegamenti dalla stazione S alle 19:03, la corsa T apparirà come uno dei possibili collegamenti. Il TripUpdate in tempo reale ha aggiornato l'orario di partenza effettivo della corsa T in modo che sia successivo a quello programmato.

Codice di esempio:

trip_update {
  trip {
    trip_id: xxx
    start_time: 12:34:56
  }
  stop_time_update {
    stop_sequence: 0
    stop_id: "child_stop_id"
    arrival {
      time: 1284457468
    }
  }
}

Verifica quanto segue:

  • Il valore start_time in trip_descriptor deve essere uguale al valore departure_time definito nel feed statico.
  • Dopo aver definito start_time per mantenere il riferimento alla corsa, il valore deve essere stabile.
  • Specifica il ritardo utilizzando il valore stop_time_update nel campo time o delay.

Per le corse con orari basati sulla frequenza, l'orario di arrivo della corsa successiva viene sempre visualizzato come verde e puntuale.

Per le corse con orari fissi viene mostrato il ritardo effettivo:

Orari fissi con ritardi  Orari fissi con ritardi

Aggiornare la stazione o il binario

Per indicare la modifica di una fermata, l'azienda di trasporto pubblico può aggiornare il campo stop_id dell'oggetto StopTimeUpdate. È necessario indicare il valore del campo stop_sequence, mentre il valore ID_stop sostituito deve indicare una parent_station o condividere una parent_station con il nuovo stop_ID.

Codice di esempio:

trip_update {
  trip {
    trip_id: xxx
    start_time: 12:34:56
  }
  stop_time_update {
    stop_sequence: 0
    stop_id: "child_stop_id"
    arrival {
      time: 1284457468
    }
  }
}

In che modo gli utenti ricevono informazioni sul binario:

Orari e informazioni sui binari Orari e informazioni sui binari

 

Utilizza un valore SKIPPED per schedule_relationship nell'oggetto StopTimeUpdate.

  • Se la fermata interessata è una fermata di salita o discesa dal veicolo relativa a una query utente, la corsa con la fermata saltata verrà rimossa dai risultati di ricerca.
  • Se la fermata interessata si trova nel mezzo di una corsa che non richiede la salita o la discesa dal veicolo, la corsa non verrà rimossa dai risultati di ricerca.

Codice di esempio:

trip_update {
  trip {
    trip_id: xxx
    start_time: 12:34:56
  }
  stop_time_update {
    stop_sequence: 0
    schedule_relationship: SKIPPED
  }
}

Hai bisogno di ulteriore assistenza?

Prova i passaggi successivi indicati di seguito:

Ricerca
Cancella ricerca
Chiudi ricerca
Menu principale
14219161817845246798
true
Cerca nel Centro assistenza
true
true
true
true
true
82656
false
false