diff --git a/homeassistant/components/reolink/light.py b/homeassistant/components/reolink/light.py index 69ba42056c5..0f80215d506 100644 --- a/homeassistant/components/reolink/light.py +++ b/homeassistant/components/reolink/light.py @@ -67,7 +67,7 @@ LIGHT_ENTITIES = ( name="Status LED", icon="mdi:lightning-bolt-circle", entity_category=EntityCategory.CONFIG, - supported_fn=lambda api, ch: api.supported(ch, "status_led"), + supported_fn=lambda api, ch: api.supported(ch, "power_led"), is_on_fn=lambda api, ch: api.status_led_enabled(ch), turn_on_off_fn=lambda api, ch, value: api.set_status_led(ch, value), ), diff --git a/homeassistant/components/reolink/select.py b/homeassistant/components/reolink/select.py index d1da30a01a8..6303bc58131 100644 --- a/homeassistant/components/reolink/select.py +++ b/homeassistant/components/reolink/select.py @@ -5,7 +5,13 @@ from collections.abc import Callable from dataclasses import dataclass from typing import Any -from reolink_aio.api import DayNightEnum, Host, SpotlightModeEnum, TrackMethodEnum +from reolink_aio.api import ( + DayNightEnum, + Host, + SpotlightModeEnum, + StatusLedEnum, + TrackMethodEnum, +) from homeassistant.components.select import SelectEntity, SelectEntityDescription from homeassistant.config_entries import ConfigEntry @@ -90,6 +96,17 @@ SELECT_ENTITIES = ( value=lambda api, ch: TrackMethodEnum(api.auto_track_method(ch)).name, method=lambda api, ch, name: api.set_auto_tracking(ch, method=name), ), + ReolinkSelectEntityDescription( + key="status_led", + name="Status LED", + icon="mdi:lightning-bolt-circle", + translation_key="status_led", + entity_category=EntityCategory.CONFIG, + get_options=[state.name for state in StatusLedEnum], + supported=lambda api, ch: api.supported(ch, "doorbell_led"), + value=lambda api, ch: StatusLedEnum(api.doorbell_led(ch)).name, + method=lambda api, ch, name: api.set_status_led(ch, StatusLedEnum[name].value), + ), ) diff --git a/homeassistant/components/reolink/strings.json b/homeassistant/components/reolink/strings.json index 4c9b9f630f8..d02dbb8ab4d 100644 --- a/homeassistant/components/reolink/strings.json +++ b/homeassistant/components/reolink/strings.json @@ -83,6 +83,13 @@ "digitalfirst": "Digital first", "pantiltfirst": "Pan/tilt first" } + }, + "status_led": { + "state": { + "stayoff": "Stay off", + "auto": "Auto", + "alwaysonatnight": "Auto & always on at night" + } } } } diff --git a/homeassistant/components/reolink/switch.py b/homeassistant/components/reolink/switch.py index a7ed9b6a98d..1a4deda17e3 100644 --- a/homeassistant/components/reolink/switch.py +++ b/homeassistant/components/reolink/switch.py @@ -98,6 +98,15 @@ SWITCH_ENTITIES = ( value=lambda api, ch: api.ptz_guard_enabled(ch), method=lambda api, ch, value: api.set_ptz_guard(ch, enable=value), ), + ReolinkSwitchEntityDescription( + key="doorbell_button_sound", + name="Doorbell button sound", + icon="mdi:volume-high", + entity_category=EntityCategory.CONFIG, + supported=lambda api, ch: api.supported(ch, "doorbell_button_sound"), + value=lambda api, ch: api.doorbell_button_sound(ch), + method=lambda api, ch, value: api.set_volume(ch, doorbell_button_sound=value), + ), ) NVR_SWITCH_ENTITIES = (