Add fields cancelled & extra to result of the departure HVV sensor (#105030)

This commit is contained in:
Thomas Zahari 2023-12-05 13:15:16 +01:00 committed by GitHub
parent 0638088aee
commit f460fdf632
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -30,6 +30,8 @@ ATTR_DIRECTION = "direction"
ATTR_TYPE = "type"
ATTR_DELAY = "delay"
ATTR_NEXT = "next"
ATTR_CANCELLED = "cancelled"
ATTR_EXTRA = "extra"
PARALLEL_UPDATES = 0
BERLIN_TIME_ZONE = get_time_zone("Europe/Berlin")
@ -142,6 +144,8 @@ class HVVDepartureSensor(SensorEntity):
departure = data["departures"][0]
line = departure["line"]
delay = departure.get("delay", 0)
cancelled = departure.get("cancelled", False)
extra = departure.get("extra", False)
self._attr_available = True
self._attr_native_value = (
departure_time
@ -157,6 +161,8 @@ class HVVDepartureSensor(SensorEntity):
ATTR_TYPE: line["type"]["shortInfo"],
ATTR_ID: line["id"],
ATTR_DELAY: delay,
ATTR_CANCELLED: cancelled,
ATTR_EXTRA: extra,
}
)
@ -164,6 +170,8 @@ class HVVDepartureSensor(SensorEntity):
for departure in data["departures"]:
line = departure["line"]
delay = departure.get("delay", 0)
cancelled = departure.get("cancelled", False)
extra = departure.get("extra", False)
departures.append(
{
ATTR_DEPARTURE: departure_time
@ -175,6 +183,8 @@ class HVVDepartureSensor(SensorEntity):
ATTR_TYPE: line["type"]["shortInfo"],
ATTR_ID: line["id"],
ATTR_DELAY: delay,
ATTR_CANCELLED: cancelled,
ATTR_EXTRA: extra,
}
)
self._attr_extra_state_attributes[ATTR_NEXT] = departures