mirror of
https://github.com/andvikt/mega_hacs.git
synced 2025-12-10 16:44:28 +05:00
fix some bugs
This commit is contained in:
@@ -145,6 +145,7 @@ class MegaD:
|
||||
ftr.set_result(json.loads(msg.payload).get('value'))
|
||||
except Exception as exc:
|
||||
self.lg.warning(f'could not parse {msg.payload}: {exc}')
|
||||
ftr.set_result(None)
|
||||
unsub = await self.mqtt.async_subscribe(
|
||||
topic=f'{self.mqtt_id}/{port}',
|
||||
msg_callback=cb,
|
||||
|
||||
@@ -93,7 +93,9 @@ async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, asyn
|
||||
lg.debug(f'values: %s', values)
|
||||
if values is None:
|
||||
continue
|
||||
if not isinstance(values, dict):
|
||||
if isinstance(values, str) and TEMP_PATT.search(values):
|
||||
values = {TEMP: values}
|
||||
elif not isinstance(values, dict):
|
||||
values = {None: values}
|
||||
for key in values:
|
||||
hub.lg.debug(f'add sensor {W1}:{key}')
|
||||
@@ -165,7 +167,7 @@ class Mega1WSensor(BaseMegaEntity):
|
||||
|
||||
def _update(self, payload: dict):
|
||||
val = payload.get('value', '')
|
||||
if isinstance(val, str):
|
||||
if isinstance(val, str) and self.patt is not None:
|
||||
val = self.patt.findall(val)
|
||||
if val:
|
||||
self._value = val[0]
|
||||
|
||||
Reference in New Issue
Block a user