Compare commits

...

3 Commits

Author SHA1 Message Date
Andrey
4f8f38fde6 fix http response and ds2413 bugs 2021-02-18 12:07:55 +03:00
Andrey
7e02797be8 fix http response 2021-02-18 11:58:33 +03:00
Andrey
035bdebf64 fix ds2413 2021-02-18 11:42:23 +03:00
2 changed files with 6 additions and 5 deletions

View File

@@ -253,7 +253,7 @@ class MegaOutPort(MegaPushEntity):
return self._state == 'ON'
elif val is not None:
val = val.get("value")
if self.index and self.addr:
if not isinstance(val, str) and self.index is not None and self.addr is not None:
if not isinstance(val, dict):
self.mega.lg.warning(f'{self.entity_id}: {val} is not a dict')
return
@@ -268,7 +268,7 @@ class MegaOutPort(MegaPushEntity):
else:
self.mega.lg.warning(f'{self.entity_id}: {_val} has wrong length')
return
elif self.index and self.addr is None:
elif self.index is not None and self.addr is None:
self.mega.lg.warning(f'{self.entity_id} does not has addr')
return
self.mega.lg.debug('%s.state = %s', self.entity_id, val)

View File

@@ -66,7 +66,7 @@ class MegaView(HomeAssistantView):
update_all = False
data['value'] = data.pop('v')
data['mega_id'] = hub.id
ret = 'd'
ret = 'd' if hub.force_d else ''
if port is not None:
hub.values[port] = data
for cb in self.callbacks[hub.id][port]:
@@ -78,8 +78,9 @@ class MegaView(HomeAssistantView):
template.hass = hass
ret = template.async_render(data)
_LOGGER.debug('response %s', ret)
ret = Response(body='', content_type='text/plain', headers={'Server': 's', 'Date': 'n'})
await hub.request(cmd=ret)
Response(body='', content_type='text/plain', headers={'Server': 's', 'Date': 'n'})
if ret:
await hub.request(cmd=ret)
return ret
async def later_update(self, hub):