NAME
Travel::Status::DE::IRIS::Result - Information about a single arrival/departure received by Travel::Status::DE::IRIS
SYNOPSIS
for my $result ($status->results) {
printf(
"At %s: %s to %s from platform %s\n",
$result->time,
$result->line,
$result->destination,
$result->platform,
);
}
VERSION
version 0.02
DESCRIPTION
Travel::Status::DE::IRIs::Result describes a single arrival/departure as obtained by Travel::Status::DE::IRIS. It contains information about the platform, time, route and more.
METHODS
ACCESSORS
- $result->arrival
-
DateTime(3pm) object for the arrival date and time. undef if the train starts here. Contains realtime data if available.
- $result->classes
-
List of characters indicating the class(es) of this train, may be empty. This is slighty related to type, but more generic. At this time, the following classes are known:
D Non-DB train. Usually local transport D,F Non-DB train, long distance transport F "Fernverkehr", long-distance transport N "Nahverkehr", local and regional transport S S-Bahn, rather slow local/regional transport
- $result->date
-
Scheduled departure date if available, arrival date otherwise (e.g. if the train ends here). String in dd.mm.YYYY format. Does not contain realtime data.
- $result->datetime
-
DateTime(3pm) object for departure if available, arrival otherwise. Does not contain realtime data.
- $result->delay
-
Estimated delay in minutes (integer number). undef when no realtime data is available, negative if a train ends at the specified station and arrives / arrived early.
- $result->delay_messages
-
Get all delay messages entered for this train. Returns a list of [datetime, string] listrefs sorted by newest first. The datetime part is a DateTime(3pm) object corresponding to the point in time when the message was entered, the string is the message. If a delay reason was entered more than once, only its most recent record will be returned.
- $result->departure
-
DateTime(3pm) object for the departure date and time. undef if the train ends here. Contains realtime data if available.
- $result->destination
-
Aleas for route_end.
- $result->info
-
List of information strings. Contains both reasons for delays (which may or may not be up-to-date) and generic information such as missing carriages or broken toilets.
- $result->is_cancelled
-
True if the train was cancelled, false otherwise. Note that this does not contain information about replacement trains or route diversions.
- $result->line
-
Train type with line (such as
S 1
) if available, type with number (suc asRE 10126
) otherwise. - $result->line_no
-
Number of the line, undef if unknown. Seems to be set only for S-Bahn and similar trains. Regional and long-distance trains such as
RE 10126
usually do not have this field set, even if they have a common line number (RE 1
in this case).Example: For the line
S 1
, line_no will return1
. - $result->messages
-
Get all qos and delay messages ever entered for this train. Returns a list of [datetime, string] listrefs sorted by newest first. The datetime part is a DateTime(3pm) object corresponding to the point in time when the message was entered, the string is the message. Note that neither duplicates nor superseded messages are filtered from this list.
- $result->origin
-
Alias for route_start.
- $result->qos_messages
-
Get all current qos messages for this train. Returns a list of [datetime, string] listrefs sorted by newest first. The datetime part is a DateTime(3pm) object corresponding to the point in time when the message was entered, the string is the message. Contains neither superseded messages nor duplicates (in case of a duplicate, only the most recent message is present)
- $result->platform
-
Arrivel/departure platform as string, undef if unknown. Note that this is not neccessarily a number, platform sections may be included (e.g.
3a/b
). - $result->raw_id
-
Raw ID of the departure, e.g.
-4642102742373784975-1401031322-6
. The first part appears to be this train's UUID (can be tracked across multiple stations), the second the YYmmddHHMM departure timestamp at its start station, and the third the count of this station in the train's schedule (in this case, it's the sixth from thestart station).About half of all departure IDs do not contain the leading minus (
-
) seen in this example. The reason for this is unknown.This is a developer option. It may be removed without prior warning.
- $result->realtime_xml
-
XML::LibXML::Node(3pm) object containing all realtime data. undef if none is available.
This is a developer option. It may be removed without prior warning.
- $result->route
-
List of all stations served by this train, according to its schedule. Does not contain realtime data.
- $result->route_end
-
Name of the last station served by this train.
- $result->route_interesting
-
List of up to three "interesting" stations served by this train, subset of route_post. Usually contains the next stop and one or two major stations after that. Does not contain realtime data.
- $result->route_pre
-
List of station names the train passed (or will have passed) befoe this stop.
- $result->route_post
-
List of station names the train will pass after this stop.
- $result->route_start
-
Name of the first station served by this train.
- $result->sched_arrival
-
DateTime(3pm) object for the scheduled arrival date and time. undef if the train starts here.
- $result->sched_departure
-
DateTime(3pm) object for the scehduled departure date and time. undef if the train ends here.
- $result->sched_route
-
List of all stations served by this train, according to its schedule. Does not contain realtime data.
- $result->sched_route_end
-
Name of the last station served by this train according to its schedule.
- $result->sched_route_pre
-
List of station names the train is scheduled to pass before this stop.
- $result->sched_route_post
-
List of station names the train is scheduled to pass after this stop.
- $result->sched_route_start
-
Name of the first station served by this train according to its schedule.
- $result->start
-
DateTime(3pm) object for the scheduled start of the train on its route (i.e. the departure time at its first station).
- $result->stop_no
-
Number of this stop on the train's route. 1 if it's the start station, 2 for the stop after that, and so on.
- $result->time
-
Scheduled departure time if available, arrival time otherwise (e.g. if the train ends here). String in HH:MM format. Does not contain realtime data.
- $result->train
-
Alias for line.
- $result->train_id
-
Numeric ID of this train. Seems to be unique for a year and trackable across stations.
- $result->train_no
-
Number of this train, unique per day. E.g.
2225
forIC 2225
. - $result->type
-
Type of this train, e.g.
S
for S-Bahn,RE
for Regional-Express,ICE
for InterCity-Express.
INTERNAL
- $result = Travel::Status::DE::IRIS::Result->new(%data)
-
Returns a new Travel::Status::DE::IRIS::Result object. You usually do not need to call this.
MESSAGES
A dump of all messages entered for the result is available. Each message consists of a timestamp (when it was entered), a type (d for delay reasons, q for other train-related information) and a value (numeric ID).
At the time of this writing, the following messages are known:
- d 2 : "Polizeiliche Ermittlung"
- d 3 : "Feuerwehreinsatz neben der Strecke"
- d 5 : "Ärztliche Versorgung eines Fahrgastes"
- d 6 : "Betätigen der Notbremse"
-
Source: Correlation between IRIS and DB RIS (bahn.de).
- d 7 : "Personen im Gleis"
- d 8 : "Notarzteinsatz am Gleis"
- d 10 : "Ausgebrochene Tiere im Gleis"
- d 11 : "Unwetter"
- d 15 : "Beeinträchtigung durch Vandalismus"
- d 16 : "Entschärfung einer Fliegerbombe"
- d 17 : "Beschädigung einer Brücke"
- d 18 : "Umgestürzter Baum im Gleis"
- d 19 : "Unfall an einem Bahnübergang"
- d 20 : "Tiere im Gleis"
- d 21 : "Warten auf weitere Reisende"
- d 22 : "Witterungsbedingte Störung"
- d 23 : "Feuerwehreinsatz auf Bahngelände"
- d 24 : "Verspätung aus dem Ausland"
- d 25 : "Warten auf verspätete Zugteile"
- d 28 : "Gegenstände im Gleis"
- d 31 : "Bauarbeiten"
- d 32 : "Verzögerung beim Ein-/Ausstieg"
- d 33 : "Oberleitungsstörung"
- d 34 : "Signalstörung"
- d 35 : "Streckensperrung"
- d 36 : "Technische Störung am Zug"
- d 38 : "Technische Störung an der Strecke"
- d 39 : "Anhängen von zusätzlichen Wagen"
- d 40 : "Stellwerksstörung/-ausfall"
- d 41 : "Störung an einem Bahnübergang"
- d 42 : "Außerplanmäßige Geschwindigkeitsbeschränkung"
- d 43 : "Verspätung eines vorausfahrenden Zuges"
- d 44 : "Warten auf einen entgegenkommenden Zug"
- d 45 : "Überholung durch anderen Zug"
- d 46 : "Warten auf freie Einfahrt"
- d 47 : "Verspätete Bereitstellung"
- d 48 : "Verspätung aus vorheriger Fahrt"
- d 55 : "Technische Störung an einem anderen Zug"
-
Source: Correlation between IRIS and DB RIS (bahn.de).
- q 80 : "Abweichende Wagenreihung"
-
Verified by https://iris.noncd.db.de/irisWebclient/Configuration.
- q 82 : "Mehrere Wagen fehlen"
-
Verified by https://iris.noncd.db.de/irisWebclient/Configuration.
- q 83 : "Fehlender Zugteil"
-
Verified by https://iris.noncd.db.de/irisWebclient/Configuration.
- q 84 : "Zug verkehrt richtig gereiht"
-
Obsoletes messages 80, 82, 83, 85. Verified by https://iris.noncd.db.de/irisWebclient/Configuration.
- q 85 : "Ein Wagen fehlt"
-
Verified by https://iris.noncd.db.de/irisWebclient/Configuration.
- q 86 : "Keine Reservierungsanzeige"
-
Verified by https://iris.noncd.db.de/irisWebclient/Configuration.
- q 87 : "Einzelne Wagen ohne Reservierungsanzeige"
-
Verified by https://iris.noncd.db.de/irisWebclient/Configuration.
- q 88 : "Keine Qualitätsmängel"
-
Obsoletes messages 80, 82, 83, 85, 86, 87, 90, 91, 92, 93, 96, 97, 98. Verified by https://iris.noncd.db.de/irisWebclient/Configuration.
- q 89 : "Reservierungen sind wieder vorhanden"
-
Obsoletes messages 86, 87. Verified by https://iris.noncd.db.de/irisWebclient/Configuration.
- q 90 : "Kein Bordrestaurant/Bordbistro"
-
Verified by https://iris.noncd.db.de/irisWebclient/Configuration.
- q 91 : "Eingeschränkte Fahrradmitnahme"
-
Verified by https://iris.noncd.db.de/irisWebclient/Configuration.
Might also mean "Keine Fahrradmitnahme" (source: frubi).
- q 92 : "Klimaanlage in einzelnen Wagen ausgefallen"
-
Verified by https://iris.noncd.db.de/irisWebclient/Configuration.
Might also mean "Rollstuhlgerechtes WC in einem Wagen ausgefallen" (source: frubi).
- q 93 : "Fehlende oder gestörte behindertengerechte Einrichtung"
-
Verified by https://iris.noncd.db.de/irisWebclient/Configuration. Might also mean "Kein rollstuhlgerechtes WC" (source: frubi).
- q 96 : "Der Zug ist überbesetzt"
-
Verified by https://iris.noncd.db.de/irisWebclient/Configuration.
- q 97 : "Der Zug ist überbesetzt"
-
Verified by https://iris.noncd.db.de/irisWebclient/Configuration.
- q 98 : "Sonstige Qualitätsmängel"
-
Verified by https://iris.noncd.db.de/irisWebclient/Configuration. Might also mean "Kein rollstuhlgerechter Wagen" (source: frubi).
- d 99 : "Verzögerungen im Betriebsablauf"
DIAGNOSTICS
None.
DEPENDENCIES
BUGS AND LIMITATIONS
Unknown.
SEE ALSO
Travel::Status::DE::IRIS(3pm).
AUTHOR
Copyright (C) 2013-2014 by Daniel Friesel <derf@finalrewind.org>
LICENSE
This module is licensed under the same terms as Perl itself.