mirror of
https://github.com/python-kasa/python-kasa.git
synced 2025-10-11 18:08:02 +00:00
Switch from TPLinkSmartHomeProtocol to IotProtocol/XorTransport (#710)
* Switch from TPLinkSmartHomeProtocol to IotProtocol/XorTransport * Add test * Update docs * Fix ruff deleting deprecated import
This commit is contained in:
@@ -11,8 +11,6 @@ from .klaptransport import KlapTransport, KlapTransportV2
|
||||
from .protocol import (
|
||||
BaseProtocol,
|
||||
BaseTransport,
|
||||
TPLinkSmartHomeProtocol,
|
||||
_XorTransport,
|
||||
)
|
||||
from .smartbulb import SmartBulb
|
||||
from .smartdevice import SmartDevice
|
||||
@@ -22,6 +20,7 @@ from .smartplug import SmartPlug
|
||||
from .smartprotocol import SmartProtocol
|
||||
from .smartstrip import SmartStrip
|
||||
from .tapo import TapoBulb, TapoPlug
|
||||
from .xortransport import XorTransport
|
||||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
@@ -76,7 +75,9 @@ async def connect(*, host: Optional[str] = None, config: DeviceConfig) -> "Smart
|
||||
|
||||
device_class: Optional[Type[SmartDevice]]
|
||||
|
||||
if isinstance(protocol, TPLinkSmartHomeProtocol):
|
||||
if isinstance(protocol, IotProtocol) and isinstance(
|
||||
protocol._transport, XorTransport
|
||||
):
|
||||
info = await protocol.query(GET_SYSINFO_QUERY)
|
||||
_perf_log(True, "get_sysinfo")
|
||||
device_class = get_device_class_from_sys_info(info)
|
||||
@@ -151,7 +152,7 @@ def get_protocol(
|
||||
supported_device_protocols: Dict[
|
||||
str, Tuple[Type[BaseProtocol], Type[BaseTransport]]
|
||||
] = {
|
||||
"IOT.XOR": (TPLinkSmartHomeProtocol, _XorTransport),
|
||||
"IOT.XOR": (IotProtocol, XorTransport),
|
||||
"IOT.KLAP": (IotProtocol, KlapTransport),
|
||||
"SMART.AES": (SmartProtocol, AesTransport),
|
||||
"SMART.KLAP": (SmartProtocol, KlapTransportV2),
|
||||
|
Reference in New Issue
Block a user