SYMBOL INDEX (291 symbols across 16 files) FILE: custom_components/fusion_solar/__init__.py function async_setup (line 16) | async def async_setup(hass: HomeAssistant, config: Config) -> bool: function async_setup_entry (line 22) | async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> ... function async_unload_entry (line 33) | async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) ->... FILE: custom_components/fusion_solar/config_flow.py class FusionSolarConfigFlow (line 15) | class FusionSolarConfigFlow(config_entries.ConfigFlow, domain=DOMAIN): method async_step_user (line 21) | async def async_step_user(self, user_input: Optional[Dict[str, Any]] =... method async_step_choose_type (line 25) | async def async_step_choose_type(self, user_input: Optional[Dict[str, ... method async_step_kiosk (line 52) | async def async_step_kiosk(self, user_input: Optional[Dict[str, Any]] ... method async_step_openapi (line 82) | async def async_step_openapi(self, user_input: Optional[Dict[str, Any]... FILE: custom_components/fusion_solar/device_real_kpi_coordinator.py class DeviceRealKpiDataCoordinator (line 20) | class DeviceRealKpiDataCoordinator(DataUpdateCoordinator): method __init__ (line 21) | def __init__(self, hass, api, devices): method _async_update_data (line 37) | async def _async_update_data(self): method device_ids_grouped_per_type_id (line 81) | def device_ids_grouped_per_type_id(self): method counter_limit (line 111) | def counter_limit(self) -> int: method should_skip (line 115) | def should_skip(self) -> bool: method skip_for (line 119) | def skip_for(self) -> int: FILE: custom_components/fusion_solar/fusion_solar/device_attribute_entity.py class FusionSolarDeviceAttributeEntity (line 7) | class FusionSolarDeviceAttributeEntity(Entity): method __init__ (line 8) | def __init__( method unique_id (line 23) | def unique_id(self) -> str: method name (line 27) | def name(self): method state (line 31) | def state(self): method device_info (line 35) | def device_info(self) -> dict: method entity_category (line 39) | def entity_category(self) -> str: method should_poll (line 43) | def should_poll(self) -> bool: class FusionSolarDeviceLatitudeEntity (line 47) | class FusionSolarDeviceLatitudeEntity(FusionSolarDeviceAttributeEntity): class FusionSolarDeviceLongitudeEntity (line 51) | class FusionSolarDeviceLongitudeEntity(FusionSolarDeviceAttributeEntity): FILE: custom_components/fusion_solar/fusion_solar/energy_sensor.py class FusionSolarEnergySensor (line 13) | class FusionSolarEnergySensor(CoordinatorEntity, SensorEntity): method __init__ (line 16) | def __init__( method device_class (line 34) | def device_class(self) -> str: method unique_id (line 38) | def unique_id(self) -> str: method name (line 42) | def name(self) -> str: method native_value (line 46) | def native_value(self) -> float: method native_unit_of_measurement (line 71) | def native_unit_of_measurement(self) -> str: method state_class (line 75) | def state_class(self) -> str: method device_info (line 79) | def device_info(self) -> dict: method is_producing_at_the_moment (line 82) | def is_producing_at_the_moment(self) -> bool: method get_float_value_from_coordinator (line 90) | def get_float_value_from_coordinator(self, attribute_name: str) -> float: class FusionSolarEnergySensorTotalCurrentDay (line 110) | class FusionSolarEnergySensorTotalCurrentDay(FusionSolarEnergySensor): class FusionSolarEnergySensorTotalCurrentMonth (line 114) | class FusionSolarEnergySensorTotalCurrentMonth(FusionSolarEnergySensor): class FusionSolarEnergySensorTotalCurrentYear (line 118) | class FusionSolarEnergySensorTotalCurrentYear(FusionSolarEnergySensor): class FusionSolarEnergySensorTotalLifetime (line 122) | class FusionSolarEnergySensorTotalLifetime(FusionSolarEnergySensor): class FusionSolarEnergySensorException (line 126) | class FusionSolarEnergySensorException(Exception): FILE: custom_components/fusion_solar/fusion_solar/kiosk/kiosk.py class FusionSolarKiosk (line 9) | class FusionSolarKiosk: method __init__ (line 10) | def __init__(self, url, name): method _parseId (line 15) | def _parseId(self): method apiUrl (line 20) | def apiUrl(self): FILE: custom_components/fusion_solar/fusion_solar/kiosk/kiosk_api.py class FusionSolarKioskApi (line 18) | class FusionSolarKioskApi: method __init__ (line 19) | def __init__(self, host): method getRealTimeKpi (line 22) | def getRealTimeKpi(self, id: str): class FusionSolarKioskApiError (line 54) | class FusionSolarKioskApiError(Exception): FILE: custom_components/fusion_solar/fusion_solar/lifetime_plant_data_entity.py class FusionSolarLifetimePlantDataSensor (line 12) | class FusionSolarLifetimePlantDataSensor(CoordinatorEntity, SensorEntity): method __init__ (line 15) | def __init__( method unique_id (line 26) | def unique_id(self) -> str: method native_value (line 30) | def native_value(self) -> float: method device_info (line 47) | def device_info(self) -> dict: class FusionSolarLifetimePlantDataInverterPowerSensor (line 51) | class FusionSolarLifetimePlantDataInverterPowerSensor(FusionSolarLifetim... method name (line 55) | def name(self) -> str: method device_class (line 59) | def device_class(self) -> str: method native_unit_of_measurement (line 63) | def native_unit_of_measurement(self) -> str: method state_class (line 67) | def state_class(self) -> str: class FusionSolarLifetimePlantDataOngridPowerSensor (line 71) | class FusionSolarLifetimePlantDataOngridPowerSensor(FusionSolarLifetimeP... method name (line 75) | def name(self) -> str: method device_class (line 79) | def device_class(self) -> str: method native_unit_of_measurement (line 83) | def native_unit_of_measurement(self) -> str: method state_class (line 87) | def state_class(self) -> str: class FusionSolarLifetimePlantDataUsePowerSensor (line 91) | class FusionSolarLifetimePlantDataUsePowerSensor(FusionSolarLifetimePlan... method name (line 95) | def name(self) -> str: method device_class (line 99) | def device_class(self) -> str: method native_unit_of_measurement (line 103) | def native_unit_of_measurement(self) -> str: method state_class (line 107) | def state_class(self) -> str: class FusionSolarLifetimePlantDataPowerProfitSensor (line 111) | class FusionSolarLifetimePlantDataPowerProfitSensor(FusionSolarLifetimeP... method name (line 115) | def name(self) -> str: method state_class (line 119) | def state_class(self) -> str: method icon (line 123) | def icon(self) -> str | None: class FusionSolarLifetimePlantDataPerpowerRatioSensor (line 127) | class FusionSolarLifetimePlantDataPerpowerRatioSensor(FusionSolarLifetim... method name (line 131) | def name(self) -> str: method state_class (line 135) | def state_class(self) -> str: class FusionSolarLifetimePlantDataReductionTotalCo2Sensor (line 139) | class FusionSolarLifetimePlantDataReductionTotalCo2Sensor(FusionSolarLif... method name (line 143) | def name(self) -> str: method native_unit_of_measurement (line 147) | def native_unit_of_measurement(self) -> str: method state_class (line 151) | def state_class(self) -> str: method native_value (line 155) | def native_value(self) -> float: method icon (line 164) | def icon(self) -> str | None: class FusionSolarLifetimePlantDataReductionTotalCoalSensor (line 168) | class FusionSolarLifetimePlantDataReductionTotalCoalSensor(FusionSolarLi... method name (line 172) | def name(self) -> str: method native_unit_of_measurement (line 176) | def native_unit_of_measurement(self) -> str: method state_class (line 180) | def state_class(self) -> str: method native_value (line 184) | def native_value(self) -> float: method icon (line 193) | def icon(self) -> str | None: class FusionSolarLifetimePlantDataReductionTotalTreeSensor (line 197) | class FusionSolarLifetimePlantDataReductionTotalTreeSensor(FusionSolarLi... method name (line 201) | def name(self) -> str: method state_class (line 205) | def state_class(self) -> str: method icon (line 209) | def icon(self) -> str | None: FILE: custom_components/fusion_solar/fusion_solar/openapi/device.py class FusionSolarDevice (line 4) | class FusionSolarDevice: method __init__ (line 5) | def __init__( method model (line 28) | def model(self) -> str: method device_type (line 35) | def device_type(self) -> str: method device_info (line 77) | def device_info(self): method readable_name (line 90) | def readable_name(self): FILE: custom_components/fusion_solar/fusion_solar/openapi/openapi_api.py class FusionSolarOpenApi (line 22) | class FusionSolarOpenApi: method __init__ (line 23) | def __init__(self, host: str, username: str, password: str): method login (line 29) | def login(self) -> str: method get_station_list (line 51) | def get_station_list(self): method stations (line 78) | def stations(self): method get_station_real_kpi (line 103) | def get_station_real_kpi(self, station_codes: list): method get_kpi_station_year (line 112) | def get_kpi_station_year(self, station_codes: list): method get_dev_list (line 126) | def get_dev_list(self, station_codes: list): method get_dev_real_kpi (line 151) | def get_dev_real_kpi(self, device_ids: list, type_id: int): method _do_call (line 161) | def _do_call(self, url: str, json: dict): class FusionSolarOpenApiError (line 208) | class FusionSolarOpenApiError(Exception): class FusionSolarOpenApiAccessFrequencyTooHighError (line 212) | class FusionSolarOpenApiAccessFrequencyTooHighError(FusionSolarOpenApiEr... class FusionSolarOpenApiErrorInvalidAccessToCurrentInterfaceError (line 216) | class FusionSolarOpenApiErrorInvalidAccessToCurrentInterfaceError(Fusion... FILE: custom_components/fusion_solar/fusion_solar/openapi/station.py class FusionSolarStation (line 4) | class FusionSolarStation: method __init__ (line 5) | def __init__( method device_info (line 27) | def device_info(self): method readable_name (line 38) | def readable_name(self): FILE: custom_components/fusion_solar/fusion_solar/power_entity.py class FusionSolarPowerEntity (line 8) | class FusionSolarPowerEntity(CoordinatorEntity, Entity): method __init__ (line 11) | def __init__( method device_class (line 30) | def device_class(self): method unique_id (line 34) | def unique_id(self) -> str: method name (line 38) | def name(self): method state (line 42) | def state(self): method unit_of_measurement (line 53) | def unit_of_measurement(self): method device_info (line 57) | def device_info(self) -> dict: method _handle_coordinator_update (line 61) | def _handle_coordinator_update(self): class FusionSolarPowerEntityRealtime (line 79) | class FusionSolarPowerEntityRealtime(FusionSolarPowerEntity): class FusionSolarPowerEntityRealtimeInWatt (line 83) | class FusionSolarPowerEntityRealtimeInWatt(FusionSolarPowerEntity): method unit_of_measurement (line 85) | def unit_of_measurement(self): FILE: custom_components/fusion_solar/fusion_solar/realtime_device_data_sensor.py class FusionSolarRealtimeDeviceDataSensor (line 14) | class FusionSolarRealtimeDeviceDataSensor(CoordinatorEntity, SensorEntity): method __init__ (line 17) | def __init__( method unique_id (line 34) | def unique_id(self) -> str: method name (line 38) | def name(self) -> str: method native_value (line 42) | def native_value(self) -> float: method device_info (line 53) | def device_info(self) -> dict: method _handle_coordinator_update (line 57) | def _handle_coordinator_update(self): class FusionSolarRealtimeDeviceDataTranslatedSensor (line 75) | class FusionSolarRealtimeDeviceDataTranslatedSensor(FusionSolarRealtimeD... method state (line 77) | def state(self) -> int: method translation_key (line 88) | def translation_key(self) -> str: class FusionSolarRealtimeDeviceDataVoltageSensor (line 92) | class FusionSolarRealtimeDeviceDataVoltageSensor(FusionSolarRealtimeDevi... method device_class (line 94) | def device_class(self) -> str: method native_unit_of_measurement (line 98) | def native_unit_of_measurement(self) -> str: method state_class (line 102) | def state_class(self) -> str: class FusionSolarRealtimeDeviceDataCurrentSensor (line 106) | class FusionSolarRealtimeDeviceDataCurrentSensor(FusionSolarRealtimeDevi... method device_class (line 108) | def device_class(self) -> str: method native_unit_of_measurement (line 112) | def native_unit_of_measurement(self) -> str: method state_class (line 116) | def state_class(self) -> str: class FusionSolarRealtimeDeviceDataEnergySensor (line 120) | class FusionSolarRealtimeDeviceDataEnergySensor(FusionSolarRealtimeDevic... method device_class (line 122) | def device_class(self) -> str: method native_unit_of_measurement (line 126) | def native_unit_of_measurement(self) -> str: method state_class (line 130) | def state_class(self) -> str: class FusionSolarRealtimeDeviceDataEnergyTotalIncreasingSensor (line 134) | class FusionSolarRealtimeDeviceDataEnergyTotalIncreasingSensor(FusionSol... method state_class (line 136) | def state_class(self) -> str: class FusionSolarRealtimeDeviceDataTemperatureSensor (line 140) | class FusionSolarRealtimeDeviceDataTemperatureSensor(FusionSolarRealtime... method device_class (line 142) | def device_class(self) -> str: method native_unit_of_measurement (line 146) | def native_unit_of_measurement(self) -> str: method state_class (line 150) | def state_class(self) -> str: class FusionSolarRealtimeDeviceDataPowerFactorSensor (line 154) | class FusionSolarRealtimeDeviceDataPowerFactorSensor(FusionSolarRealtime... method device_class (line 156) | def device_class(self) -> str: method native_unit_of_measurement (line 160) | def native_unit_of_measurement(self) -> str: method state_class (line 164) | def state_class(self) -> str: method native_value (line 168) | def native_value(self) -> str: class FusionSolarRealtimeDeviceDataFrequencySensor (line 177) | class FusionSolarRealtimeDeviceDataFrequencySensor(FusionSolarRealtimeDe... method device_class (line 179) | def device_class(self) -> str: method native_unit_of_measurement (line 183) | def native_unit_of_measurement(self) -> str: method state_class (line 187) | def state_class(self) -> str: class FusionSolarRealtimeDeviceDataPowerSensor (line 191) | class FusionSolarRealtimeDeviceDataPowerSensor(FusionSolarRealtimeDevice... method device_class (line 193) | def device_class(self) -> str: method native_unit_of_measurement (line 197) | def native_unit_of_measurement(self) -> str: method state_class (line 201) | def state_class(self) -> str: class FusionSolarRealtimeDeviceDataPowerInWattSensor (line 205) | class FusionSolarRealtimeDeviceDataPowerInWattSensor(FusionSolarRealtime... method native_unit_of_measurement (line 207) | def native_unit_of_measurement(self) -> str: class FusionSolarRealtimeDeviceDataReactivePowerSensor (line 211) | class FusionSolarRealtimeDeviceDataReactivePowerSensor(FusionSolarRealti... method device_class (line 213) | def device_class(self) -> str: method native_unit_of_measurement (line 217) | def native_unit_of_measurement(self) -> str: method state_class (line 221) | def state_class(self) -> str: method native_value (line 225) | def native_value(self) -> float: class FusionSolarRealtimeDeviceDataReactivePowerInVarSensor (line 235) | class FusionSolarRealtimeDeviceDataReactivePowerInVarSensor(FusionSolarR... method native_unit_of_measurement (line 237) | def native_unit_of_measurement(self) -> str: class FusionSolarRealtimeDeviceDataApparentPowerSensor (line 241) | class FusionSolarRealtimeDeviceDataApparentPowerSensor(FusionSolarRealti... method device_class (line 243) | def device_class(self) -> str: method native_unit_of_measurement (line 247) | def native_unit_of_measurement(self) -> str: method state_class (line 251) | def state_class(self) -> str: class FusionSolarRealtimeDeviceDataWindSpeedSensor (line 255) | class FusionSolarRealtimeDeviceDataWindSpeedSensor(FusionSolarRealtimeDe... method device_class (line 257) | def device_class(self) -> str: method native_unit_of_measurement (line 261) | def native_unit_of_measurement(self) -> str: method state_class (line 265) | def state_class(self) -> str: class FusionSolarRealtimeDeviceDataBatterySensor (line 269) | class FusionSolarRealtimeDeviceDataBatterySensor(FusionSolarRealtimeDevi... method device_class (line 271) | def device_class(self) -> str: method native_unit_of_measurement (line 275) | def native_unit_of_measurement(self) -> str: method state_class (line 279) | def state_class(self) -> str: class FusionSolarRealtimeDeviceDataTimestampSensor (line 283) | class FusionSolarRealtimeDeviceDataTimestampSensor(FusionSolarRealtimeDe... method device_class (line 285) | def device_class(self) -> str: method state (line 289) | def state(self) -> datetime: class FusionSolarRealtimeDeviceDataPercentageSensor (line 298) | class FusionSolarRealtimeDeviceDataPercentageSensor(FusionSolarRealtimeD... method native_unit_of_measurement (line 300) | def native_unit_of_measurement(self) -> str | None: method state_class (line 304) | def state_class(self) -> str: class FusionSolarRealtimeDeviceDataBinarySensor (line 308) | class FusionSolarRealtimeDeviceDataBinarySensor(CoordinatorEntity, Binar... method __init__ (line 311) | def __init__( method unique_id (line 328) | def unique_id(self) -> str: method name (line 332) | def name(self) -> str: method device_info (line 336) | def device_info(self) -> dict: method _handle_coordinator_update (line 340) | def _handle_coordinator_update(self): class FusionSolarRealtimeDeviceDataStateBinarySensor (line 356) | class FusionSolarRealtimeDeviceDataStateBinarySensor(FusionSolarRealtime... method device_class (line 358) | def device_class(self) -> str: method is_on (line 362) | def is_on(self) -> bool: FILE: custom_components/fusion_solar/fusion_solar/station_attribute_entity.py class FusionSolarStationAttributeEntity (line 6) | class FusionSolarStationAttributeEntity(Entity): method __init__ (line 7) | def __init__( method unique_id (line 22) | def unique_id(self) -> str: method name (line 26) | def name(self): method state (line 30) | def state(self): method device_info (line 34) | def device_info(self) -> dict: method entity_category (line 38) | def entity_category(self) -> str: method should_poll (line 42) | def should_poll(self) -> bool: class FusionSolarStationCapacityEntity (line 46) | class FusionSolarStationCapacityEntity(FusionSolarStationAttributeEntity): class FusionSolarStationContactPersonEntity (line 50) | class FusionSolarStationContactPersonEntity(FusionSolarStationAttributeE... class FusionSolarStationContactPersonPhoneEntity (line 54) | class FusionSolarStationContactPersonPhoneEntity(FusionSolarStationAttri... class FusionSolarStationAddressEntity (line 58) | class FusionSolarStationAddressEntity(FusionSolarStationAttributeEntity): FILE: custom_components/fusion_solar/fusion_solar/year_plant_data_entity.py class FusionSolarYearPlantDataSensor (line 12) | class FusionSolarYearPlantDataSensor(CoordinatorEntity, SensorEntity): method __init__ (line 15) | def __init__( method unique_id (line 26) | def unique_id(self) -> str: method native_value (line 30) | def native_value(self) -> float: method device_info (line 53) | def device_info(self) -> dict: class FusionSolarYearPlantDataInstalledCapacitySensor (line 57) | class FusionSolarYearPlantDataInstalledCapacitySensor(FusionSolarYearPla... method name (line 61) | def name(self) -> str: method device_class (line 65) | def device_class(self) -> str: method native_unit_of_measurement (line 69) | def native_unit_of_measurement(self) -> str: method state_class (line 73) | def state_class(self) -> str: class FusionSolarYearPlantDataRadiationIntensitySensor (line 77) | class FusionSolarYearPlantDataRadiationIntensitySensor(FusionSolarYearPl... method name (line 81) | def name(self) -> str: method device_class (line 85) | def device_class(self) -> str: method native_unit_of_measurement (line 89) | def native_unit_of_measurement(self) -> str: method state_class (line 93) | def state_class(self) -> str: method state (line 97) | def state(self) -> float: class FusionSolarYearPlantDataTheoryPowerSensor (line 106) | class FusionSolarYearPlantDataTheoryPowerSensor(FusionSolarYearPlantData... method name (line 110) | def name(self) -> str: method device_class (line 114) | def device_class(self) -> str: method native_unit_of_measurement (line 118) | def native_unit_of_measurement(self) -> str: method state_class (line 122) | def state_class(self) -> str: class FusionSolarYearPlantDataPerformanceRatioSensor (line 126) | class FusionSolarYearPlantDataPerformanceRatioSensor(FusionSolarYearPlan... method name (line 130) | def name(self) -> str: method device_class (line 134) | def device_class(self) -> str: method native_unit_of_measurement (line 138) | def native_unit_of_measurement(self) -> str: method state_class (line 142) | def state_class(self) -> str: class FusionSolarYearPlantDataInverterPowerSensor (line 146) | class FusionSolarYearPlantDataInverterPowerSensor(FusionSolarYearPlantDa... method name (line 150) | def name(self) -> str: method device_class (line 154) | def device_class(self) -> str: method native_unit_of_measurement (line 158) | def native_unit_of_measurement(self) -> str: method state_class (line 162) | def state_class(self) -> str: class FusionSolarYearPlantDataOngridPowerSensor (line 166) | class FusionSolarYearPlantDataOngridPowerSensor(FusionSolarYearPlantData... method name (line 170) | def name(self) -> str: method device_class (line 174) | def device_class(self) -> str: method native_unit_of_measurement (line 178) | def native_unit_of_measurement(self) -> str: method state_class (line 182) | def state_class(self) -> str: class FusionSolarYearPlantDataUsePowerSensor (line 186) | class FusionSolarYearPlantDataUsePowerSensor(FusionSolarYearPlantDataSen... method name (line 190) | def name(self) -> str: method device_class (line 194) | def device_class(self) -> str: method native_unit_of_measurement (line 198) | def native_unit_of_measurement(self) -> str: method state_class (line 202) | def state_class(self) -> str: class FusionSolarYearPlantDataPowerProfitSensor (line 206) | class FusionSolarYearPlantDataPowerProfitSensor(FusionSolarYearPlantData... method name (line 210) | def name(self) -> str: method device_class (line 214) | def device_class(self) -> str: method state_class (line 218) | def state_class(self) -> str: class FusionSolarYearPlantDataPerpowerRatioSensor (line 222) | class FusionSolarYearPlantDataPerpowerRatioSensor(FusionSolarYearPlantDa... method name (line 226) | def name(self) -> str: method state_class (line 230) | def state_class(self) -> str: class FusionSolarYearPlantDataReductionTotalCo2Sensor (line 234) | class FusionSolarYearPlantDataReductionTotalCo2Sensor(FusionSolarYearPla... method name (line 238) | def name(self) -> str: method native_unit_of_measurement (line 242) | def native_unit_of_measurement(self) -> str: method state_class (line 246) | def state_class(self) -> str: method native_value (line 250) | def native_value(self) -> float: method icon (line 259) | def icon(self) -> str | None: class FusionSolarYearPlantDataReductionTotalCoalSensor (line 263) | class FusionSolarYearPlantDataReductionTotalCoalSensor(FusionSolarYearPl... method name (line 267) | def name(self) -> str: method native_unit_of_measurement (line 271) | def native_unit_of_measurement(self) -> str: method state_class (line 275) | def state_class(self) -> str: method native_value (line 279) | def native_value(self) -> float: method icon (line 288) | def icon(self) -> str | None: class FusionSolarYearPlantDataReductionTotalTreeSensor (line 292) | class FusionSolarYearPlantDataReductionTotalTreeSensor(FusionSolarYearPl... method name (line 296) | def name(self) -> str: method state_class (line 300) | def state_class(self) -> str: method icon (line 304) | def icon(self) -> str | None: class FusionSolarBackwardsCompatibilityTotalCurrentYear (line 309) | class FusionSolarBackwardsCompatibilityTotalCurrentYear(FusionSolarYearP... method unique_id (line 311) | def unique_id(self) -> str: method name (line 315) | def name(self) -> str: FILE: custom_components/fusion_solar/sensor.py function filter_for_enabled_stations (line 59) | def filter_for_enabled_stations(station, device_registry): function add_entities_for_kiosk (line 68) | async def add_entities_for_kiosk(hass, async_add_entities, kiosk: Fusion... function add_entities_for_stations (line 151) | async def add_entities_for_stations(hass, async_add_entities, stations, ... function _add_entities_for_stations_real_kpi_data (line 667) | async def _add_entities_for_stations_real_kpi_data(hass, async_add_entit... function _add_entities_for_stations_year_kpi_data (line 753) | async def _add_entities_for_stations_year_kpi_data(hass, async_add_entit... function _add_static_entities_for_devices (line 826) | async def _add_static_entities_for_devices(async_add_entities, devices): function async_setup_entry (line 862) | async def async_setup_entry(hass, config_entry, async_add_entities): function async_setup_platform (line 891) | async def async_setup_platform(hass, config, async_add_entities, discove...