mirror of
https://github.com/home-assistant/core.git
synced 2025-07-19 11:17:21 +00:00
Move dyson imports at top-level (#29047)
This commit is contained in:
parent
193769c791
commit
752a4d7221
@ -1,11 +1,12 @@
|
|||||||
"""Support for Dyson Pure Cool Link devices."""
|
"""Support for Dyson Pure Cool Link devices."""
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
|
from libpurecool.dyson import DysonAccount
|
||||||
import voluptuous as vol
|
import voluptuous as vol
|
||||||
|
|
||||||
import homeassistant.helpers.config_validation as cv
|
|
||||||
from homeassistant.const import CONF_DEVICES, CONF_PASSWORD, CONF_TIMEOUT, CONF_USERNAME
|
from homeassistant.const import CONF_DEVICES, CONF_PASSWORD, CONF_TIMEOUT, CONF_USERNAME
|
||||||
from homeassistant.helpers import discovery
|
from homeassistant.helpers import discovery
|
||||||
|
import homeassistant.helpers.config_validation as cv
|
||||||
|
|
||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
|
|
||||||
@ -43,8 +44,6 @@ def setup(hass, config):
|
|||||||
if DYSON_DEVICES not in hass.data:
|
if DYSON_DEVICES not in hass.data:
|
||||||
hass.data[DYSON_DEVICES] = []
|
hass.data[DYSON_DEVICES] = []
|
||||||
|
|
||||||
from libpurecool.dyson import DysonAccount
|
|
||||||
|
|
||||||
dyson_account = DysonAccount(
|
dyson_account = DysonAccount(
|
||||||
config[DOMAIN].get(CONF_USERNAME),
|
config[DOMAIN].get(CONF_USERNAME),
|
||||||
config[DOMAIN].get(CONF_PASSWORD),
|
config[DOMAIN].get(CONF_PASSWORD),
|
||||||
|
@ -1,7 +1,11 @@
|
|||||||
"""Support for Dyson Pure Cool Air Quality Sensors."""
|
"""Support for Dyson Pure Cool Air Quality Sensors."""
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
from homeassistant.components.air_quality import AirQualityEntity, DOMAIN
|
from libpurecool.dyson_pure_cool import DysonPureCool
|
||||||
|
from libpurecool.dyson_pure_state_v2 import DysonEnvironmentalSensorV2State
|
||||||
|
|
||||||
|
from homeassistant.components.air_quality import DOMAIN, AirQualityEntity
|
||||||
|
|
||||||
from . import DYSON_DEVICES
|
from . import DYSON_DEVICES
|
||||||
|
|
||||||
ATTRIBUTION = "Dyson purifier air quality sensor"
|
ATTRIBUTION = "Dyson purifier air quality sensor"
|
||||||
@ -15,7 +19,6 @@ ATTR_VOC = "volatile_organic_compounds"
|
|||||||
|
|
||||||
def setup_platform(hass, config, add_entities, discovery_info=None):
|
def setup_platform(hass, config, add_entities, discovery_info=None):
|
||||||
"""Set up the Dyson Sensors."""
|
"""Set up the Dyson Sensors."""
|
||||||
from libpurecool.dyson_pure_cool import DysonPureCool
|
|
||||||
|
|
||||||
if discovery_info is None:
|
if discovery_info is None:
|
||||||
return
|
return
|
||||||
@ -47,8 +50,6 @@ class DysonAirSensor(AirQualityEntity):
|
|||||||
|
|
||||||
def on_message(self, message):
|
def on_message(self, message):
|
||||||
"""Handle new messages which are received from the fan."""
|
"""Handle new messages which are received from the fan."""
|
||||||
from libpurecool.dyson_pure_state_v2 import DysonEnvironmentalSensorV2State
|
|
||||||
|
|
||||||
_LOGGER.debug(
|
_LOGGER.debug(
|
||||||
"%s: Message received for %s device: %s", DOMAIN, self.name, message
|
"%s: Message received for %s device: %s", DOMAIN, self.name, message
|
||||||
)
|
)
|
||||||
|
@ -1,20 +1,20 @@
|
|||||||
"""Support for Dyson Pure Hot+Cool link fan."""
|
"""Support for Dyson Pure Hot+Cool link fan."""
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
from libpurecool.const import HeatMode, HeatState, FocusMode, HeatTarget
|
from libpurecool.const import FocusMode, HeatMode, HeatState, HeatTarget
|
||||||
from libpurecool.dyson_pure_state import DysonPureHotCoolState
|
|
||||||
from libpurecool.dyson_pure_hotcool_link import DysonPureHotCoolLink
|
from libpurecool.dyson_pure_hotcool_link import DysonPureHotCoolLink
|
||||||
|
from libpurecool.dyson_pure_state import DysonPureHotCoolState
|
||||||
|
|
||||||
from homeassistant.components.climate import ClimateDevice
|
from homeassistant.components.climate import ClimateDevice
|
||||||
from homeassistant.components.climate.const import (
|
from homeassistant.components.climate.const import (
|
||||||
CURRENT_HVAC_COOL,
|
CURRENT_HVAC_COOL,
|
||||||
CURRENT_HVAC_HEAT,
|
CURRENT_HVAC_HEAT,
|
||||||
CURRENT_HVAC_IDLE,
|
CURRENT_HVAC_IDLE,
|
||||||
|
FAN_DIFFUSE,
|
||||||
|
FAN_FOCUS,
|
||||||
HVAC_MODE_COOL,
|
HVAC_MODE_COOL,
|
||||||
HVAC_MODE_HEAT,
|
HVAC_MODE_HEAT,
|
||||||
SUPPORT_FAN_MODE,
|
SUPPORT_FAN_MODE,
|
||||||
FAN_FOCUS,
|
|
||||||
FAN_DIFFUSE,
|
|
||||||
SUPPORT_TARGET_TEMPERATURE,
|
SUPPORT_TARGET_TEMPERATURE,
|
||||||
)
|
)
|
||||||
from homeassistant.const import ATTR_TEMPERATURE, TEMP_CELSIUS
|
from homeassistant.const import ATTR_TEMPERATURE, TEMP_CELSIUS
|
||||||
|
@ -5,18 +5,24 @@ https://home-assistant.io/components/fan.dyson/
|
|||||||
"""
|
"""
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
|
from libpurecool.const import FanMode, FanSpeed, NightMode, Oscillation
|
||||||
|
from libpurecool.dyson_pure_cool import DysonPureCool
|
||||||
|
from libpurecool.dyson_pure_cool_link import DysonPureCoolLink
|
||||||
|
from libpurecool.dyson_pure_state import DysonPureCoolState
|
||||||
|
from libpurecool.dyson_pure_state_v2 import DysonPureCoolV2State
|
||||||
import voluptuous as vol
|
import voluptuous as vol
|
||||||
|
|
||||||
import homeassistant.helpers.config_validation as cv
|
|
||||||
from homeassistant.components.fan import (
|
from homeassistant.components.fan import (
|
||||||
|
SPEED_HIGH,
|
||||||
|
SPEED_LOW,
|
||||||
|
SPEED_MEDIUM,
|
||||||
SUPPORT_OSCILLATE,
|
SUPPORT_OSCILLATE,
|
||||||
SUPPORT_SET_SPEED,
|
SUPPORT_SET_SPEED,
|
||||||
FanEntity,
|
FanEntity,
|
||||||
SPEED_LOW,
|
|
||||||
SPEED_MEDIUM,
|
|
||||||
SPEED_HIGH,
|
|
||||||
)
|
)
|
||||||
from homeassistant.const import ATTR_ENTITY_ID
|
from homeassistant.const import ATTR_ENTITY_ID
|
||||||
|
import homeassistant.helpers.config_validation as cv
|
||||||
|
|
||||||
from . import DYSON_DEVICES
|
from . import DYSON_DEVICES
|
||||||
|
|
||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
@ -88,8 +94,6 @@ SET_DYSON_SPEED_SCHEMA = vol.Schema(
|
|||||||
|
|
||||||
def setup_platform(hass, config, add_entities, discovery_info=None):
|
def setup_platform(hass, config, add_entities, discovery_info=None):
|
||||||
"""Set up the Dyson fan components."""
|
"""Set up the Dyson fan components."""
|
||||||
from libpurecool.dyson_pure_cool_link import DysonPureCoolLink
|
|
||||||
from libpurecool.dyson_pure_cool import DysonPureCool
|
|
||||||
|
|
||||||
if discovery_info is None:
|
if discovery_info is None:
|
||||||
return
|
return
|
||||||
@ -197,7 +201,6 @@ class DysonPureCoolLinkDevice(FanEntity):
|
|||||||
|
|
||||||
def on_message(self, message):
|
def on_message(self, message):
|
||||||
"""Call when new messages received from the fan."""
|
"""Call when new messages received from the fan."""
|
||||||
from libpurecool.dyson_pure_state import DysonPureCoolState
|
|
||||||
|
|
||||||
if isinstance(message, DysonPureCoolState):
|
if isinstance(message, DysonPureCoolState):
|
||||||
_LOGGER.debug("Message received for fan device %s: %s", self.name, message)
|
_LOGGER.debug("Message received for fan device %s: %s", self.name, message)
|
||||||
@ -215,8 +218,6 @@ class DysonPureCoolLinkDevice(FanEntity):
|
|||||||
|
|
||||||
def set_speed(self, speed: str) -> None:
|
def set_speed(self, speed: str) -> None:
|
||||||
"""Set the speed of the fan. Never called ??."""
|
"""Set the speed of the fan. Never called ??."""
|
||||||
from libpurecool.const import FanSpeed, FanMode
|
|
||||||
|
|
||||||
_LOGGER.debug("Set fan speed to: %s", speed)
|
_LOGGER.debug("Set fan speed to: %s", speed)
|
||||||
|
|
||||||
if speed == FanSpeed.FAN_SPEED_AUTO.value:
|
if speed == FanSpeed.FAN_SPEED_AUTO.value:
|
||||||
@ -227,8 +228,6 @@ class DysonPureCoolLinkDevice(FanEntity):
|
|||||||
|
|
||||||
def turn_on(self, speed: str = None, **kwargs) -> None:
|
def turn_on(self, speed: str = None, **kwargs) -> None:
|
||||||
"""Turn on the fan."""
|
"""Turn on the fan."""
|
||||||
from libpurecool.const import FanSpeed, FanMode
|
|
||||||
|
|
||||||
_LOGGER.debug("Turn on fan %s with speed %s", self.name, speed)
|
_LOGGER.debug("Turn on fan %s with speed %s", self.name, speed)
|
||||||
if speed:
|
if speed:
|
||||||
if speed == FanSpeed.FAN_SPEED_AUTO.value:
|
if speed == FanSpeed.FAN_SPEED_AUTO.value:
|
||||||
@ -244,15 +243,11 @@ class DysonPureCoolLinkDevice(FanEntity):
|
|||||||
|
|
||||||
def turn_off(self, **kwargs) -> None:
|
def turn_off(self, **kwargs) -> None:
|
||||||
"""Turn off the fan."""
|
"""Turn off the fan."""
|
||||||
from libpurecool.const import FanMode
|
|
||||||
|
|
||||||
_LOGGER.debug("Turn off fan %s", self.name)
|
_LOGGER.debug("Turn off fan %s", self.name)
|
||||||
self._device.set_configuration(fan_mode=FanMode.OFF)
|
self._device.set_configuration(fan_mode=FanMode.OFF)
|
||||||
|
|
||||||
def oscillate(self, oscillating: bool) -> None:
|
def oscillate(self, oscillating: bool) -> None:
|
||||||
"""Turn on/off oscillating."""
|
"""Turn on/off oscillating."""
|
||||||
from libpurecool.const import Oscillation
|
|
||||||
|
|
||||||
_LOGGER.debug("Turn oscillation %s for device %s", oscillating, self.name)
|
_LOGGER.debug("Turn oscillation %s for device %s", oscillating, self.name)
|
||||||
|
|
||||||
if oscillating:
|
if oscillating:
|
||||||
@ -275,8 +270,6 @@ class DysonPureCoolLinkDevice(FanEntity):
|
|||||||
@property
|
@property
|
||||||
def speed(self) -> str:
|
def speed(self) -> str:
|
||||||
"""Return the current speed."""
|
"""Return the current speed."""
|
||||||
from libpurecool.const import FanSpeed
|
|
||||||
|
|
||||||
if self._device.state:
|
if self._device.state:
|
||||||
if self._device.state.speed == FanSpeed.FAN_SPEED_AUTO.value:
|
if self._device.state.speed == FanSpeed.FAN_SPEED_AUTO.value:
|
||||||
return self._device.state.speed
|
return self._device.state.speed
|
||||||
@ -295,8 +288,6 @@ class DysonPureCoolLinkDevice(FanEntity):
|
|||||||
|
|
||||||
def set_night_mode(self, night_mode: bool) -> None:
|
def set_night_mode(self, night_mode: bool) -> None:
|
||||||
"""Turn fan in night mode."""
|
"""Turn fan in night mode."""
|
||||||
from libpurecool.const import NightMode
|
|
||||||
|
|
||||||
_LOGGER.debug("Set %s night mode %s", self.name, night_mode)
|
_LOGGER.debug("Set %s night mode %s", self.name, night_mode)
|
||||||
if night_mode:
|
if night_mode:
|
||||||
self._device.set_configuration(night_mode=NightMode.NIGHT_MODE_ON)
|
self._device.set_configuration(night_mode=NightMode.NIGHT_MODE_ON)
|
||||||
@ -310,8 +301,6 @@ class DysonPureCoolLinkDevice(FanEntity):
|
|||||||
|
|
||||||
def set_auto_mode(self, auto_mode: bool) -> None:
|
def set_auto_mode(self, auto_mode: bool) -> None:
|
||||||
"""Turn fan in auto mode."""
|
"""Turn fan in auto mode."""
|
||||||
from libpurecool.const import FanMode
|
|
||||||
|
|
||||||
_LOGGER.debug("Set %s auto mode %s", self.name, auto_mode)
|
_LOGGER.debug("Set %s auto mode %s", self.name, auto_mode)
|
||||||
if auto_mode:
|
if auto_mode:
|
||||||
self._device.set_configuration(fan_mode=FanMode.AUTO)
|
self._device.set_configuration(fan_mode=FanMode.AUTO)
|
||||||
@ -321,8 +310,6 @@ class DysonPureCoolLinkDevice(FanEntity):
|
|||||||
@property
|
@property
|
||||||
def speed_list(self) -> list:
|
def speed_list(self) -> list:
|
||||||
"""Get the list of available speeds."""
|
"""Get the list of available speeds."""
|
||||||
from libpurecool.const import FanSpeed
|
|
||||||
|
|
||||||
supported_speeds = [
|
supported_speeds = [
|
||||||
FanSpeed.FAN_SPEED_AUTO.value,
|
FanSpeed.FAN_SPEED_AUTO.value,
|
||||||
int(FanSpeed.FAN_SPEED_1.value),
|
int(FanSpeed.FAN_SPEED_1.value),
|
||||||
@ -365,8 +352,6 @@ class DysonPureCoolDevice(FanEntity):
|
|||||||
|
|
||||||
def on_message(self, message):
|
def on_message(self, message):
|
||||||
"""Call when new messages received from the fan."""
|
"""Call when new messages received from the fan."""
|
||||||
from libpurecool.dyson_pure_state_v2 import DysonPureCoolV2State
|
|
||||||
|
|
||||||
if isinstance(message, DysonPureCoolV2State):
|
if isinstance(message, DysonPureCoolV2State):
|
||||||
_LOGGER.debug("Message received for fan device %s: %s", self.name, message)
|
_LOGGER.debug("Message received for fan device %s: %s", self.name, message)
|
||||||
self.schedule_update_ha_state()
|
self.schedule_update_ha_state()
|
||||||
@ -392,8 +377,6 @@ class DysonPureCoolDevice(FanEntity):
|
|||||||
|
|
||||||
def set_speed(self, speed: str) -> None:
|
def set_speed(self, speed: str) -> None:
|
||||||
"""Set the speed of the fan."""
|
"""Set the speed of the fan."""
|
||||||
from libpurecool.const import FanSpeed
|
|
||||||
|
|
||||||
if speed == SPEED_LOW:
|
if speed == SPEED_LOW:
|
||||||
self._device.set_fan_speed(FanSpeed.FAN_SPEED_4)
|
self._device.set_fan_speed(FanSpeed.FAN_SPEED_4)
|
||||||
elif speed == SPEED_MEDIUM:
|
elif speed == SPEED_MEDIUM:
|
||||||
@ -408,8 +391,6 @@ class DysonPureCoolDevice(FanEntity):
|
|||||||
|
|
||||||
def set_dyson_speed(self, speed: str = None) -> None:
|
def set_dyson_speed(self, speed: str = None) -> None:
|
||||||
"""Set the exact speed of the purecool fan."""
|
"""Set the exact speed of the purecool fan."""
|
||||||
from libpurecool.const import FanSpeed
|
|
||||||
|
|
||||||
_LOGGER.debug("Set exact speed for fan %s", self.name)
|
_LOGGER.debug("Set exact speed for fan %s", self.name)
|
||||||
|
|
||||||
fan_speed = FanSpeed("{0:04d}".format(int(speed)))
|
fan_speed = FanSpeed("{0:04d}".format(int(speed)))
|
||||||
@ -487,8 +468,6 @@ class DysonPureCoolDevice(FanEntity):
|
|||||||
@property
|
@property
|
||||||
def speed(self):
|
def speed(self):
|
||||||
"""Return the current speed."""
|
"""Return the current speed."""
|
||||||
from libpurecool.const import FanSpeed
|
|
||||||
|
|
||||||
speed_map = {
|
speed_map = {
|
||||||
FanSpeed.FAN_SPEED_1.value: SPEED_LOW,
|
FanSpeed.FAN_SPEED_1.value: SPEED_LOW,
|
||||||
FanSpeed.FAN_SPEED_2.value: SPEED_LOW,
|
FanSpeed.FAN_SPEED_2.value: SPEED_LOW,
|
||||||
@ -508,8 +487,6 @@ class DysonPureCoolDevice(FanEntity):
|
|||||||
@property
|
@property
|
||||||
def dyson_speed(self):
|
def dyson_speed(self):
|
||||||
"""Return the current speed."""
|
"""Return the current speed."""
|
||||||
from libpurecool.const import FanSpeed
|
|
||||||
|
|
||||||
if self._device.state:
|
if self._device.state:
|
||||||
if self._device.state.speed == FanSpeed.FAN_SPEED_AUTO.value:
|
if self._device.state.speed == FanSpeed.FAN_SPEED_AUTO.value:
|
||||||
return self._device.state.speed
|
return self._device.state.speed
|
||||||
@ -563,8 +540,6 @@ class DysonPureCoolDevice(FanEntity):
|
|||||||
@property
|
@property
|
||||||
def dyson_speed_list(self) -> list:
|
def dyson_speed_list(self) -> list:
|
||||||
"""Get the list of available dyson speeds."""
|
"""Get the list of available dyson speeds."""
|
||||||
from libpurecool.const import FanSpeed
|
|
||||||
|
|
||||||
return [
|
return [
|
||||||
int(FanSpeed.FAN_SPEED_1.value),
|
int(FanSpeed.FAN_SPEED_1.value),
|
||||||
int(FanSpeed.FAN_SPEED_2.value),
|
int(FanSpeed.FAN_SPEED_2.value),
|
||||||
|
@ -1,8 +1,12 @@
|
|||||||
"""Support for Dyson Pure Cool Link Sensors."""
|
"""Support for Dyson Pure Cool Link Sensors."""
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
|
from libpurecool.dyson_pure_cool import DysonPureCool
|
||||||
|
from libpurecool.dyson_pure_cool_link import DysonPureCoolLink
|
||||||
|
|
||||||
from homeassistant.const import STATE_OFF, TEMP_CELSIUS
|
from homeassistant.const import STATE_OFF, TEMP_CELSIUS
|
||||||
from homeassistant.helpers.entity import Entity
|
from homeassistant.helpers.entity import Entity
|
||||||
|
|
||||||
from . import DYSON_DEVICES
|
from . import DYSON_DEVICES
|
||||||
|
|
||||||
SENSOR_UNITS = {
|
SENSOR_UNITS = {
|
||||||
@ -27,8 +31,6 @@ _LOGGER = logging.getLogger(__name__)
|
|||||||
|
|
||||||
def setup_platform(hass, config, add_entities, discovery_info=None):
|
def setup_platform(hass, config, add_entities, discovery_info=None):
|
||||||
"""Set up the Dyson Sensors."""
|
"""Set up the Dyson Sensors."""
|
||||||
from libpurecool.dyson_pure_cool_link import DysonPureCoolLink
|
|
||||||
from libpurecool.dyson_pure_cool import DysonPureCool
|
|
||||||
|
|
||||||
if discovery_info is None:
|
if discovery_info is None:
|
||||||
return
|
return
|
||||||
|
@ -1,6 +1,9 @@
|
|||||||
"""Support for the Dyson 360 eye vacuum cleaner robot."""
|
"""Support for the Dyson 360 eye vacuum cleaner robot."""
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
|
from libpurecool.const import Dyson360EyeMode, PowerMode
|
||||||
|
from libpurecool.dyson_360_eye import Dyson360Eye
|
||||||
|
|
||||||
from homeassistant.components.vacuum import (
|
from homeassistant.components.vacuum import (
|
||||||
SUPPORT_BATTERY,
|
SUPPORT_BATTERY,
|
||||||
SUPPORT_FAN_SPEED,
|
SUPPORT_FAN_SPEED,
|
||||||
@ -38,8 +41,6 @@ SUPPORT_DYSON = (
|
|||||||
|
|
||||||
def setup_platform(hass, config, add_entities, discovery_info=None):
|
def setup_platform(hass, config, add_entities, discovery_info=None):
|
||||||
"""Set up the Dyson 360 Eye robot vacuum platform."""
|
"""Set up the Dyson 360 Eye robot vacuum platform."""
|
||||||
from libpurecool.dyson_360_eye import Dyson360Eye
|
|
||||||
|
|
||||||
_LOGGER.debug("Creating new Dyson 360 Eye robot vacuum")
|
_LOGGER.debug("Creating new Dyson 360 Eye robot vacuum")
|
||||||
if DYSON_360_EYE_DEVICES not in hass.data:
|
if DYSON_360_EYE_DEVICES not in hass.data:
|
||||||
hass.data[DYSON_360_EYE_DEVICES] = []
|
hass.data[DYSON_360_EYE_DEVICES] = []
|
||||||
@ -86,8 +87,6 @@ class Dyson360EyeDevice(VacuumDevice):
|
|||||||
@property
|
@property
|
||||||
def status(self):
|
def status(self):
|
||||||
"""Return the status of the vacuum cleaner."""
|
"""Return the status of the vacuum cleaner."""
|
||||||
from libpurecool.const import Dyson360EyeMode
|
|
||||||
|
|
||||||
dyson_labels = {
|
dyson_labels = {
|
||||||
Dyson360EyeMode.INACTIVE_CHARGING: "Stopped - Charging",
|
Dyson360EyeMode.INACTIVE_CHARGING: "Stopped - Charging",
|
||||||
Dyson360EyeMode.INACTIVE_CHARGED: "Stopped - Charged",
|
Dyson360EyeMode.INACTIVE_CHARGED: "Stopped - Charged",
|
||||||
@ -110,8 +109,6 @@ class Dyson360EyeDevice(VacuumDevice):
|
|||||||
@property
|
@property
|
||||||
def fan_speed(self):
|
def fan_speed(self):
|
||||||
"""Return the fan speed of the vacuum cleaner."""
|
"""Return the fan speed of the vacuum cleaner."""
|
||||||
from libpurecool.const import PowerMode
|
|
||||||
|
|
||||||
speed_labels = {PowerMode.MAX: "Max", PowerMode.QUIET: "Quiet"}
|
speed_labels = {PowerMode.MAX: "Max", PowerMode.QUIET: "Quiet"}
|
||||||
return speed_labels[self._device.state.power_mode]
|
return speed_labels[self._device.state.power_mode]
|
||||||
|
|
||||||
@ -128,8 +125,6 @@ class Dyson360EyeDevice(VacuumDevice):
|
|||||||
@property
|
@property
|
||||||
def is_on(self) -> bool:
|
def is_on(self) -> bool:
|
||||||
"""Return True if entity is on."""
|
"""Return True if entity is on."""
|
||||||
from libpurecool.const import Dyson360EyeMode
|
|
||||||
|
|
||||||
return self._device.state.state in [
|
return self._device.state.state in [
|
||||||
Dyson360EyeMode.FULL_CLEAN_INITIATED,
|
Dyson360EyeMode.FULL_CLEAN_INITIATED,
|
||||||
Dyson360EyeMode.FULL_CLEAN_ABORTED,
|
Dyson360EyeMode.FULL_CLEAN_ABORTED,
|
||||||
@ -149,8 +144,6 @@ class Dyson360EyeDevice(VacuumDevice):
|
|||||||
@property
|
@property
|
||||||
def battery_icon(self):
|
def battery_icon(self):
|
||||||
"""Return the battery icon for the vacuum cleaner."""
|
"""Return the battery icon for the vacuum cleaner."""
|
||||||
from libpurecool.const import Dyson360EyeMode
|
|
||||||
|
|
||||||
charging = self._device.state.state in [Dyson360EyeMode.INACTIVE_CHARGING]
|
charging = self._device.state.state in [Dyson360EyeMode.INACTIVE_CHARGING]
|
||||||
return icon_for_battery_level(
|
return icon_for_battery_level(
|
||||||
battery_level=self.battery_level, charging=charging
|
battery_level=self.battery_level, charging=charging
|
||||||
@ -158,8 +151,6 @@ class Dyson360EyeDevice(VacuumDevice):
|
|||||||
|
|
||||||
def turn_on(self, **kwargs):
|
def turn_on(self, **kwargs):
|
||||||
"""Turn the vacuum on."""
|
"""Turn the vacuum on."""
|
||||||
from libpurecool.const import Dyson360EyeMode
|
|
||||||
|
|
||||||
_LOGGER.debug("Turn on device %s", self.name)
|
_LOGGER.debug("Turn on device %s", self.name)
|
||||||
if self._device.state.state in [Dyson360EyeMode.FULL_CLEAN_PAUSED]:
|
if self._device.state.state in [Dyson360EyeMode.FULL_CLEAN_PAUSED]:
|
||||||
self._device.resume()
|
self._device.resume()
|
||||||
@ -178,16 +169,12 @@ class Dyson360EyeDevice(VacuumDevice):
|
|||||||
|
|
||||||
def set_fan_speed(self, fan_speed, **kwargs):
|
def set_fan_speed(self, fan_speed, **kwargs):
|
||||||
"""Set fan speed."""
|
"""Set fan speed."""
|
||||||
from libpurecool.const import PowerMode
|
|
||||||
|
|
||||||
_LOGGER.debug("Set fan speed %s on device %s", fan_speed, self.name)
|
_LOGGER.debug("Set fan speed %s on device %s", fan_speed, self.name)
|
||||||
power_modes = {"Quiet": PowerMode.QUIET, "Max": PowerMode.MAX}
|
power_modes = {"Quiet": PowerMode.QUIET, "Max": PowerMode.MAX}
|
||||||
self._device.set_power_mode(power_modes[fan_speed])
|
self._device.set_power_mode(power_modes[fan_speed])
|
||||||
|
|
||||||
def start_pause(self, **kwargs):
|
def start_pause(self, **kwargs):
|
||||||
"""Start, pause or resume the cleaning task."""
|
"""Start, pause or resume the cleaning task."""
|
||||||
from libpurecool.const import Dyson360EyeMode
|
|
||||||
|
|
||||||
if self._device.state.state in [Dyson360EyeMode.FULL_CLEAN_PAUSED]:
|
if self._device.state.state in [Dyson360EyeMode.FULL_CLEAN_PAUSED]:
|
||||||
_LOGGER.debug("Resume device %s", self.name)
|
_LOGGER.debug("Resume device %s", self.name)
|
||||||
self._device.resume()
|
self._device.resume()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user