diff --git a/homeassistant/components/xiaomi_aqara/__init__.py b/homeassistant/components/xiaomi_aqara/__init__.py index e98655f9d76..9b113170f8a 100644 --- a/homeassistant/components/xiaomi_aqara/__init__.py +++ b/homeassistant/components/xiaomi_aqara/__init__.py @@ -61,7 +61,7 @@ SERVICE_SCHEMA_REMOVE_DEVICE = vol.Schema({ }) -GATEWAY_CONFIG_MAC_OPT = vol.Schema({ +GATEWAY_CONFIG = vol.Schema({ vol.Optional(CONF_KEY): vol.All(cv.string, vol.Length(min=16, max=16)), vol.Optional(CONF_HOST): cv.string, @@ -69,12 +69,12 @@ GATEWAY_CONFIG_MAC_OPT = vol.Schema({ vol.Optional(CONF_DISABLE, default=False): cv.boolean, }) -GATEWAY_CONFIG_MAC_REQ = vol.Schema({ - vol.Required(CONF_KEY): - vol.All(cv.string, vol.Length(min=16, max=16)), - vol.Optional(CONF_HOST): cv.string, - vol.Optional(CONF_PORT, default=9898): cv.port, - vol.Optional(CONF_DISABLE, default=False): cv.boolean, +GATEWAY_CONFIG_MAC_OPTIONAL = GATEWAY_CONFIG.extend({ + vol.Optional(CONF_MAC): GW_MAC, +}) + +GATEWAY_CONFIG_MAC_REQUIRED = GATEWAY_CONFIG.extend({ + vol.Required(CONF_MAC): GW_MAC, }) @@ -97,8 +97,8 @@ CONFIG_SCHEMA = vol.Schema({ DOMAIN: vol.Schema({ vol.Optional(CONF_GATEWAYS, default={}): vol.All(cv.ensure_list, vol.Any( - vol.All([GATEWAY_CONFIG_MAC_OPT], vol.Length(max=1)), - vol.All([GATEWAY_CONFIG_MAC_REQ], vol.Length(min=2)) + vol.All([GATEWAY_CONFIG_MAC_OPTIONAL], vol.Length(max=1)), + vol.All([GATEWAY_CONFIG_MAC_REQUIRED], vol.Length(min=2)) ), [_fix_conf_defaults]), vol.Optional(CONF_INTERFACE, default='any'): cv.string, vol.Optional(CONF_DISCOVERY_RETRY, default=3): cv.positive_int