train: 950000,0,4
Mon Jun 1 16:45:16 2026 2026-06-01T16:45:16Z 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. _*344824 From 8.30pm Monday 29 September 2025 until August 2026, there will be changes to the way you access and exit the station, due to escalator upgrade works. ** current, _* Later today, __ in the future Final stop Flinders Street
2 1078 Glen Waverley Station 2026-06-01T18:57:00Z 04:57:00 131m44s 7904 no est disruptions 344824 323905
1 1190 Syndal Station 2026-06-01T18:59:00Z 04:59:00 133m44s 8024 no est disruptions 344824 323905
1 1137 Mount Waverley Station 2026-06-01T19:02:00Z 05:02:00 136m44s 8204 no est disruptions 344824 323905
1 1105 Jordanville Station 2026-06-01T19:04:00Z 05:04:00 138m44s 8324 no est disruptions 344824 323905
1 1096 Holmesglen Station 2026-06-01T19:06:00Z 05:06:00 140m44s 8444 no est disruptions 344824 323905
1 1058 East Malvern Station 2026-06-01T19:09:00Z 05:09:00 143m44s 8624 no est disruptions 344824 323905
1 1051 Darling Station 2026-06-01T19:11:00Z 05:11:00 145m44s 8744 no est disruptions 344824 323905
1 1077 Glen Iris Station 2026-06-01T19:13:00Z 05:13:00 147m44s 8864 no est disruptions 344824 323905
1 1075 Gardiner Station 2026-06-01T19:15:00Z 05:15:00 149m44s 8984 no est disruptions 344824 323905
1 1195 Tooronga Station 2026-06-01T19:17:00Z 05:17:00 151m44s 9104 no est disruptions 344824 323905
1 1110 Kooyong Station 2026-06-01T19:19:00Z 05:19:00 153m44s 9224 no est disruptions 344824 323905
1 1094 Heyington Station 2026-06-01T19:21:00Z 05:21:00 155m44s 9344 no est disruptions 344824 323905
1 1030 Burnley Station 2026-06-01T19:24:00Z 05:24:00 158m44s 9524 no est disruptions 344824 323905
1 1059 East Richmond Station 2026-06-01T19:26:00Z 05:26:00 160m44s 9644 no est disruptions 344824 323905
7 1162 Richmond Station 2026-06-01T19:28:00Z 05:28:00 162m44s 9764 no est disruptions 344824 323905
3 1071 Flinders Street Station 2026-06-01T19:32:00Z 05:32:00 166m44s 10004 no est disruptions 344824 323905
$perl_scalar = { 'departures' => [ { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 1, 'direction_id' => 1, 'disruption_ids' => [ 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 7, 'run_id' => 950000, 'run_ref' => '950000', 'scheduled_departure_utc' => '2026-06-01T18:57:00Z', 'skipped_stops' => [], 'stop_id' => 1078 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 2, 'direction_id' => 1, 'disruption_ids' => [ 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950000, 'run_ref' => '950000', 'scheduled_departure_utc' => '2026-06-01T18:59:00Z', 'skipped_stops' => [], 'stop_id' => 1190 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 3, 'direction_id' => 1, 'disruption_ids' => [ 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950000, 'run_ref' => '950000', 'scheduled_departure_utc' => '2026-06-01T19:02:00Z', 'skipped_stops' => [], 'stop_id' => 1137 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 4, 'direction_id' => 1, 'disruption_ids' => [ 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950000, 'run_ref' => '950000', 'scheduled_departure_utc' => '2026-06-01T19:04:00Z', 'skipped_stops' => [], 'stop_id' => 1105 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 5, 'direction_id' => 1, 'disruption_ids' => [ 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950000, 'run_ref' => '950000', 'scheduled_departure_utc' => '2026-06-01T19:06:00Z', 'skipped_stops' => [], 'stop_id' => 1096 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 6, 'direction_id' => 1, 'disruption_ids' => [ 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950000, 'run_ref' => '950000', 'scheduled_departure_utc' => '2026-06-01T19:09:00Z', 'skipped_stops' => [], 'stop_id' => 1058 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 7, 'direction_id' => 1, 'disruption_ids' => [ 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950000, 'run_ref' => '950000', 'scheduled_departure_utc' => '2026-06-01T19:11:00Z', 'skipped_stops' => [], 'stop_id' => 1051 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 8, 'direction_id' => 1, 'disruption_ids' => [ 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950000, 'run_ref' => '950000', 'scheduled_departure_utc' => '2026-06-01T19:13:00Z', 'skipped_stops' => [], 'stop_id' => 1077 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 9, 'direction_id' => 1, 'disruption_ids' => [ 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950000, 'run_ref' => '950000', 'scheduled_departure_utc' => '2026-06-01T19:15:00Z', 'skipped_stops' => [], 'stop_id' => 1075 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 10, 'direction_id' => 1, 'disruption_ids' => [ 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950000, 'run_ref' => '950000', 'scheduled_departure_utc' => '2026-06-01T19:17:00Z', 'skipped_stops' => [], 'stop_id' => 1195 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 11, 'direction_id' => 1, 'disruption_ids' => [ 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950000, 'run_ref' => '950000', 'scheduled_departure_utc' => '2026-06-01T19:19:00Z', 'skipped_stops' => [], 'stop_id' => 1110 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 12, 'direction_id' => 1, 'disruption_ids' => [ 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950000, 'run_ref' => '950000', 'scheduled_departure_utc' => '2026-06-01T19:21:00Z', 'skipped_stops' => [], 'stop_id' => 1094 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 13, 'direction_id' => 1, 'disruption_ids' => [ 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950000, 'run_ref' => '950000', 'scheduled_departure_utc' => '2026-06-01T19:24:00Z', 'skipped_stops' => [], 'stop_id' => 1030 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 14, 'direction_id' => 1, 'disruption_ids' => [ 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 7, 'run_id' => 950000, 'run_ref' => '950000', 'scheduled_departure_utc' => '2026-06-01T19:26:00Z', 'skipped_stops' => [], 'stop_id' => 1059 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 15, 'direction_id' => 1, 'disruption_ids' => [ 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '7', 'route_id' => 7, 'run_id' => 950000, 'run_ref' => '950000', 'scheduled_departure_utc' => '2026-06-01T19:28:00Z', 'skipped_stops' => [], 'stop_id' => 1162 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 16, 'direction_id' => 1, 'disruption_ids' => [ 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => 'E', 'platform_number' => '3', 'route_id' => 7, 'run_id' => 950000, 'run_ref' => '950000', 'scheduled_departure_utc' => '2026-06-01T19:32:00Z', 'skipped_stops' => [], 'stop_id' => 1071 } ], 'directions' => { '1' => { 'direction_id' => 1, 'direction_name' => 'City', 'route_id' => 7, 'route_type' => 0 } }, 'disruptions' => [ { 'colour' => '#ffbb00', 'description' => 'Southern Cross Station: From 8.30pm Monday 29 September 2025 until August 2026, there will be changes to the way you access and exit the station, due to escalator upgrade works.', 'display_on_board' => 'true', 'display_status' => 'false', 'disruption_id' => 344824, 'disruption_status' => 'Current', 'disruption_type' => 'Station detour', 'from_date' => '2025-09-25T05:13:00Z', 'last_updated' => '2026-02-10T10:00:02Z', 'published_on' => '2025-09-25T05:26:57Z', 'routes' => [], 'stops' => [], 'title' => 'Southern Cross Station: From 8.30pm Monday 29 September 2025 until August 2026, there will be changes to the way you access and exit the station, due to escalator upgrade works.', 'to_date' => '2026-08-31T17:00:00Z', 'url' => 'http://ptv.vic.gov.au/live-travel-updates/article/page/plan-a-journey/maps/southern-cross-station-map-and-travel-information/' }, { '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-05-28T04:12:41Z', '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' => { '950000' => { 'destination_name' => 'Flinders Street', 'direction_id' => 1, 'express_stop_count' => 0, 'externalService' => undef, 'final_stop_id' => 1071, 'geopath' => [], 'interchange' => { 'distributor' => { 'advertised' => 'false', 'destination_name' => 'Glen Waverley', 'direction_id' => 6, 'route_id' => 7, 'run_ref' => '950003', 'stop_id' => 1078 }, 'feeder' => undef }, 'route_id' => 7, 'route_type' => 0, 'run_id' => 950000, 'run_note' => '', 'run_ref' => '950000', '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.8797836', 'stop_longitude' => '145.163055', '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' } } } }