2023-08-13 13:42:12 +00:00
|
|
|
# Bus Departures
|
|
|
|
|
|
|
|
Display bus departures for specific routes on specific stops.
|
2023-08-18 15:19:37 +00:00
|
|
|
|
|
|
|
Usage:
|
|
|
|
|
|
|
|
```shell
|
2023-08-24 20:21:11 +00:00
|
|
|
./busdepartures -c=CONFIGFILE [ -p=PORT]
|
2023-08-18 15:19:37 +00:00
|
|
|
```
|
|
|
|
|
2023-08-24 20:21:11 +00:00
|
|
|
## Configuration
|
|
|
|
|
|
|
|
The configuration file describes the list of quays (or stops) and the routes for
|
|
|
|
each quay that you're interested in. Each quay in your configuration should look
|
|
|
|
something like this:
|
|
|
|
|
|
|
|
```toml
|
|
|
|
[[quays]]
|
|
|
|
id = "NL:Q:40004001"
|
|
|
|
name = "Centraal Station"
|
|
|
|
town = "Arnhem"
|
|
|
|
routes_of_interest = [
|
|
|
|
{"short_name" = "51", "long_name" = "Wageningen"},
|
|
|
|
{"short_name" = "352", "long_name" = "Wageningen"},
|
|
|
|
]
|
|
|
|
```
|
|
|
|
|
|
|
|
Note that the `[[quay]]` syntax is TOML's way of describing a list, meaning you
|
|
|
|
can keep repeating the example above in your configuration to add multiple
|
|
|
|
quays. If you would like an example, see the `config.toml.example` file. It
|
|
|
|
lists multiple quays.
|
|
|
|
|
|
|
|
### Finding the information required for configuration
|
|
|
|
|
|
|
|
1. Open [the Connexxion halte-informatie page](https://www.connexxion.nl/nl/resultaten/halte-informatie).
|
|
|
|
2. Open your browser's developer tooling and go to the 'network' tab.
|
|
|
|
3. Search for your stop on the website and open it.
|
|
|
|
4. In the network tab, there should be a request labeled 'departures'. Open it.
|
|
|
|
|
|
|
|
The response is in JSON format and contains all the information you need.
|
|
|
|
|
|
|
|
- The quay ID is almost exactly the `stopid`, just replace the `:S:` with `:Q:`.
|
|
|
|
- The `name` and `town` are just below the quay ID.
|
|
|
|
- All the route information you'll need is available in the `departures` key.
|
|
|
|
- `departures.X.tripdata.route.route_short_name` is what you'll enter as the
|
|
|
|
`short_name`.
|
|
|
|
- `departures.stop_headsign` is what you'll enter as the `long_name`.
|
|
|
|
|
|
|
|
And that's it. Add the information you found to your `config.toml`, as described
|
|
|
|
above and start the application.
|