Compare commits

...

15 Commits

Author SHA1 Message Date
Feng Wang
ab6c146eee
Merge a69aa42ce7 into 365f4e57d8 2024-12-24 22:17:34 +08:00
Feng Wang
a69aa42ce7 Adjust import order 2024-12-24 21:48:51 +08:00
Feng Wang
626460e156
Merge branch 'main' into remove-tev-dependency 2024-12-24 21:44:35 +08:00
Feng Wang
f614181755 set timers to None after cancel 2024-12-22 20:26:54 +08:00
Feng Wang
fb46bc6b19 change internal class scope 2024-12-22 20:16:45 +08:00
Feng Wang
d3c39f38e1 remove unused data classes 2024-12-22 20:13:38 +08:00
Feng Wang
d13a6bfb11 fix racing condition 2024-12-22 19:51:58 +08:00
Feng Wang
463216d866 do not set asyncio event loop 2024-12-21 23:18:49 +08:00
Feng Wang
30e0433aee revert changes in the license 2024-12-21 23:16:30 +08:00
Feng Wang
0872bf4f69 ignore broad exception warning 2024-12-21 22:11:38 +08:00
Feng Wang
3f77738b90 fix lint 2024-12-21 22:02:19 +08:00
Feng Wang
f288a951b9 add tev back 2024-12-21 21:58:24 +08:00
Feng Wang
569e1512e3 fix lint 2024-12-21 21:52:45 +08:00
Feng Wang
794505f082 Use call_soon_threadsafe instead of event fd for ipc 2024-12-21 21:39:59 +08:00
Feng Wang
faa13c53e8 Remove tev & fix some type issues 2024-12-21 19:09:37 +08:00
4 changed files with 460 additions and 464 deletions

View File

@ -83,6 +83,9 @@ def randomize_int(value: int, ratio: float) -> int:
"""Randomize an integer value."""
return int(value * (1 - ratio + random.random()*2*ratio))
def randomize_float(value: float, ratio: float) -> float:
"""Randomize a float value."""
return value * (1 - ratio + random.random()*2*ratio)
class MIoTMatcher(MQTTMatcher):
"""MIoT Pub/Sub topic matcher."""

View File

@ -1089,7 +1089,7 @@ class MIoTClient:
handler=self.__on_lan_device_state_changed)
for did, info in (
await self._miot_lan.get_dev_list_async()).items():
self.__on_lan_device_state_changed(
await self.__on_lan_device_state_changed(
did=did, state=info, ctx=None)
_LOGGER.info('lan device list, %s', self._device_list_lan)
self._miot_lan.update_devices(devices={

File diff suppressed because it is too large Load Diff

View File

@ -52,7 +52,7 @@ import socket
from dataclasses import dataclass
from enum import Enum, auto
import subprocess
from typing import Callable, Optional
from typing import Callable, Coroutine, Optional
import psutil
import ipaddress
@ -97,7 +97,7 @@ class MIoTNetwork:
_sub_list_network_status: dict[str, Callable[[bool], asyncio.Future]]
_sub_list_network_info: dict[str, Callable[[
InterfaceStatus, NetworkInfo], asyncio.Future]]
InterfaceStatus, NetworkInfo], Coroutine]]
_ping_address_priority: int
@ -155,7 +155,7 @@ class MIoTNetwork:
def sub_network_info(
self, key: str,
handler: Callable[[InterfaceStatus, NetworkInfo], asyncio.Future]
handler: Callable[[InterfaceStatus, NetworkInfo], Coroutine]
) -> None:
self._sub_list_network_info[key] = handler