mirror of
https://github.com/andvikt/mega_hacs.git
synced 2025-12-12 01:24:29 +05:00
Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
adb65529a2 | ||
|
|
768d46d952 | ||
|
|
359c6b99b7 | ||
|
|
79dc46226a |
@@ -1,5 +1,6 @@
|
||||
"""Platform for light integration."""
|
||||
import logging
|
||||
import asyncio
|
||||
|
||||
import voluptuous as vol
|
||||
|
||||
@@ -69,7 +70,8 @@ async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, asyn
|
||||
|
||||
async_add_devices(devices)
|
||||
|
||||
await scan()
|
||||
asyncio.create_task(scan())
|
||||
|
||||
|
||||
class MegaBinarySensor(BinarySensorEntity, BaseMegaEntity):
|
||||
|
||||
|
||||
@@ -153,9 +153,11 @@ class MegaD:
|
||||
|
||||
try:
|
||||
if '"value":NA' in msg.payload.decode():
|
||||
if not ftr.done():
|
||||
ftr.set_result(None)
|
||||
return
|
||||
ret = json.loads(msg.payload).get('value')
|
||||
if not ftr.done():
|
||||
ftr.set_result(ret)
|
||||
except Exception as exc:
|
||||
ret = None
|
||||
@@ -167,12 +169,12 @@ class MegaD:
|
||||
)
|
||||
|
||||
async with self.lck:
|
||||
try:
|
||||
unsub = await self.mqtt.async_subscribe(
|
||||
topic=f'{self.mqtt_id}/{port}',
|
||||
msg_callback=cb,
|
||||
qos=1,
|
||||
)
|
||||
try:
|
||||
await self.mqtt.async_publish(
|
||||
topic=f'{self.mqtt_id}/cmd',
|
||||
payload=f'get:{port}',
|
||||
@@ -268,7 +270,6 @@ class MegaD:
|
||||
return pty, m
|
||||
|
||||
async def scan_ports(self,):
|
||||
async with self.lck:
|
||||
for x in range(38):
|
||||
ret = await self.scan_port(x)
|
||||
if ret:
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"""Platform for light integration."""
|
||||
import logging
|
||||
|
||||
import asyncio
|
||||
import voluptuous as vol
|
||||
|
||||
from homeassistant.components.light import (
|
||||
@@ -85,7 +85,7 @@ async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, asyn
|
||||
devices.append(light)
|
||||
async_add_devices(devices)
|
||||
|
||||
await scan_ports()
|
||||
asyncio.create_task(scan_ports())
|
||||
|
||||
|
||||
class MegaLight(LightEntity, BaseMegaEntity):
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
"""Platform for light integration."""
|
||||
import asyncio
|
||||
import logging
|
||||
import voluptuous as vol
|
||||
|
||||
@@ -111,7 +112,7 @@ async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, asyn
|
||||
|
||||
async_add_devices(devices)
|
||||
|
||||
await scan()
|
||||
asyncio.create_task(scan())
|
||||
|
||||
|
||||
class Mega1WSensor(BaseMegaEntity):
|
||||
|
||||
Reference in New Issue
Block a user