MaisClement / Navika_Api

MIT License
3 stars 0 forks source link

Horaires en temps réel ? #1

Open tmarti2 opened 8 months ago

tmarti2 commented 8 months ago

Hello, je sais pas trop quand je fais une issue si il faut plutôt la poster ici ou sur le repo de l'appli, là j'ai une question sur l'API donc ça me paraitpertinent de le faire ici.

Tout à l'heure j'ai pris un RER B en direction de Mitry-Clay, ayant pour horaire théorique 21h26 à Orsay-Ville. J'ai voulu tester en comparant Navika avec ce que me donnait le site dd1.fr, et le site affichait aussi 21h26. Cependant le RER avait un léger retard de ~2 minutes, affiché ni sur le site, ni sur l'appli. A 21h26 le rer a juste disparu de Navika, et est resté affiché à "0 minutes" sur dd1.fr. En arrivant à quai il a correctement été marqué "A quai" sur dd1, et n'est pas réapparut sur l'appli. J'ai à ce moment regardé les horaires pour la gare suivante "Le Guichet", dd1 affichait un horaire qui prenait en compte le retard, et donc montrait que le rer n'était pas encore passé, mais sur Navika l'horaire affiché était toujours l'horaire théorique de 21h28, et le rer était donc affiché comme déjà passé (je précise que j'ai affiché les horaires via l'onglet ligne en sélectionnant ensuite "Le Guichet", et pas via un autre onglet).

Est-ce que c'est normal ? J'ai cru comprendre que Navika et dd1 utilisent tous les 2 l'API PRIM (?), mais je ne suis du coup pas sûr de ce qui explique ces différences de comportement.

Bonne soirée !

MaisClement commented 8 months ago

Hello @tmarti2,

Le fonctionnement des horaires dans Navika dépendent de l'onglet (et de l'endpoint).

Dans l'onglet 'Horaires', ce sont les informations en temps réel qui priment. Les horaires, passages et destinations sont tiré directement de l'API PRIM. ( /schedules/) Dans l'onglet 'Lignes' les données sont avant tout théoriques puis complété par les infos en temps réel si une réconciliation entre l'API temps réel et le GTFS est possible. ( /lines/schedules/)

Exemple, en gare de Saint-Quentin en Yvelines, ligne 415 : Screenshot_20240104-222545

L'ensemble des données sont théorique, sauf les départs de 22h31 et 23h02 qui sont confirmé par l'API (coche a droite l'horaire)

Cette différence vient du fait qu'il est compliqué de lier un horaire depuis l'API (temps réel) d'un horaire théorique, les identifiant sont différents... Et varie selon les opérateurs (Réconciliation faite en se basant sur le numéro de la ligne, la destination et l'horaire ou l’identifiant (dans le cas où il correspondent) ou le nom du trajet).

Hésite pas à me dire si mon explication n'est pas claire,

Bonne soirée !

tmarti2 commented 8 months ago

Merci pour ta réponse !

Du coup ça explique pourquoi les informations pour la gare du Guichet étaient "fausses", puisque ça ne prenait pas en compte le retard du train, mais par contre pour les horaires en temps réel (onglet d'accueil et horaires) le rer n'était plus affiché alors que pas encore passé (là ou sur dd1 il restait à 0 minutes jusqu'à être "à quai"), qu'est-ce qui fait cette différence selon toi ?

MaisClement commented 8 months ago

Je pense que la différence d'affichage viens de 2 points :

Il faut que je regarde comment corriger/ameliorer ça sans impacter l'affichage des autres lignes / opérateurs.

tmarti2 commented 8 months ago

Ok j'ai compris, merci pour tes explications !