Пример #1
0
PLATFORM_SCHEMA = vol.Schema({
    vol.Required(CONF_PLATFORM):
    DOMAIN,
    vol.Optional(CONF_AUTOMATIC_ADD, default=True):
    cv.boolean,
    vol.Optional(CONF_DEVICES, default={}):
    vol.Schema({
        cv.string: {
            vol.Optional(CONF_NAME):
            cv.string,
            vol.Required(CONF_SENSOR_TYPE):
            cv.string,
            vol.Optional(CONF_UNIT_OF_MEASUREMENT, default=None):
            cv.string,
            vol.Optional(CONF_ALIASSES, default=[]):
            vol.All(cv.ensure_list, [cv.string]),
        },
    }),
})


def lookup_unit_for_sensor_type(sensor_type):
    """Get unit for sensor type.

    Async friendly.
    """
    from rflink.parser import UNITS, PACKET_FIELDS
    field_abbrev = {v: k for k, v in PACKET_FIELDS.items()}

    return UNITS.get(field_abbrev.get(sensor_type))
Пример #2
0
    DOMAIN, EVENT_KEY_COMMAND, EVENT_KEY_ID, SwitchableRflinkDevice, cv, vol)
from homeassistant.const import (
    CONF_NAME, CONF_PLATFORM, CONF_TYPE, STATE_UNKNOWN)

DEPENDENCIES = ['rflink']

_LOGGER = logging.getLogger(__name__)

TYPE_DIMMABLE = 'dimmable'
TYPE_SWITCHABLE = 'switchable'
TYPE_HYBRID = 'hybrid'
TYPE_TOGGLE = 'toggle'

PLATFORM_SCHEMA = vol.Schema({
    vol.Required(CONF_PLATFORM): DOMAIN,
    vol.Optional(CONF_IGNORE_DEVICES): vol.All(cv.ensure_list, [cv.string]),
    vol.Optional(CONF_DEVICE_DEFAULTS, default=DEVICE_DEFAULTS_SCHEMA({})):
    DEVICE_DEFAULTS_SCHEMA,
    vol.Optional(CONF_AUTOMATIC_ADD, default=True): cv.boolean,
    vol.Optional(CONF_DEVICES, default={}): vol.Schema({
        cv.string: {
            vol.Optional(CONF_NAME): cv.string,
            vol.Optional(CONF_TYPE):
                vol.Any(TYPE_DIMMABLE, TYPE_SWITCHABLE,
                        TYPE_HYBRID, TYPE_TOGGLE),
            vol.Optional(CONF_ALIASSES, default=[]):
                vol.All(cv.ensure_list, [cv.string]),
            vol.Optional(CONF_GROUP_ALIASSES, default=[]):
                vol.All(cv.ensure_list, [cv.string]),
            vol.Optional(CONF_NOGROUP_ALIASSES, default=[]):
                vol.All(cv.ensure_list, [cv.string]),