From b248ef6270a69e88144ddb4c1130a5c89d88f7e8 Mon Sep 17 00:00:00 2001 From: Jorge Billini <43831495+JorgeBillini@users.noreply.github.com> Date: Thu, 30 Nov 2023 10:11:21 -0500 Subject: [PATCH] NOJIRA: Use DirectionId if available in SwiftlyGtfsRealTimeTranslator (#58) * Use DirectionId if avalailable * autopep8 --- gtfs_realtime_translators/translators/swiftly.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/gtfs_realtime_translators/translators/swiftly.py b/gtfs_realtime_translators/translators/swiftly.py index 786610b..d9ef865 100644 --- a/gtfs_realtime_translators/translators/swiftly.py +++ b/gtfs_realtime_translators/translators/swiftly.py @@ -23,7 +23,7 @@ def __call__(self, data): RequiredFieldValidator.validate_field_value('stop_id', stop_id) trip_updates = self.__make_trip_updates(data, stop_id) entities.extend(trip_updates) - + return FeedMessage.create(entities=entities) @classmethod @@ -31,7 +31,7 @@ def __make_trip_updates(cls, data, stop_id): trip_updates = [] route_id = data.get("routeId") - ##### Intersection Extensions + # Intersection Extensions route_short_name = data.get("routeShortName") route_long_name = data.get("routeName") stop_name = data.get("stopName") @@ -39,13 +39,14 @@ def __make_trip_updates(cls, data, stop_id): for destination in data["destinations"]: # Intersection Extension headsign = destination.get("headsign") - + direction_id = destination.get("directionId", -1) # realtime predictions predictions = enumerate(destination["predictions"]) for _idx, arrival in predictions: entity_id = str(_idx + 1) now = int(pendulum.now().timestamp()) - arrival_or_departure_time = now + math.floor(arrival.get("sec") / 60) * 60 + arrival_or_departure_time = now + \ + math.floor(arrival.get("sec") / 60) * 60 trip_id = arrival.get('tripId') trip_update = TripUpdate.create(entity_id=entity_id, @@ -57,8 +58,10 @@ def __make_trip_updates(cls, data, stop_id): route_long_name=route_long_name, stop_id=stop_id, stop_name=stop_name, - headsign=headsign) + headsign=headsign, + direction_id=direction_id, + ) trip_updates.append(trip_update) - + return trip_updates