diff --git a/homeassistant/components/sensor/tahoma.py b/homeassistant/components/sensor/tahoma.py index a59eb705498803..5918bd7c9f8b6e 100644 --- a/homeassistant/components/sensor/tahoma.py +++ b/homeassistant/components/sensor/tahoma.py @@ -56,6 +56,10 @@ def unit_of_measurement(self): return 'lx' if self.tahoma_device.type == 'Humidity Sensor': return '%' + if self.tahoma_device.type == 'rtds:RTDSContactSensor': + return None + if self.tahoma_device.type == 'rtds:RTDSMotionSensor': + return None def update(self): """Update the state.""" @@ -63,12 +67,21 @@ def update(self): if self.tahoma_device.type == 'io:LightIOSystemSensor': self.current_value = self.tahoma_device.active_states[ 'core:LuminanceState'] + self._available = bool(self.tahoma_device.active_states.get( + 'core:StatusState') == 'available') if self.tahoma_device.type == 'io:SomfyContactIOSystemSensor': self.current_value = self.tahoma_device.active_states[ 'core:ContactState'] - - self._available = bool(self.tahoma_device.active_states.get( - 'core:StatusState') == 'available') + self._available = bool(self.tahoma_device.active_states.get( + 'core:StatusState') == 'available') + if self.tahoma_device.type == 'rtds:RTDSContactSensor': + self.current_value = self.tahoma_device.active_states[ + 'core:ContactState'] + self._available = True + if self.tahoma_device.type == 'rtds:RTDSMotionSensor': + self.current_value = self.tahoma_device.active_states[ + 'core:OccupancyState'] + self._available = True _LOGGER.debug("Update %s, value: %d", self._name, self.current_value) diff --git a/homeassistant/components/tahoma.py b/homeassistant/components/tahoma.py index 64071ddb037561..366799b872c947 100644 --- a/homeassistant/components/tahoma.py +++ b/homeassistant/components/tahoma.py @@ -54,6 +54,8 @@ 'io:HorizontalAwningIOComponent': 'cover', 'io:OnOffLightIOComponent': 'switch', 'rtds:RTDSSmokeSensor': 'smoke', + 'rtds:RTDSContactSensor': 'sensor', + 'rtds:RTDSMotionSensor': 'sensor' }