diff options
| author | Daniel Friesel <daniel.friesel@uos.de> | 2020-01-23 18:18:50 +0100 | 
|---|---|---|
| committer | Daniel Friesel <daniel.friesel@uos.de> | 2020-01-23 18:18:50 +0100 | 
| commit | 8157f3885496ed6949152f17b19ad4090217cc37 (patch) | |
| tree | 450dc976e6872d1bc2450d119ae3e0514dfca23a | |
| parent | 75363c35cc84f6411fbb73f0c380a41c5e55fdd3 (diff) | |
JSON Status API: Add experimental and undocumented nextStops key
| -rwxr-xr-x | lib/Travelynx.pm | 26 | 
1 files changed, 26 insertions, 0 deletions
| diff --git a/lib/Travelynx.pm b/lib/Travelynx.pm index f81375c..97c9384 100755 --- a/lib/Travelynx.pm +++ b/lib/Travelynx.pm @@ -3193,8 +3193,34 @@ sub startup {  					id   => $status->{train_id},  				},  				actionTime => $status->{timestamp}->epoch, +				nextStops  => [],  			}; +			for my $stop ( @{ $status->{route_after} // [] } ) { +				if ( $status->{arr_name} and $stop->[0] eq $status->{arr_name} ) +				{ +					last; +				} +				push( +					@{ $ret->{nextStops} }, +					{ +						name             => $stop->[0], +						scheduledArrival => $stop->[1]{sched_arr} +						? $stop->[1]{sched_arr}->epoch +						: undef, +						realArrival => $stop->[1]{rt_arr} +						? $stop->[1]{rt_arr}->epoch +						: undef, +						scheduledDeparture => $stop->[1]{sched_dep} +						? $stop->[1]{sched_dep}->epoch +						: undef, +						realDeparture => $stop->[1]{rt_dep} +						? $stop->[1]{rt_dep}->epoch +						: undef, +					} +				); +			} +  			if ( $status->{dep_eva} ) {  				my @station_descriptions  				  = Travel::Status::DE::IRIS::Stations::get_station( | 
