train: 950002,0,4
Wed Sep 23 17:06:39 2026 2026-09-23T17:06:39Z plat dest scheduled estimated __323905 Stations on the Belgrave and Lilydale lines will be affected by temporary car park closures, platform closures and changes to pedestrian access at select times, due to works as part of the Level Crossing Removal Project and other maintenance works. ** current, _* Later today, __ in the future Final stop Flinders Street
1 1078 Glen Waverley Station 2026-09-23T19:27:00Z 05:27:00 140m21s 8421 no est disruptions 323905
1 1190 Syndal Station 2026-09-23T19:29:00Z 05:29:00 142m21s 8541 no est disruptions 323905
1 1137 Mount Waverley Station 2026-09-23T19:32:00Z 05:32:00 145m21s 8721 no est disruptions 323905
1 1105 Jordanville Station 2026-09-23T19:34:00Z 05:34:00 147m21s 8841 no est disruptions 323905
1 1096 Holmesglen Station 2026-09-23T19:36:00Z 05:36:00 149m21s 8961 no est disruptions 323905
1 1058 East Malvern Station 2026-09-23T19:39:00Z 05:39:00 152m21s 9141 no est disruptions 323905
1 1051 Darling Station 2026-09-23T19:41:00Z 05:41:00 154m21s 9261 no est disruptions 323905
1 1077 Glen Iris Station 2026-09-23T19:43:00Z 05:43:00 156m21s 9381 no est disruptions 323905
1 1075 Gardiner Station 2026-09-23T19:45:00Z 05:45:00 158m21s 9501 no est disruptions 323905
1 1195 Tooronga Station 2026-09-23T19:47:00Z 05:47:00 160m21s 9621 no est disruptions 323905
1 1110 Kooyong Station 2026-09-23T19:49:00Z 05:49:00 162m21s 9741 no est disruptions 323905
1 1094 Heyington Station 2026-09-23T19:51:00Z 05:51:00 164m21s 9861 no est disruptions 323905
1 1030 Burnley Station 2026-09-23T19:54:00Z 05:54:00 167m21s 10041 no est disruptions 323905
1 1059 East Richmond Station 2026-09-23T19:56:00Z 05:56:00 169m21s 10161 no est disruptions 323905
7 1162 Richmond Station 2026-09-23T19:58:00Z 05:58:00 171m21s 10281 no est disruptions 323905
3 1071 Flinders Street Station 2026-09-23T20:02:00Z 06:02:00 175m21s 10521 no est disruptions 323905
$perl_scalar = { 'departures' => [ { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 1, 'direction_id' => 1, 'disruption_ids' => [ 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950002, 'run_ref' => '950002', 'scheduled_departure_utc' => '2026-09-23T19:27:00Z', 'skipped_stops' => [], 'stop_id' => 1078 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 2, 'direction_id' => 1, 'disruption_ids' => [ 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950002, 'run_ref' => '950002', 'scheduled_departure_utc' => '2026-09-23T19:29:00Z', 'skipped_stops' => [], 'stop_id' => 1190 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 3, 'direction_id' => 1, 'disruption_ids' => [ 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950002, 'run_ref' => '950002', 'scheduled_departure_utc' => '2026-09-23T19:32:00Z', 'skipped_stops' => [], 'stop_id' => 1137 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 4, 'direction_id' => 1, 'disruption_ids' => [ 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950002, 'run_ref' => '950002', 'scheduled_departure_utc' => '2026-09-23T19:34:00Z', 'skipped_stops' => [], 'stop_id' => 1105 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 5, 'direction_id' => 1, 'disruption_ids' => [ 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950002, 'run_ref' => '950002', 'scheduled_departure_utc' => '2026-09-23T19:36:00Z', 'skipped_stops' => [], 'stop_id' => 1096 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 6, 'direction_id' => 1, 'disruption_ids' => [ 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950002, 'run_ref' => '950002', 'scheduled_departure_utc' => '2026-09-23T19:39:00Z', 'skipped_stops' => [], 'stop_id' => 1058 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 7, 'direction_id' => 1, 'disruption_ids' => [ 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950002, 'run_ref' => '950002', 'scheduled_departure_utc' => '2026-09-23T19:41:00Z', 'skipped_stops' => [], 'stop_id' => 1051 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 8, 'direction_id' => 1, 'disruption_ids' => [ 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950002, 'run_ref' => '950002', 'scheduled_departure_utc' => '2026-09-23T19:43:00Z', 'skipped_stops' => [], 'stop_id' => 1077 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 9, 'direction_id' => 1, 'disruption_ids' => [ 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950002, 'run_ref' => '950002', 'scheduled_departure_utc' => '2026-09-23T19:45:00Z', 'skipped_stops' => [], 'stop_id' => 1075 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 10, 'direction_id' => 1, 'disruption_ids' => [ 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950002, 'run_ref' => '950002', 'scheduled_departure_utc' => '2026-09-23T19:47:00Z', 'skipped_stops' => [], 'stop_id' => 1195 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 11, 'direction_id' => 1, 'disruption_ids' => [ 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950002, 'run_ref' => '950002', 'scheduled_departure_utc' => '2026-09-23T19:49:00Z', 'skipped_stops' => [], 'stop_id' => 1110 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 12, 'direction_id' => 1, 'disruption_ids' => [ 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950002, 'run_ref' => '950002', 'scheduled_departure_utc' => '2026-09-23T19:51:00Z', 'skipped_stops' => [], 'stop_id' => 1094 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 13, 'direction_id' => 1, 'disruption_ids' => [ 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950002, 'run_ref' => '950002', 'scheduled_departure_utc' => '2026-09-23T19:54:00Z', 'skipped_stops' => [], 'stop_id' => 1030 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 14, 'direction_id' => 1, 'disruption_ids' => [ 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950002, 'run_ref' => '950002', 'scheduled_departure_utc' => '2026-09-23T19:56:00Z', 'skipped_stops' => [], 'stop_id' => 1059 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 15, 'direction_id' => 1, 'disruption_ids' => [ 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '7', 'route_id' => 7, 'run_id' => 950002, 'run_ref' => '950002', 'scheduled_departure_utc' => '2026-09-23T19:58:00Z', 'skipped_stops' => [], 'stop_id' => 1162 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 16, 'direction_id' => 1, 'disruption_ids' => [ 323905 ], 'estimated_departure_utc' => undef, 'flags' => 'E', 'platform_number' => '3', 'route_id' => 7, 'run_id' => 950002, 'run_ref' => '950002', 'scheduled_departure_utc' => '2026-09-23T20:02:00Z', 'skipped_stops' => [], 'stop_id' => 1071 } ], 'directions' => { '1' => { 'direction_id' => 1, 'direction_name' => 'City', 'route_id' => 7, 'route_type' => 0 } }, 'disruptions' => [ { 'colour' => '#ffd500', 'description' => 'Stations on the Alamein, Belgrave, Glen Waverley and Lilydale lines will be affected by temporary car park closures, platform closures and changes to pedestrian access at select times, due to works as part of the Level Crossing Removal Project and other maintenance works.', 'display_on_board' => 'false', 'display_status' => 'false', 'disruption_id' => 323905, 'disruption_status' => 'Current', 'disruption_type' => 'Planned Closure', 'from_date' => '2024-10-28T10:54:00Z', 'last_updated' => '2026-09-06T03:17:35Z', 'published_on' => '2024-10-29T04:29:05Z', 'routes' => [], 'stops' => [], 'title' => 'Alamein, Belgrave, Glen Waverley and Lilydale line stations: Temporary car park closures and pedestrian access changes until further notice', 'to_date' => undef, 'url' => 'http://ptv.vic.gov.au/live-travel-updates/article/alamein-belgrave-glen-waverley-and-lilydale-line-stations-temporary-car-park-closures-and-pedestrian-access-changes-until-further-notice' } ], 'routes' => { '7' => { 'geopath' => [], 'route_gtfs_id' => '2-GWY', 'route_id' => 7, 'route_name' => 'Glen Waverley', 'route_number' => '', 'route_type' => 0 } }, 'runs' => { '950002' => { 'destination_name' => 'Flinders Street', 'direction_id' => 1, 'express_stop_count' => 0, 'externalService' => undef, 'final_stop_id' => 1071, 'geopath' => [], 'interchange' => { 'distributor' => { 'advertised' => 'false', 'destination_name' => 'Lilydale', 'direction_id' => 8, 'route_id' => 9, 'run_ref' => '951205', 'stop_id' => 1115 }, 'feeder' => undef }, 'route_id' => 7, 'route_type' => 0, 'run_id' => 950002, 'run_note' => '', 'run_ref' => '950002', 'run_sequence' => 0, 'status' => 'scheduled', 'vehicle_descriptor' => undef, 'vehicle_position' => undef } }, 'status' => { 'health' => 1, 'version' => '3.0' }, 'stops' => { '1030' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1030, 'stop_landmark' => '', 'stop_latitude' => '-37.8275566', 'stop_longitude' => '145.007553', 'stop_name' => 'Burnley', 'stop_sequence' => 0, 'stop_suburb' => 'Burnley', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1051' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1051, 'stop_landmark' => '', 'stop_latitude' => '-37.8689575', 'stop_longitude' => '145.062943', 'stop_name' => 'Darling', 'stop_sequence' => 0, 'stop_suburb' => 'Malvern East', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1, 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1,Zone 2' } }, '1058' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1058, 'stop_landmark' => '', 'stop_latitude' => '-37.87693', 'stop_longitude' => '145.0694', 'stop_name' => 'East Malvern', 'stop_sequence' => 0, 'stop_suburb' => 'Malvern East', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1, 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1,Zone 2' } }, '1059' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1059, 'stop_landmark' => '', 'stop_latitude' => '-37.8264046', 'stop_longitude' => '144.99707', 'stop_name' => 'East Richmond', 'stop_sequence' => 0, 'stop_suburb' => 'Richmond', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1071' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1071, 'stop_landmark' => '', 'stop_latitude' => '-37.81831', 'stop_longitude' => '144.966965', 'stop_name' => 'Flinders Street', 'stop_sequence' => 0, 'stop_suburb' => 'Melbourne City', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1075' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1075, 'stop_landmark' => '', 'stop_latitude' => '-37.8532829', 'stop_longitude' => '145.051666', 'stop_name' => 'Gardiner', 'stop_sequence' => 0, 'stop_suburb' => 'Glen Iris', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1077' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1077, 'stop_landmark' => '', 'stop_latitude' => '-37.8593063', 'stop_longitude' => '145.058228', 'stop_name' => 'Glen Iris', 'stop_sequence' => 0, 'stop_suburb' => 'Glen Iris', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1078' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1078, 'stop_landmark' => '', 'stop_latitude' => '-37.8795', 'stop_longitude' => '145.162064', 'stop_name' => 'Glen Waverley', 'stop_sequence' => 0, 'stop_suburb' => 'Glen Waverley', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1094' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1094, 'stop_landmark' => '', 'stop_latitude' => '-37.83467', 'stop_longitude' => '145.022629', 'stop_name' => 'Heyington', 'stop_sequence' => 0, 'stop_suburb' => 'Toorak', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1096' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1096, 'stop_landmark' => '', 'stop_latitude' => '-37.8744', 'stop_longitude' => '145.090652', 'stop_name' => 'Holmesglen', 'stop_sequence' => 0, 'stop_suburb' => 'Malvern East', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1, 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1,Zone 2' } }, '1105' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1105, 'stop_landmark' => '', 'stop_latitude' => '-37.8736', 'stop_longitude' => '145.112091', 'stop_name' => 'Jordanville', 'stop_sequence' => 0, 'stop_suburb' => 'Mount Waverley', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1110' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1110, 'stop_landmark' => '', 'stop_latitude' => '-37.8399277', 'stop_longitude' => '145.033554', 'stop_name' => 'Kooyong', 'stop_sequence' => 0, 'stop_suburb' => 'Kooyong', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1137' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1137, 'stop_landmark' => '', 'stop_latitude' => '-37.87525', 'stop_longitude' => '145.128052', 'stop_name' => 'Mount Waverley', 'stop_sequence' => 0, 'stop_suburb' => 'Mount Waverley', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1162' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1162, 'stop_landmark' => '', 'stop_latitude' => '-37.8240738', 'stop_longitude' => '144.990158', 'stop_name' => 'Richmond', 'stop_sequence' => 0, 'stop_suburb' => 'Richmond', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1190' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1190, 'stop_landmark' => '', 'stop_latitude' => '-37.87623', 'stop_longitude' => '145.14978', 'stop_name' => 'Syndal', 'stop_sequence' => 0, 'stop_suburb' => 'Glen Waverley', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 2 ], 'vline_reservation' => 'false', 'zone' => 'Zone 2' } }, '1195' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1195, 'stop_landmark' => '', 'stop_latitude' => '-37.84937', 'stop_longitude' => '145.041733', 'stop_name' => 'Tooronga', 'stop_sequence' => 0, 'stop_suburb' => 'Malvern', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } } } }