Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 1 addition & 5 deletions homeassistant/components/airly/__init__.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
"""The Airly integration."""

from datetime import timedelta
import logging

from homeassistant.components.air_quality import DOMAIN as AIR_QUALITY_DOMAIN
Expand All @@ -9,7 +8,7 @@
from homeassistant.helpers import device_registry as dr, entity_registry as er
from homeassistant.helpers.aiohttp_client import async_get_clientsession

from .const import CONF_USE_NEAREST, DOMAIN, MIN_UPDATE_INTERVAL
from .const import CONF_USE_NEAREST, DOMAIN
from .coordinator import AirlyConfigEntry, AirlyDataUpdateCoordinator

PLATFORMS = [Platform.SENSOR]
Expand Down Expand Up @@ -55,16 +54,13 @@ async def async_setup_entry(hass: HomeAssistant, entry: AirlyConfigEntry) -> boo

websession = async_get_clientsession(hass)

update_interval = timedelta(minutes=MIN_UPDATE_INTERVAL)

coordinator = AirlyDataUpdateCoordinator(
hass,
entry,
websession,
api_key,
latitude,
longitude,
update_interval,
use_nearest,
)
await coordinator.async_config_entry_first_refresh()
Expand Down
29 changes: 14 additions & 15 deletions homeassistant/components/airly/coordinator.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,6 @@ def __init__(
api_key: str,
latitude: float,
longitude: float,
update_interval: timedelta,
use_nearest: bool,
) -> None:
"""Initialize."""
Expand All @@ -82,31 +81,31 @@ def __init__(
# Currently, Airly only supports Polish and English
language = "pl" if hass.config.language == "pl" else "en"
self.airly = Airly(api_key, session, language=language)
self.use_nearest = use_nearest

if use_nearest:
self.measurements = self.airly.create_measurements_session_nearest(
latitude, longitude, max_distance_km=5
)
else:
self.measurements = self.airly.create_measurements_session_point(
latitude, longitude
)

super().__init__(
hass,
_LOGGER,
config_entry=config_entry,
name=DOMAIN,
update_interval=update_interval,
update_interval=timedelta(minutes=MIN_UPDATE_INTERVAL),
)

@override
async def _async_update_data(self) -> dict[str, str | float | int]:
"""Update data via library."""
data: dict[str, str | float | int] = {}
if self.use_nearest:
measurements = self.airly.create_measurements_session_nearest(
self.latitude, self.longitude, max_distance_km=5
)
else:
measurements = self.airly.create_measurements_session_point(
self.latitude, self.longitude
)
try:
async with timeout(DEFAULT_TIMEOUT):
await measurements.update()
await self.measurements.update()
except (AirlyError, ClientConnectorError, TimeoutError) as error:
raise UpdateFailed(
translation_domain=DOMAIN,
Expand All @@ -131,9 +130,9 @@ async def _async_update_data(self) -> dict[str, str | float | int]:
self.airly.requests_remaining,
)

values = measurements.current["values"]
index = measurements.current["indexes"][0]
standards = measurements.current["standards"]
values = self.measurements.current["values"]
index = self.measurements.current["indexes"][0]
standards = self.measurements.current["standards"]

if index["description"] == NO_AIRLY_SENSORS:
raise UpdateFailed(
Expand Down
33 changes: 0 additions & 33 deletions homeassistant/components/brother/sensor.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,249 +45,216 @@ class BrotherSensorEntityDescription(SensorEntityDescription):
BrotherSensorEntityDescription(
key="status",
translation_key="status",
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.status,
),
BrotherSensorEntityDescription(
key="page_counter",
translation_key="page_counter",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.page_counter,
),
BrotherSensorEntityDescription(
key="bw_counter",
translation_key="bw_pages",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.bw_counter,
),
BrotherSensorEntityDescription(
key="color_counter",
translation_key="color_pages",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.color_counter,
),
BrotherSensorEntityDescription(
key="duplex_unit_pages_counter",
translation_key="duplex_unit_page_counter",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.duplex_unit_pages_counter,
),
BrotherSensorEntityDescription(
key="drum_remaining_life",
translation_key="drum_remaining_life",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.drum_remaining_life,
),
BrotherSensorEntityDescription(
key="drum_remaining_pages",
translation_key="drum_remaining_pages",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.drum_remaining_pages,
),
BrotherSensorEntityDescription(
key="drum_counter",
translation_key="drum_page_counter",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.drum_counter,
),
BrotherSensorEntityDescription(
key="black_drum_remaining_life",
translation_key="black_drum_remaining_life",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.black_drum_remaining_life,
),
BrotherSensorEntityDescription(
key="black_drum_remaining_pages",
translation_key="black_drum_remaining_pages",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.black_drum_remaining_pages,
),
BrotherSensorEntityDescription(
key="black_drum_counter",
translation_key="black_drum_page_counter",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.black_drum_counter,
),
BrotherSensorEntityDescription(
key="cyan_drum_remaining_life",
translation_key="cyan_drum_remaining_life",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.cyan_drum_remaining_life,
),
BrotherSensorEntityDescription(
key="cyan_drum_remaining_pages",
translation_key="cyan_drum_remaining_pages",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.cyan_drum_remaining_pages,
),
BrotherSensorEntityDescription(
key="cyan_drum_counter",
translation_key="cyan_drum_page_counter",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.cyan_drum_counter,
),
BrotherSensorEntityDescription(
key="magenta_drum_remaining_life",
translation_key="magenta_drum_remaining_life",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.magenta_drum_remaining_life,
),
BrotherSensorEntityDescription(
key="magenta_drum_remaining_pages",
translation_key="magenta_drum_remaining_pages",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.magenta_drum_remaining_pages,
),
BrotherSensorEntityDescription(
key="magenta_drum_counter",
translation_key="magenta_drum_page_counter",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.magenta_drum_counter,
),
BrotherSensorEntityDescription(
key="yellow_drum_remaining_life",
translation_key="yellow_drum_remaining_life",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.yellow_drum_remaining_life,
),
BrotherSensorEntityDescription(
key="yellow_drum_remaining_pages",
translation_key="yellow_drum_remaining_pages",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.yellow_drum_remaining_pages,
),
BrotherSensorEntityDescription(
key="yellow_drum_counter",
translation_key="yellow_drum_page_counter",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.yellow_drum_counter,
),
BrotherSensorEntityDescription(
key="belt_unit_remaining_life",
translation_key="belt_unit_remaining_life",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.belt_unit_remaining_life,
),
BrotherSensorEntityDescription(
key="fuser_remaining_life",
translation_key="fuser_remaining_life",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.fuser_remaining_life,
),
BrotherSensorEntityDescription(
key="laser_remaining_life",
translation_key="laser_remaining_life",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.laser_remaining_life,
),
BrotherSensorEntityDescription(
key="pf_kit_1_remaining_life",
translation_key="pf_kit_1_remaining_life",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.pf_kit_1_remaining_life,
),
BrotherSensorEntityDescription(
key="pf_kit_mp_remaining_life",
translation_key="pf_kit_mp_remaining_life",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.pf_kit_mp_remaining_life,
),
BrotherSensorEntityDescription(
key="black_toner_remaining",
translation_key="black_toner_remaining",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.black_toner_remaining,
),
BrotherSensorEntityDescription(
key="cyan_toner_remaining",
translation_key="cyan_toner_remaining",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.cyan_toner_remaining,
),
BrotherSensorEntityDescription(
key="magenta_toner_remaining",
translation_key="magenta_toner_remaining",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.magenta_toner_remaining,
),
BrotherSensorEntityDescription(
key="yellow_toner_remaining",
translation_key="yellow_toner_remaining",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.yellow_toner_remaining,
),
BrotherSensorEntityDescription(
key="black_ink_remaining",
translation_key="black_ink_remaining",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.black_ink_remaining,
),
BrotherSensorEntityDescription(
key="cyan_ink_remaining",
translation_key="cyan_ink_remaining",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.cyan_ink_remaining,
),
BrotherSensorEntityDescription(
key="magenta_ink_remaining",
translation_key="magenta_ink_remaining",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.magenta_ink_remaining,
),
BrotherSensorEntityDescription(
key="yellow_ink_remaining",
translation_key="yellow_ink_remaining",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
value=lambda data: data.yellow_ink_remaining,
),
BrotherSensorEntityDescription(
Expand Down
21 changes: 21 additions & 0 deletions homeassistant/components/gatus/icons.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"entity": {
"sensor": {
"dns_rcode": {
"default": "mdi:dns"
},
"last_event": {
"default": "mdi:history",
"state": {
"healthy": "mdi:check-circle-outline",
"resolved": "mdi:check-circle-outline",
"start": "mdi:play-circle-outline",
"unhealthy": "mdi:alert-circle-outline"
}
},
"status_code": {
"default": "mdi:list-status"
}
}
}
}
4 changes: 1 addition & 3 deletions homeassistant/components/gatus/quality_scale.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -71,9 +71,7 @@ rules:
status: exempt
comment: Entity names are dynamically provided by the Gatus service.
exception-translations: done
icon-translations:
status: exempt
comment: Entities use the connectivity device class for their icon and define no custom icons.
icon-translations: done
reconfiguration-flow: done
repair-issues:
status: exempt
Expand Down
Loading
Loading