Added IPAreaThermostat and an exception-list for HM_IGNORE_DISCOVERY_NODE (#13171)

This commit is contained in:
Andreas Wolter 2018-03-13 21:54:09 +01:00 committed by Daniel Perna
parent dd48fb04a3
commit 3e7a737bff
2 changed files with 9 additions and 2 deletions

View file

@ -68,7 +68,7 @@ HM_DEVICE_TYPES = {
'WeatherStation', 'ThermostatWall2', 'TemperatureDiffSensor',
'TemperatureSensor', 'CO2Sensor', 'IPSwitchPowermeter', 'HMWIOSwitch',
'FillingLevel', 'ValveDrive', 'EcoLogic', 'IPThermostatWall',
'IPSmoke', 'RFSiren', 'PresenceIP'],
'IPSmoke', 'RFSiren', 'PresenceIP', 'IPAreaThermostat'],
DISCOVER_CLIMATE: [
'Thermostat', 'ThermostatWall', 'MAXThermostat', 'ThermostatWall2',
'MAXWallThermostat', 'IPThermostat', 'IPThermostatWall',
@ -86,6 +86,10 @@ HM_IGNORE_DISCOVERY_NODE = [
'ACTUAL_HUMIDITY'
]
HM_IGNORE_DISCOVERY_NODE_EXCEPTIONS = {
'ACTUAL_TEMPERATURE': ['IPAreaThermostat'],
}
HM_ATTRIBUTE_SUPPORT = {
'LOWBAT': ['battery', {0: 'High', 1: 'Low'}],
'LOW_BAT': ['battery', {0: 'High', 1: 'Low'}],
@ -505,7 +509,8 @@ def _get_devices(hass, discovery_type, keys, interface):
# Generate options for 1...n elements with 1...n parameters
for param, channels in metadata.items():
if param in HM_IGNORE_DISCOVERY_NODE:
if param in HM_IGNORE_DISCOVERY_NODE and class_name not in \
HM_IGNORE_DISCOVERY_NODE_EXCEPTIONS.get(param, []):
continue
# Add devices

View file

@ -35,6 +35,7 @@ HM_STATE_HA_CAST = {
HM_UNIT_HA_CAST = {
'HUMIDITY': '%',
'TEMPERATURE': '°C',
'ACTUAL_TEMPERATURE': '°C',
'BRIGHTNESS': '#',
'POWER': 'W',
'CURRENT': 'mA',
@ -57,6 +58,7 @@ HM_ICON_HA_CAST = {
'WIND_SPEED': 'mdi:weather-windy',
'HUMIDITY': 'mdi:water-percent',
'TEMPERATURE': 'mdi:thermometer',
'ACTUAL_TEMPERATURE': 'mdi:thermometer',
'LUX': 'mdi:weather-sunny',
'BRIGHTNESS': 'mdi:invert-colors',
'POWER': 'mdi:flash-red-eye',