Use new enums in tesla_wall_connector (#62434)

Co-authored-by: epenet <epenet@users.noreply.github.com>
This commit is contained in:
epenet 2021-12-20 20:58:17 +01:00 committed by GitHub
parent 666e14b11d
commit 418221bd21
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 32 additions and 36 deletions

View File

@ -3,12 +3,11 @@ from dataclasses import dataclass
import logging
from homeassistant.components.binary_sensor import (
DEVICE_CLASS_BATTERY_CHARGING,
DEVICE_CLASS_PLUG,
BinarySensorDeviceClass,
BinarySensorEntity,
BinarySensorEntityDescription,
)
from homeassistant.const import ENTITY_CATEGORY_DIAGNOSTIC
from homeassistant.helpers.entity import EntityCategory
from . import (
WallConnectorData,
@ -32,16 +31,16 @@ WALL_CONNECTOR_SENSORS = [
WallConnectorBinarySensorDescription(
key="vehicle_connected",
name=prefix_entity_name("Vehicle connected"),
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
entity_category=EntityCategory.DIAGNOSTIC,
value_fn=lambda data: data[WALLCONNECTOR_DATA_VITALS].vehicle_connected,
device_class=DEVICE_CLASS_PLUG,
device_class=BinarySensorDeviceClass.PLUG,
),
WallConnectorBinarySensorDescription(
key="contactor_closed",
name=prefix_entity_name("Contactor closed"),
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
entity_category=EntityCategory.DIAGNOSTIC,
value_fn=lambda data: data[WALLCONNECTOR_DATA_VITALS].contactor_closed,
device_class=DEVICE_CLASS_BATTERY_CHARGING,
device_class=BinarySensorDeviceClass.BATTERY_CHARGING,
),
]

View File

@ -3,22 +3,19 @@ from dataclasses import dataclass
import logging
from homeassistant.components.sensor import (
STATE_CLASS_MEASUREMENT,
STATE_CLASS_TOTAL_INCREASING,
SensorDeviceClass,
SensorEntity,
SensorEntityDescription,
SensorStateClass,
)
from homeassistant.const import (
DEVICE_CLASS_ENERGY,
DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_VOLTAGE,
ELECTRIC_CURRENT_AMPERE,
ELECTRIC_POTENTIAL_VOLT,
ENERGY_WATT_HOUR,
ENTITY_CATEGORY_DIAGNOSTIC,
FREQUENCY_HERTZ,
TEMP_CELSIUS,
)
from homeassistant.helpers.entity import EntityCategory
from . import (
WallConnectorData,
@ -42,7 +39,7 @@ WALL_CONNECTOR_SENSORS = [
WallConnectorSensorDescription(
key="evse_state",
name=prefix_entity_name("State"),
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
entity_category=EntityCategory.DIAGNOSTIC,
value_fn=lambda data: data[WALLCONNECTOR_DATA_VITALS].evse_state,
),
WallConnectorSensorDescription(
@ -50,82 +47,82 @@ WALL_CONNECTOR_SENSORS = [
name=prefix_entity_name("Handle Temperature"),
native_unit_of_measurement=TEMP_CELSIUS,
value_fn=lambda data: round(data[WALLCONNECTOR_DATA_VITALS].handle_temp_c, 1),
device_class=DEVICE_CLASS_TEMPERATURE,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
state_class=STATE_CLASS_MEASUREMENT,
device_class=SensorDeviceClass.TEMPERATURE,
entity_category=EntityCategory.DIAGNOSTIC,
state_class=SensorStateClass.MEASUREMENT,
),
WallConnectorSensorDescription(
key="grid_v",
name=prefix_entity_name("Grid Voltage"),
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
value_fn=lambda data: round(data[WALLCONNECTOR_DATA_VITALS].grid_v, 1),
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
device_class=SensorDeviceClass.VOLTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
WallConnectorSensorDescription(
key="grid_hz",
name=prefix_entity_name("Grid Frequency"),
native_unit_of_measurement=FREQUENCY_HERTZ,
value_fn=lambda data: round(data[WALLCONNECTOR_DATA_VITALS].grid_hz, 3),
state_class=STATE_CLASS_MEASUREMENT,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
WallConnectorSensorDescription(
key="current_a_a",
name=prefix_entity_name("Phase A Current"),
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
value_fn=lambda data: data[WALLCONNECTOR_DATA_VITALS].currentA_a,
state_class=STATE_CLASS_MEASUREMENT,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
WallConnectorSensorDescription(
key="current_b_a",
name=prefix_entity_name("Phase B Current"),
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
value_fn=lambda data: data[WALLCONNECTOR_DATA_VITALS].currentB_a,
state_class=STATE_CLASS_MEASUREMENT,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
WallConnectorSensorDescription(
key="current_c_a",
name=prefix_entity_name("Phase C Current"),
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
value_fn=lambda data: data[WALLCONNECTOR_DATA_VITALS].currentC_a,
state_class=STATE_CLASS_MEASUREMENT,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
WallConnectorSensorDescription(
key="voltage_a_v",
name=prefix_entity_name("Phase A Voltage"),
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
value_fn=lambda data: data[WALLCONNECTOR_DATA_VITALS].voltageA_v,
state_class=STATE_CLASS_MEASUREMENT,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
WallConnectorSensorDescription(
key="voltage_b_v",
name=prefix_entity_name("Phase B Voltage"),
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
value_fn=lambda data: data[WALLCONNECTOR_DATA_VITALS].voltageB_v,
state_class=STATE_CLASS_MEASUREMENT,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
WallConnectorSensorDescription(
key="voltage_c_v",
name=prefix_entity_name("Phase C Voltage"),
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
value_fn=lambda data: data[WALLCONNECTOR_DATA_VITALS].voltageC_v,
state_class=STATE_CLASS_MEASUREMENT,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
WallConnectorSensorDescription(
key="energy_kWh",
name=prefix_entity_name("Energy"),
native_unit_of_measurement=ENERGY_WATT_HOUR,
value_fn=lambda data: data[WALLCONNECTOR_DATA_LIFETIME].energy_wh,
state_class=STATE_CLASS_TOTAL_INCREASING,
device_class=DEVICE_CLASS_ENERGY,
state_class=SensorStateClass.TOTAL_INCREASING,
device_class=SensorDeviceClass.ENERGY,
),
]