hass-core/homeassistant/components/binary_sensor/tcp.py

31 lines
897 B
Python

"""
homeassistant.components.binary_sensor.tcp
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Provides a binary_sensor which gets its values from a TCP socket.
"""
import logging
from homeassistant.components.binary_sensor import BinarySensorDevice
from homeassistant.components.tcp import DOMAIN, CONF_VALUE_ON
from homeassistant.components.sensor.tcp import Sensor
DEPENDENCIES = [DOMAIN]
_LOGGER = logging.getLogger(__name__)
def setup_platform(hass, config, add_entities, discovery_info=None):
""" Create the BinarySensor. """
if not BinarySensor.validate_config(config):
return False
add_entities((BinarySensor(hass, config),))
class BinarySensor(Sensor, BinarySensorDevice):
""" A binary sensor which is on when its state == CONF_VALUE_ON. """
required = (CONF_VALUE_ON,)
@property
def is_on(self):
return self._state == self._config[CONF_VALUE_ON]