From 6b6842c72b28c1346ef501bc656ec3016d00e1c7 Mon Sep 17 00:00:00 2001
From: Jacek Kowalski <Jacek@jacekk.info>
Date: Mon, 10 Jun 2019 20:49:08 +0000
Subject: [PATCH] Add procedure to match TTSS to GTFS via bus positions

---
 parse.php |   15 +++++++++++++++
 1 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/parse.php b/parse.php
index 94a59d9..4651082 100644
--- a/parse.php
+++ b/parse.php
@@ -7,6 +7,8 @@
 
 $sources = [
 	'bus' => [
+		'gtfs' => 'ftp://ztp.krakow.pl/GTFS_KRK_A.zip',
+		'gtfs_file' => 'GTFS_KRK_A.zip',
 		'gtfsrt' => 'ftp://ztp.krakow.pl/VehiclePositions_A.pb',
 		'gtfsrt_file' => 'VehiclePositions_A.pb',
 		'ttss' => 'http://91.223.13.70/internetservice/geoserviceDispatcher/services/vehicleinfo/vehicles',
@@ -36,8 +38,21 @@
 		
 		$logger->info('Loading data...');
 		$mapper = new Mapper();
+		
 		$mapper->loadTTSS($source['ttss_file']);
+
+		$timeDifference = time() - $mapper->getTTSSDate();
+		if(abs($timeDifference) > 60) {
+			throw new Exception('TTSS timestamp difference ('.$timeDifference.'s) is too high, aborting!');
+		}
+		
 		$mapper->loadGTFSRT($source['gtfsrt_file']);
+		$timeDifference = time() - $mapper->getGTFSRTDate();
+		if(abs($timeDifference) > 60) {
+			throw new Exception('GTFSRT timestamp difference ('.$timeDifference.'s) is too high, aborting!');
+		}
+		
+		$mapper->loadGTFS($source['gtfs_file']);
 		
 		$db = new Database($source['database']);
 		

--
Gitblit v1.9.1