mirror of
https://github.com/home-assistant/core.git
synced 2025-07-21 20:27:08 +00:00
KNX: Added config option for broadcasting current time to KNX bus. (#10654)
This commit is contained in:
parent
6df5e712f7
commit
cadd797200
@ -27,6 +27,7 @@ CONF_KNX_LOCAL_IP = "local_ip"
|
||||
CONF_KNX_FIRE_EVENT = "fire_event"
|
||||
CONF_KNX_FIRE_EVENT_FILTER = "fire_event_filter"
|
||||
CONF_KNX_STATE_UPDATER = "state_updater"
|
||||
CONF_KNX_TIME_ADDRESS = "time_address"
|
||||
|
||||
SERVICE_KNX_SEND = "send"
|
||||
SERVICE_KNX_ATTR_ADDRESS = "address"
|
||||
@ -60,6 +61,7 @@ CONFIG_SCHEMA = vol.Schema({
|
||||
vol.All(
|
||||
cv.ensure_list,
|
||||
[cv.string]),
|
||||
vol.Optional(CONF_KNX_TIME_ADDRESS): cv.string,
|
||||
vol.Optional(CONF_KNX_STATE_UPDATER, default=True): cv.boolean,
|
||||
})
|
||||
}, extra=vol.ALLOW_EXTRA)
|
||||
@ -97,6 +99,9 @@ def async_setup(hass, config):
|
||||
ATTR_DISCOVER_DEVICES: found_devices
|
||||
}, config))
|
||||
|
||||
if CONF_KNX_TIME_ADDRESS in config[DOMAIN]:
|
||||
_add_time_device(hass, config)
|
||||
|
||||
hass.services.async_register(
|
||||
DOMAIN, SERVICE_KNX_SEND,
|
||||
hass.data[DATA_KNX].service_send_to_knx_bus,
|
||||
@ -105,6 +110,17 @@ def async_setup(hass, config):
|
||||
return True
|
||||
|
||||
|
||||
def _add_time_device(hass, config):
|
||||
"""Create time broadcasting device and add it to xknx device queue."""
|
||||
import xknx
|
||||
group_address_time = config[DOMAIN][CONF_KNX_TIME_ADDRESS]
|
||||
time = xknx.devices.Time(
|
||||
hass.data[DATA_KNX].xknx,
|
||||
'Time',
|
||||
group_address=group_address_time)
|
||||
hass.data[DATA_KNX].xknx.devices.add(time)
|
||||
|
||||
|
||||
def _get_devices(hass, discovery_type):
|
||||
return list(
|
||||
map(lambda device: device.name,
|
||||
|
Loading…
x
Reference in New Issue
Block a user