From ad6f5d3b1d203aab86de74a87a02249544b5756e Mon Sep 17 00:00:00 2001 From: Jan Harkes Date: Tue, 12 Apr 2016 02:01:22 -0400 Subject: [PATCH] Service validation for scene component. --- homeassistant/components/scene/__init__.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/homeassistant/components/scene/__init__.py b/homeassistant/components/scene/__init__.py index 03bb7c265c3..5ac7a2d9c86 100644 --- a/homeassistant/components/scene/__init__.py +++ b/homeassistant/components/scene/__init__.py @@ -7,9 +7,12 @@ https://home-assistant.io/components/scene/ import logging from collections import namedtuple +import voluptuous as vol + from homeassistant.const import ( ATTR_ENTITY_ID, SERVICE_TURN_ON, CONF_PLATFORM) from homeassistant.helpers import extract_domain_configs +import homeassistant.helpers.config_validation as cv from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity_component import EntityComponent @@ -19,6 +22,10 @@ STATE = 'scening' CONF_ENTITIES = "entities" +SCENE_SERVICE_SCHEMA = vol.Schema({ + vol.Optional(ATTR_ENTITY_ID): cv.entity_ids, +}) + SceneConfig = namedtuple('SceneConfig', ['name', 'states']) @@ -61,7 +68,8 @@ def setup(hass, config): for scene in target_scenes: scene.activate() - hass.services.register(DOMAIN, SERVICE_TURN_ON, handle_scene_service) + hass.services.register(DOMAIN, SERVICE_TURN_ON, handle_scene_service, + schema=SCENE_SERVICE_SCHEMA) return True