diff --git a/homeassistant/components/rituals_perfume_genie/__init__.py b/homeassistant/components/rituals_perfume_genie/__init__.py index 2bac2c03c04..114c7f6d400 100644 --- a/homeassistant/components/rituals_perfume_genie/__init__.py +++ b/homeassistant/components/rituals_perfume_genie/__init__.py @@ -15,8 +15,6 @@ from .const import ACCOUNT_HASH, COORDINATORS, DEVICES, DOMAIN, HUBLOT PLATFORMS = ["binary_sensor", "number", "select", "sensor", "switch"] -EMPTY_CREDENTIALS = "" - _LOGGER = logging.getLogger(__name__) UPDATE_INTERVAL = timedelta(seconds=30) @@ -25,7 +23,7 @@ UPDATE_INTERVAL = timedelta(seconds=30) async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: """Set up Rituals Perfume Genie from a config entry.""" session = async_get_clientsession(hass) - account = Account(EMPTY_CREDENTIALS, EMPTY_CREDENTIALS, session) + account = Account(session=session) account.data = {ACCOUNT_HASH: entry.data.get(ACCOUNT_HASH)} try: diff --git a/homeassistant/components/rituals_perfume_genie/binary_sensor.py b/homeassistant/components/rituals_perfume_genie/binary_sensor.py index 2d82982388d..8446d899480 100644 --- a/homeassistant/components/rituals_perfume_genie/binary_sensor.py +++ b/homeassistant/components/rituals_perfume_genie/binary_sensor.py @@ -16,7 +16,6 @@ from .const import COORDINATORS, DEVICES, DOMAIN from .entity import DiffuserEntity CHARGING_SUFFIX = " Battery Charging" -BATTERY_CHARGING_ID = 21 async def async_setup_entry( diff --git a/homeassistant/components/rituals_perfume_genie/const.py b/homeassistant/components/rituals_perfume_genie/const.py index 5ba687c3d7c..bafdef9140c 100644 --- a/homeassistant/components/rituals_perfume_genie/const.py +++ b/homeassistant/components/rituals_perfume_genie/const.py @@ -5,9 +5,5 @@ COORDINATORS = "coordinators" DEVICES = "devices" ACCOUNT_HASH = "account_hash" -ATTRIBUTES = "attributes" HUBLOT = "hublot" -ID = "id" -ROOM = "roomc" SENSORS = "sensors" -SPEED = "speedc" diff --git a/homeassistant/components/rituals_perfume_genie/entity.py b/homeassistant/components/rituals_perfume_genie/entity.py index 1c1f3912c68..d03450609e7 100644 --- a/homeassistant/components/rituals_perfume_genie/entity.py +++ b/homeassistant/components/rituals_perfume_genie/entity.py @@ -7,12 +7,13 @@ from homeassistant.helpers.entity import DeviceInfo from homeassistant.helpers.update_coordinator import CoordinatorEntity from . import RitualsDataUpdateCoordinator -from .const import ATTRIBUTES, DOMAIN, HUBLOT, SENSORS +from .const import DOMAIN, HUBLOT, SENSORS MANUFACTURER = "Rituals Cosmetics" MODEL = "The Perfume Genie" MODEL2 = "The Perfume Genie 2.0" +ATTRIBUTES = "attributes" ROOMNAME = "roomnamec" STATUS = "status" VERSION = "versionc" diff --git a/homeassistant/components/rituals_perfume_genie/number.py b/homeassistant/components/rituals_perfume_genie/number.py index 86274dc2f88..bc9ac7c9f31 100644 --- a/homeassistant/components/rituals_perfume_genie/number.py +++ b/homeassistant/components/rituals_perfume_genie/number.py @@ -9,7 +9,7 @@ from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback from . import RitualsDataUpdateCoordinator -from .const import ATTRIBUTES, COORDINATORS, DEVICES, DOMAIN, SPEED +from .const import COORDINATORS, DEVICES, DOMAIN from .entity import DiffuserEntity MIN_PERFUME_AMOUNT = 1 @@ -51,7 +51,7 @@ class DiffuserPerfumeAmount(DiffuserEntity, NumberEntity): @property def value(self) -> int: """Return the current perfume amount.""" - return self._diffuser.hub_data[ATTRIBUTES][SPEED] + return self._diffuser.perfume_amount @property def min_value(self) -> int: diff --git a/homeassistant/components/rituals_perfume_genie/select.py b/homeassistant/components/rituals_perfume_genie/select.py index 17e71c38ae8..ac6f4aa872a 100644 --- a/homeassistant/components/rituals_perfume_genie/select.py +++ b/homeassistant/components/rituals_perfume_genie/select.py @@ -10,7 +10,7 @@ from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback from . import RitualsDataUpdateCoordinator -from .const import ATTRIBUTES, COORDINATORS, DEVICES, DOMAIN, ROOM +from .const import COORDINATORS, DEVICES, DOMAIN from .entity import DiffuserEntity ROOM_SIZE_SUFFIX = " Room Size" @@ -47,24 +47,12 @@ class DiffuserRoomSize(DiffuserEntity, SelectEntity): @property def current_option(self) -> str: """Return the diffuser room size.""" - return { - "1": "15", - "2": "30", - "3": "60", - "4": "100", - }[self._diffuser.hub_data[ATTRIBUTES][ROOM]] + return str(self._diffuser.room_size_square_meter) async def async_select_option(self, option: str) -> None: """Change the diffuser room size.""" if option in self.options: - await self._diffuser.set_room_size( - { - "15": 1, - "30": 2, - "60": 3, - "100": 4, - }[option] - ) + await self._diffuser.set_room_size_square_meter(int(option)) else: raise ValueError( f"Can't set the room size to {option}. Allowed room sizes are: {self.options}" diff --git a/homeassistant/components/rituals_perfume_genie/sensor.py b/homeassistant/components/rituals_perfume_genie/sensor.py index 31a04bb5b8f..110a58fcd13 100644 --- a/homeassistant/components/rituals_perfume_genie/sensor.py +++ b/homeassistant/components/rituals_perfume_genie/sensor.py @@ -13,12 +13,10 @@ from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback from . import RitualsDataUpdateCoordinator -from .const import COORDINATORS, DEVICES, DOMAIN, ID, SENSORS +from .const import COORDINATORS, DEVICES, DOMAIN, SENSORS from .entity import DiffuserEntity -TITLE = "title" -ICON = "icon" -WIFI = "wific" +ID = "id" PERFUME = "rfidc" FILL = "fillc" @@ -30,8 +28,6 @@ PERFUME_SUFFIX = " Perfume" FILL_SUFFIX = " Fill" WIFI_SUFFIX = " Wifi" -ATTR_SIGNAL_STRENGTH = "signal_strength" - async def async_setup_entry( hass: HomeAssistant, @@ -72,7 +68,7 @@ class DiffuserPerfumeSensor(DiffuserEntity): @property def state(self) -> str: """Return the state of the perfume sensor.""" - return self._diffuser.hub_data[SENSORS][PERFUME][TITLE] + return self._diffuser.perfume class DiffuserFillSensor(DiffuserEntity): @@ -94,7 +90,7 @@ class DiffuserFillSensor(DiffuserEntity): @property def state(self) -> str: """Return the state of the fill sensor.""" - return self._diffuser.hub_data[SENSORS][FILL][TITLE] + return self._diffuser.fill class DiffuserBatterySensor(DiffuserEntity): diff --git a/homeassistant/components/rituals_perfume_genie/switch.py b/homeassistant/components/rituals_perfume_genie/switch.py index 54e985af77f..364b29ef1fb 100644 --- a/homeassistant/components/rituals_perfume_genie/switch.py +++ b/homeassistant/components/rituals_perfume_genie/switch.py @@ -11,7 +11,7 @@ from homeassistant.core import HomeAssistant, callback from homeassistant.helpers.entity_platform import AddEntitiesCallback from . import RitualsDataUpdateCoordinator -from .const import ATTRIBUTES, COORDINATORS, DEVICES, DOMAIN, ROOM, SPEED +from .const import COORDINATORS, DEVICES, DOMAIN from .entity import DiffuserEntity FAN = "fanc" @@ -54,8 +54,8 @@ class DiffuserSwitch(SwitchEntity, DiffuserEntity): def extra_state_attributes(self) -> dict[str, Any]: """Return the device state attributes.""" attributes = { - "fan_speed": self._diffuser.hub_data[ATTRIBUTES][SPEED], - "room_size": self._diffuser.hub_data[ATTRIBUTES][ROOM], + "fan_speed": self._diffuser.perfume_amount, + "room_size": self._diffuser.room_size, } return attributes