UNPKG

orgp

Version:

A class to use SPB ORGP methods

66 lines (37 loc) 1.62 kB
# orgp API to obtain data from [transport.orgp.spb.ru](http://transport.orgp.spb.ru). ## Installation `npm i orgp` Download and unzip feed.zip from [http://transport.orgp.spb.ru/Portal/transport/internalapi/gtfs/feed.zip](http://transport.orgp.spb.ru/Portal/transport/internalapi/gtfs/feed.zip) Information about General Transit Feed Specification at [https://developers.google.com/transit/gtfs/](https://developers.google.com/transit/gtfs/) ## Usage `let Orgp = require('orgp');` `let orgp = new Orgp('/path/to/your/feed', () => {` `let routes = orgp.getRoutes();` `console.log(routes);` `}` ## Tests `npm i -g mocha` `mocha test.js` If you get the timeout exceeded error try `mocha --timeout 5000 test.js` ##Methods * `orgp.getRoutes()` Returns all routes from GTFS feed * `orgp.getRouteById(id)` Returns route with passed `id`. If route not found returns `null`. * `orgp.getRoutesByQuery(query)` Returns array of routes with `short_name` that matches `query`. Returns `[]` if nothing matches `query`. * `orgp.getStops()` Returns all stops from GTFS feed * `orgp.getStopById()` Returns stop with passed `id`. If stop not found returns `null`. * `orgp.getNearestStops(radius, lattitude, longitude),` Returns array of all stops with distance to passed location (`lattitude`, `longitude`) less than `radius`. Returns `[]` if there no stops in this radius. * `orgp.getForecastByStopId(id, (err, result) => {` ` if(err) return;` ` console.log(result);` `})` Returns JSON answer from transport.orgp.spb.ru with transport forecast for stop with `id`.