Source code for switchbot_utility.switchbot_curtain

from .battery_mixin import BatteryMixin
from .onoff_mixin import OnOffMixin
from .switchbot_device import SwitchbotDevice


[docs]class SwitchbotCurtain(SwitchbotDevice, OnOffMixin, BatteryMixin): """Switchbot Curtain class""" def __init(self, deviceId): """Constructor""" super().__init__(deviceId)
[docs] def set_position(self, position: int) -> str: """Set curtain position 0-100% arg: position curtain position 0-100%""" self._body["command"] = "setPosition" self._body["parameter"] = "0,ff,{}".format(position) result = self.command(self.deviceId, self._body) return result.text
[docs] def open(self) -> str: """Aliase of turn on command""" return self.turn_on()
[docs] def close(self) -> str: """Aliase of turn off command""" return self.turn_off()
[docs] def get_curtain_position(self) -> dict: """Returns curtain position 0(open) to 100(close)""" status = self.get_status() return status["slidePosition"]