Migrate Renault to new entity naming style (#74709)
This commit is contained in:
parent
1cf8b76124
commit
d208bd461d
5 changed files with 24 additions and 32 deletions
|
@ -85,7 +85,7 @@ BINARY_SENSOR_TYPES: tuple[RenaultBinarySensorEntityDescription, ...] = tuple(
|
|||
key="plugged_in",
|
||||
coordinator="battery",
|
||||
device_class=BinarySensorDeviceClass.PLUG,
|
||||
name="Plugged In",
|
||||
name="Plugged in",
|
||||
on_key="plugStatus",
|
||||
on_value=PlugState.PLUGGED.value,
|
||||
),
|
||||
|
@ -130,7 +130,7 @@ BINARY_SENSOR_TYPES: tuple[RenaultBinarySensorEntityDescription, ...] = tuple(
|
|||
coordinator="lock_status",
|
||||
# On means open, Off means closed
|
||||
device_class=BinarySensorDeviceClass.DOOR,
|
||||
name=f"{door} Door",
|
||||
name=f"{door.capitalize()} door",
|
||||
on_key=f"doorStatus{door.replace(' ','')}",
|
||||
on_value="open",
|
||||
)
|
||||
|
|
|
@ -71,13 +71,13 @@ BUTTON_TYPES: tuple[RenaultButtonEntityDescription, ...] = (
|
|||
async_press=_start_air_conditioner,
|
||||
key="start_air_conditioner",
|
||||
icon="mdi:air-conditioner",
|
||||
name="Start Air Conditioner",
|
||||
name="Start air conditioner",
|
||||
),
|
||||
RenaultButtonEntityDescription(
|
||||
async_press=_start_charge,
|
||||
key="start_charge",
|
||||
icon="mdi:ev-station",
|
||||
name="Start Charge",
|
||||
name="Start charge",
|
||||
requires_electricity=True,
|
||||
),
|
||||
)
|
||||
|
|
|
@ -4,7 +4,6 @@ from __future__ import annotations
|
|||
from dataclasses import dataclass
|
||||
from typing import cast
|
||||
|
||||
from homeassistant.const import ATTR_NAME
|
||||
from homeassistant.helpers.entity import Entity, EntityDescription
|
||||
from homeassistant.helpers.typing import StateType
|
||||
from homeassistant.helpers.update_coordinator import CoordinatorEntity
|
||||
|
@ -28,6 +27,7 @@ class RenaultDataEntityDescription(EntityDescription, RenaultDataRequiredKeysMix
|
|||
class RenaultEntity(Entity):
|
||||
"""Implementation of a Renault entity with a data coordinator."""
|
||||
|
||||
_attr_has_entity_name = True
|
||||
entity_description: EntityDescription
|
||||
|
||||
def __init__(
|
||||
|
@ -41,14 +41,6 @@ class RenaultEntity(Entity):
|
|||
self._attr_device_info = self.vehicle.device_info
|
||||
self._attr_unique_id = f"{self.vehicle.details.vin}_{description.key}".lower()
|
||||
|
||||
@property
|
||||
def name(self) -> str:
|
||||
"""Return the name of the entity.
|
||||
|
||||
Overridden to include the device name.
|
||||
"""
|
||||
return f"{self.vehicle.device_info[ATTR_NAME]} {self.entity_description.name}"
|
||||
|
||||
|
||||
class RenaultDataEntity(
|
||||
CoordinatorEntity[RenaultDataUpdateCoordinator[T]], RenaultEntity
|
||||
|
|
|
@ -98,7 +98,7 @@ SENSOR_TYPES: tuple[RenaultSelectEntityDescription, ...] = (
|
|||
data_key="chargeMode",
|
||||
device_class=DEVICE_CLASS_CHARGE_MODE,
|
||||
icon_lambda=_get_charge_mode_icon,
|
||||
name="Charge Mode",
|
||||
name="Charge mode",
|
||||
options=["always", "always_charging", "schedule_mode"],
|
||||
),
|
||||
)
|
||||
|
|
|
@ -164,7 +164,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
data_key="batteryLevel",
|
||||
device_class=SensorDeviceClass.BATTERY,
|
||||
entity_class=RenaultSensor[KamereonVehicleBatteryStatusData],
|
||||
name="Battery Level",
|
||||
name="Battery level",
|
||||
native_unit_of_measurement=PERCENTAGE,
|
||||
state_class=SensorStateClass.MEASUREMENT,
|
||||
),
|
||||
|
@ -175,7 +175,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
device_class=DEVICE_CLASS_CHARGE_STATE,
|
||||
entity_class=RenaultSensor[KamereonVehicleBatteryStatusData],
|
||||
icon_lambda=_get_charge_state_icon,
|
||||
name="Charge State",
|
||||
name="Charge state",
|
||||
value_lambda=_get_charge_state_formatted,
|
||||
),
|
||||
RenaultSensorEntityDescription(
|
||||
|
@ -184,7 +184,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
data_key="chargingRemainingTime",
|
||||
entity_class=RenaultSensor[KamereonVehicleBatteryStatusData],
|
||||
icon="mdi:timer",
|
||||
name="Charging Remaining Time",
|
||||
name="Charging remaining time",
|
||||
native_unit_of_measurement=TIME_MINUTES,
|
||||
state_class=SensorStateClass.MEASUREMENT,
|
||||
),
|
||||
|
@ -195,7 +195,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
data_key="chargingInstantaneousPower",
|
||||
device_class=SensorDeviceClass.CURRENT,
|
||||
entity_class=RenaultSensor[KamereonVehicleBatteryStatusData],
|
||||
name="Charging Power",
|
||||
name="Charging power",
|
||||
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
|
||||
state_class=SensorStateClass.MEASUREMENT,
|
||||
),
|
||||
|
@ -206,7 +206,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
data_key="chargingInstantaneousPower",
|
||||
device_class=SensorDeviceClass.POWER,
|
||||
entity_class=RenaultSensor[KamereonVehicleBatteryStatusData],
|
||||
name="Charging Power",
|
||||
name="Charging power",
|
||||
native_unit_of_measurement=POWER_KILO_WATT,
|
||||
state_class=SensorStateClass.MEASUREMENT,
|
||||
value_lambda=_get_charging_power,
|
||||
|
@ -218,7 +218,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
device_class=DEVICE_CLASS_PLUG_STATE,
|
||||
entity_class=RenaultSensor[KamereonVehicleBatteryStatusData],
|
||||
icon_lambda=_get_plug_state_icon,
|
||||
name="Plug State",
|
||||
name="Plug state",
|
||||
value_lambda=_get_plug_state_formatted,
|
||||
),
|
||||
RenaultSensorEntityDescription(
|
||||
|
@ -227,7 +227,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
data_key="batteryAutonomy",
|
||||
entity_class=RenaultSensor[KamereonVehicleBatteryStatusData],
|
||||
icon="mdi:ev-station",
|
||||
name="Battery Autonomy",
|
||||
name="Battery autonomy",
|
||||
native_unit_of_measurement=LENGTH_KILOMETERS,
|
||||
state_class=SensorStateClass.MEASUREMENT,
|
||||
),
|
||||
|
@ -237,7 +237,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
data_key="batteryAvailableEnergy",
|
||||
entity_class=RenaultSensor[KamereonVehicleBatteryStatusData],
|
||||
device_class=SensorDeviceClass.ENERGY,
|
||||
name="Battery Available Energy",
|
||||
name="Battery available energy",
|
||||
native_unit_of_measurement=ENERGY_KILO_WATT_HOUR,
|
||||
state_class=SensorStateClass.MEASUREMENT,
|
||||
),
|
||||
|
@ -247,7 +247,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
data_key="batteryTemperature",
|
||||
device_class=SensorDeviceClass.TEMPERATURE,
|
||||
entity_class=RenaultSensor[KamereonVehicleBatteryStatusData],
|
||||
name="Battery Temperature",
|
||||
name="Battery temperature",
|
||||
native_unit_of_measurement=TEMP_CELSIUS,
|
||||
state_class=SensorStateClass.MEASUREMENT,
|
||||
),
|
||||
|
@ -258,7 +258,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
data_key="timestamp",
|
||||
entity_class=RenaultSensor[KamereonVehicleBatteryStatusData],
|
||||
entity_registry_enabled_default=False,
|
||||
name="Battery Last Activity",
|
||||
name="Battery last activity",
|
||||
value_lambda=_get_utc_value,
|
||||
),
|
||||
RenaultSensorEntityDescription(
|
||||
|
@ -278,7 +278,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
data_key="fuelAutonomy",
|
||||
entity_class=RenaultSensor[KamereonVehicleCockpitData],
|
||||
icon="mdi:gas-station",
|
||||
name="Fuel Autonomy",
|
||||
name="Fuel autonomy",
|
||||
native_unit_of_measurement=LENGTH_KILOMETERS,
|
||||
state_class=SensorStateClass.MEASUREMENT,
|
||||
requires_fuel=True,
|
||||
|
@ -290,7 +290,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
data_key="fuelQuantity",
|
||||
entity_class=RenaultSensor[KamereonVehicleCockpitData],
|
||||
icon="mdi:fuel",
|
||||
name="Fuel Quantity",
|
||||
name="Fuel quantity",
|
||||
native_unit_of_measurement=VOLUME_LITERS,
|
||||
state_class=SensorStateClass.MEASUREMENT,
|
||||
requires_fuel=True,
|
||||
|
@ -302,7 +302,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
device_class=SensorDeviceClass.TEMPERATURE,
|
||||
data_key="externalTemperature",
|
||||
entity_class=RenaultSensor[KamereonVehicleHvacStatusData],
|
||||
name="Outside Temperature",
|
||||
name="Outside temperature",
|
||||
native_unit_of_measurement=TEMP_CELSIUS,
|
||||
state_class=SensorStateClass.MEASUREMENT,
|
||||
),
|
||||
|
@ -311,7 +311,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
coordinator="hvac_status",
|
||||
data_key="socThreshold",
|
||||
entity_class=RenaultSensor[KamereonVehicleHvacStatusData],
|
||||
name="HVAC SOC Threshold",
|
||||
name="HVAC SoC threshold",
|
||||
native_unit_of_measurement=PERCENTAGE,
|
||||
),
|
||||
RenaultSensorEntityDescription(
|
||||
|
@ -321,7 +321,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
data_key="lastUpdateTime",
|
||||
entity_class=RenaultSensor[KamereonVehicleHvacStatusData],
|
||||
entity_registry_enabled_default=False,
|
||||
name="HVAC Last Activity",
|
||||
name="HVAC last activity",
|
||||
value_lambda=_get_utc_value,
|
||||
),
|
||||
RenaultSensorEntityDescription(
|
||||
|
@ -331,7 +331,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
data_key="lastUpdateTime",
|
||||
entity_class=RenaultSensor[KamereonVehicleLocationData],
|
||||
entity_registry_enabled_default=False,
|
||||
name="Location Last Activity",
|
||||
name="Location last activity",
|
||||
value_lambda=_get_utc_value,
|
||||
),
|
||||
RenaultSensorEntityDescription(
|
||||
|
@ -339,7 +339,7 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
coordinator="res_state",
|
||||
data_key="details",
|
||||
entity_class=RenaultSensor[KamereonVehicleResStateData],
|
||||
name="Remote Engine Start",
|
||||
name="Remote engine start",
|
||||
),
|
||||
RenaultSensorEntityDescription(
|
||||
key="res_state_code",
|
||||
|
@ -347,6 +347,6 @@ SENSOR_TYPES: tuple[RenaultSensorEntityDescription[Any], ...] = (
|
|||
data_key="code",
|
||||
entity_class=RenaultSensor[KamereonVehicleResStateData],
|
||||
entity_registry_enabled_default=False,
|
||||
name="Remote Engine Start Code",
|
||||
name="Remote engine start code",
|
||||
),
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue