From 1073190b7eaff62c16d3792273b2fb5744511c14 Mon Sep 17 00:00:00 2001 From: Jacek Kowalski <Jacek@jacekk.info> Date: Fri, 01 Feb 2019 10:34:17 +0000 Subject: [PATCH] Add safeguard against unknown vehicle types --- parse.php | 20 ++++++++++++++++---- 1 files changed, 16 insertions(+), 4 deletions(-) diff --git a/parse.php b/parse.php index 6e5b4e9..df4e100 100644 --- a/parse.php +++ b/parse.php @@ -1,5 +1,6 @@ <?php -require_once 'vendor/autoload.php'; +require('vendor/autoload.php'); +require('common.php'); use transit_realtime\FeedMessage; @@ -53,6 +54,7 @@ $trip = $vehiclePosition->getTrip(); $tripId = $trip->getTripId(); $this->gtfsTrips[self::convertTripId($tripId)] = [ + 'id' => $entity->getId(), 'num' => $vehicle->getLicensePlate(), 'tripId' => $tripId, 'latitude' => $position->getLatitude(), @@ -102,6 +104,7 @@ } if($options != 1) { + fwrite(STDERR, 'Found '.$options.' possible mappings!'."\n"); return FALSE; } return $bestOffset; @@ -112,9 +115,18 @@ foreach($this->gtfsTrips as $gtfsTripId => $gtfsTrip) { $jsonTripId = $gtfsTripId + $offset; if(isset($this->jsonTrips[$jsonTripId])) { - $result[$jsonTripId] = [ - 'num' => $gtfsTrip['num'], - ]; + $data = numToTypeB($gtfsTrip['id']); + $num = $gtfsTrip['num']; + if(!is_array($data) || !isset($data['num'])) { + $data = [ + 'num' => $num, + 'low' => 2, + ]; + } elseif($data['num'] != $num) { + // Ignore due to incorrect depot markings in the data + //fwrite(STDERR, 'Got '.$num.', database has '.$data['num']."\n"); + } + $result[$this->jsonTrips[$jsonTripId]['id']] = $data; } } return $result; -- Gitblit v1.9.1