Lirc: sensor showing connected hosts
This commit is contained in:
parent
98aa37083b
commit
354fffa5ee
|
@ -14,6 +14,7 @@ DOMAIN = 'lirc_network'
|
|||
REMOTE_NAME = 'remote'
|
||||
REPEAT_COUNTER = 'repeat_counter'
|
||||
LIRC_HOST = 'host'
|
||||
DATA_LIRC_NETWORK = 'data_lirc_network'
|
||||
|
||||
CONFIG_SCHEMA = vol.Schema({
|
||||
DOMAIN: vol.Schema(vol.All([{
|
||||
|
@ -24,9 +25,10 @@ CONFIG_SCHEMA = vol.Schema({
|
|||
|
||||
|
||||
async def async_setup(hass, config):
|
||||
hass.data[DATA_LIRC_NETWORK] = []
|
||||
for config_element in config[DOMAIN]:
|
||||
_LOGGER.warning(f'Connecting to {config_element[CONF_HOST]} at {config_element[CONF_PORT]}')
|
||||
connection = LircConnection(hass, config_element)
|
||||
hass.data[DATA_LIRC_NETWORK].append(connection)
|
||||
await connection.start()
|
||||
_LOGGER.warning("About to return true in async_setup")
|
||||
return True
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
import logging
|
||||
from ..reconnecting_client import IsConnectedSensor
|
||||
from . import DATA_LIRC_NETWORK
|
||||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
|
||||
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None):
|
||||
connections = hass.data[DATA_LIRC_NETWORK]
|
||||
sensors = []
|
||||
for connection in connections:
|
||||
sensor = IsConnectedSensor(connection.get_name() + "_connected")
|
||||
connection.connected_sensor = sensor
|
||||
sensors.append(sensor)
|
||||
async_add_entities(sensors)
|
Loading…
Reference in New Issue