home-assistant.io/source/_integrations/input_boolean.markdown

3.8 KiB

title description ha_category ha_release ha_quality_scale ha_codeowners ha_domain ha_integration_type
Input boolean Instructions on how to use the input boolean helper with Home Assistant.
Automation
Helper
0.11 internal
@home-assistant/core
input_boolean helper

The Input boolean helper integration allows you to define boolean values that can be controlled via the user interface and can be used within conditions of an {% term automation %}. This can for example be used to disable or enable certain automations by using them in their {% term conditions %}.

Configuration

The preferred way to configure input boolean helpers is via the user interface, in which they are known as Toggle Helpers. To add one, go to {% my helpers title="Settings > Devices & Services > Helpers" %} and click the add button; next choose the {% my config_flow_start domain="input_boolean" title="Toggle" %} option.

To be able to add Helpers via the user interface you should have default_config: in your {% term "configuration.yaml" %}, it should already be there by default unless you removed it. If you removed default_config: from your configuration, you must add input_boolean: to your {% term "configuration.yaml" %} first, then you can use the UI.

Input booleans can also be configured via {% term "configuration.yaml" %}:

{% configuration %} input_boolean: description: Alias for the input. Multiple entries are allowed. required: true type: map keys: name: description: Friendly name of the input. required: false type: string initial: description: Initial value when Home Assistant starts. required: false type: boolean default: false icon: description: Icon to display in front of the input element in the frontend. required: false type: icon {% endconfiguration %}

# Example configuration.yaml entry
input_boolean:
  notify_home:
    name: Notify when someone arrives home
    icon: mdi:car

Services

This integration provides the following {% term services %} to modify the state of the input_boolean and a service to reload the configuration without restarting Home Assistant itself.

Service Data Description
turn_on entity_id(s)
area_id(s)
Set the value of specific input_boolean entities to on
turn_off entity_id(s)
area_id(s)
Set the value of specific input_boolean entities to off
toggle entity_id(s)
area_id(s)
Toggle the value of specific input_boolean entities
reload Reload input_boolean configuration

Restore state

If you set a valid value for initial this integration will start with the state set to that value. Otherwise, it will restore the state it had prior to Home Assistant stopping.

Automation examples

Here's an example of an automation using the above input_boolean. This action will only occur if the input_boolean is on.

automation:
  alias: "Arriving home"
  trigger:
    - platform: state
      entity_id: binary_sensor.motion_garage
      to: "on"
  condition:
    - condition: state
      entity_id: input_boolean.notify_home
      state: "on"
  action:
    - service: notify.pushbullet
      data:
        title: ""
        message: "Honey, I'm home!"

You can also set or change the status of an input_boolean by using input_boolean.turn_on, input_boolean.turn_off or input_boolean.toggle in your automation action.

service: input_boolean.turn_on
target:
  entity_id: input_boolean.notify_home