Use enums in ozw (#62088)
This commit is contained in:
parent
a0b6edc894
commit
1b66f3208d
3 changed files with 39 additions and 54 deletions
|
@ -2,18 +2,8 @@
|
||||||
from openzwavemqtt.const import CommandClass, ValueIndex, ValueType
|
from openzwavemqtt.const import CommandClass, ValueIndex, ValueType
|
||||||
|
|
||||||
from homeassistant.components.binary_sensor import (
|
from homeassistant.components.binary_sensor import (
|
||||||
DEVICE_CLASS_DOOR,
|
|
||||||
DEVICE_CLASS_GAS,
|
|
||||||
DEVICE_CLASS_HEAT,
|
|
||||||
DEVICE_CLASS_LOCK,
|
|
||||||
DEVICE_CLASS_MOISTURE,
|
|
||||||
DEVICE_CLASS_MOTION,
|
|
||||||
DEVICE_CLASS_POWER,
|
|
||||||
DEVICE_CLASS_PROBLEM,
|
|
||||||
DEVICE_CLASS_SAFETY,
|
|
||||||
DEVICE_CLASS_SMOKE,
|
|
||||||
DEVICE_CLASS_SOUND,
|
|
||||||
DOMAIN as BINARY_SENSOR_DOMAIN,
|
DOMAIN as BINARY_SENSOR_DOMAIN,
|
||||||
|
BinarySensorDeviceClass,
|
||||||
BinarySensorEntity,
|
BinarySensorEntity,
|
||||||
)
|
)
|
||||||
from homeassistant.core import callback
|
from homeassistant.core import callback
|
||||||
|
@ -38,79 +28,79 @@ NOTIFICATION_SENSORS = [
|
||||||
# Assuming here that Value 1 and 2 are not present at the same time
|
# Assuming here that Value 1 and 2 are not present at the same time
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_SMOKE_ALARM,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_SMOKE_ALARM,
|
||||||
NOTIFICATION_VALUES: [1, 2],
|
NOTIFICATION_VALUES: [1, 2],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_SMOKE,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.SMOKE,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 1: Smoke Alarm - All other Value Id's
|
# Index 1: Smoke Alarm - All other Value Id's
|
||||||
# Create as disabled sensors
|
# Create as disabled sensors
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_SMOKE_ALARM,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_SMOKE_ALARM,
|
||||||
NOTIFICATION_VALUES: [3, 4, 5, 6, 7, 8],
|
NOTIFICATION_VALUES: [3, 4, 5, 6, 7, 8],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_SMOKE,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.SMOKE,
|
||||||
NOTIFICATION_SENSOR_ENABLED: False,
|
NOTIFICATION_SENSOR_ENABLED: False,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 2: Carbon Monoxide - Value Id's 1 and 2
|
# Index 2: Carbon Monoxide - Value Id's 1 and 2
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_CARBON_MONOOXIDE,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_CARBON_MONOOXIDE,
|
||||||
NOTIFICATION_VALUES: [1, 2],
|
NOTIFICATION_VALUES: [1, 2],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_GAS,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.GAS,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 2: Carbon Monoxide - All other Value Id's
|
# Index 2: Carbon Monoxide - All other Value Id's
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_CARBON_MONOOXIDE,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_CARBON_MONOOXIDE,
|
||||||
NOTIFICATION_VALUES: [4, 5, 7],
|
NOTIFICATION_VALUES: [4, 5, 7],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_GAS,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.GAS,
|
||||||
NOTIFICATION_SENSOR_ENABLED: False,
|
NOTIFICATION_SENSOR_ENABLED: False,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 3: Carbon Dioxide - Value Id's 1 and 2
|
# Index 3: Carbon Dioxide - Value Id's 1 and 2
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_CARBON_DIOXIDE,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_CARBON_DIOXIDE,
|
||||||
NOTIFICATION_VALUES: [1, 2],
|
NOTIFICATION_VALUES: [1, 2],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_GAS,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.GAS,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 3: Carbon Dioxide - All other Value Id's
|
# Index 3: Carbon Dioxide - All other Value Id's
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_CARBON_DIOXIDE,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_CARBON_DIOXIDE,
|
||||||
NOTIFICATION_VALUES: [4, 5, 7],
|
NOTIFICATION_VALUES: [4, 5, 7],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_GAS,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.GAS,
|
||||||
NOTIFICATION_SENSOR_ENABLED: False,
|
NOTIFICATION_SENSOR_ENABLED: False,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 4: Heat - Value Id's 1, 2, 5, 6 (heat/underheat)
|
# Index 4: Heat - Value Id's 1, 2, 5, 6 (heat/underheat)
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_HEAT,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_HEAT,
|
||||||
NOTIFICATION_VALUES: [1, 2, 5, 6],
|
NOTIFICATION_VALUES: [1, 2, 5, 6],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_HEAT,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.HEAT,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 4: Heat - All other Value Id's
|
# Index 4: Heat - All other Value Id's
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_HEAT,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_HEAT,
|
||||||
NOTIFICATION_VALUES: [3, 4, 8, 10, 11],
|
NOTIFICATION_VALUES: [3, 4, 8, 10, 11],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_HEAT,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.HEAT,
|
||||||
NOTIFICATION_SENSOR_ENABLED: False,
|
NOTIFICATION_SENSOR_ENABLED: False,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 5: Water - Value Id's 1, 2, 3, 4
|
# Index 5: Water - Value Id's 1, 2, 3, 4
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_WATER,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_WATER,
|
||||||
NOTIFICATION_VALUES: [1, 2, 3, 4],
|
NOTIFICATION_VALUES: [1, 2, 3, 4],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_MOISTURE,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.MOISTURE,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 5: Water - All other Value Id's
|
# Index 5: Water - All other Value Id's
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_WATER,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_WATER,
|
||||||
NOTIFICATION_VALUES: [5],
|
NOTIFICATION_VALUES: [5],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_MOISTURE,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.MOISTURE,
|
||||||
NOTIFICATION_SENSOR_ENABLED: False,
|
NOTIFICATION_SENSOR_ENABLED: False,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 6: Access Control - Value Id's 1, 2, 3, 4 (Lock)
|
# Index 6: Access Control - Value Id's 1, 2, 3, 4 (Lock)
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_ACCESS_CONTROL,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_ACCESS_CONTROL,
|
||||||
NOTIFICATION_VALUES: [1, 2, 3, 4],
|
NOTIFICATION_VALUES: [1, 2, 3, 4],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_LOCK,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.LOCK,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 6: Access Control - Value Id 22 (door/window open)
|
# Index 6: Access Control - Value Id 22 (door/window open)
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_ACCESS_CONTROL,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_ACCESS_CONTROL,
|
||||||
NOTIFICATION_VALUES: [22],
|
NOTIFICATION_VALUES: [22],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_DOOR,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.DOOR,
|
||||||
NOTIFICATION_OFF_VALUE: 23,
|
NOTIFICATION_OFF_VALUE: 23,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -118,32 +108,32 @@ NOTIFICATION_SENSORS = [
|
||||||
# Assuming that value 1 and 2 are not present at the same time
|
# Assuming that value 1 and 2 are not present at the same time
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_HOME_SECURITY,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_HOME_SECURITY,
|
||||||
NOTIFICATION_VALUES: [1, 2],
|
NOTIFICATION_VALUES: [1, 2],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_SAFETY,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.SAFETY,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 7: Home Security - Value Id's 3, 4, 9 (tampering)
|
# Index 7: Home Security - Value Id's 3, 4, 9 (tampering)
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_HOME_SECURITY,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_HOME_SECURITY,
|
||||||
NOTIFICATION_VALUES: [3, 4, 9],
|
NOTIFICATION_VALUES: [3, 4, 9],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_SAFETY,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.SAFETY,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 7: Home Security - Value Id's 5, 6 (glass breakage)
|
# Index 7: Home Security - Value Id's 5, 6 (glass breakage)
|
||||||
# Assuming that value 5 and 6 are not present at the same time
|
# Assuming that value 5 and 6 are not present at the same time
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_HOME_SECURITY,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_HOME_SECURITY,
|
||||||
NOTIFICATION_VALUES: [5, 6],
|
NOTIFICATION_VALUES: [5, 6],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_SAFETY,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.SAFETY,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 7: Home Security - Value Id's 7, 8 (motion)
|
# Index 7: Home Security - Value Id's 7, 8 (motion)
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_HOME_SECURITY,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_HOME_SECURITY,
|
||||||
NOTIFICATION_VALUES: [7, 8],
|
NOTIFICATION_VALUES: [7, 8],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_MOTION,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.MOTION,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 8: Power management - Values 1...9
|
# Index 8: Power management - Values 1...9
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_POWER_MANAGEMENT,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_POWER_MANAGEMENT,
|
||||||
NOTIFICATION_VALUES: [1, 2, 3, 4, 5, 6, 7, 8, 9],
|
NOTIFICATION_VALUES: [1, 2, 3, 4, 5, 6, 7, 8, 9],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_POWER,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.POWER,
|
||||||
NOTIFICATION_SENSOR_ENABLED: False,
|
NOTIFICATION_SENSOR_ENABLED: False,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -151,7 +141,7 @@ NOTIFICATION_SENSORS = [
|
||||||
# Battery values (mutually exclusive)
|
# Battery values (mutually exclusive)
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_POWER_MANAGEMENT,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_POWER_MANAGEMENT,
|
||||||
NOTIFICATION_VALUES: [10, 11, 12, 13, 14, 15],
|
NOTIFICATION_VALUES: [10, 11, 12, 13, 14, 15],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_POWER,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.POWER,
|
||||||
NOTIFICATION_SENSOR_ENABLED: False,
|
NOTIFICATION_SENSOR_ENABLED: False,
|
||||||
NOTIFICATION_OFF_VALUE: None,
|
NOTIFICATION_OFF_VALUE: None,
|
||||||
},
|
},
|
||||||
|
@ -159,14 +149,14 @@ NOTIFICATION_SENSORS = [
|
||||||
# Index 9: System - Value Id's 1, 2, 6, 7
|
# Index 9: System - Value Id's 1, 2, 6, 7
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_SYSTEM,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_SYSTEM,
|
||||||
NOTIFICATION_VALUES: [1, 2, 6, 7],
|
NOTIFICATION_VALUES: [1, 2, 6, 7],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_PROBLEM,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.PROBLEM,
|
||||||
NOTIFICATION_SENSOR_ENABLED: False,
|
NOTIFICATION_SENSOR_ENABLED: False,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 10: Emergency - Value Id's 1, 2, 3
|
# Index 10: Emergency - Value Id's 1, 2, 3
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_EMERGENCY,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_EMERGENCY,
|
||||||
NOTIFICATION_VALUES: [1, 2, 3],
|
NOTIFICATION_VALUES: [1, 2, 3],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_PROBLEM,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.PROBLEM,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 11: Clock - Value Id's 1, 2
|
# Index 11: Clock - Value Id's 1, 2
|
||||||
|
@ -213,20 +203,20 @@ NOTIFICATION_SENSORS = [
|
||||||
# Index 14: Siren
|
# Index 14: Siren
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_SIREN,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_SIREN,
|
||||||
NOTIFICATION_VALUES: [1],
|
NOTIFICATION_VALUES: [1],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_SOUND,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.SOUND,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 15: Water valve
|
# Index 15: Water valve
|
||||||
# ignore non-boolean values
|
# ignore non-boolean values
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_WATER_VALVE,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_WATER_VALVE,
|
||||||
NOTIFICATION_VALUES: [3, 4],
|
NOTIFICATION_VALUES: [3, 4],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_PROBLEM,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.PROBLEM,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 16: Weather
|
# Index 16: Weather
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_WEATHER,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_WEATHER,
|
||||||
NOTIFICATION_VALUES: [1, 2],
|
NOTIFICATION_VALUES: [1, 2],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_PROBLEM,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.PROBLEM,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 17: Irrigation
|
# Index 17: Irrigation
|
||||||
|
@ -239,13 +229,13 @@ NOTIFICATION_SENSORS = [
|
||||||
# Index 18: Gas
|
# Index 18: Gas
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_GAS,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_GAS,
|
||||||
NOTIFICATION_VALUES: [1, 2, 3, 4],
|
NOTIFICATION_VALUES: [1, 2, 3, 4],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_GAS,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.GAS,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
# Index 18: Gas
|
# Index 18: Gas
|
||||||
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_GAS,
|
NOTIFICATION_TYPE: ValueIndex.NOTIFICATION_GAS,
|
||||||
NOTIFICATION_VALUES: [6],
|
NOTIFICATION_VALUES: [6],
|
||||||
NOTIFICATION_DEVICE_CLASS: DEVICE_CLASS_PROBLEM,
|
NOTIFICATION_DEVICE_CLASS: BinarySensorDeviceClass.PROBLEM,
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
|
@ -3,10 +3,10 @@ from openzwavemqtt.const import CommandClass
|
||||||
|
|
||||||
from homeassistant.components.cover import (
|
from homeassistant.components.cover import (
|
||||||
ATTR_POSITION,
|
ATTR_POSITION,
|
||||||
DEVICE_CLASS_GARAGE,
|
|
||||||
DOMAIN as COVER_DOMAIN,
|
DOMAIN as COVER_DOMAIN,
|
||||||
SUPPORT_CLOSE,
|
SUPPORT_CLOSE,
|
||||||
SUPPORT_OPEN,
|
SUPPORT_OPEN,
|
||||||
|
CoverDeviceClass,
|
||||||
CoverEntity,
|
CoverEntity,
|
||||||
)
|
)
|
||||||
from homeassistant.core import callback
|
from homeassistant.core import callback
|
||||||
|
@ -94,8 +94,8 @@ class ZwaveGarageDoorBarrier(ZWaveDeviceEntity, CoverEntity):
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def device_class(self):
|
def device_class(self):
|
||||||
"""Return the class of this device, from component DEVICE_CLASSES."""
|
"""Return the class of this device, from CoverDeviceClass."""
|
||||||
return DEVICE_CLASS_GARAGE
|
return CoverDeviceClass.GARAGE
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def is_opening(self):
|
def is_opening(self):
|
||||||
|
|
|
@ -5,13 +5,8 @@ import logging
|
||||||
from openzwavemqtt.const import CommandClass, ValueType
|
from openzwavemqtt.const import CommandClass, ValueType
|
||||||
|
|
||||||
from homeassistant.components.sensor import (
|
from homeassistant.components.sensor import (
|
||||||
DEVICE_CLASS_BATTERY,
|
|
||||||
DEVICE_CLASS_HUMIDITY,
|
|
||||||
DEVICE_CLASS_ILLUMINANCE,
|
|
||||||
DEVICE_CLASS_POWER,
|
|
||||||
DEVICE_CLASS_PRESSURE,
|
|
||||||
DEVICE_CLASS_TEMPERATURE,
|
|
||||||
DOMAIN as SENSOR_DOMAIN,
|
DOMAIN as SENSOR_DOMAIN,
|
||||||
|
SensorDeviceClass,
|
||||||
SensorEntity,
|
SensorEntity,
|
||||||
)
|
)
|
||||||
from homeassistant.const import TEMP_CELSIUS, TEMP_FAHRENHEIT
|
from homeassistant.const import TEMP_CELSIUS, TEMP_FAHRENHEIT
|
||||||
|
@ -65,23 +60,23 @@ class ZwaveSensorBase(ZWaveDeviceEntity, SensorEntity):
|
||||||
def device_class(self):
|
def device_class(self):
|
||||||
"""Return the device class of the sensor."""
|
"""Return the device class of the sensor."""
|
||||||
if self.values.primary.command_class == CommandClass.BATTERY:
|
if self.values.primary.command_class == CommandClass.BATTERY:
|
||||||
return DEVICE_CLASS_BATTERY
|
return SensorDeviceClass.BATTERY
|
||||||
if self.values.primary.command_class == CommandClass.METER:
|
if self.values.primary.command_class == CommandClass.METER:
|
||||||
return DEVICE_CLASS_POWER
|
return SensorDeviceClass.POWER
|
||||||
if "Temperature" in self.values.primary.label:
|
if "Temperature" in self.values.primary.label:
|
||||||
return DEVICE_CLASS_TEMPERATURE
|
return SensorDeviceClass.TEMPERATURE
|
||||||
if "Illuminance" in self.values.primary.label:
|
if "Illuminance" in self.values.primary.label:
|
||||||
return DEVICE_CLASS_ILLUMINANCE
|
return SensorDeviceClass.ILLUMINANCE
|
||||||
if "Humidity" in self.values.primary.label:
|
if "Humidity" in self.values.primary.label:
|
||||||
return DEVICE_CLASS_HUMIDITY
|
return SensorDeviceClass.HUMIDITY
|
||||||
if "Power" in self.values.primary.label:
|
if "Power" in self.values.primary.label:
|
||||||
return DEVICE_CLASS_POWER
|
return SensorDeviceClass.POWER
|
||||||
if "Energy" in self.values.primary.label:
|
if "Energy" in self.values.primary.label:
|
||||||
return DEVICE_CLASS_POWER
|
return SensorDeviceClass.POWER
|
||||||
if "Electric" in self.values.primary.label:
|
if "Electric" in self.values.primary.label:
|
||||||
return DEVICE_CLASS_POWER
|
return SensorDeviceClass.POWER
|
||||||
if "Pressure" in self.values.primary.label:
|
if "Pressure" in self.values.primary.label:
|
||||||
return DEVICE_CLASS_PRESSURE
|
return SensorDeviceClass.PRESSURE
|
||||||
return None
|
return None
|
||||||
|
|
||||||
@property
|
@property
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue