Home Assistant Unofficial Reference
2024.12.1
button.py
Go to the documentation of this file.
1
"""Support for Neato buttons."""
2
3
from
__future__
import
annotations
4
5
from
pybotvac
import
Robot
6
7
from
homeassistant.components.button
import
ButtonEntity
8
from
homeassistant.config_entries
import
ConfigEntry
9
from
homeassistant.const
import
EntityCategory
10
from
homeassistant.core
import
HomeAssistant
11
from
homeassistant.helpers.entity_platform
import
AddEntitiesCallback
12
13
from
.const
import
NEATO_ROBOTS
14
from
.entity
import
NeatoEntity
15
16
17
async
def
async_setup_entry
(
18
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
19
) ->
None
:
20
"""Set up Neato button from config entry."""
21
entities = [
NeatoDismissAlertButton
(robot)
for
robot
in
hass.data[NEATO_ROBOTS]]
22
23
async_add_entities
(entities,
True
)
24
25
26
class
NeatoDismissAlertButton
(
NeatoEntity
,
ButtonEntity
):
27
"""Representation of a dismiss_alert button entity."""
28
29
_attr_translation_key =
"dismiss_alert"
30
_attr_entity_category = EntityCategory.CONFIG
31
32
def
__init__
(
33
self,
34
robot: Robot,
35
) ->
None
:
36
"""Initialize a dismiss_alert Neato button entity."""
37
super().
__init__
(robot)
38
self.
_attr_unique_id
_attr_unique_id = f
"{robot.serial}_dismiss_alert"
39
40
async
def
async_press
(self) -> None:
41
"""Press the button."""
42
await self.
hass
hass.async_add_executor_job(self.
robot
robot.dismiss_current_alert)
homeassistant.components.button.ButtonEntity
Definition:
__init__.py:87
homeassistant.components.neato.button.NeatoDismissAlertButton
Definition:
button.py:26
homeassistant.components.neato.button.NeatoDismissAlertButton.__init__
None __init__(self, Robot robot)
Definition:
button.py:35
homeassistant.components.neato.button.NeatoDismissAlertButton.async_press
None async_press(self)
Definition:
button.py:40
homeassistant.components.neato.button.NeatoDismissAlertButton._attr_unique_id
_attr_unique_id
Definition:
button.py:38
homeassistant.components.neato.entity.NeatoEntity
Definition:
entity.py:13
homeassistant.components.neato.entity.NeatoEntity.robot
robot
Definition:
entity.py:20
homeassistant.helpers.entity.Entity.hass
hass
Definition:
entity.py:1357
homeassistant.components.button
Definition:
__init__.py:1
homeassistant.components.mysensors.sensor.async_add_entities
async_add_entities
Definition:
sensor.py:224
homeassistant.components.neato.button.async_setup_entry
None async_setup_entry(HomeAssistant hass, ConfigEntry entry, AddEntitiesCallback async_add_entities)
Definition:
button.py:19
homeassistant.config_entries
Definition:
config_entries.py:1
homeassistant.const
Definition:
const.py:1
homeassistant.core
Definition:
core.py:1
homeassistant.helpers.entity_platform
Definition:
entity_platform.py:1
core
homeassistant
components
neato
button.py
Generated by
1.9.1