1 """Wyoming switch entities."""
3 from __future__
import annotations
5 from typing
import TYPE_CHECKING, Any
14 from .const
import DOMAIN
15 from .entity
import WyomingSatelliteEntity
18 from .models
import DomainDataItem
23 config_entry: ConfigEntry,
24 async_add_entities: AddEntitiesCallback,
26 """Set up VoIP switch entities."""
27 item: DomainDataItem = hass.data[DOMAIN][config_entry.entry_id]
30 assert item.device
is not None
36 WyomingSatelliteEntity, restore_state.RestoreEntity, SwitchEntity
38 """Entity to represent if satellite is muted."""
42 translation_key=
"mute",
43 entity_category=EntityCategory.CONFIG,
47 """Call when entity about to be added to hass."""
50 state = await self.async_get_last_state()
53 self.
_attr_is_on_attr_is_on = (state
is not None)
and (state.state == STATE_ON)
60 self.
_device_device.set_is_muted(
True)
66 self.
_device_device.set_is_muted(
False)
None async_added_to_hass(self)
None async_turn_on(self, **Any kwargs)
None async_turn_off(self, **Any kwargs)
None async_write_ha_state(self)
None async_setup_entry(HomeAssistant hass, ConfigEntry config_entry, AddEntitiesCallback async_add_entities)