I don't know if VBB used this, but most transit agencies publish their data in two standard formats these days GTFS for static schedules and GTFS-real time for real-time data. Any application you build around these formats would immediately scale to pretty much every big city.
Google maps and Apple maps provide transit directions in their apps using GTFS and GTFS real time data (partly the reason why Apple maps was able to add transit directions feature so easily - Google had to deal with the transit agencies years before that and convinced them to publish data in open source standard formats).
VBB has been publishing GTFS (Static/Schedule) data for almost 10 years now. [1][2]
But there is no (truly open) realtime data (e.g. GTFS Realtime or SIRI) available because their API [3]
- requires signing a draconian contract (e.g. ridiculous liability clauses, no permission to pass the data on in any form), and
- API works individual vehicles/trips, so you'd have to poll every single one out there to get the equivalent of a GTFS-RT dataset.
There is an unofficial API though [4][5] that is de-facto open, and I have built a tool that pools the data and creates a GTFS-RT feed. [6]
I'm a bit curious which city you live in, because the majority major cities(at least in the US) publish both GTFS and GTFS real time. This is how Google(and other applications) gather the data. Does Google Maps provide real time data for transit? If not, you may want to get in touch with your cities transit service and inquire why not. I was part of a team that did GTFS(not real time) for a small area, and it was not incredibly expensive. Most of the data the transit service already has and its usually just a matter of doing some transformations on the data into the new format.
Scaling a useful real-time transit app across cities isn't simple. Google Maps, after 10 years, now has GTFS for pretty much anywhere, but real-time data hasn't converged to a standard yet. Not to mention many systems that do publish GTFS don't have or don't publish real-time.
I love Google maps but I don't think Google has any edge over other map services in transit API integration (partly because of what they did).
Pretty much every major transit agency publishes their schedule in two standard formats these days: GTFS for static scheduled and GTFS real-time for real-timr info. The G used to stand for Google before it was generally adapted and now it stands for general. All apps use the same data for showing transit feeds.
There are some exceptions, such as cities where the transit agency has an exclusive agreement with Google maps but that's becoming there.
There's a niche area where some apps focus solely on transit, adding a lot more data or integrating non standard custom APIs. Transit (which I love, sick UI) https://transitapp.com/ and CityMapper are two of them.
I'll throw out the the GTFS transit standard involves publishing zipped CSVs representing your DB tables regularly. There are nice things about it and downsides IMO. This is how google map's transit directions function -- they rely on agencies to publish their schedules regularly in zipped CSVs I think.
One downside is that dev experience is pretty bad in my opinion. It took me years of fiddling in my free time to realize that if you happen to try to use the CSVs near a schedule change, you don't know what data you're missing, or that you're missing data, until you go to use it. My local agency doesn't publish historical CSVs so if you just missed that old CSV and need it, you're relying on the community to have a copy somewhere. Similarly, if a schedule change just happened but you failed to download the CSV, you don't know until you go to match up IDs in the APIs.
GTFS and GTFS-RT definitely work, but in practice it seems each transit agency implements them a little differently.
I'm actually a fan of the HERE Transit API. They've done the work of interfacing with a bunch of providers, and you can query their whole dataset with a REST API. Unfortunately it's proprietary and only free at small volumes. But I found it much easier to hook up than working directly with a transit agency.
That said, their coverage can be a bit random. For example, I ended up having to do direct GTFS-RT anyway because HERE doesn't seem to have real-time data for NYC subways.
I believe that most major cities' transit agencies are now creating GTFS feeds[1], which can be consumed by a variety of apps and services, like Transit and Citymapper. These apps are available in hundreds of cities around the world. They also have the advantage of having millions of dollars in venture funding behind them, which I'm sure helps expansion :)
Many public transit agencies provide both static and real-time data.
- static data often is sharing using the "GTFS" specification, which includes stop locations, route geometries, scheduled trips, etc. See http://gtfs.org/
- real-time data is shared using a variety of specifications, and typically includes vehicle locations, service alerts, and other notifications from the agency
The static kind of data can certainly be cached for local use. Try browsing and downloading some from the Transitland open transit data platform and its API: https://transit.land
To achieve this, Google has introduced the GTFS (General Transit Feed Specification) format [1] which is becoming the preferred way to publish transit data. Hundreds of transit agencies around the world are publishing their GTFS feeds, enabling many hackers around the world to make applications that consume this data and improve users' travel experience.
Thanks! Turns out the MTA does keep a pretty detailed schedule (not that they manage to stick to it much, these days) in the GTFS format, so it's not hard to compute travel times client-side. As a plus, GTFS seems pretty-widely used, meaning it shouldn't be so hard to port this to other transit systems!
It has all the bus stops and times for applications to use. Metros usually generate them to send to google for their app but they sometimes also publish them online for people to use.
Creator here - since 2014, development is being done at geOps where I am currently working at. geOps is also providing the entire infrastructure. We are constantly looking for more static or real time feeds.
We are using the same method as the VBB - interpolated timetable data augmented with station-based delay-information where available.
Typically they do not. The Agencies _might_ submit GTFS data, but rarely do any of these vendors provide real time data in GTFS-RT that Google/App and other would need.
I find commercial apps like transit and moveit are only willing to work with bigger cities, and have very little interest in smaller agencies.
Google maps and Apple maps provide transit directions in their apps using GTFS and GTFS real time data (partly the reason why Apple maps was able to add transit directions feature so easily - Google had to deal with the transit agencies years before that and convinced them to publish data in open source standard formats).
reply