Home Assistant Unofficial Reference 2024.12.1
homeassistant.components.button.ButtonEntity Class Reference

Inherits homeassistant.helpers.restore_state.RestoreEntity, cached_properties, and CACHED_PROPERTIES_WITH_ATTR_.

Inherited by homeassistant.components.acaia.button.AcaiaButton, homeassistant.components.airgradient.button.AirGradientButton, homeassistant.components.august.button.AugustWakeLockButton, homeassistant.components.blebox.button.BleBoxButtonEntity, homeassistant.components.bmw_connected_drive.button.BMWButton, homeassistant.components.bond.button.BondButtonEntity, homeassistant.components.braviatv.button.BraviaTVButton, homeassistant.components.coolmaster.button.CoolmasterResetFilter, homeassistant.components.deconz.button.DeconzPresenceResetButton, homeassistant.components.deconz.button.DeconzSceneButton, homeassistant.components.demo.button.DemoButton, homeassistant.components.devolo_home_network.button.DevoloButtonEntity, homeassistant.components.doorbird.button.DoorBirdButton, homeassistant.components.dremel_3d_printer.button.Dremel3DPrinterButtonEntity, homeassistant.components.ecovacs.button.EcovacsButtonEntity, homeassistant.components.ecovacs.button.EcovacsResetLifespanButtonEntity, homeassistant.components.elgato.button.ElgatoButtonEntity, homeassistant.components.esphome.button.EsphomeButton, homeassistant.components.ezviz.button.EzvizButtonEntity, homeassistant.components.flux_led.button.FluxButton, homeassistant.components.freebox.button.FreeboxButton, homeassistant.components.fritz.button.FritzBoxWOLButton, homeassistant.components.fritz.button.FritzButton, homeassistant.components.fritzbox.button.FritzBoxTemplate, homeassistant.components.fully_kiosk.button.FullyButtonEntity, homeassistant.components.gardena_bluetooth.button.GardenaBluetoothButton, homeassistant.components.goodwe.button.GoodweButtonEntity, homeassistant.components.google_assistant.button.SyncButton, homeassistant.components.group.button.ButtonGroup, homeassistant.components.guardian.button.GuardianButton, homeassistant.components.habitica.button.HabiticaButton, homeassistant.components.homekit_controller.button.BaseHomeKitButton, homeassistant.components.homematicip_cloud.button.HomematicipGarageDoorControllerButton, homeassistant.components.homewizard.button.HomeWizardIdentifyButton, homeassistant.components.homeworks.button.HomeworksButton, homeassistant.components.huawei_lte.button.BaseButton, homeassistant.components.hunterdouglas_powerview.button.PowerviewShadeButton, homeassistant.components.husqvarna_automower.button.AutomowerButtonEntity, homeassistant.components.idasen_desk.button.IdasenDeskButton, homeassistant.components.input_button.InputButton, homeassistant.components.isy994.button.ISYNodeButtonEntity, homeassistant.components.kitchen_sink.button.DemoButton, homeassistant.components.knx.button.KNXButton, homeassistant.components.lamarzocco.button.LaMarzoccoButtonEntity, homeassistant.components.lametric.button.LaMetricButtonEntity, homeassistant.components.lektrico.button.LektricoButton, homeassistant.components.lifx.button.LIFXButton, homeassistant.components.linkplay.button.LinkPlayButton, homeassistant.components.litterrobot.button.LitterRobotButtonEntity, homeassistant.components.lutron_caseta.button.LutronCasetaButton, homeassistant.components.matter.button.MatterCommandButton, homeassistant.components.microbees.button.MBButton, homeassistant.components.modem_callerid.button.PhoneModemButton, homeassistant.components.moehlenhoff_alpha2.button.Alpha2TimeSyncButton, homeassistant.components.motion_blinds.button.MotionGoFavoriteButton, homeassistant.components.motion_blinds.button.MotionSetFavoriteButton, homeassistant.components.motionblinds_ble.button.MotionblindsBLEButtonEntity, homeassistant.components.mqtt.button.MqttButton, homeassistant.components.nam.button.NAMButton, homeassistant.components.nanoleaf.button.NanoleafIdentifyButton, homeassistant.components.neato.button.NeatoDismissAlertButton, homeassistant.components.netgear.button.NetgearRouterButtonEntity, homeassistant.components.nextdns.button.NextDnsButton, homeassistant.components.nibe_heatpump.button.NibeAlarmResetButton, homeassistant.components.nissan_leaf.button.LeafChargingButton, homeassistant.components.obihai.button.ObihaiButton, homeassistant.components.octoprint.button.OctoprintPrinterButton, homeassistant.components.octoprint.button.OctoprintSystemButton, homeassistant.components.onvif.button.RebootButton, homeassistant.components.onvif.button.SetSystemDateAndTimeButton, homeassistant.components.opengarage.button.OpenGarageButtonEntity, homeassistant.components.opentherm_gw.button.OpenThermButton, homeassistant.components.overkiz.button.OverkizButton, homeassistant.components.plex.button.PlexScanClientsButton, homeassistant.components.plugwise.button.PlugwiseButtonEntity, homeassistant.components.prusalink.button.PrusaLinkButtonEntity, homeassistant.components.pyload.button.PyLoadBinarySensor, homeassistant.components.qnap_qsw.button.QswButton, homeassistant.components.rainmachine.button.RainMachineButton, homeassistant.components.renault.button.RenaultButtonEntity, homeassistant.components.renson.button.RensonButton, homeassistant.components.reolink.button.ReolinkButtonEntity, homeassistant.components.reolink.button.ReolinkHostButtonEntity, homeassistant.components.ring.button.RingDoorButton, homeassistant.components.roborock.button.RoborockButtonEntity, homeassistant.components.sabnzbd.button.SabnzbdButton, homeassistant.components.sensibo.button.SensiboDeviceButton, homeassistant.components.sfr_box.button.SFRBoxButton, homeassistant.components.shelly.button.ShellyButton, homeassistant.components.simplisafe.button.SimpliSafeButton, homeassistant.components.sleepiq.button.SleepNumberButton, homeassistant.components.smarty.button.SmartyButton, homeassistant.components.smlight.button.SmButton, homeassistant.components.starline.button.StarlineButton, homeassistant.components.starlink.button.StarlinkButtonEntity, homeassistant.components.switchbee.button.SwitchBeeButton, homeassistant.components.switcher_kis.button.SwitcherThermostatButtonEntity, homeassistant.components.synology_dsm.button.SynologyDSMButton, homeassistant.components.tailwind.button.TailwindButtonEntity, homeassistant.components.tami4.button.Tami4EdgeButton, homeassistant.components.tami4.button.Tami4EdgeDrinkButton, homeassistant.components.template.button.TemplateButtonEntity, homeassistant.components.tesla_fleet.button.TeslaFleetButtonEntity, homeassistant.components.teslemetry.button.TeslemetryButtonEntity, homeassistant.components.tessie.button.TessieButtonEntity, homeassistant.components.tolo.button.ToloLampNextColorButton, homeassistant.components.totalconnect.button.TotalConnectPanelButton, homeassistant.components.totalconnect.button.TotalConnectZoneBypassButton, homeassistant.components.tplink.button.TPLinkButtonEntity, homeassistant.components.tuya.button.TuyaButtonEntity, homeassistant.components.unifi.button.UnifiButtonEntity, homeassistant.components.unifiprotect.button.ProtectButton, homeassistant.components.velbus.button.VelbusButton, homeassistant.components.vicare.button.ViCareButton, homeassistant.components.vodafone_station.button.VodafoneStationSensorEntity, homeassistant.components.wake_on_lan.button.WolButton, homeassistant.components.wled.button.WLEDRestartButton, homeassistant.components.xiaomi_miio.button.XiaomiGenericCoordinatedButton, homeassistant.components.yale.button.YaleWakeLockButton, homeassistant.components.yale_smart_alarm.button.YalePanicButton, homeassistant.components.zha.button.ZHAButton, and homeassistant.components.zwave_me.button.ZWaveMeButton.

Collaboration diagram for homeassistant.components.button.ButtonEntity:
[legend]

Public Member Functions

None async_internal_added_to_hass (self)
 
None async_press (self)
 
ButtonDeviceClass|None device_class (self)
 
None press (self)
 
str|None state (self)
 
- Public Member Functions inherited from homeassistant.helpers.restore_state.RestoreEntity
ExtraStoredData|None async_get_last_extra_data (self)
 
State|None async_get_last_state (self)
 
None async_internal_will_remove_from_hass (self)
 
ExtraStoredData|None extra_restore_state_data (self)
 
- Public Member Functions inherited from homeassistant.helpers.entity.Entity
None __init_subclass__ (cls, **Any kwargs)
 
str __repr__ (self)
 
None add_to_platform_abort (self)
 
None add_to_platform_finish (self)
 
None add_to_platform_start (self, HomeAssistant hass, EntityPlatform platform, asyncio.Semaphore|None parallel_updates)
 
bool assumed_state (self)
 
None async_added_to_hass (self)
 
None async_device_update (self, bool warning=True)
 
None async_on_remove (self, CALLBACK_TYPE func)
 
None async_registry_entry_updated (self)
 
None async_remove (self, *bool force_remove=False)
 
None async_removed_from_registry (self)
 
None async_schedule_update_ha_state (self, bool force_refresh=False)
 
None async_set_context (self, Context context)
 
None async_update_ha_state (self, bool force_refresh=False)
 
None async_will_remove_from_hass (self)
 
None async_write_ha_state (self)
 
str|None attribution (self)
 
bool available (self)
 
dict[str, Any]|None capability_attributes (self)
 
DeviceInfo|None device_info (self)
 
bool enabled (self)
 
EntityCategory|None entity_category (self)
 
str|None entity_picture (self)
 
bool entity_registry_enabled_default (self)
 
bool entity_registry_visible_default (self)
 
Mapping[str, Any]|None extra_state_attributes (self)
 
bool force_update (self)
 
HassJobType get_hassjob_type (self, str function_name)
 
er.EntityOptionsType|None get_initial_entity_options (self)
 
bool has_entity_name (self)
 
str|None icon (self)
 
str|UndefinedType|None name (self)
 
None schedule_update_ha_state (self, bool force_refresh=False)
 
bool should_poll (self)
 
dict[str, Any]|None state_attributes (self)
 
str|None suggested_object_id (self)
 
int|None supported_features (self)
 
str|None translation_key (self)
 
Mapping[str, strtranslation_placeholders (self)
 
str|None unique_id (self)
 
str|None unit_of_measurement (self)
 
bool use_device_name (self)
 
- Public Member Functions inherited from homeassistant.helpers.entity.CachedProperties
None __init__ (cls, str name, tuple[type,...] bases, dict[Any, Any] namespace, **Any kwargs)
 
Any __new__ (mcs, str name, tuple[type,...] bases, dict[Any, Any] namespace, set[str]|None cached_properties=None, **Any kwargs)
 

Static Public Attributes

 None
 
- Static Public Attributes inherited from homeassistant.helpers.entity.Entity
 bool
 
 EntityPlatform
 
 HomeAssistant
 
 None
 
 StateInfo
 
 StateType
 
 str
 

Private Member Functions

None __set_state (self, str|None state)
 
None _async_press_action (self)
 
bool _default_to_device_class_name (self)
 

Private Attributes

 __last_pressed_isoformat
 

Static Private Attributes

bool _attr_should_poll = False
 

Additional Inherited Members

- Public Attributes inherited from homeassistant.helpers.entity.Entity
 device_entry
 
 entity_id
 
 hass
 
 parallel_updates
 
 platform
 
 registry_entry
 

Detailed Description

Representation of a Button entity.

Definition at line 87 of file __init__.py.

Member Function Documentation

◆ __set_state()

None homeassistant.components.button.ButtonEntity.__set_state (   self,
str | None  state 
)
private
Set the entity state.

Definition at line 118 of file __init__.py.

◆ _async_press_action()

None homeassistant.components.button.ButtonEntity._async_press_action (   self)
private
Press the button (from e.g., service call).

Should not be overridden, handle setting last press timestamp.

Definition at line 125 of file __init__.py.

◆ _default_to_device_class_name()

bool homeassistant.components.button.ButtonEntity._default_to_device_class_name (   self)
private
Return True if an unnamed entity should be named by its device class.

For buttons this is True if the entity has a device class.

Reimplemented from homeassistant.helpers.entity.Entity.

Definition at line 96 of file __init__.py.

◆ async_internal_added_to_hass()

None homeassistant.components.button.ButtonEntity.async_internal_added_to_hass (   self)
Call when the button is added to hass.

Reimplemented from homeassistant.helpers.restore_state.RestoreEntity.

Definition at line 134 of file __init__.py.

◆ async_press()

None homeassistant.components.button.ButtonEntity.async_press (   self)
Press the button.

Reimplemented in homeassistant.components.zha.button.ZHAButton, homeassistant.components.yale_smart_alarm.button.YalePanicButton, homeassistant.components.yale.button.YaleWakeLockButton, homeassistant.components.xiaomi_miio.button.XiaomiGenericCoordinatedButton, homeassistant.components.wled.button.WLEDRestartButton, homeassistant.components.wake_on_lan.button.WolButton, homeassistant.components.vodafone_station.button.VodafoneStationSensorEntity, homeassistant.components.velbus.button.VelbusButton, homeassistant.components.unifiprotect.button.ProtectButton, homeassistant.components.unifi.button.UnifiButtonEntity, homeassistant.components.tplink.button.TPLinkButtonEntity, homeassistant.components.tessie.button.TessieButtonEntity, homeassistant.components.teslemetry.button.TeslemetryButtonEntity, homeassistant.components.tesla_fleet.button.TeslaFleetButtonEntity, homeassistant.components.template.button.TemplateButtonEntity, homeassistant.components.tailwind.button.TailwindButtonEntity, homeassistant.components.synology_dsm.button.SynologyDSMButton, homeassistant.components.switcher_kis.button.SwitcherThermostatButtonEntity, homeassistant.components.switchbee.button.SwitchBeeButton, homeassistant.components.starlink.button.StarlinkButtonEntity, homeassistant.components.smlight.button.SmButton, homeassistant.components.sleepiq.button.SleepNumberButton, homeassistant.components.simplisafe.button.SimpliSafeButton, homeassistant.components.shelly.button.ShellyButton, homeassistant.components.sfr_box.button.SFRBoxButton, homeassistant.components.sensibo.button.SensiboDeviceButton, homeassistant.components.sabnzbd.button.SabnzbdButton, homeassistant.components.roborock.button.RoborockButtonEntity, homeassistant.components.ring.button.RingDoorButton, homeassistant.components.reolink.button.ReolinkHostButtonEntity, homeassistant.components.reolink.button.ReolinkButtonEntity, homeassistant.components.renault.button.RenaultButtonEntity, homeassistant.components.rainmachine.button.RainMachineButton, homeassistant.components.qnap_qsw.button.QswButton, homeassistant.components.pyload.button.PyLoadBinarySensor, homeassistant.components.prusalink.button.PrusaLinkButtonEntity, homeassistant.components.plugwise.button.PlugwiseButtonEntity, homeassistant.components.plex.button.PlexScanClientsButton, homeassistant.components.overkiz.button.OverkizButton, homeassistant.components.opentherm_gw.button.OpenThermButton, homeassistant.components.opengarage.button.OpenGarageButtonEntity, homeassistant.components.onvif.button.SetSystemDateAndTimeButton, homeassistant.components.onvif.button.RebootButton, homeassistant.components.octoprint.button.OctoprintRestartOctoprintButton, homeassistant.components.octoprint.button.OctoprintRebootSystemButton, homeassistant.components.octoprint.button.OctoprintShutdownSystemButton, homeassistant.components.octoprint.button.OctoprintStopJobButton, homeassistant.components.octoprint.button.OctoprintResumeJobButton, homeassistant.components.octoprint.button.OctoprintPauseJobButton, homeassistant.components.nissan_leaf.button.LeafChargingButton, homeassistant.components.nibe_heatpump.button.NibeAlarmResetButton, homeassistant.components.nextdns.button.NextDnsButton, homeassistant.components.netgear.button.NetgearRouterButtonEntity, homeassistant.components.neato.button.NeatoDismissAlertButton, homeassistant.components.nanoleaf.button.NanoleafIdentifyButton, homeassistant.components.nam.button.NAMButton, homeassistant.components.mqtt.button.MqttButton, homeassistant.components.motionblinds_ble.button.MotionblindsBLEButtonEntity, homeassistant.components.motion_blinds.button.MotionSetFavoriteButton, homeassistant.components.motion_blinds.button.MotionGoFavoriteButton, homeassistant.components.moehlenhoff_alpha2.button.Alpha2TimeSyncButton, homeassistant.components.modem_callerid.button.PhoneModemButton, homeassistant.components.matter.button.MatterCommandButton, homeassistant.components.lutron_caseta.button.LutronCasetaButton, homeassistant.components.litterrobot.button.LitterRobotButtonEntity, homeassistant.components.linkplay.button.LinkPlayButton, homeassistant.components.lifx.button.LIFXIdentifyButton, homeassistant.components.lifx.button.LIFXRestartButton, homeassistant.components.lektrico.button.LektricoButton, homeassistant.components.lametric.button.LaMetricButtonEntity, homeassistant.components.lamarzocco.button.LaMarzoccoButtonEntity, homeassistant.components.knx.button.KNXButton, homeassistant.components.kitchen_sink.button.DemoButton, homeassistant.components.isy994.button.ISYNetworkResourceButtonEntity, homeassistant.components.isy994.button.ISYNodeBeepButtonEntity, homeassistant.components.isy994.button.ISYNodeQueryButtonEntity, homeassistant.components.input_button.InputButton, homeassistant.components.idasen_desk.button.IdasenDeskButton, homeassistant.components.husqvarna_automower.button.AutomowerButtonEntity, homeassistant.components.hunterdouglas_powerview.button.PowerviewShadeButton, homeassistant.components.homeworks.button.HomeworksButton, homeassistant.components.homewizard.button.HomeWizardIdentifyButton, homeassistant.components.homematicip_cloud.button.HomematicipGarageDoorControllerButton, homeassistant.components.homekit_controller.button.HomeKitProvisionPreferredThreadCredentials, homeassistant.components.homekit_controller.button.HomeKitEcobeeClearHoldButton, homeassistant.components.homekit_controller.button.HomeKitButton, homeassistant.components.habitica.button.HabiticaButton, homeassistant.components.guardian.button.GuardianButton, homeassistant.components.group.button.ButtonGroup, homeassistant.components.google_assistant.button.SyncButton, homeassistant.components.goodwe.button.GoodweButtonEntity, homeassistant.components.gardena_bluetooth.button.GardenaBluetoothButton, homeassistant.components.fully_kiosk.button.FullyButtonEntity, homeassistant.components.fritzbox.button.FritzBoxTemplate, homeassistant.components.fritz.button.FritzBoxWOLButton, homeassistant.components.fritz.button.FritzButton, homeassistant.components.freebox.button.FreeboxButton, homeassistant.components.flux_led.button.FluxButton, homeassistant.components.esphome.button.EsphomeButton, homeassistant.components.elgato.button.ElgatoButtonEntity, homeassistant.components.ecovacs.button.EcovacsResetLifespanButtonEntity, homeassistant.components.ecovacs.button.EcovacsButtonEntity, homeassistant.components.doorbird.button.DoorBirdButton, homeassistant.components.devolo_home_network.button.DevoloButtonEntity, homeassistant.components.demo.button.DemoButton, homeassistant.components.deconz.button.DeconzPresenceResetButton, homeassistant.components.deconz.button.DeconzSceneButton, homeassistant.components.coolmaster.button.CoolmasterResetFilter, homeassistant.components.braviatv.button.BraviaTVButton, homeassistant.components.bond.button.BondButtonEntity, homeassistant.components.bmw_connected_drive.button.BMWButton, homeassistant.components.blebox.button.BleBoxButtonEntity, homeassistant.components.august.button.AugustWakeLockButton, homeassistant.components.airgradient.button.AirGradientButton, and homeassistant.components.acaia.button.AcaiaButton.

Definition at line 145 of file __init__.py.

◆ device_class()

ButtonDeviceClass | None homeassistant.components.button.ButtonEntity.device_class (   self)
Return the class of this entity.

Reimplemented from homeassistant.helpers.entity.Entity.

Definition at line 104 of file __init__.py.

◆ press()

◆ state()

str | None homeassistant.components.button.ButtonEntity.state (   self)
Return the entity state.

Reimplemented from homeassistant.helpers.entity.Entity.

Definition at line 114 of file __init__.py.

Member Data Documentation

◆ __last_pressed_isoformat

homeassistant.components.button.ButtonEntity.__last_pressed_isoformat
private

Definition at line 122 of file __init__.py.

◆ _attr_should_poll

bool homeassistant.components.button.ButtonEntity._attr_should_poll = False
staticprivate

Definition at line 91 of file __init__.py.

◆ None

homeassistant.components.button.ButtonEntity.None
static

Definition at line 93 of file __init__.py.


The documentation for this class was generated from the following file: