Add area support to Wink service schemas (#25445)
This commit is contained in:
parent
c92f287c73
commit
bd2b107575
1 changed files with 12 additions and 22 deletions
|
@ -9,12 +9,13 @@ import voluptuous as vol
|
||||||
|
|
||||||
from homeassistant.components.http import HomeAssistantView
|
from homeassistant.components.http import HomeAssistantView
|
||||||
from homeassistant.const import (
|
from homeassistant.const import (
|
||||||
ATTR_BATTERY_LEVEL, ATTR_ENTITY_ID, ATTR_NAME, CONF_EMAIL, CONF_PASSWORD,
|
ATTR_BATTERY_LEVEL, ATTR_NAME, CONF_EMAIL, CONF_PASSWORD,
|
||||||
EVENT_HOMEASSISTANT_START, EVENT_HOMEASSISTANT_STOP, STATE_OFF, STATE_ON,
|
EVENT_HOMEASSISTANT_START, EVENT_HOMEASSISTANT_STOP, STATE_OFF, STATE_ON,
|
||||||
__version__)
|
__version__)
|
||||||
from homeassistant.core import callback
|
from homeassistant.core import callback
|
||||||
from homeassistant.helpers import discovery
|
from homeassistant.helpers import discovery
|
||||||
import homeassistant.helpers.config_validation as cv
|
import homeassistant.helpers.config_validation as cv
|
||||||
|
from homeassistant.helpers.config_validation import ENTITY_SERVICE_SCHEMA
|
||||||
from homeassistant.helpers.entity import Entity
|
from homeassistant.helpers.entity import Entity
|
||||||
from homeassistant.helpers.entity_component import EntityComponent
|
from homeassistant.helpers.entity_component import EntityComponent
|
||||||
from homeassistant.helpers.event import track_time_interval
|
from homeassistant.helpers.event import track_time_interval
|
||||||
|
@ -106,14 +107,11 @@ CONFIG_SCHEMA = vol.Schema({
|
||||||
})
|
})
|
||||||
}, extra=vol.ALLOW_EXTRA)
|
}, extra=vol.ALLOW_EXTRA)
|
||||||
|
|
||||||
RENAME_DEVICE_SCHEMA = vol.Schema({
|
RENAME_DEVICE_SCHEMA = ENTITY_SERVICE_SCHEMA.extend({
|
||||||
vol.Required(ATTR_ENTITY_ID): cv.entity_ids,
|
|
||||||
vol.Required(ATTR_NAME): cv.string,
|
vol.Required(ATTR_NAME): cv.string,
|
||||||
}, extra=vol.ALLOW_EXTRA)
|
}, extra=vol.ALLOW_EXTRA)
|
||||||
|
|
||||||
DELETE_DEVICE_SCHEMA = vol.Schema({
|
DELETE_DEVICE_SCHEMA = ENTITY_SERVICE_SCHEMA.extend({}, extra=vol.ALLOW_EXTRA)
|
||||||
vol.Required(ATTR_ENTITY_ID): cv.entity_ids,
|
|
||||||
}, extra=vol.ALLOW_EXTRA)
|
|
||||||
|
|
||||||
SET_PAIRING_MODE_SCHEMA = vol.Schema({
|
SET_PAIRING_MODE_SCHEMA = vol.Schema({
|
||||||
vol.Required(ATTR_HUB_NAME): cv.string,
|
vol.Required(ATTR_HUB_NAME): cv.string,
|
||||||
|
@ -121,38 +119,31 @@ SET_PAIRING_MODE_SCHEMA = vol.Schema({
|
||||||
vol.Optional(ATTR_KIDDE_RADIO_CODE): cv.string,
|
vol.Optional(ATTR_KIDDE_RADIO_CODE): cv.string,
|
||||||
}, extra=vol.ALLOW_EXTRA)
|
}, extra=vol.ALLOW_EXTRA)
|
||||||
|
|
||||||
SET_VOLUME_SCHEMA = vol.Schema({
|
SET_VOLUME_SCHEMA = ENTITY_SERVICE_SCHEMA.extend({
|
||||||
vol.Optional(ATTR_ENTITY_ID): cv.entity_ids,
|
|
||||||
vol.Required(ATTR_VOLUME): vol.In(VOLUMES),
|
vol.Required(ATTR_VOLUME): vol.In(VOLUMES),
|
||||||
})
|
})
|
||||||
|
|
||||||
SET_SIREN_TONE_SCHEMA = vol.Schema({
|
SET_SIREN_TONE_SCHEMA = ENTITY_SERVICE_SCHEMA.extend({
|
||||||
vol.Optional(ATTR_ENTITY_ID): cv.entity_ids,
|
|
||||||
vol.Required(ATTR_TONE): vol.In(TONES),
|
vol.Required(ATTR_TONE): vol.In(TONES),
|
||||||
})
|
})
|
||||||
|
|
||||||
SET_CHIME_MODE_SCHEMA = vol.Schema({
|
SET_CHIME_MODE_SCHEMA = ENTITY_SERVICE_SCHEMA.extend({
|
||||||
vol.Optional(ATTR_ENTITY_ID): cv.entity_ids,
|
|
||||||
vol.Required(ATTR_TONE): vol.In(CHIME_TONES),
|
vol.Required(ATTR_TONE): vol.In(CHIME_TONES),
|
||||||
})
|
})
|
||||||
|
|
||||||
SET_AUTO_SHUTOFF_SCHEMA = vol.Schema({
|
SET_AUTO_SHUTOFF_SCHEMA = ENTITY_SERVICE_SCHEMA.extend({
|
||||||
vol.Optional(ATTR_ENTITY_ID): cv.entity_ids,
|
|
||||||
vol.Required(ATTR_AUTO_SHUTOFF): vol.In(AUTO_SHUTOFF_TIMES),
|
vol.Required(ATTR_AUTO_SHUTOFF): vol.In(AUTO_SHUTOFF_TIMES),
|
||||||
})
|
})
|
||||||
|
|
||||||
SET_STROBE_ENABLED_SCHEMA = vol.Schema({
|
SET_STROBE_ENABLED_SCHEMA = ENTITY_SERVICE_SCHEMA.extend({
|
||||||
vol.Optional(ATTR_ENTITY_ID): cv.entity_ids,
|
|
||||||
vol.Required(ATTR_ENABLED): cv.boolean,
|
vol.Required(ATTR_ENABLED): cv.boolean,
|
||||||
})
|
})
|
||||||
|
|
||||||
ENABLED_SIREN_SCHEMA = vol.Schema({
|
ENABLED_SIREN_SCHEMA = ENTITY_SERVICE_SCHEMA.extend({
|
||||||
vol.Optional(ATTR_ENTITY_ID): cv.entity_ids,
|
|
||||||
vol.Required(ATTR_ENABLED): cv.boolean
|
vol.Required(ATTR_ENABLED): cv.boolean
|
||||||
})
|
})
|
||||||
|
|
||||||
DIAL_CONFIG_SCHEMA = vol.Schema({
|
DIAL_CONFIG_SCHEMA = ENTITY_SERVICE_SCHEMA.extend({
|
||||||
vol.Required(ATTR_ENTITY_ID): cv.entity_ids,
|
|
||||||
vol.Optional(ATTR_MIN_VALUE): vol.Coerce(int),
|
vol.Optional(ATTR_MIN_VALUE): vol.Coerce(int),
|
||||||
vol.Optional(ATTR_MAX_VALUE): vol.Coerce(int),
|
vol.Optional(ATTR_MAX_VALUE): vol.Coerce(int),
|
||||||
vol.Optional(ATTR_MIN_POSITION): cv.positive_int,
|
vol.Optional(ATTR_MIN_POSITION): cv.positive_int,
|
||||||
|
@ -162,8 +153,7 @@ DIAL_CONFIG_SCHEMA = vol.Schema({
|
||||||
vol.Optional(ATTR_TICKS): cv.positive_int,
|
vol.Optional(ATTR_TICKS): cv.positive_int,
|
||||||
})
|
})
|
||||||
|
|
||||||
DIAL_STATE_SCHEMA = vol.Schema({
|
DIAL_STATE_SCHEMA = ENTITY_SERVICE_SCHEMA.extend({
|
||||||
vol.Required(ATTR_ENTITY_ID): cv.entity_ids,
|
|
||||||
vol.Required(ATTR_VALUE): vol.Coerce(int),
|
vol.Required(ATTR_VALUE): vol.Coerce(int),
|
||||||
vol.Optional(ATTR_LABELS): cv.ensure_list(cv.string),
|
vol.Optional(ATTR_LABELS): cv.ensure_list(cv.string),
|
||||||
})
|
})
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue