1 """Support for Nexia Automations."""
5 from nexia.automation
import NexiaAutomation
12 from .const
import ATTR_DESCRIPTION
13 from .coordinator
import NexiaDataUpdateCoordinator
14 from .entity
import NexiaEntity
15 from .types
import NexiaConfigEntry
17 SCENE_ACTIVATION_TIME = 5
22 config_entry: NexiaConfigEntry,
23 async_add_entities: AddEntitiesCallback,
25 """Set up automations for a Nexia device."""
26 coordinator = config_entry.runtime_data
27 nexia_home = coordinator.nexia_home
30 coordinator, nexia_home.get_automation_by_id(automation_id)
32 for automation_id
in nexia_home.get_automation_ids()
37 """Provides Nexia automation support."""
39 _attr_translation_key =
"automation"
42 self, coordinator: NexiaDataUpdateCoordinator, automation: NexiaAutomation
44 """Initialize the automation scene."""
45 super().
__init__(coordinator, automation.automation_id)
51 """Activate an automation scene."""
54 async
def refresh_callback(_):
None async_activate(self, **Any kwargs)
None __init__(self, NexiaDataUpdateCoordinator coordinator, NexiaAutomation automation)
_attr_extra_state_attributes
None activate(self, **Any kwargs)
None async_setup_entry(HomeAssistant hass, NexiaConfigEntry config_entry, AddEntitiesCallback async_add_entities)
CALLBACK_TYPE async_call_later(HomeAssistant hass, float|timedelta delay, HassJob[[datetime], Coroutine[Any, Any, None]|None]|Callable[[datetime], Coroutine[Any, Any, None]|None] action)