Home Assistant Unofficial Reference 2024.12.1
scene.py
Go to the documentation of this file.
1 """Support for control of ElkM1 tasks ("macros")."""
2 
3 from __future__ import annotations
4 
5 from typing import Any
6 
7 from elkm1_lib.tasks import Task
8 
9 from homeassistant.components.scene import Scene
10 from homeassistant.core import HomeAssistant
11 from homeassistant.helpers.entity_platform import AddEntitiesCallback
12 
13 from . import ElkM1ConfigEntry
14 from .entity import ElkAttachedEntity, ElkEntity, create_elk_entities
15 
16 
18  hass: HomeAssistant,
19  config_entry: ElkM1ConfigEntry,
20  async_add_entities: AddEntitiesCallback,
21 ) -> None:
22  """Create the Elk-M1 scene platform."""
23  elk_data = config_entry.runtime_data
24  elk = elk_data.elk
25  entities: list[ElkEntity] = []
26  create_elk_entities(elk_data, elk.tasks, "task", ElkTask, entities)
27  async_add_entities(entities)
28 
29 
31  """Elk-M1 task as scene."""
32 
33  _element: Task
34 
35  async def async_activate(self, **kwargs: Any) -> None:
36  """Activate the task."""
37  self._element_element.activate()
None async_activate(self, **Any kwargs)
Definition: scene.py:35
None activate(self, **Any kwargs)
Definition: __init__.py:131
list[ElkEntity]|None create_elk_entities(ELKM1Data elk_data, Iterable[Element] elk_elements, str element_type, Any class_, list[ElkEntity] entities)
Definition: entity.py:30
None async_setup_entry(HomeAssistant hass, ElkM1ConfigEntry config_entry, AddEntitiesCallback async_add_entities)
Definition: scene.py:21