Move list to dict in versasense discovery (#63809)

* Move list to dict in versasense discovery

* Adjust dictionnary key

Co-authored-by: epenet <epenet@users.noreply.github.com>
This commit is contained in:
epenet 2022-01-11 17:29:39 +01:00 committed by GitHub
parent c6416955c6
commit 43aec6e784
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 28 additions and 7 deletions

View File

@ -50,8 +50,8 @@ async def _configure_entities(hass, config, consumer):
devices = await consumer.fetchDevices() devices = await consumer.fetchDevices()
_LOGGER.debug(devices) _LOGGER.debug(devices)
sensor_info_list = [] sensor_info_list = {}
switch_info_list = [] switch_info_list = {}
for mac, device in devices.items(): for mac, device in devices.items():
_LOGGER.info("Device connected: %s %s", device.name, mac) _LOGGER.info("Device connected: %s %s", device.name, mac)
@ -87,7 +87,8 @@ def _add_entity_info_to_list(peripheral, device, entity_info_list):
KEY_PARENT_MAC: device.mac, KEY_PARENT_MAC: device.mac,
} }
entity_info_list.append(entity_info) key = f"{entity_info[KEY_PARENT_MAC]}/{entity_info[KEY_IDENTIFIER]}/{entity_info[KEY_MEASUREMENT]}"
entity_info_list[key] = entity_info
return entity_info_list return entity_info_list

View File

@ -1,7 +1,12 @@
"""Support for VersaSense sensor peripheral.""" """Support for VersaSense sensor peripheral."""
from __future__ import annotations
import logging import logging
from homeassistant.components.sensor import SensorEntity from homeassistant.components.sensor import SensorEntity
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
from . import DOMAIN from . import DOMAIN
from .const import ( from .const import (
@ -16,7 +21,12 @@ from .const import (
_LOGGER = logging.getLogger(__name__) _LOGGER = logging.getLogger(__name__)
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None): async def async_setup_platform(
hass: HomeAssistant,
config: ConfigType,
async_add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up the sensor platform.""" """Set up the sensor platform."""
if discovery_info is None: if discovery_info is None:
return None return None
@ -25,7 +35,7 @@ async def async_setup_platform(hass, config, async_add_entities, discovery_info=
sensor_list = [] sensor_list = []
for entity_info in discovery_info: for entity_info in discovery_info.values():
peripheral = hass.data[DOMAIN][entity_info[KEY_PARENT_MAC]][ peripheral = hass.data[DOMAIN][entity_info[KEY_PARENT_MAC]][
entity_info[KEY_IDENTIFIER] entity_info[KEY_IDENTIFIER]
] ]

View File

@ -1,7 +1,12 @@
"""Support for VersaSense actuator peripheral.""" """Support for VersaSense actuator peripheral."""
from __future__ import annotations
import logging import logging
from homeassistant.components.switch import SwitchEntity from homeassistant.components.switch import SwitchEntity
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
from . import DOMAIN from . import DOMAIN
from .const import ( from .const import (
@ -18,7 +23,12 @@ from .const import (
_LOGGER = logging.getLogger(__name__) _LOGGER = logging.getLogger(__name__)
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None): async def async_setup_platform(
hass: HomeAssistant,
config: ConfigType,
async_add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up actuator platform.""" """Set up actuator platform."""
if discovery_info is None: if discovery_info is None:
return None return None
@ -27,7 +37,7 @@ async def async_setup_platform(hass, config, async_add_entities, discovery_info=
actuator_list = [] actuator_list = []
for entity_info in discovery_info: for entity_info in discovery_info.values():
peripheral = hass.data[DOMAIN][entity_info[KEY_PARENT_MAC]][ peripheral = hass.data[DOMAIN][entity_info[KEY_PARENT_MAC]][
entity_info[KEY_IDENTIFIER] entity_info[KEY_IDENTIFIER]
] ]