[server]: Add bus route data to bus objects in transient data

This commit is contained in:
2025-03-01 17:00:09 +00:00
parent 1bedc0e3f8
commit b4b64ab5d7

View File

@ -100,7 +100,12 @@ def fetch_buses():
response.raise_for_status() response.raise_for_status()
buses_json = response.json() buses_json = response.json()
bus_routes_list = fetch_bus_routes()
bus_routes_hashmap = {route["busRouteID"]: route for route in bus_routes_list if "busRouteID" in route}
for bus in buses_json["entity"]: for bus in buses_json["entity"]:
busRouteID = str(bus["vehicle"]["trip"]["route_id"])
buses.append({ buses.append({
"objectID": "Bus-" + bus["id"], "objectID": "Bus-" + bus["id"],
"objectType": "Bus", "objectType": "Bus",
@ -114,12 +119,23 @@ def fetch_buses():
"busStartTime": str(bus["vehicle"]["trip"]["start_time"]), "busStartTime": str(bus["vehicle"]["trip"]["start_time"]),
"busStartDate": str(bus["vehicle"]["trip"]["start_date"]), "busStartDate": str(bus["vehicle"]["trip"]["start_date"]),
"busScheduleRelationship": str(bus["vehicle"]["trip"]["schedule_relationship"]), "busScheduleRelationship": str(bus["vehicle"]["trip"]["schedule_relationship"]),
"busRoute": str(bus["vehicle"]["trip"]["route_id"]), "busRoute": busRouteID,
"busRouteAgencyName": str(bus_routes_hashmap[busRouteID]["busRouteAgencyName"]),
"busRouteLongName": str(bus_routes_hashmap[busRouteID]["busRouteLongName"]),
"busRouteShortName": str(bus_routes_hashmap[busRouteID]["busRouteShortName"]),
"busDirection": str(bus["vehicle"]["trip"]["direction_id"]), "busDirection": str(bus["vehicle"]["trip"]["direction_id"]),
}) })
return buses return buses
# function to fetch bus route data
def fetch_bus_routes():
permanent_data_api = os.environ["PERMANENT_DATA_API"]
routes = requests.get(permanent_data_api + "?objectType=BusRoute").json()
return routes
def lambda_handler(event, context): def lambda_handler(event, context):
print("Lambda handler triggered; fetching data.") print("Lambda handler triggered; fetching data.")
data = fetch_trains() + fetch_buses() data = fetch_trains() + fetch_buses()