Browse Source

Revert "Add binary_sensor for Tank Full status of dehumidifiers"

This reverts commit 5fd6dcde1d2e9822a83da043e2d4755ad289ef5d.
Jason Rumney 6 years ago
parent
commit
b4f3f4df6c

+ 0 - 6
README.md

@@ -31,9 +31,6 @@ Current temperature is displayed, and current humidity is available as a propert
 **Lock** (heaters and dehumidifiers)
 * **Child lock** (on/off)
 
-**Binary Sensor** (dehumidifiers)
-* **Tank full** (on/off)
-
 There was previously a sensor option, however this is easily achieved using a [template sensor](https://www.home-assistant.io/integrations/template/) and therefore is no longer supported.
 
 ---
@@ -104,9 +101,6 @@ goldair_climate:
 
     *Default value: false* 
 
-#### tank_full
-    *(boolean) (Optional)* Whether to surface this appliances's tank full sensor as a binary_sensor device (only supported for dehumidifiers).
-
 Heater gotchas
 --------------
 Goldair heaters have individual target temperatures for their Comfort and Eco modes, whereas Home Assistant only supports

+ 0 - 4
custom_components/goldair_climate/__init__.py

@@ -33,7 +33,6 @@ CONF_TYPE_FAN = 'fan'
 CONF_CLIMATE = 'climate'
 CONF_DISPLAY_LIGHT = 'display_light'
 CONF_CHILD_LOCK = 'child_lock'
-CONF_TANK_FULL = 'tank_full'
 
 PLATFORM_SCHEMA = vol.Schema({
     vol.Required(CONF_NAME): cv.string,
@@ -44,7 +43,6 @@ PLATFORM_SCHEMA = vol.Schema({
     vol.Optional(CONF_CLIMATE, default=True): cv.boolean,
     vol.Optional(CONF_DISPLAY_LIGHT, default=False): cv.boolean,
     vol.Optional(CONF_CHILD_LOCK, default=False): cv.boolean,
-    vol.Optional(CONF_TANK_FULL, default=False): cv.boolean,
 })
 
 CONFIG_SCHEMA = vol.Schema({
@@ -72,8 +70,6 @@ def setup(hass, config):
             load_platform(hass, 'light', DOMAIN, discovery_info, config)
         if device_config.get(CONF_CHILD_LOCK) == True:
             load_platform(hass, 'lock', DOMAIN, discovery_info, config)
-        if device_config.get(CONF_TANK_FULL) == True:
-            load_platform(hass, 'binary_sensor', DOMAIN, discovery_info, config)
 
     return True
 

+ 0 - 18
custom_components/goldair_climate/binary_sensor.py

@@ -1,18 +0,0 @@
-"""
-Setup for different kinds of Goldair climate devices
-"""
-from homeassistant.const import CONF_HOST
-from custom_components.goldair_climate import (
-    DOMAIN, CONF_TYPE, CONF_TYPE_HEATER, CONF_TYPE_DEHUMIDIFIER, CONF_TYPE_FAN
-)
-from custom_components.goldair_climate.dehumidifier.binary_sensor import GoldairDehumidifierTankFullBinarySensor
-
-def setup_platform(hass, config, add_devices, discovery_info=None):
-    """Set up the Goldair climate device according to its type."""
-    device = hass.data[DOMAIN][discovery_info[CONF_HOST]]
-    if discovery_info[CONF_TYPE] == CONF_TYPE_DEHUMIDIFIER:
-        add_devices([GoldairDehumidifierTankFullBinarySensor(device)])
-    if discovery_info[CONF_TYPE] == CONF_TYPE_HEATER:
-        raise ValueError('Goldair heaters do not support tank full sensors.')
-    if discovery_info[CONF_TYPE] == CONF_TYPE_FAN:
-        raise ValueError('Goldair fans do not support tank full sensors.')

+ 0 - 63
custom_components/goldair_climate/dehumidifier/binary_sensor.py

@@ -1,63 +0,0 @@
-"""
-Platform to sense whether the dehumidifier tank is full.
-"""
-
-from homeassistant.components.binary_sensor import (BinarySensorDevice, DEVICE_CLASS_PROBLEM)
-from custom_components.goldair_climate import GoldairTuyaDevice
-from custom_components.goldair_climate.dehumidifier.climate import (
-    ATTR_FAULT, FAULT_CODE_TO_DPS_CODE, PROPERTY_TO_DPS_ID
-)
-
-ATTR_FAULT_CODE = 'fault_code'
-FAULT_TANK = 8
-FAULT_NONE = 0
-
-class GoldairDehumidifierTankFullBinarySensor(BinarySensorDevice):
-    """Representation of a Goldair WiFi-connected dehumidifier Tank sensor."""
-
-    def __init__(self, device):
-        """Initialize the binary sensor.
-        Args:
-            device (GoldairTuyaDevice): The device API instance."""
-        self._device = device
-        self._fault = None
-
-    @property
-    def should_poll(self):
-        """Return the polling state"""
-        return True
-
-    @property
-    def name(self):
-        """Return the name of the binary sensor."""
-        return self._device.name
-
-    @property
-    def is_on(self):
-        """Return true if the tank is full."""
-        if (self._fault is None):
-            return None
-        else:
-            return self._fault == FAULT_TANK
-
-    @property
-    def device_class(self):
-        """Return the class of device."""
-        return DEVICE_CLASS_PROBLEM
-
-    @property
-    def device_state_attributes(self):
-        """Return the state attributes"""
-        attrs = {ATTR_FAULT_CODE: self._fault}
-        # attrs.update(super().device_state_attributes)
-        return attrs
-
-    @property
-    def available(self):
-        """Return true if the device is available and value has not expired"""
-        return self._fault is not None
-
-    def update(self):
-        self._device.refresh()
-        self._fault = self._device.get_property(PROPERTY_TO_DPS_ID[ATTR_FAULT])
-