mirror of
https://github.com/public-transport/db-vendo-client.git
synced 2025-02-23 23:29:35 +02:00
the endpoint which is discussed here is departures not journeys. If you use journeys with this parameters, you get mad with debugging.
163 lines
3.1 KiB
Markdown
163 lines
3.1 KiB
Markdown
# `departures(station, [opt])`
|
|
|
|
`station` must be in one of these formats:
|
|
|
|
```js
|
|
// a station ID, in a format compatible to the profile you use
|
|
'900000013102'
|
|
|
|
// an FPTF `station` object
|
|
{
|
|
type: 'station',
|
|
id: '900000013102',
|
|
name: 'foo station',
|
|
location: {
|
|
type: 'location',
|
|
latitude: 1.23,
|
|
longitude: 3.21
|
|
}
|
|
}
|
|
```
|
|
|
|
With `opt`, you can override the default options, which look like this:
|
|
|
|
```js
|
|
{
|
|
when: new Date(),
|
|
direction: null, // only show departures heading to this station
|
|
duration: 10 // show departures for the next n minutes
|
|
}
|
|
```
|
|
|
|
## Response
|
|
|
|
*Note:* As stated in the [*Friendly Public Transport Format* `1.0.1`](https://github.com/public-transport/friendly-public-transport-format/tree/1.0.1), the `when` field includes the current delay. The `delay` field, if present, expresses how much the former differs from the schedule.
|
|
|
|
You may pass the `journeyId` field into [`journeyLeg(ref, lineName, [opt])`](journey-leg.md) to get details on the vehicle's journey.
|
|
|
|
As an example, we're going to use the [VBB profile](../p/vbb):
|
|
|
|
```js
|
|
const createClient = require('hafas-client')
|
|
const vbbProfile = require('hafas-client/p/vbb')
|
|
|
|
const client = createClient(vbbProfile)
|
|
|
|
// S Charlottenburg
|
|
client.departures('900000024101', {duration: 3})
|
|
.then(console.log)
|
|
.catch(console.error)
|
|
```
|
|
|
|
The response may look like this:
|
|
|
|
```js
|
|
[ {
|
|
journeyId: '1|31431|28|86|17122017',
|
|
trip: 31431,
|
|
station: {
|
|
type: 'station',
|
|
id: '900000024101',
|
|
name: 'S Charlottenburg',
|
|
location: {
|
|
type: 'location',
|
|
latitude: 52.504806,
|
|
longitude: 13.303846
|
|
},
|
|
products: {
|
|
suburban: true,
|
|
subway: false,
|
|
tram: false,
|
|
bus: true,
|
|
ferry: false,
|
|
express: false,
|
|
regional: true
|
|
}
|
|
},
|
|
when: '2017-12-17T19:32:00.000+01:00',
|
|
delay: null
|
|
line: {
|
|
type: 'line',
|
|
id: '18299',
|
|
name: 'S9',
|
|
public: true,
|
|
mode: 'train',
|
|
product: 'suburban',
|
|
symbol: 'S',
|
|
nr: 9,
|
|
metro: false,
|
|
express: false,
|
|
night: false,
|
|
productCode: 0,
|
|
operator: {
|
|
type: 'operator',
|
|
id: 's-bahn-berlin-gmbh',
|
|
name: 'S-Bahn Berlin GmbH'
|
|
}
|
|
},
|
|
direction: 'S Spandau'
|
|
}, {
|
|
journeyId: '1|30977|8|86|17122017',
|
|
trip: 30977,
|
|
station: { /* … */ },
|
|
when: null,
|
|
delay: null,
|
|
cancelled: true,
|
|
line: {
|
|
type: 'line',
|
|
id: '16441',
|
|
name: 'S5',
|
|
public: true,
|
|
mode: 'train',
|
|
product: 'suburban',
|
|
symbol: 'S',
|
|
nr: 5,
|
|
metro: false,
|
|
express: false,
|
|
night: false,
|
|
productCode: 0,
|
|
operator: { /* … */ }
|
|
},
|
|
direction: 'S Westkreuz'
|
|
}, {
|
|
journeyId: '1|28671|4|86|17122017',
|
|
trip: 28671,
|
|
station: {
|
|
type: 'station',
|
|
id: '900000024202',
|
|
name: 'U Wilmersdorfer Str.',
|
|
location: {
|
|
type: 'location',
|
|
latitude: 52.506415,
|
|
longitude: 13.306777
|
|
},
|
|
products: {
|
|
suburban: false,
|
|
subway: true,
|
|
tram: false,
|
|
bus: false,
|
|
ferry: false,
|
|
express: false,
|
|
regional: false
|
|
}
|
|
},
|
|
when: '2017-12-17T19:35:00.000+01:00',
|
|
delay: 0,
|
|
line: {
|
|
type: 'line',
|
|
id: '19494',
|
|
name: 'U7',
|
|
public: true,
|
|
mode: 'train',
|
|
product: 'subway',
|
|
symbol: 'U',
|
|
nr: 7,
|
|
metro: false,
|
|
express: false,
|
|
night: false,
|
|
productCode: 1,
|
|
operator: { /* … */ }
|
|
},
|
|
direction: 'U Rudow'
|
|
} ]
|
|
```
|