Till senaste kommentaren

SL Transport: Vad betyder de olika Departure-tillstånden?

Jag skulle behöva facit för att tolka Departure.State:

[ NOTEXPECTED, NOTCALLED, EXPECTED, CANCELLED, INHIBITED, ATSTOP, BOARDING, BOARDINGCLOSED, DEPARTED, PASSED, MISSED, REPLACED, ASSUMEDDEPARTED ]

Jag försöker till en början att tolka vilka som innebär "visa ej avgången" och vilka som innebär "inställd". Använder hittills NOTEXPECTED och CANCELLED respektive (helt utifrån motsvarande beskrivning i Journey.State, så bara en gissning). Många av dessa tillstånd känns tvetydiga utan beskrivning (praktiskt taget alla).
Ano

Kommentarer

  • För tydlighetens skull kopierar jag den dokumentationen som du refererar till.

    • NOTEXPECTED - Do not show departure at all. Some systems might instead indicate that this departure is available only if ordered
    • NOTRUN - If a not expected dated vehicle journey is never run, it should at some point in time be considered as not run
    • EXPECTED - Normally show target time for departure
    • ASSIGNED - A symbol or text indicating that the vehicle journey is not yet in progress could be added depending on presentation system configuration
    • CANCELLED - Show departure as cancelled
    • SIGNEDON - If the presentation system only shows vehicles that are in progress, do not show the departure
    • ATORIGIN - Normally show target time for departure. A symbol or text indicating that the vehicle journey is at origin, but not yet in progress could be added depending on presentation system configuration. If the presentation system only shows vehicles that are in progress, do not show the departure
    • FASTPROGRESS - Present the current vehicle journey position, i.e. "has left station X Z minutes ago" or "currently at station Y". Systems that cannot present texts of that size should use a symbol or text indicating that the vehicle journey prediction is unreliable
    • NORMALPROGRESS - Present the current vehicle journey position, i.e. "has left station X Z minutes ago" or "currently at station Y"
    • SLOWPROGRESS - Present the current vehicle journey position, i.e. "has left station X Z minutes ago" or "currently at station Y" and information that "traffic moves slowly". Systems that cannot present texts of that size should use a symbol or text indicating that the vehicle journey prediction is unreliable
    • NOPROGRESS - Present the current vehicle journey position, i.e. "has left station X Z minutes ago" or "currently at station Y" and information that there is a "stop in traffic". Systems that cannot present texts of that size should use a symbol or text indicating that the vehicle journey prediction is unreliable
    • OFFROUTE - If the vehicle system detects that a vehicle is not following the expected route, it can change the state to off route
    • ABORTED - If the vehicle finally reaches its destination, the vehicle journey receives the state completed, else it is aborted. Once in progress, a cancellation or sign off will be regarded as the monitored vehicle journey has been aborted. If an aborted dated vehicle journey is resumed again, PubTrans will create a new instance of a monitored vehicle journey
    • COMPLETED - If the vehicle finally reaches its destination, the vehicle journey receives the state completed, else it is aborted
    • ASSUMEDCOMPLETED - If an expected vehicle journey is not cancelled and never becomes in progress, it should at some point in time be considered as assumed completed
    Anledningen till att listan är så långt är för att den kommer från ROI-specifikationen (https://www.noptis.com/downloads/) sektion 3.2.3. Det är alltså en lista på allt som är tekniskt sätt möjligt inom bakomliggande system, men det betyder inte att alla förekommer.
    I den här diagrammen ser man hur livscykel kan variera. Egentligen är det bara cancelled, not run, och aborted som verkligen visar en viktig avvikelse när man ska visa data på en avgångstavla.



    Jag skulle hantera allt som "vanligt", förutom de specialfall som man kan hantera korrekt som CANCELLED, ABORTED och NOT RUN.

    Hoppas detta hjälper.

    Hälsningar,
    Bert
    Bert på Trafiklab
  • Tack. Det blir lite svårt för mig att tolka ditt svar eftersom materialet du visar endast gäller Journey.State och inte Departure.State. Jag kan inte avgöra ifall du förväxlade dem, eller om du vill säga att alla tillstånd som överlappar Journey.State ska behandlas i enlighet med Journeys beskrivning och alla övriga (inhibited, missed, passed...) ska ignoreras?
    Ano
  • Kolla på det här resultatet:

    {
    "destination": "Farsta strand",
    "direction_code": 2,
    "direction": "Farsta strand",
    "state": "CANCELLED",
    "display": "21:56",
    "scheduled": "2024-03-19T21:56:15",
    "expected": "2024-03-19T21:58:40",
    "journey": {
    "id": 2024031980072,
    "state": "NORMALPROGRESS",
    "prediction_state": "NORMAL"
    },
    "stop_area": {
    "id": 1051,
    "name": "T-Centralen",
    "type": "METROSTN"
    },
    "stop_point": {
    "id": 1052,
    "name": "T-Centralen",
    "designation": "4"
    },
    "line": {
    "id": 18,
    "designation": "18",
    "transport_mode": "METRO",
    "group_of_lines": "Tunnelbanans gröna linje"
    },
    "deviations": [
    {
    "importance_level": 7,
    "consequence": "CANCELLED",
    "message": "Inställd"
    }
    ]
    }

    Hur kommer det sig att det både finns en deviation "CANCELLED" och att departure.state är "CANCELLED" men departure.journey.state är "NORMALPROGRESS"? Bör inte rimligtvis den senare också vara "CANCELLED"? Nu finns det tre fält (departure.state, departure.journey.state, departure.deviations) som kan indikera på att den är inställd, men det är ju helt hopplöst för oss utvecklare att veta vad vi ska presentera då det är ganska bristfällig dokumentation på hur dessa kan skilja sig och det är ju inte bättre att fälten uppenbarligen kan vara motstridiga.
    Emil
  • Jag håller med om att det inte har varit så tydlig dokumentation det senaste decceniet, och det blir därför ganska svårt att över huvud taget uttala sig om semantik, men i ditt exempel ser jag på rak arm inga motsägelser. Svaret är indelat i avgång och resa, och de kan väl förmodas vara olika koncept. Avvikelserna sägs vara "avgångsavvikelser", och inte "reseavvikelser", och i ditt exempel stämmer de överens med statusen för avgången.

    Jag tycker inte det känns orimligt att en avgång kan vara inställd i en resa som inte är inställd, men jag skulle likt dig inte kalla det för "normal progress" (i avsaknad av någon som helst beskrivning av "normal progress").

    Återigen: vad betyder de olika statusarna? Ingen vet...?
    Ano
  • Men nu när jag tittar på diagrammet (som bara finns i denna tråd) så kan jag nog dra slutsatsen att "normal" i "normal progress" bara avser resans hastighet relativt förväntad hastighet, och inte huruvida något av alla stoppen på vägen är inställda. Jag skulle tolka ditt exempel som att en avgång är inställd i en resa som i övrigt fortskrider som väntat.
    Ano
  • Generellt sett kan väl en "avgång vara inställd" trots att "resan" inte är det, men då kallar man det väl snarare indragen hållplats/station. Har aldrig varit med om att man ställer in T-Centralen men i övrigt går tåget som vanligt. Så något fel är det ju på datan i alla fall.
    Emil
  • Jag kan spontant komma på åtminstone en anledning till att ställa in en avgång från en hållplats som i sig inte är tagen ur bruk, men jag vet inte hur vanligt det är att göra så vid centralen. Det kan såklart vara fel data, men datan ser konsekvent ut så vitt jag kan avgöra utan att ha varit på perrongen.
    Ano
  • Hej Ano,

    Ber om ursäkt för sent svar, jag blandade ihop journey state och departure state.
    Här finns samma diagram för departure och arrival, från sektion 3.3.1 och 3.3.2 i Noptis ROI specen:







    Angående inställda delsträckor, så kan en avgång vara inställd medan delsträckor före och efter den avgången trafikeras som vanligt. Till exempel när en tunnelbanestation är stängd, när ett tåg vänder tidigare än planerat, eller när pendeltåget stannar vid Stockholm C istället för Stockholm City och Odenplan.

    Angående Normalprogress etc skulle jag inte värdesätta den för mycket. Som tidigare sagt behöver bakomliggande systemet inte ha stöd för dessa, utan det kan vara så att den alltid är NormalProgress så länge att fordonet är i tjänst. På samma sätt kan det vara att Assumed departed eller Missed aldrig används, så det är bäst att man hanterar allt som "normalt" förutom de fall man kan hantera, tex cancelled, expected, at stop och departed.


    Om turen är inställd får man utgå ifrån att samtliga avgångar är inställd, om turen inte är inställd och avgången är inställd är det nog en delsträcka som är inställd.


    Själv har jag inte mycket mer insyn i hur API:erna fungerar än det som vi har lagt ut på Trafiklab och här, så en stor del av detta är mer branschkunskap än specifik dokumentation för detta API. Hoppas att det hjälper dock.

    Hälsningar,
    Bert

    Bert på Trafiklab
  • Tack – din domänkunskap är oändligt mycket mer användbart än det som står i dokumentationen (dvs inget). Jag tror inte någon som läser dokumentationen skulle tacka nej till kvalificerade kommentar från dig, speciellt inte om inte api-ansvariga faktiskt går in och lägger till mer info.




    Jag ser inte Inhibited, Boarding, Boarding Closed i diagrammen – jag antar att de är undertillstånd till At Stop?




    Angående att behandla tillstånd som kanske inte används som "normala" så känns det som att bädda för fel. Det rimliga är väl ändå att behandla alla tillstånd korrekt – speciellt när man inte kan säga säkert om de används eller ej – och därefter kunna vara bekväm med att det kvittar ifall vissa undersystem (tunnelbana t.ex.) använder dem eller ej.




    Jag kan hantera alla tillstånd, så länge jag vet semantiken (och utan den kan jag inte hantera något tillstånd). Till exempel ser "passed" i diagrammet ut att betyda att färdmedlet passerade hållplatsen, och det vore väl konstigt att visa en sådan avgång som om den vore normal?




    Gör rätt och glöm bort > få en smula info åt gången och släppa uppdateringar om och om igen.

    Ano

Kommentera eller skriv ett nytt inlägg

Ditt namn och inlägg kan ses av alla. Din e-post visas aldrig publikt.