I’m working the transport open data hub as a hobbyist. I’ve been wanting to track trains and their delays, but I’ve run into some problems. My goal is to collect data such as trains per hour or average delay in real time.
Firstly, I’m struggling to understand Service ID in calendar.txt. To my understanding it tells I can use it to tell which days a Trip will run. But I am confused by the Start-Date and End-Date fields. Some have a Start Date and End Date of both 20250523, which has now passed if it means 23 May 2025. Does this mean I will need to constantly redownload the GTFS-R bundle?
Secondly, according to the documentation it seems to me that the Trip Updates API can provide different types of messages, such as “Insert Trip”, “Replacement” and “Delay”. A lot of these provide overlapping information so I’m confused as to which one to use; I’m new to using protobuf, so would I need to specify which message type I would like.
Sorry if these sound like very basic questions, but I’m grateful to have any help,
GTFS is what contains calendar.txt. this is updated regularly to consider timetable changes, planned maintenance, etc.
GTFS-R is using protobuf. you can likely find someone who has a converter from GTFS-R to json or another format. this is updated every 10 seconds or so.
GTFS gives static files that need to be updated regularly for track work / diversions
GTFS-R gives protobuf messages with live data
I’ve already found a way to convert protobuf to json, but would you know if each GTFS-R API can give more than one type of message?
From my understanding of the Syd Trains documentation, Trip Updates API can provide different types of messages, such as “Insert Trip”, “Replacement” and “Delay”. Is there a way to request a specific type of message.