mirror of
https://github.com/python-kasa/python-kasa.git
synced 2024-12-22 19:23:34 +00:00
Add SmartCamera Led Module (#1249)
This commit is contained in:
parent
668ba748c5
commit
9d5e07b969
@ -3,11 +3,13 @@
|
|||||||
from .camera import Camera
|
from .camera import Camera
|
||||||
from .childdevice import ChildDevice
|
from .childdevice import ChildDevice
|
||||||
from .device import DeviceModule
|
from .device import DeviceModule
|
||||||
|
from .led import Led
|
||||||
from .time import Time
|
from .time import Time
|
||||||
|
|
||||||
__all__ = [
|
__all__ = [
|
||||||
"Camera",
|
"Camera",
|
||||||
"ChildDevice",
|
"ChildDevice",
|
||||||
"DeviceModule",
|
"DeviceModule",
|
||||||
|
"Led",
|
||||||
"Time",
|
"Time",
|
||||||
]
|
]
|
||||||
|
28
kasa/experimental/modules/led.py
Normal file
28
kasa/experimental/modules/led.py
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
"""Module for led controls."""
|
||||||
|
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
|
from ...interfaces.led import Led as LedInterface
|
||||||
|
from ..smartcameramodule import SmartCameraModule
|
||||||
|
|
||||||
|
|
||||||
|
class Led(SmartCameraModule, LedInterface):
|
||||||
|
"""Implementation of led controls."""
|
||||||
|
|
||||||
|
REQUIRED_COMPONENT = "led"
|
||||||
|
QUERY_GETTER_NAME = "getLedStatus"
|
||||||
|
QUERY_MODULE_NAME = "led"
|
||||||
|
QUERY_SECTION_NAMES = "config"
|
||||||
|
|
||||||
|
@property
|
||||||
|
def led(self) -> bool:
|
||||||
|
"""Return current led status."""
|
||||||
|
return self.data["config"]["enabled"] == "on"
|
||||||
|
|
||||||
|
async def set_led(self, enable: bool) -> dict:
|
||||||
|
"""Set led.
|
||||||
|
|
||||||
|
This should probably be a select with always/never/nightmode.
|
||||||
|
"""
|
||||||
|
params = {"enabled": "on"} if enable else {"enabled": "off"}
|
||||||
|
return await self.call("setLedStatus", {"led": {"config": params}})
|
Loading…
Reference in New Issue
Block a user