1 """Samsung TV trigger dispatcher."""
3 from __future__
import annotations
5 from typing
import cast
16 from .triggers
import turn_on
24 """Return trigger platform."""
25 platform_split = config[CONF_PLATFORM].split(
".", maxsplit=1)
26 if len(platform_split) < 2
or platform_split[1]
not in TRIGGERS:
27 raise ValueError(f
"Unknown Samsung TV trigger platform {config[CONF_PLATFORM]}")
28 return cast(TriggerProtocol, TRIGGERS[platform_split[1]])
32 hass: HomeAssistant, config: ConfigType
34 """Validate config."""
36 return cast(ConfigType, platform.TRIGGER_SCHEMA(config))
42 action: TriggerActionType,
43 trigger_info: TriggerInfo,
45 """Attach trigger of specified platform."""
47 return await platform.async_attach_trigger(hass, config, action, trigger_info)
ConfigType async_validate_trigger_config(HomeAssistant hass, ConfigType config)
CALLBACK_TYPE async_attach_trigger(HomeAssistant hass, ConfigType config, TriggerActionType action, TriggerInfo trigger_info)
TriggerProtocol _get_trigger_platform(ConfigType config)