mirror of
https://github.com/home-assistant/core.git
synced 2025-07-18 18:57:06 +00:00
deCONZ - Services normalize bridge id (#31378)
* Services should also make sure to normalize bridge id since users do not know to manage themselves
This commit is contained in:
parent
d91f9fc2f5
commit
aaea55efed
@ -1,4 +1,5 @@
|
|||||||
"""deCONZ services."""
|
"""deCONZ services."""
|
||||||
|
from pydeconz.utils import normalize_bridge_id
|
||||||
import voluptuous as vol
|
import voluptuous as vol
|
||||||
|
|
||||||
from homeassistant.helpers import config_validation as cv
|
from homeassistant.helpers import config_validation as cv
|
||||||
@ -97,15 +98,14 @@ async def async_configure_service(hass, data):
|
|||||||
See Dresden Elektroniks REST API documentation for details:
|
See Dresden Elektroniks REST API documentation for details:
|
||||||
http://dresden-elektronik.github.io/deconz-rest-doc/rest/
|
http://dresden-elektronik.github.io/deconz-rest-doc/rest/
|
||||||
"""
|
"""
|
||||||
bridgeid = data.get(CONF_BRIDGE_ID)
|
gateway = get_master_gateway(hass)
|
||||||
|
if CONF_BRIDGE_ID in data:
|
||||||
|
gateway = hass.data[DOMAIN][normalize_bridge_id(data[CONF_BRIDGE_ID])]
|
||||||
|
|
||||||
field = data.get(SERVICE_FIELD, "")
|
field = data.get(SERVICE_FIELD, "")
|
||||||
entity_id = data.get(SERVICE_ENTITY)
|
entity_id = data.get(SERVICE_ENTITY)
|
||||||
data = data[SERVICE_DATA]
|
data = data[SERVICE_DATA]
|
||||||
|
|
||||||
gateway = get_master_gateway(hass)
|
|
||||||
if bridgeid:
|
|
||||||
gateway = hass.data[DOMAIN][bridgeid]
|
|
||||||
|
|
||||||
if entity_id:
|
if entity_id:
|
||||||
try:
|
try:
|
||||||
field = gateway.deconz_ids[entity_id] + field
|
field = gateway.deconz_ids[entity_id] + field
|
||||||
@ -120,7 +120,7 @@ async def async_refresh_devices_service(hass, data):
|
|||||||
"""Refresh available devices from deCONZ."""
|
"""Refresh available devices from deCONZ."""
|
||||||
gateway = get_master_gateway(hass)
|
gateway = get_master_gateway(hass)
|
||||||
if CONF_BRIDGE_ID in data:
|
if CONF_BRIDGE_ID in data:
|
||||||
gateway = hass.data[DOMAIN][data[CONF_BRIDGE_ID]]
|
gateway = hass.data[DOMAIN][normalize_bridge_id(data[CONF_BRIDGE_ID])]
|
||||||
|
|
||||||
groups = set(gateway.api.groups.keys())
|
groups = set(gateway.api.groups.keys())
|
||||||
lights = set(gateway.api.lights.keys())
|
lights = set(gateway.api.lights.keys())
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
bandit==1.6.2
|
bandit==1.6.2
|
||||||
black==19.10b0
|
black==19.10b0
|
||||||
|
codespell==v1.16.0
|
||||||
flake8-docstrings==1.5.0
|
flake8-docstrings==1.5.0
|
||||||
flake8==3.7.9
|
flake8==3.7.9
|
||||||
isort==v4.3.21
|
isort==v4.3.21
|
||||||
|
Loading…
x
Reference in New Issue
Block a user