mirror of
https://github.com/andvikt/mega_hacs.git
synced 2025-12-12 09:34:28 +05:00
Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ad1210d5cc | ||
|
|
687e80f729 | ||
|
|
7d777c9e82 | ||
|
|
c9f0e85f6a | ||
|
|
e75f8b91ef |
@@ -157,11 +157,10 @@ class MegaD:
|
|||||||
if force_d is not None:
|
if force_d is not None:
|
||||||
self.customize[CONF_FORCE_D] = force_d
|
self.customize[CONF_FORCE_D] = force_d
|
||||||
try:
|
try:
|
||||||
if allow_hosts is not None:
|
if allow_hosts is not None and DOMAIN in hass.data:
|
||||||
allow_hosts = set(allow_hosts.split(';'))
|
allow_hosts = set(allow_hosts.split(';'))
|
||||||
hass.data[DOMAIN][CONF_HTTP].allowed_hosts |= allow_hosts
|
hass.data[DOMAIN][CONF_HTTP].allowed_hosts |= allow_hosts
|
||||||
hass.data[DOMAIN][CONF_HTTP].protected = protected
|
hass.data[DOMAIN][CONF_HTTP].protected = protected
|
||||||
|
|
||||||
except Exception:
|
except Exception:
|
||||||
self.lg.exception('while setting allowed hosts')
|
self.lg.exception('while setting allowed hosts')
|
||||||
|
|
||||||
@@ -290,6 +289,8 @@ class MegaD:
|
|||||||
url = f"{url}/?{cmd}"
|
url = f"{url}/?{cmd}"
|
||||||
self.lg.debug('request: %s', url)
|
self.lg.debug('request: %s', url)
|
||||||
async with self._http_lck(priority):
|
async with self._http_lck(priority):
|
||||||
|
for _ntry in range(3):
|
||||||
|
try:
|
||||||
async with aiohttp.request("get", url=url) as req:
|
async with aiohttp.request("get", url=url) as req:
|
||||||
if req.status != 200:
|
if req.status != 200:
|
||||||
self.lg.warning('%s returned %s (%s)', url, req.status, await req.text())
|
self.lg.warning('%s returned %s (%s)', url, req.status, await req.text())
|
||||||
@@ -298,6 +299,10 @@ class MegaD:
|
|||||||
ret = await req.text()
|
ret = await req.text()
|
||||||
self.lg.debug('response %s', ret)
|
self.lg.debug('response %s', ret)
|
||||||
return ret
|
return ret
|
||||||
|
except asyncio.TimeoutError:
|
||||||
|
self.lg.warning(f'timeout while requesting {url}')
|
||||||
|
await asyncio.sleep(1)
|
||||||
|
raise asyncio.TimeoutError('after 3 tries')
|
||||||
|
|
||||||
async def save(self):
|
async def save(self):
|
||||||
await self.send_command(cmd='s')
|
await self.send_command(cmd='s')
|
||||||
|
|||||||
@@ -146,7 +146,7 @@ class MegaI2C(MegaPushEntity):
|
|||||||
ret = tmpl.async_render({'value': ret})
|
ret = tmpl.async_render({'value': ret})
|
||||||
except:
|
except:
|
||||||
ret = ret
|
ret = ret
|
||||||
return ret
|
return str(ret)
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def device_class(self):
|
def device_class(self):
|
||||||
@@ -241,7 +241,8 @@ class Mega1WSensor(MegaPushEntity):
|
|||||||
tmpl.hass = self.hass
|
tmpl.hass = self.hass
|
||||||
ret = tmpl.async_render({'value': ret})
|
ret = tmpl.async_render({'value': ret})
|
||||||
except:
|
except:
|
||||||
return ret
|
pass
|
||||||
|
return str(ret)
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def name(self):
|
def name(self):
|
||||||
|
|||||||
@@ -26,7 +26,6 @@
|
|||||||
[подробнее про smooth](https://github.com/andvikt/mega_hacs/wiki/smooth)
|
[подробнее про smooth](https://github.com/andvikt/mega_hacs/wiki/smooth)
|
||||||
- Возможность работы с несколькими megad
|
- Возможность работы с несколькими megad
|
||||||
- Обратная связь по [http](https://github.com/andvikt/mega_hacs/wiki/http)
|
- Обратная связь по [http](https://github.com/andvikt/mega_hacs/wiki/http)
|
||||||
будет выключена в версиях >= 1.0.0, тк в нем нет необходимости)
|
|
||||||
- Автоматическое восстановление состояний выходов после перезагрузки контроллера
|
- Автоматическое восстановление состояний выходов после перезагрузки контроллера
|
||||||
- Автоматическое добавление/изменение объектов после перезагрузки контроллера
|
- Автоматическое добавление/изменение объектов после перезагрузки контроллера
|
||||||
- [События](https://github.com/andvikt/mega_hacs/wiki/События) на двойные/долгие нажатия
|
- [События](https://github.com/andvikt/mega_hacs/wiki/События) на двойные/долгие нажатия
|
||||||
|
|||||||
Reference in New Issue
Block a user