From e6065569ae1e3817b6e539c4a72be71acc92380b Mon Sep 17 00:00:00 2001 From: Bas Nijholt Date: Sun, 24 May 2020 12:10:15 +0200 Subject: [PATCH] Use Coerce(float) on service options for kef (#35659) * use Coerce(float) on service options * defer the type from options list --- homeassistant/components/kef/media_player.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/homeassistant/components/kef/media_player.py b/homeassistant/components/kef/media_player.py index cf87a7dd447..1ba4d63ae4f 100644 --- a/homeassistant/components/kef/media_player.py +++ b/homeassistant/components/kef/media_player.py @@ -160,9 +160,11 @@ async def async_setup_platform(hass, config, async_add_entities, discovery_info= platform.async_register_entity_service(SERVICE_UPDATE_DSP, {}, "update_dsp") def add_service(name, which, option): + options = DSP_OPTION_MAPPING[which] + dtype = type(options[0]) # int or float platform.async_register_entity_service( name, - {vol.Required(option): vol.In(DSP_OPTION_MAPPING[which])}, + {vol.Required(option): vol.All(vol.Coerce(dtype), vol.In(options))}, f"set_{which}", )