Home Assistant Unofficial Reference 2024.12.1
scene.py
Go to the documentation of this file.
1 """Support for VELUX scenes."""
2 
3 from __future__ import annotations
4 
5 from typing import Any
6 
7 from homeassistant.components.scene import Scene
8 from homeassistant.config_entries import ConfigEntry
9 from homeassistant.core import HomeAssistant
10 from homeassistant.helpers.entity_platform import AddEntitiesCallback
11 
12 from .const import DOMAIN
13 
14 PARALLEL_UPDATES = 1
15 
16 
18  hass: HomeAssistant, config: ConfigEntry, async_add_entities: AddEntitiesCallback
19 ) -> None:
20  """Set up the scenes for Velux platform."""
21  module = hass.data[DOMAIN][config.entry_id]
22 
23  entities = [VeluxScene(scene) for scene in module.pyvlx.scenes]
24  async_add_entities(entities)
25 
26 
28  """Representation of a Velux scene."""
29 
30  def __init__(self, scene):
31  """Init velux scene."""
32  self.scenescene = scene
33 
34  @property
35  def name(self):
36  """Return the name of the scene."""
37  return self.scenescene.name
38 
39  async def async_activate(self, **kwargs: Any) -> None:
40  """Activate the scene."""
41  await self.scenescene.run(wait_for_completion=False)
None async_activate(self, **Any kwargs)
Definition: scene.py:39
None async_setup_entry(HomeAssistant hass, ConfigEntry config, AddEntitiesCallback async_add_entities)
Definition: scene.py:19
int run(RuntimeConfig runtime_config)
Definition: runner.py:146