Till senaste kommentaren
Detta inlägg är gammalt och kan innehålla inaktuell information.

Mellanstationer saknas i trafikverkets API

Hej, försöker få fram SJ tåg som avgår från STHLM C och stannar i Bålsta. Tåg 171 till Göteborg gör tex detta, men i listan ViaToLocation är första station Västerås. ViaFromLocation är tom. Söker man en biljett på SJ hemsida för sträckan så blir man föreslagen 171, så ett stopp är ju officiellt inplanerat.

Använder trafikverkets API v1.3 och "TrainAnnouncement", men hur får man fram alla stationer ett tåg faktiskt stannar vid?

Kommentarer

  • Hej Anders,
    Jag har inte hittat något bra sätt att få ut den typen av information via Trafikverkets API. Jag har ställt frågan direkt till Trafikverket och väntar på svar, återkopplar när jag vet mer.

    Kan resrobot - reseplanerare vara ett alternativ för dig? Det finns en parameter där som heter passlist som listar alla mellanliggande hållplatser.

    https://www.trafiklab.se/api/resrobot-reseplanerare/sok-resa

    Hälsningar
    Kenneth
    Team Trafiklab
  • Hej Anders,
    Nu har jag fått lite mer information från Trafikverket. Objektet du ska leta efter är LocationSignature.

    Ett exempel på frågeställningen; gällande tåg 8188 som körs idag 7/11 sorterade på annonserad tidpunkt (endast stationer som har resandeutbyte och annonseras är inkluderade):

    <REQUEST>
    <LOGIN authenticationkey="" />
    <QUERY objecttype="TrainAnnouncement" runtime="true" orderby="AdvertisedTimeAtLocation">
    <FILTER>
    <AND>
    <EQ name="AdvertisedTrainIdent" value="8188" />
    <EQ name="ScheduledDepartureDateTime" value="2017-11-07T00:00:00"/>
    <EQ name="Advertised" value="true" />
    </AND>
    </FILTER>
    <INCLUDE>ActivityType</INCLUDE>
    <INCLUDE>AdvertisedTimeAtLocation</INCLUDE>
    <INCLUDE>LocationSignature</INCLUDE>
    </QUERY>
    </REQUEST>

    http://api.trafikinfo.trafikverket.se/API hittar du mer dokumentation om trafikverkets API:er

    Hälsningar
    Kenneth
    Team Trafiklab
  • Jag inser att jag är otydlig i min fråga... Jag försöker egentligen lista alla (SJ) tåg man kan ta från Stockholm och kliva av i Bålsta/Enköping

    <REQUEST>
    <LOGIN authenticationkey="openapiconsolekey" />
    <QUERY objecttype="TrainAnnouncement" runtime="true" orderby="AdvertisedTimeAtLocation">
    <FILTER>
    <AND>
    <EQ name="ActivityType" value="Avgang" />
    <OR>
    <EQ name="ToLocation.LocationName" value="Ep" />
    <EQ name="ViaToLocation.LocationName" value="Ep" />
    </OR>
    <EQ name="LocationSignature" value="Cst" />
    <OR>
    <AND>
    <GT name="AdvertisedTimeAtLocation" value="$dateadd(-00:15:00)" />
    <LT name="AdvertisedTimeAtLocation" value="$dateadd(14:00:00)" />
    </AND>
    <AND>
    <LT name="AdvertisedTimeAtLocation" value="$dateadd(00:30:00)" />
    <GT name="EstimatedTimeAtLocation" value="$dateadd(-00:15:00)" />
    </AND>
    </OR>
    </AND>
    </FILTER>

    <INCLUDE>AdvertisedTimeAtLocation</INCLUDE>
    <INCLUDE>LocationSignature</INCLUDE>
    <INCLUDE>AdvertisedTrainIdent</INCLUDE>

    <INCLUDE>ToLocation</INCLUDE>
    <INCLUDE>ViaToLocation</INCLUDE>
    </QUERY>
    </REQUEST>

    Kör jag denna fråga nu 14:00, listas inte tex tåget till Göteborg 15:25. Borde jag ha med något mer i min fråga på till/viastation?
  • Hej Anders,
    Är det något sånt här du försöker göra? 

    http://api.trafikinfo.trafikverket.se/Forum/Details/590c63620bb221139c37bfb1

    Hälsningar
    Kenneth
    Team Trafiklab

Kommentera eller skriv ett nytt inlägg

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