The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

efa - unofficial efa.vrr.de command line client

SYNOPSIS

efa --from city stop --to city stop [ additional options ]
efa [ options ] from-city from-stop [ via-city via-stop ] to-city to-stop

VERSION

version 2.02

DESCRIPTION

efa is a command line client for the http://efa.vrr.de web interface. It sends the specified information to the online form and displays the results.

It should be noted that efa, although using the web interface of a local transport association, is able to look up connections all over Germany.

OPTIONS

--from city stop

Departure place

--to city stop

Arrival place

--via city stop

Travel via this place

In case you want stop to be an address or "point of interest", you can set it to 'addr:something' or 'poi:something'.

-t|--time|--depart hh:mm

Journey start time

-a|--arrive hh:mm

Journey end time (overrides --time/--depart)

-d|--date dd.mm.[yyyy]

Journey date

-b|--bike

Choose connections allowing to carry a bike

-e|--exclude transports

Exclude transports (comma separated list).

Possible transports: zug, s-bahn, u-bahn, stadtbahn, tram, stadtbus, regionalbus, schnellbus, seilbahn, schiff, ast, sonstige

-E|--extended-info

Display duration, ticket class and price for each route (if available)

-m|--max-change number

Print connections with at most number interchanges

-P|--prefer type

Prefer connections of type:

  • speed (default)

    The faster, the better

  • nowait

    Prefer connections with less interchanges

  • nowalk

    Prefer connections with less walking (at interchanges)

-p|--proximity

Take stops close to the stop/start into account and possibly use them instead

-i|--include type

Include connections using trains of type type, where type may be:

  • local (default)

    only take local trains ("Verbund-/Nahverkehrslinien"). Slow, but the cheapest method if you're not travelling long distance

  • ic

    Local trains + IC

  • ice

    All trains (local + IC + ICE)

-w|--walk-speed speed

Set your walking speed to speed. Accepted values: normal (default), fast, slow

-I|--ignore-info [ regex ]

Ignore additional information matching regex (default: /Fahrradmitnahme/)

If regex is not supplied, removes the default regex (-> nothing will be ignored)

--timeout seconds

Set timeout for HTTP requests. Default: 60 seconds.

--post key=value

Add key with value to the HTTP POST request sent to the EFA server. This can be used to use setting efa does not yet cover, like --post lineRestriction=400 to also show IC and ICE trains. Note that --post will be overridden by the standard efa options, such as --time

-v|--version

Print version information

EXIT STATUS

    0    Everything went well
    1    Invalid arguments, see error message
    2    Network error, unable to send request
    3    efa.vrr.de did not return any parsable data
    4    efa.vrr.de error: ambiguous input
    5    efa.vrr.de error: no connections found
    10   Unknown Travel::Routing::DE::VRR error
    255  Other internal error

CONFIGURATION

None.

DEPENDENCIES

This script requires perl 5.10 (or higher) with the following modules:

  • Class::Accessor

  • Exception::Class

  • LWP::UserAgent

  • XML::LibXML

BUGS AND LIMITATIONS

efa cannot handle Unicode in its arguments, use plain ASCII.

AUTHOR

Copyright (C) 2009,2010 by Daniel Friesel <derf@derf.homelinux.org>

LICENSE

  0. You just DO WHAT THE FUCK YOU WANT TO.