-
Birte Kristina Friesel authoredBirte Kristina Friesel authored
HAFAS.pm 21.32 KiB
package Travel::Status::DE::HAFAS;
# vim:foldmethod=marker
use strict;
use warnings;
use 5.014;
use utf8;
no if $] >= 5.018, warnings => 'experimental::smartmatch';
use Carp qw(confess);
use DateTime;
use DateTime::Format::Strptime;
use Digest::MD5 qw(md5_hex);
use Encode qw(decode encode);
use JSON;
use LWP::UserAgent;
use Travel::Status::DE::HAFAS::Message;
use Travel::Status::DE::HAFAS::Polyline qw(decode_polyline);
use Travel::Status::DE::HAFAS::Journey;
use Travel::Status::DE::HAFAS::StopFinder;
our $VERSION = '3.01';
# {{{ Endpoint Definition
my %hafas_instance = (
DB => {
stopfinder => 'https://reiseauskunft.bahn.de/bin/ajax-getstop.exe',
mgate => 'https://reiseauskunft.bahn.de/bin/mgate.exe',
name => 'Deutsche Bahn',
productbits => [qw[ice ic_ec d regio s bus ferry u tram ondemand]],
salt => 'bdI8UVj4' . '0K5fvxwf',
request => {
client => {
id => 'DB',
v => '20100000',
type => 'IPH',
name => 'DB Navigator',
},
ext => 'DB.R21.12.a',
ver => '1.15',
auth => {
type => 'AID',
aid => 'n91dB8Z77' . 'MLdoR0K'
},
},
},
NAHSH => {
mgate => 'https://nah.sh.hafas.de/bin/mgate.exe',
stopfinder => 'https://nah.sh.hafas.de/bin/ajax-getstop.exe',
name => 'Nahverkehrsverbund Schleswig-Holstein',
productbits => [qw[ice ice ice regio s bus ferry u tram ondemand]],
request => {
client => {
id => 'NAHSH',
v => '3000700',
type => 'IPH',
name => 'NAHSHPROD',
},
ver => '1.16',
auth => {
type => 'AID',
aid => 'r0Ot9FLF' . 'NAFxijLW'
},
},
},
NASA => {
mgate => 'https://reiseauskunft.insa.de/bin/mgate.exe',