Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Access Edinburgh's BusTracker via Ruby
Ruby
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib
test
.gitignore
MIT-LICENSE
README.md
Rakefile
bus_tracker.gemspec

README.md

Bustracker

Edinburgh BusTracker via Ruby.

An attempt at providing an object-based interface for interacting with the BusTracker data.

Installation

gem install bus_tracker

Examples

Service Information

Find all of the bus stops for a particular service: service = BusTracker.service('N30')

service.number
#=> 'N30'

After fetching a service, you can also pull up information about each stop for that service:

bus_stop = service.bus_stops.first

bus_stop.code
> '36232545'

bus_stop.name
 > 'Castle Street'

bus_stop.latitude
 > "55.951084136963"
bus_stop.longitude
 > "-3.2017660140991"

bus_stop.service_numbers
 > ["1", "3", "3A", "4", "22", "25", "X25", "30", "33", "34", "44", "44A", "N22", "N25", "N30", "N44"]

Departures

If you know the code for a bus stop you can fetch the associated departures. This is the same information that you'd see on the bus tracker boards, but instantiated as their own departure objects. stop = BusTracker.bus_stop('36232545') departure = stop.departures.first

departure.service_number
#=> 30
departure.destination
#=> MUSSELBURGH
departure.due
#=> 7

For any BusTracker::BusStop instance, you can fetch the latest departure times: stop.fetch_departures! stop.departures.first.due #=> 5

Copyright (c) 2010 [Mark Connell], released under the MIT license

Something went wrong with that request. Please try again.