Travel::Status::DE::IRIS - Interface to IRIS based web departure monitors

https://finalrewind.org/projects/Travel-Status-DE-IRIS/

Dependencies

Additional dependencies for building this module:

Note about Text::LevenshteinXS: This module is old and unmaintained, but appears to be packaged for slightly more distros than its successor Text::Levenshtein::XS. If it is not available for your distro (and you do not wish to build it), the following drop-in replacements are available:

To use them, run:

sed -i 's/Text::LevenshteinXS/Text::Levenshtein::XS/g' Build.PL lib/Travel/Status/DE/IRIS/Stations.pm

or

sed -i 's/Text::LevenshteinXS/Text::Levenshtein/g' Build.PL lib/Travel/Status/DE/IRIS/Stations.pm

Installation

From a release tarball:

perl Build.PL
./Build
sudo ./Build install

From git:

perl Build.PL
./Build
./Build manifest
sudo ./Build install

See also the Module::Build documentation.

You can then run man Travel::Status::DE::IRIS. This distribution also ships the script 'db-iris', see man db-iris.

Managing stations

Travel::Status::DE::IRIS needs a list of train stations to operate, which is located in share/stations.json. There are two recommended editing methods.

Automatic method, e.g. to incorporate changes from Open Data sources:

Manual method:

If the changes you made are suitable for inclusion in Travel::Status::DE::IRIS, please open a pull request afterwards.

Please only include stations which are usable with DB IRIS, that is, which have both DS100 and EVA numbers. If

curl -s https://iris.noncd.db.de/iris-tts/timetable/station/EVANUMBER

and

curl -s https://iris.noncd.db.de/iris-tts/timetable/station/DS100

return a <station> element with "name", "eva" and "ds100" attributes, you're good to go.

Note that although EVA numbers are often identical with UIC station IDs, there are stations where this is not the case.