diff --git a/README.md b/README.md index ec23f15..b13420b 100644 --- a/README.md +++ b/README.md @@ -38,8 +38,11 @@ in [Edit Configuration](edit-configuration). When it is enabled - this integrati for every additional tracked flight from `sensor.flightradar24_additional_tracked`. To create device_tracker for a flight: -1. Add a flight to Additional tracked by flight number -2. Use device_tracker `device_tracker.FLIGHT_NUMBER`. +1. Add a flight to Additional tracked by flight number. If it has no flight number, use callsign +2. Use device_tracker `device_tracker.FLIGHT_NUMBER` if flight number exists or `device_tracker.CALL_SIGN`. + +To find device_tracker - Go to `Developer tools` and search for your flight number or callsign - you’ll find sensor +like `device_tracker.FLIGHT_NUMBER` or `device_tracker.CALL_SIGN`. ### Configuration - Add to track diff --git a/custom_components/flightradar24/device_tracker.py b/custom_components/flightradar24/device_tracker.py index 6c5c6ae..6039c88 100644 --- a/custom_components/flightradar24/device_tracker.py +++ b/custom_components/flightradar24/device_tracker.py @@ -38,12 +38,13 @@ def update_items( new_tracked: list[FlightRadar24Tracker] = [] active: list[str] = [] for flight in coordinator.tracked.values(): - active.append(flight['flight_number']) - if flight['flight_number'] not in tracked: - tracked[flight['flight_number']] = FlightRadar24Tracker(coordinator, flight) - new_tracked.append(tracked[flight['flight_number']]) + flight_id = flight['flight_number'] if flight['flight_number'] else flight['callsign'] + active.append(flight_id) + if flight_id not in tracked: + tracked[flight_id] = FlightRadar24Tracker(coordinator, flight) + new_tracked.append(tracked[flight_id]) else: - tracked[flight['flight_number']].info = flight + tracked[flight_id].info = flight if new_tracked: async_add_entities(new_tracked) diff --git a/custom_components/flightradar24/manifest.json b/custom_components/flightradar24/manifest.json index 53c6dcf..d1f351b 100644 --- a/custom_components/flightradar24/manifest.json +++ b/custom_components/flightradar24/manifest.json @@ -7,5 +7,5 @@ "iot_class": "cloud_polling", "issue_tracker": "https://github.com/AlexandrErohin/home-assistant-flightradar24/issues", "requirements": ["FlightRadarAPI==1.3.34", "pycountry==23.12.11"], - "version": "1.21.0" + "version": "1.21.1" } \ No newline at end of file