Merge branch 'rc' into current

This commit is contained in:
Franck Nijhof 2022-11-02 21:49:42 +01:00
commit c43db7d88e
No known key found for this signature in database
GPG Key ID: D62583BA8AB11CA3
205 changed files with 5376 additions and 1262 deletions

1
.vscode/cSpell.json vendored
View File

@ -75,6 +75,7 @@
"Pushbullet",
"Schoutsen",
"SmartThings",
"SNOOZ",
"statestream",
"templating",
"timedelta",

View File

@ -106,9 +106,9 @@ social:
# Home Assistant release details
current_major_version: 2022
current_minor_version: 10
current_patch_version: 5
date_released: 2022-10-20
current_minor_version: 11
current_patch_version: 0
date_released: 2022-11-02
# Either # or the anchor link to latest release notes in the blog post.
# Must be prefixed with a # and have double quotes around it.

View File

@ -67,6 +67,21 @@ The gas consumption graph card shows the amount of gas consumed per source.
type: energy-gas-graph
```
## Water consumption graph
<p class='img'>
<img src='/images/dashboards/energy/water-graph.png' alt='Screenshot of the water consumption graph card'>
Screenshot of the water consumption graph card.
</p>
The water consumption graph card shows the amount of water consumed per source.
#### Example
```yaml
type: energy-water-graph
```
## Energy distribution
<p class='img'>

View File

@ -0,0 +1,172 @@
---
type: card
title: "Statistic Card"
sidebar_label: Statistic
description: "The Statistic card allows you to display a statistical value for an entity."
---
The Statistic card allows you to display a statistical value for an entity.
Statistics are gathered every 5 minutes for sensors that support it. It will either keep the `min`, `max` and `mean` of a sensors value for a specific period, or the `sum` for a metered entity.
If your sensor doesn't work with statistics, check [this](/more-info/statistics/).
<p class='img'>
<img src='/images/dashboards/statistic.png' alt='Screenshot of the statistic card for a temperature sensor'>
Screenshot of the statistic card for a temperature sensor.
</p>
To add the Statistic card to your user interface, click the menu (three dots at the top right of the screen) and then **Edit Dashboard**. Click the "Add Card" button in the bottom right corner and select **Statistic** from the card picker. All options for this card can be configured via the user interface, but if you want more options for the period, you will have to define them in `yaml`.
{% configuration %}
type:
required: true
description: statistic
type: string
entity:
required: true
description: "A entity ID of a sensor with statistics, or an external statistic id"
type: string
stat_type:
required: true
description: The statistics types to render. `min`, `max`, `mean`, `change`
type: string
name:
required: false
description: Name of entity.
type: string
default: Entity name.
icon:
required: false
description: Overwrites icon.
type: string
unit:
required: false
description: Unit of measurement given to data.
type: string
default: Unit of measurement given by entity.
period:
required: true
description: The period to use for the calculation. [See below](#options-for-period).
type: map
theme:
required: false
description: Override the used theme for this card with any loaded theme. For more information about themes, see the [frontend documentation](/integrations/frontend/).
type: string
footer:
required: false
description: Footer widget to render. See [footer documentation](/dashboards/header-footer/).
type: map
{% endconfiguration %}
## Example
Alternatively, the card can be configured using YAML:
```yaml
type: statistic
entity: sensor.energy_consumption
period:
calendar:
period: month
stat_type: change
```
## Options For Period
Periods can be configured in 3 different ways:
### Calendar
Use a fixed period with an offset from the current period.
{% configuration %}
period:
required: true
description: The period to use. `day`, `week`, `month`, `year`
type: string
offset:
required: false
description: The offset of the current period, so 0 means the current period, -1 is the previous period.
type: integer
{% endconfiguration %}
Example, the change of the energy consumption during last month:
```yaml
type: statistic
entity: sensor.energy_consumption
period:
calendar:
period: month
offset: -1
stat_type: change
```
### Fixed period
Specify a fixed period, the start and end are optional.
{% configuration %}
start:
required: false
description: The start of the period
type: string
end:
required: false
description: The end of the period
type: string
{% endconfiguration %}
Example, the change in 2022:
```yaml
type: statistic
entity: sensor.energy_consumption
period:
fixed_period:
start: 2022-01-01
end: 2022-12-31
stat_type: change
```
Example, all time change, without a start or end:
```yaml
type: statistic
entity: sensor.energy_consumption
period:
fixed_period:
stat_type: change
```
### Rolling Window
{% configuration %}
duration:
required: true
description: The duration of the period
type: map
offset:
required: false
description: The offset of the current time, 0 means the current period, -1 is the previous period.
type: map
{% endconfiguration %}
Example, a period of 1 hour, 10 minutes and 5 seconds ending 2 hours, 20 minutes and 10 seconds before now:
```yaml
type: statistic
entity: sensor.energy_consumption
period:
rolling_window:
duration:
hours: 1
minutes: 10
seconds: 5
offset:
hours: -2
minutes: -20
seconds: -10
stat_type: change
```

View File

@ -7,7 +7,7 @@ description: "The Statistics Graph card allows you to display a graph with stati
The Statistics Graph card allows you to display a graph of statistics data for each of the entities listed.
Statistics are gathered every hour for sensors that support it. It will either keep the `min`, `max` and `mean` of a sensors value for a specific hour, or the `sum` for a metered entity.
Statistics are gathered every 5 minutes for sensors that support it. It will either keep the `min`, `max` and `mean` of a sensors value for a specific hour, or the `sum` for a metered entity.
If your sensor doesn't work with statistics, check [this](/more-info/statistics/).
@ -30,7 +30,7 @@ type:
type: string
entities:
required: true
description: "A list of entity IDs or `entity` objects, see below."
description: "A list of entity IDs or `entity` objects (see below), or an external statistic id"
type: list
days_to_show:
required: false

View File

@ -0,0 +1,73 @@
---
type: card
title: "Tile Card"
sidebar_label: Tile
description: "The tile card gives you a quick overview of your entity. The card allows you to toggle the entity, show the more info dialog, or custom actions."
---
The tile card gives you a quick overview of your entity. The card allows you to toggle the entity and show the more info dialog. A badge is shown for some entities like the [climate](/integrations/climate) or [person](/integrations/person) entities.
<p class='img'>
<img src='/images/dashboards/tile_card.png' alt='Screenshot of the tile card'>
Screenshot of the Tile card.
</p>
To add the Tile card to your user interface, click the menu (three dots at the top right of the screen) and then **Edit Dashboard**. Click the "Add Card" button in the bottom right corner and select **Tile** from the card picker.
{% configuration %}
type:
required: true
description: "`tile`"
type: string
entity:
required: true
description: Entity ID.
type: string
name:
required: false
description: Overwrites the name of entity.
type: string
icon:
required: false
description: Overwrites the icon of entity.
type: string
color:
required: false
description: Set the color when the entity is active. By default, the color is based on `state`, `domain`, and `device_class` of your entity. It accept [color token](/dashboards/tile/#available-color-tokens) or hex color code.
type: string
default: state
show_entity_picture:
required: false
description: If your entity has a picture, it will replace the icon.
type: boolean
default: false
tap_action:
required: false
description: Action taken on card tap. See [action documentation](/dashboards/actions/#tap-action). By default, it will show the "more-info" dialog.
type: map
icon_tap_action:
required: false
description: Action taken on icon card tap. See [action documentation](/dashboards/actions/#tap-action). By default, it will `toggle` the entity (if possible), otherwise, show the more-info" dialog.
type: map
{% endconfiguration %}
## Example
Alternatively, the card can be configured using YAML:
```yaml
- type: tile
entity: cover.kitchen_window
- type: tile
entity: light.bedroom
icon: mdi:lamp
color: yellow
- type: tile
entity: person.anne_therese
show_entity_picture: true
```
## Available color tokens
Some color tokens are available to colorize the tile card : `primary`, `accent`, `disabled`, `red`, `pink`, `purple`, `deep-purple`, `indigo`, `blue`, `light-blue`, `cyan`, `teal`, `green`, `light-green`, `lime`, `yellow`, `amber`, `orange`, `deep-orange`, `brown`, `grey`, `blue-grey`, `black` and `white`.

View File

@ -3,7 +3,7 @@ title: "Setup basic information"
description: "Setting up the basic info of Home Assistant."
---
As part of the default onboarding process, Home Assistant can detect your location from IP address geolocation. Home Assistant will automatically select a temperature unit and time zone based on this location. You may adjust this during onboarding, or afterwards at {% my general title="Settings > System > General" %}.
As part of the default onboarding process, Home Assistant can detect your location from IP address geolocation. Home Assistant will automatically select a unit system and time zone based on this location. You may adjust this during onboarding, or afterwards at {% my general title="Settings > System > General" %}.
If you prefer YAML, you can add the following information to your `configuration.yaml`:
@ -53,7 +53,7 @@ elevation:
required: false
type: integer
unit_system:
description: "`metric` for Metric, `imperial` for Imperial. This also sets temperature_unit, Celsius for Metric and Fahrenheit for Imperial"
description: "`metric` for Metric, `us_customary` for US Customary. This also sets temperature_unit, Celsius for Metric and Fahrenheit for US Customary"
required: false
type: string
temperature_unit:

View File

@ -20,8 +20,8 @@ homeassistant:
# Location required to calculate the time the sun rises and sets
latitude: 37
longitude: -121
# 'metric' for Metric, 'imperial' for Imperial
unit_system: imperial
# 'metric' for Metric, 'us_customary' for US Customary
unit_system: us_customary
# Pick yours from here: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
time_zone: "America/Los_Angeles"
customize: !include customize.yaml

View File

@ -110,6 +110,16 @@ Print out a list of all the sensor states:
{% endraw %}
Entities that are on:
{% raw %}
```text
{{ ['light.kitchen', 'light.dinig_room'] | select('is_state', 'on') | list }}
```
{% endraw% }
Other state examples:
{% raw %}
@ -142,6 +152,9 @@ Other state examples:
{{ as_local(states.sensor.time.last_changed) }}
{{ states('sensor.expires') | as_datetime }}
# Make a list of states
{{ ['light.kitchen', 'light.dinig_room'] | map('states') | list }}
```
{% endraw %}
@ -182,6 +195,26 @@ With strings:
{% endraw %}
List of friendly names:
{% raw %}
```text
{{ ['binary_sensor.garage_door', 'binary_sensor.front_door'] | map('state_attr', 'friendly_name') | list }}
```
{% endraw% }
List of lights that are on with a brightness of 255:
{% raw %}
```text
{{ ['light.kitchen', 'light.dinig_room'] | select('is_state', 'on') | select('is_state_attr', 'brightness', 255) | list }}
```
{% endraw% }
### Working with Groups
Not supported in [limited templates](#limited-templates).
@ -260,6 +293,20 @@ The same thing can also be expressed as a test:
{% endraw %}
### Config Entries
- `config_entry_id(entity_id)` returns the config entry ID for a given entity ID. Can also be used as a filter.
#### Config entries examples
{% raw %}
```text
{{ config_entry_id('sensor.sony') }} # deadbeefdeadbeefdeadbeefdeadbeef
```
{% endraw %}
### Areas
- `area_id(lookup_value)` returns the area ID for a given device ID, entity ID, or area name. Can also be used as a filter.
@ -699,7 +746,7 @@ Like `float` and `int`, `bool` has a filter form. Using `none` as the default va
- `sqrt(value, default)` will return the square root of the input. If `value` can't be converted to a `float`, returns the `default` value, or if omitted raises an error. Can be used as a filter.
- `max([x, y, ...])` will obtain the largest item in a sequence. Uses the same parameters as the built-in [max](https://jinja.palletsprojects.com/en/latest/templates/#jinja-filters.max) filter.
- `min([x, y, ...])` will obtain the smallest item in a sequence. Uses the same parameters as the built-in [min](https://jinja.palletsprojects.com/en/latest/templates/#jinja-filters.min) filter.
- `average([x, y, ...])` will return the average value of the sequence. Can be used as a filter.
- `average([x, y, ...], default)` will return the average value of the sequence. If list is empty or contains non-numeric value, returns the `default` value, or if omitted raises an error. Can be used as a filter.
- `e` mathematical constant, approximately 2.71828.
- `pi` mathematical constant, approximately 3.14159.
- `tau` mathematical constant, approximately 6.28318.

View File

@ -15,6 +15,7 @@ Home Assistant is an open platform and so home energy management is not restrict
- [Integrate your solar panels](/docs/energy/solar-panels/)
- [Integrate your home batteries](/docs/energy/battery/)
- [Integrate your gas consumption](/docs/energy/gas/)
- [Integrate your water consumption](/docs/energy/water/)
- [Integrate individual devices](/docs/energy/individual-devices/)
If you have a sensor that returns instantaneous power readings (W or kW), then to add a sensor that returns energy usage or generation (kWh) refer to [Riemann sum integral integration](/integrations/integration/#energy)

View File

@ -0,0 +1,29 @@
---
title: "Integrating your water usage"
description: "Learn how to add information about your water usage to Home Assistant home energy management."
---
Home Assistant allows you to track your water usage in the home energy management too.
Although water is not strictly "energy", it is still a valuable resource to track and monitor as it is often tightly coupled with energy usage (like gas). Additionally, it can help you reduce your ecological footprint by using less water.
## Hardware
Home Assistant will need to know the amount of water that is being consumed in order to be able to track it. Several hardware options are available to do this.
We have the following integrations available for existing products that can provide information about water usage:
- [Flo](/integrations/flo)
- [Flume](/integrations/flume)
- [HomeWizard Energy](/integrations/homewizard)
Alternatively, the following shops sell ESPHome-based devices, that use a proximity sensor to detect a rotating magnet in your water meter and use that pulse to count each liter of water used.
- [S0tool](https://huizebruin.github.io/s0tool/) ("Made for ESPHome" approved)
- [Waterlezer dongle](https://smart-stuff.nl/product/esphome-waterlezer-dongle/) (Dutch)
- [Slimme Watermeter Gateway](https://smartgateways.nl/product/slimme-watermeter-gateway/) (Dutch)
- [watermeterkit.nl](https://watermeterkit.nl/) (Dutch)
Maybe you like to build one yourself? Pieter Brinkman has quite a [nice blog article on how to create your own water sensor](https://www.pieterbrinkman.com/2022/02/02/build-a-cheap-water-usage-sensor-using-esphome-home-assistant-and-a-proximity-sensor/) using ESPHome, or [build a water meter](https://www.ztatz.nl/p1-monitor-watermeter/) that works with the [P1 Monitor](/integrations/p1_monitor) integration.
For any of the above-listed options, make sure it actually works with the type of water meter you have before getting one.

View File

@ -1,11 +0,0 @@
---
title: "MQTT Birth and Last will"
description: "Instructions on how to setup MQTT birth and last will messages within Home Assistant."
logo: mqtt.png
---
Home Assistant's MQTT integration supports so-called Birth and Last Will and Testament (LWT) messages. The former is used to send a message after the service has started, and the latter is used to notify other clients about a disconnected client. Please note that the LWT message will be sent both in case of a clean (e.g. Home Assistant shutting down) and in case of an unclean (e.g. Home Assistant crashing or losing its network connection) disconnect.
By default, Home Assistant sends `online` and `offline` to `homeassistant/status`.
MQTT Birth and Last Will messages can be customized or disabled from the UI. To do this, click on "Configure" in the integration page in the UI, then "Re-configure MQTT" and then "Next".

View File

@ -1,73 +0,0 @@
---
title: "MQTT Broker"
description: "Instructions on how to setup a MQTT broker for Home Assistant."
logo: mqtt.png
---
The MQTT integration needs you to run an MQTT broker for Home Assistant to connect to.
### Run your own
The most private option is running your own MQTT broker.
The recommended setup method is to use the [Mosquitto MQTT broker add-on](https://github.com/home-assistant/hassio-addons/blob/master/mosquitto/DOCS.md).
</div>
<div class='note warning'>
Neither ActiveMQ MQTT broker nor the RabbitMQ MQTT Plugin are supported, use a known working broker like Mosquitto instead.
There are [at least two](https://issues.apache.org/jira/browse/AMQ-6360) [issues](https://issues.apache.org/jira/browse/AMQ-6575) with the ActiveMQ MQTT broker which break MQTT message retention.
There is [an issue](https://github.com/rabbitmq/rabbitmq-server/issues/154) with the RabbitMQ MQTT Plugin which breaks MQTT message retention.
</div>
## Connect to a public broker
The Mosquitto project runs a [public broker](https://test.mosquitto.org). This is the easiest to set up, but there is no privacy as all messages are public. Use this only for testing purposes and not for real tracking of your devices or controlling your home. To use the public mosquitto broker, configure the MQTT integration to connect to broker `test.mosquitto.org` on port 1183 or 8883.
<div class='note'>
If you experience an error message like `Failed to connect due to exception: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed`, then add `certificate: auto` to your broker configuration and restart Home Assistant.
</div>
## Broker configuration
MQTT broker settings are configured when the MQTT integration is first setup, and can be changed if needed. To change the settings, click on "Configure" in the integration page in the UI, then "Re-configure MQTT".
## Advanced broker configuration
Some broker configuration options can't be set via the user interface, but require changes of your `configuration.yaml` file.
Additional SSL certificate options are documented [here](/docs/mqtt/certificate/).
{% configuration %}
client_id:
required: false
description: The client ID that Home Assistant will use. Has to be unique on the server. Default is a randomly generated one.
type: string
keepalive:
required: false
description: The time in seconds between sending keep alive messages for this client. Default is 60.
type: integer
protocol:
required: false
description: "Protocol to use: 3.1 or 3.1.1. By default it connects with 3.1.1 and falls back to 3.1 if server does not support 3.1.1."
type: string
certificate:
required: false
description: Path to the certificate file, e.g., `/ssl/server.crt`.
type: string
tls_insecure:
required: false
description: Set the verification of the server hostname in the server certificate.
type: boolean
default: false
{% endconfiguration %}
<div class='note'>
If you are running a Mosquitto instance on a different server with proper SSL encryption using a service like Let's Encrypt you may have to set the certificate to the operating systems own `.crt` certificates file. In the instance of Ubuntu this would be `certificate: /etc/ssl/certs/ca-certificates.crt`
</div>

View File

@ -1,30 +0,0 @@
---
title: "MQTT Certificate"
description: "Instructions on how to setup MQTT with a certificate in Home Assistant."
logo: mqtt.png
---
Using certificates will give you an additional layer of security for your MQTT communication.
To integrate MQTT with certificate into Home Assistant, add the following section to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
mqtt:
certificate: /home/paulus/dev/addtrustexternalcaroot.crt
```
{% configuration %}
certificate:
description: "'auto' or the certificate authority certificate file that is to be treated as trusted by this client. To enable a secure (TLS) connection to your server you must define the 'certificate' configuration parameter. 'auto' uses the certifite CAs bundled certificates. If a file is specified the file should contain the root certificate of the certificate authority that signed your broker's certificate, but may contain multiple certificates. Example: `/home/user/identrust-root.pem`."
required: false
type: string
client_key:
description: Client key, e.g., `/home/user/owntracks/cookie.key`.
required: false
type: string
client_cert:
description: Client certificate, e.g., `/home/user/owntracks/cookie.crt`.
required: false
type: string
{% endconfiguration %}

View File

@ -1,449 +0,0 @@
---
title: "MQTT Discovery"
description: "Instructions on how to setup MQTT Discovery within Home Assistant."
logo: mqtt.png
---
The discovery of MQTT devices will enable one to use MQTT devices with only minimal configuration effort on the side of Home Assistant. The configuration is done on the device itself and the topic used by the device. Similar to the [HTTP binary sensor](/integrations/http/#binary-sensor) and the [HTTP sensor](/integrations/http/#sensor). To prevent multiple identical entries if a device reconnects, a unique identifier is necessary. Two parts are required on the device side: The configuration topic which contains the necessary device type and unique identifier, and the remaining device configuration without the device type.
Supported by MQTT discovery:
- [Alarm control panels](/integrations/alarm_control_panel.mqtt/)
- [Binary sensors](/integrations/binary_sensor.mqtt/)
- [Buttons](/integrations/button.mqtt/)
- [Cameras](/integrations/camera.mqtt/)
- [Covers](/integrations/cover.mqtt/)
- [Device Trackers](/integrations/device_tracker.mqtt/)
- [Device Triggers](/integrations/device_trigger.mqtt/)
- [Fans](/integrations/fan.mqtt/)
- [Humidifiers](/integrations/humidifier.mqtt/)
- [HVACs](/integrations/climate.mqtt/)
- [Lights](/integrations/light.mqtt/)
- [Locks](/integrations/lock.mqtt/)
- [Numbers](/integrations/number.mqtt/)
- [Scenes](/integrations/scene.mqtt/)
- [Selects](/integrations/select.mqtt/)
- [Sensors](/integrations/sensor.mqtt/)
- [Sirens](/integrations/siren.mqtt/)
- [Switches](/integrations/switch.mqtt/)
- [Tag Scanners](/integrations/tag.mqtt/)
- [Vacuums](/integrations/vacuum.mqtt/)
## Configuration
MQTT discovery is enabled by default, but can be disabled. To do this, click on "Configure" in the integration page in the UI, then "Re-configure MQTT" and then "Next".
### Advanced discovery configuration
It's possible to configure the prefix of the discovery topic through `configuration.yaml`.
{% configuration %}
discovery_prefix:
description: The prefix for the discovery topic.
required: false
default: homeassistant
type: string
{% endconfiguration %}
## Discovery messages
## Discovery topic
The discovery topic needs to follow a specific format:
```text
<discovery_prefix>/<component>/[<node_id>/]<object_id>/config
```
- `<component>`: One of the supported MQTT components, eg. `binary_sensor`.
- `<node_id>` (*Optional*): ID of the node providing the topic, this is not used by Home Assistant but may be used to structure the MQTT topic. The ID of the node must only consist of characters from the character class `[a-zA-Z0-9_-]` (alphanumerics, underscore and hyphen).
- `<object_id>`: The ID of the device. This is only to allow for separate topics for each device and is not used for the `entity_id`. The ID of the device must only consist of characters from the character class `[a-zA-Z0-9_-]` (alphanumerics, underscore and hyphen).
The `<node_id>` level can be used by clients to only subscribe to their own (command) topics by using one wildcard topic like `<discovery_prefix>/+/<node_id>/+/set`.
Best practice for entities with a `unique_id` is to set `<object_id>` to `unique_id` and omit the `<node_id>`.
## Discovery payload
The payload must be a serialized JSON dictionary and will be checked like an entry in your `configuration.yaml` file if a new device is added, with the exception that unknown configuration keys are allowed but ignored. This means that missing variables will be filled with the platform's default values. All configuration variables which are *required* must be present in the payload. The reason for allowing unknown documentation keys is allow some backwards compatibility, software generating MQTT discovery messages can then be used with older Home Assistant versions which will simply ignore new features.
Subsequent messages on a topic where a valid payload has been received will be handled as a configuration update, and a configuration update with an empty payload will cause a previously discovered device to be deleted.
A base topic `~` may be defined in the payload to conserve memory when the same topic base is used multiple times.
In the value of configuration variables ending with `_topic`, `~` will be replaced with the base topic, if the `~` occurs at the beginning or end of the value.
Configuration variable names in the discovery payload may be abbreviated to conserve memory when sending a discovery message from memory constrained devices.
Supported abbreviations:
```txt
'act_t': 'action_topic',
'act_tpl': 'action_template',
'atype': 'automation_type',
'aux_cmd_t': 'aux_command_topic',
'aux_stat_tpl': 'aux_state_template',
'aux_stat_t': 'aux_state_topic',
'av_tones': 'available_tones',
'avty' 'availability',
'avty_mode': 'availability_mode',
'avty_t': 'availability_topic',
'avty_tpl': 'availability_template',
'away_mode_cmd_t': 'away_mode_command_topic',
'away_mode_stat_tpl': 'away_mode_state_template',
'away_mode_stat_t': 'away_mode_state_topic',
'b_tpl': 'blue_template',
'bri_cmd_t': 'brightness_command_topic',
'bri_cmd_tpl': 'brightness_command_template',
'bri_scl': 'brightness_scale',
'bri_stat_t': 'brightness_state_topic',
'bri_tpl': 'brightness_template',
'bri_val_tpl': 'brightness_value_template',
'clr_temp_cmd_tpl': 'color_temp_command_template',
'bat_lev_t': 'battery_level_topic',
'bat_lev_tpl': 'battery_level_template',
'chrg_t': 'charging_topic',
'chrg_tpl': 'charging_template',
'clr_temp_cmd_t': 'color_temp_command_topic',
'clr_temp_stat_t': 'color_temp_state_topic',
'clr_temp_tpl': 'color_temp_template',
'clr_temp_val_tpl': 'color_temp_value_template',
'cln_t': 'cleaning_topic',
'cln_tpl': 'cleaning_template',
'cmd_off_tpl': 'command_off_template',
'cmd_on_tpl': 'command_on_template',
'cmd_t': 'command_topic',
'cmd_tpl': 'command_template',
'cod_arm_req': 'code_arm_required',
'cod_dis_req': 'code_disarm_required',
'cod_trig_req': 'code_trigger_required',
'curr_temp_t': 'current_temperature_topic',
'curr_temp_tpl': 'current_temperature_template',
'dev': 'device',
'dev_cla': 'device_class',
'dock_t': 'docked_topic',
'dock_tpl': 'docked_template',
'e': 'encoding',
'ent_cat': 'entity_category,
'err_t': 'error_topic',
'err_tpl': 'error_template',
'fanspd_t': 'fan_speed_topic',
'fanspd_tpl': 'fan_speed_template',
'fanspd_lst': 'fan_speed_list',
'flsh_tlng': 'flash_time_long',
'flsh_tsht': 'flash_time_short',
'fx_cmd_t': 'effect_command_topic',
'fx_cmd_tpl': 'effect_command_template',
'fx_list': 'effect_list',
'fx_stat_t': 'effect_state_topic',
'fx_tpl': 'effect_template',
'fx_val_tpl': 'effect_value_template',
'exp_aft': 'expire_after',
'fan_mode_cmd_tpl': 'fan_mode_command_template',
'fan_mode_cmd_t': 'fan_mode_command_topic',
'fan_mode_stat_tpl': 'fan_mode_state_template',
'fan_mode_stat_t': 'fan_mode_state_topic',
'frc_upd': 'force_update',
'g_tpl': 'green_template',
'hold_cmd_tpl': 'hold_command_template',
'hold_cmd_t': 'hold_command_topic',
'hold_stat_tpl': 'hold_state_template',
'hold_stat_t': 'hold_state_topic',
'hs_cmd_t': 'hs_command_topic',
'hs_stat_t': 'hs_state_topic',
'hs_val_tpl': 'hs_value_template',
'ic': 'icon',
'init': 'initial',
'hum_cmd_t': 'target_humidity_command_topic',
'hum_cmd_tpl': 'target_humidity_command_template',
'hum_stat_t': 'target_humidity_state_topic',
'hum_stat_tpl': 'target_humidity_state_template',
'json_attr': 'json_attributes',
'json_attr_t': 'json_attributes_topic',
'json_attr_tpl': 'json_attributes_template',
'max_mirs': 'max_mireds',
'min_mirs': 'min_mireds',
'max_temp': 'max_temp',
'min_temp': 'min_temp',
'max_hum': 'max_humidity',
'min_hum': 'min_humidity',
'mode_cmd_tpl': 'mode_command_template',
'mode_cmd_t': 'mode_command_topic',
'mode_stat_tpl': 'mode_state_template',
'mode_stat_t': 'mode_state_topic',
'modes': 'modes',
'name': 'name',
'obj_id': 'object_id',
'off_dly': 'off_delay',
'on_cmd_type': 'on_command_type',
'opt': 'optimistic',
'osc_cmd_t': 'oscillation_command_topic',
'osc_cmd_tpl': 'oscillation_command_template',
'osc_stat_t': 'oscillation_state_topic',
'osc_val_tpl': 'oscillation_value_template',
'pct_cmd_t': 'percentage_command_topic',
'pct_cmd_tpl': 'percentage_command_template',
'pct_stat_t': 'percentage_state_topic',
'pct_val_tpl': 'percentage_value_template',
'pl': 'payload',
'pl_arm_away': 'payload_arm_away',
'pl_arm_home': 'payload_arm_home',
'pl_arm_custom_b': 'payload_arm_custom_bypass',
'pl_arm_nite': 'payload_arm_night',
'pl_avail': 'payload_available',
'pl_cln_sp': 'payload_clean_spot',
'pl_cls': 'payload_close',
'pl_disarm': 'payload_disarm',
'pl_home': 'payload_home',
'pl_lock': 'payload_lock',
'pl_loc': 'payload_locate',
'pl_not_avail': 'payload_not_available',
'pl_not_home': 'payload_not_home',
'pl_off': 'payload_off',
'pl_on': 'payload_on',
'pl_open': 'payload_open',
'pl_osc_off': 'payload_oscillation_off',
'pl_osc_on': 'payload_oscillation_on',
'pl_paus': 'payload_pause',
'pl_stop': 'payload_stop',
'pl_strt': 'payload_start',
'pl_stpa': 'payload_start_pause',
'pl_ret': 'payload_return_to_base',
'pl_rst_hum': 'payload_reset_humidity',
'pl_rst_mode': 'payload_reset_mode',
'pl_rst_pct': 'payload_reset_percentage',
'pl_rst_pr_mode': 'payload_reset_preset_mode',
'pl_toff': 'payload_turn_off',
'pl_ton': 'payload_turn_on',
'pl_trig': 'payload_trigger',
'pl_unlk': 'payload_unlock',
'pos_clsd': 'position_closed',
'pos_open': 'position_open',
'pow_cmd_t': 'power_command_topic',
'pow_stat_t': 'power_state_topic',
'pow_stat_tpl': 'power_state_template',
'pr_mode_cmd_t': 'preset_mode_command_topic',
'pr_mode_cmd_tpl': 'preset_mode_command_template',
'pr_mode_stat_t': 'preset_mode_state_topic',
'pr_mode_val_tpl': 'preset_mode_value_template',
'pr_modes': 'preset_modes',
'r_tpl': 'red_template',
'ret': 'retain',
'rgb_cmd_tpl': 'rgb_command_template',
'rgb_cmd_t': 'rgb_command_topic',
'rgb_stat_t': 'rgb_state_topic',
'rgb_val_tpl': 'rgb_value_template',
'send_cmd_t': 'send_command_topic',
'send_if_off': 'send_if_off',
'set_fan_spd_t': 'set_fan_speed_topic',
'set_pos_tpl': 'set_position_template',
'set_pos_t': 'set_position_topic',
'pos_t': 'position_topic',
'pos_tpl': 'position_template',
'spd_rng_min': 'speed_range_min',
'spd_rng_max': 'speed_range_max',
'src_type': 'source_type',
'stat_cla': 'state_class',
'stat_clsd': 'state_closed',
'stat_closing': 'state_closing',
'stat_off': 'state_off',
'stat_on': 'state_on',
'stat_open': 'state_open',
'stat_opening': 'state_opening',
'stat_stopped': 'state_stopped',
'stat_locked': 'state_locked',
'stat_unlocked': 'state_unlocked',
'stat_t': 'state_topic',
'stat_tpl': 'state_template',
'stat_val_tpl': 'state_value_template',
'stype': 'subtype',
'sup_duration': 'support_duration',
'sup_vol': 'support_volume_set',
'sup_feat': 'supported_features',
'sup_off': 'supported_turn_off',
'swing_mode_cmd_tpl': 'swing_mode_command_template',
'swing_mode_cmd_t': 'swing_mode_command_topic',
'swing_mode_stat_tpl': 'swing_mode_state_template',
'swing_mode_stat_t': 'swing_mode_state_topic',
'temp_cmd_tpl': 'temperature_command_template',
'temp_cmd_t': 'temperature_command_topic',
'temp_hi_cmd_tpl': 'temperature_high_command_template',
'temp_hi_cmd_t': 'temperature_high_command_topic',
'temp_hi_stat_tpl': 'temperature_high_state_template',
'temp_hi_stat_t': 'temperature_high_state_topic',
'temp_lo_cmd_tpl': 'temperature_low_command_template',
'temp_lo_cmd_t': 'temperature_low_command_topic',
'temp_lo_stat_tpl': 'temperature_low_state_template',
'temp_lo_stat_t': 'temperature_low_state_topic',
'temp_stat_tpl': 'temperature_state_template',
'temp_stat_t': 'temperature_state_topic',
'temp_unit': 'temperature_unit',
'tilt_clsd_val': 'tilt_closed_value',
'tilt_cmd_t': 'tilt_command_topic',
'tilt_cmd_tpl': 'tilt_command_template',
'tilt_inv_stat': 'tilt_invert_state',
'tilt_max': 'tilt_max',
'tilt_min': 'tilt_min',
'tilt_opnd_val': 'tilt_opened_value',
'tilt_opt': 'tilt_optimistic',
'tilt_status_t': 'tilt_status_topic',
'tilt_status_tpl': 'tilt_status_template',
't': 'topic',
'uniq_id': 'unique_id',
'unit_of_meas': 'unit_of_measurement',
'val_tpl': 'value_template',
'whit_val_cmd_t': 'white_value_command_topic',
'whit_val_scl': 'white_value_scale',
'whit_val_stat_t': 'white_value_state_topic',
'whit_val_tpl': 'white_value_template',
'xy_cmd_t': 'xy_command_topic',
'xy_stat_t': 'xy_state_topic',
'xy_val_tpl': 'xy_value_template',
```
Supported abbreviations for device registry configuration:
```txt
'cu': 'configuration_url'
'cns': 'connections',
'ids': 'identifiers',
'name': 'name',
'mf': 'manufacturer',
'mdl': 'model',
'hw': 'hw_version',
'sw': 'sw_version',
'sa': 'suggested_area',
```
## Support by third-party tools
The following software has built-in support for MQTT discovery:
- [Arilux AL-LC0X LED controllers](https://github.com/smrtnt/Arilux_AL-LC0X)
- [ebusd](https://github.com/john30/ebusd)
- [ecowitt2mqtt](https://github.com/bachya/ecowitt2mqtt)
- [ESPHome](https://esphome.io)
- [ESPurna](https://github.com/xoseperez/espurna)
- [HASS.Agent](https://github.com/LAB02-Research/HASS.Agent)
- [IOTLink](https://iotlink.gitlab.io) (starting with 2.0.0)
- [MiFlora MQTT Daemon](https://github.com/ThomDietrich/miflora-mqtt-daemon)
- [OpenMQTTGateway](https://github.com/1technophile/OpenMQTTGateway)
- [room-assistant](https://github.com/mKeRix/room-assistant) (starting with 1.1.0)
- [SmartHome](https://github.com/roncoa/SmartHome)
- [Tasmota](https://github.com/arendst/Tasmota) (starting with 5.11.1e, development halted)
- [Teleinfo MQTT](https://fmartinou.github.io/teleinfo2mqtt) (starting with 3.0.0)
- [Tydom2MQTT](https://fmartinou.github.io/tydom2mqtt/)
- [What's up Docker?](https://fmartinou.github.io/whats-up-docker/) (starting with 3.5.0)
- [WyzeSense2MQTT](https://github.com/raetha/wyzesense2mqtt)
- [Xiaomi DaFang Hacks](https://github.com/EliasKotlyar/Xiaomi-Dafang-Hacks)
- [Zigbee2mqtt](https://github.com/koenkk/zigbee2mqtt)
- [Zwave2Mqtt](https://github.com/OpenZWave/Zwave2Mqtt) (starting with 2.0.1)
## Examples
### Motion detection (binary sensor)
A motion detection device which can be represented by a [binary sensor](/integrations/binary_sensor.mqtt/) for your garden would send its configuration as JSON payload to the Configuration topic. After the first message to `config`, then the MQTT messages sent to the state topic will update the state in Home Assistant.
- Configuration topic: `homeassistant/binary_sensor/garden/config`
- State topic: `homeassistant/binary_sensor/garden/state`
- Payload: `{"name": "garden", "device_class": "motion", "state_topic": "homeassistant/binary_sensor/garden/state"}`
- Retain: The -r switch is added to retain the configuration topic in the broker. Without this, the sensor will not be available after Home Assistant restarts.
To create a new sensor manually.
```bash
mosquitto_pub -r -h 127.0.0.1 -p 1883 -t "homeassistant/binary_sensor/garden/config" -m '{"name": "garden", "device_class": "motion", "state_topic": "homeassistant/binary_sensor/garden/state"}'
```
Update the state.
```bash
mosquitto_pub -h 127.0.0.1 -p 1883 -t "homeassistant/binary_sensor/garden/state" -m ON
```
Delete the sensor by sending an empty message.
```bash
mosquitto_pub -h 127.0.0.1 -p 1883 -t "homeassistant/binary_sensor/garden/config" -m ''
```
For more details please refer to the [MQTT testing section](/docs/mqtt/testing/).
### Sensors
Setting up a sensor with multiple measurement values requires multiple consecutive configuration topic submissions.
- Configuration topic no1: `homeassistant/sensor/sensorBedroomT/config`
- Configuration payload no1: `{"device_class": "temperature", "name": "Temperature", "state_topic": "homeassistant/sensor/sensorBedroom/state", "unit_of_measurement": "°C", "value_template": "{% raw %}{{ value_json.temperature}}{% endraw %}" }`
- Configuration topic no2: `homeassistant/sensor/sensorBedroomH/config`
- Configuration payload no2: `{"device_class": "humidity", "name": "Humidity", "state_topic": "homeassistant/sensor/sensorBedroom/state", "unit_of_measurement": "%", "value_template": "{% raw %}{{ value_json.humidity}}{% endraw %}" }`
- Common state payload: `{ "temperature": 23.20, "humidity": 43.70 }`
### Entities with command topics
Setting up a light, switch etc. is similar but requires a `command_topic` as mentioned in the [MQTT switch documentation](/integrations/switch.mqtt/).
- Configuration topic: `homeassistant/switch/irrigation/config`
- State topic: `homeassistant/switch/irrigation/state`
- Command topic: `homeassistant/switch/irrigation/set`
- Payload: `{"name": "garden", "command_topic": "homeassistant/switch/irrigation/set", "state_topic": "homeassistant/switch/irrigation/state"}`
- Retain: The -r switch is added to retain the configuration topic in the broker. Without this, the sensor will not be available after Home Assistant restarts.
```bash
mosquitto_pub -r -h 127.0.0.1 -p 1883 -t "homeassistant/switch/irrigation/config" \
-m '{"name": "garden", "command_topic": "homeassistant/switch/irrigation/set", "state_topic": "homeassistant/switch/irrigation/state"}'
```
Set the state.
```bash
mosquitto_pub -h 127.0.0.1 -p 1883 -t "homeassistant/switch/irrigation/set" -m ON
```
### Using abbreviations and base topic
Setting up a switch using topic prefix and abbreviated configuration variable names to reduce payload length.
- Configuration topic: `homeassistant/switch/irrigation/config`
- Command topic: `homeassistant/switch/irrigation/set`
- State topic: `homeassistant/switch/irrigation/state`
- Configuration payload: `{"~": "homeassistant/switch/irrigation", "name": "garden", "cmd_t": "~/set", "stat_t": "~/state"}`
### Another example using abbreviations topic name and base topic
Setting up a [light that takes JSON payloads](/integrations/light.mqtt/#json-schema), with abbreviated configuration variable names:
- Configuration topic: `homeassistant/light/kitchen/config`
- Command topic: `homeassistant/light/kitchen/set`
- State topic: `homeassistant/light/kitchen/state`
- Example state payload: `{"state": "ON", "brightness": 255}`
- Configuration payload:
```json
{
"~": "homeassistant/light/kitchen",
"name": "Kitchen",
"unique_id": "kitchen_light",
"cmd_t": "~/set",
"stat_t": "~/state",
"schema": "json",
"brightness": true
}
```
### Use object_id to influence the entity id
The entity id is automatically generated from the entity's name. All MQTT entity components optionally support providing an `object_id` which will be used instead if provided.
- Configuration topic: `homeassistant/sensor/device1/config`
- Example configuration payload:
```json
{
"name":"My Super Device",
"object_id":"my_super_device",
"state_topic": "homeassistant/sensor/device1/state"
}
```
In the example above, the entity_id will be `sensor.my_super_device` instead of `sensor.device1`.

View File

@ -1,15 +0,0 @@
---
title: "MQTT Logging"
description: "Instructions on how to setup MQTT Logging within Home Assistant."
logo: mqtt.png
---
The [logger](/integrations/logger/) integration allows the logging of received MQTT messages.
```yaml
# Example configuration.yaml entry
logger:
default: warning
logs:
homeassistant.components.mqtt: debug
```

View File

@ -1,72 +0,0 @@
---
title: "MQTT Publish service"
description: "Instructions on how to setup the MQTT Publish service within Home Assistant."
logo: mqtt.png
---
The MQTT integration will register the service `mqtt.publish` which allows publishing messages to MQTT topics. There are two ways of specifying your payload. You can either use `payload` to hard-code a payload or use `payload_template` to specify a [template](/topics/templating/) that will be rendered to generate the payload.
## Service `mqtt.publish`
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `topic` | no | Topic to publish payload to.
| `topic_template` | no | Template to render as topic to publish payload to.
| `payload` | yes | Payload to publish.
| `payload_template` | yes | Template to render as payload value.
| `qos` | yes | Quality of Service to use. (default: 0)
| `retain` | yes | If message should have the retain flag set. (default: false)
<p class='note'>
You must include either `topic` or `topic_template`, but not both. If providing a payload, you need to include either `payload` or `payload_template`, but not both.
</p>
```yaml
topic: home-assistant/light/1/command
payload: on
```
{% raw %}
```yaml
topic: home-assistant/light/1/state
payload_template: "{{ states('device_tracker.paulus') }}"
```
{% endraw %}
{% raw %}
```yaml
topic_template: "home-assistant/light/{{ states('sensor.light_active') }}/state"
payload_template: "{{ states('device_tracker.paulus') }}"
```
{% endraw %}
`payload` must be a string. If you want to send JSON then you need to format/escape it properly. Like:
```yaml
topic: home-assistant/light/1/state
payload: "{\"Status\":\"off\", \"Data\":\"something\"}"
```
Example of how to use `qos` and `retain`:
```yaml
topic: home-assistant/light/1/command
payload: on
qos: 2
retain: true
```
### Service `mqtt.dump`
Listen to the specified topic matcher and dumps all received messages within a specific duration into the file `mqtt_dump.txt` in your configuration folder. This is useful when debugging a problem.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `topic` | no | Topic to dump. Can contain a wildcard (`#` or `+`).
| `duration` | yes | Duration in seconds that we will listen for messages. Default is 5 seconds.
```yaml
topic: openzwave/#
```

View File

@ -1,42 +0,0 @@
---
title: "MQTT Testing"
description: "Instructions on how to test your MQTT setup."
logo: mqtt.png
---
The `mosquitto` broker package ships commandline tools (often as `*-clients` package) to send and receive MQTT messages. For sending test messages to a broker running on `localhost` check the example below:
```bash
mosquitto_pub -h 127.0.0.1 -t home-assistant/switch/1/on -m "Switch is ON"
```
Another way to send MQTT messages manually is to use the "MQTT" integration in the frontend. Choose "Settings" on the left menu, click "Devices & Services", and choose "Configure" in the "Mosquitto broker" tile. Enter something similar to the example below into the "topic" field under "Publish a packet" and press "PUBLISH" .
```bash
home-assistant/switch/1/power
```
and in the Payload field
```bash
ON
```
In the "Listen to a topic" field, type `#` to see everything, or "home-assistant/switch/#" to just follow a published topic, then press "START LISTENING". The messages should appear similar to the text below:
```bash
Message 23 received on home-assistant/switch/1/power/stat/POWER at 12:16 PM:
ON
QoS: 0 - Retain: false
Message 22 received on home-assistant/switch/1/power/stat/RESULT at 12:16 PM:
{
"POWER": "ON"
}
QoS: 0 - Retain: false
```
For reading all messages sent on the topic `home-assistant` to a broker running on localhost:
```bash
mosquitto_sub -h 127.0.0.1 -v -t "home-assistant/#"
```

View File

@ -376,16 +376,14 @@ condition:
### Sunset/sunrise condition
The sun condition can also test if the sun has already set or risen when a trigger occurs. The `before` and `after` keys can only be set to `sunset` or `sunrise`. They have a corresponding optional offset value (`before_offset`, `after_offset`) that can be added, similar to the [sun trigger][sun_trigger]. When both keys are used, the result is a logical `and` of separate conditions.
The sun condition can also test if the sun has already set or risen when a trigger occurs. The `before` and `after` keys can only be set to `sunset` or `sunrise`. They have a corresponding optional offset value (`before_offset`, `after_offset`) that can be added, similar to the [sun trigger][sun_trigger].
Note that if only `before` key is used, the condition will be `true` _from midnight_ until sunrise/sunset. If only `after` key is used, the condition will be `true` from sunset/sunrise _until midnight_. Therefore, to cover time between sunset and sunrise one need to use `after: sunset` and `before: sunrise` as 2 separate conditions and combine them using `or`.
Note that if only `before` key is used, the condition will be `true` _from midnight_ until sunrise/sunset. If only `after` key is used, the condition will be `true` from sunset/sunrise _until midnight_. If both `before: sunrise` and `after: sunset` keys are used, the condition will be `true` _from midnight_ until sunrise **and** from sunset _until midnight_. If both `after: sunrise` and `before: sunset` keys are used, the condition will be `true` from sunrise until sunset.
[sun_trigger]: /docs/automation/trigger/#sun-trigger
<div class='note warning'>
The sunset/sunrise conditions do not work in locations inside the polar circles, and also not in locations with a highly skewed local time zone.
In those cases it is advised to use conditions evaluating the solar elevation instead of the before/after sunset/sunrise conditions.
The sunset/sunrise conditions do not work in locations inside the polar circles, and also not in locations with a highly skewed local time zone. In those cases it is advised to use conditions evaluating the solar elevation instead of the before/after sunset/sunrise conditions.
</div>
This is an example of 1 hour offset before sunset:
@ -414,18 +412,6 @@ condition:
before: sunset
```
We cannot use both keys in this case as it will always be `false`.
```yaml
condition:
condition: or
conditions:
- condition: sun
after: sunset
- condition: sun
before: sunrise
```
A visual timeline is provided below showing an example of when these conditions are true. In this chart, sunrise is at 6:00, and sunset is at 18:00 (6:00 PM). The green areas of the chart indicate when the specified conditions are true.
![Graphic showing an example of sun conditions](/images/docs/scripts/sun-conditions.svg)

View File

@ -1,69 +0,0 @@
---
title: "MQTT Notifications"
description: "Instructions on how to add MQTT notifications to Home Assistant."
logo: mqtt.png
ha_category: Notifications
ha_iot_class: Configurable
---
The MQTT notification support is different than the other [notification](/integrations/notify/) platforms. It is a service. This means that you don't have to create a configuration entry but you need to provide more details when calling the service.
**Call Service** section from **Developer Tools** -> **Services** allows you to send MQTT messages. Choose *mqtt.publish* from the list of **Available services:** and enter something like the sample below into the **Service Data** field and hit **CALL SERVICE**.
```json
{"payload": "Test message from HA", "topic": "home/notification", "qos": 0, "retain": 0}
```
<p class='img'>
<img src='/images/screenshots/mqtt-notify.png' />
</p>
The same will work for automations.
<p class='img'>
<img src='/images/screenshots/mqtt-notify-action.png' />
</p>
## Examples
### REST API
Using the [REST API](https://developers.home-assistant.io/docs/api/rest/) to send a message to a given topic.
```bash
$ curl -X POST \
-H "Authorization: Bearer ABCDEFGH" \
-H "Content-Type: application/json" \
-d '{"payload": "Test message from HA", "topic": "home/notification"}' \
http://IP_ADDRESS:8123/api/services/mqtt/publish
```
### Automations
Use as [`script`](/integrations/script/) in automations.
{% raw %}
```yaml
automation:
alias: "Send me a message when I get home"
trigger:
platform: state
entity_id: device_tracker.me
to: "home"
action:
service: script.notify_mqtt
data:
target: "me"
message: "I'm home"
script:
notify_mqtt:
sequence:
- service: mqtt.publish
data:
payload: "{{ message }}"
topic: home/"{{ target }}"
retain: true
```
{% endraw %}

View File

@ -4,18 +4,18 @@ description: Connect and control your 3 Day Blinds devices using the Motion Blin
ha_category:
- Cover
ha_domain: 3_day_blinds
ha_integration_type: virtual
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
ha_codeowners:
- '@starkillerOG'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- cover
- sensor
ha_iot_class: Local Push
ha_dhcp: true
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
---
{% include integrations/supported_brand.md %}

View File

@ -14,7 +14,7 @@ ha_platforms:
- diagnostics
- sensor
- weather
ha_integration_type: integration
ha_integration_type: service
---
The AccuWeather integration uses the [AccuWeather](https://accuweather.com/) web service as a source for weather data for your location.

View File

@ -14,7 +14,7 @@ ha_domain: adguard
ha_platforms:
- sensor
- switch
ha_integration_type: integration
ha_integration_type: service
---
AdGuard Home is a network-wide ad- and tracker-blocking DNS server with parental

View File

@ -13,7 +13,7 @@ ha_quality_scale: platinum
ha_platforms:
- diagnostics
- sensor
ha_integration_type: integration
ha_integration_type: service
---
The Airly integration uses the [Airly](https://airly.eu/) web service as a source for air quality data for your location.

View File

@ -10,6 +10,7 @@ ha_codeowners:
- '@asymworks'
ha_domain: airnow
ha_platforms:
- diagnostics
- sensor
ha_integration_type: integration
---

View File

@ -0,0 +1,51 @@
---
title: Airthings BLE
description: Instructions on how to set up Airthings Devices over Bluetooth LE.
ha_category:
- Environment
- Sensor
ha_release: '2022.11'
ha_iot_class: Local Polling
ha_codeowners:
- '@vincegio'
ha_domain: airthings_ble
ha_bluetooth: true
ha_platforms:
- sensor
ha_config_flow: true
ha_integration_type: integration
---
Integrates Airthings BLE sensors into Home Assistant.
[Airthings](https://www.airthings.com/) provide different sensors for measuring the air quality. The focus specially on Radon sensors.
Requires Airthings hardware and a compatible Bluetooth dongle.
{% include integrations/config_flow.md %}
The Airthings BLE integration will automatically discover devices once the [Bluetooth](/integrations/bluetooth) integration is enabled and functional. This will include the device name and its serial number.
There are two ways of retrieving the 10-digit serial number of a Wave device:
1. At the back of the device, located under the magnetic backplate.
2. Airthings app: **Device settings -> Device info -> Serial Number**
This integration uses the last 6 digits of the serial number.
## Supported Devices
- Wave
- Wave+
- Wave mini
## Sensors
Sensor entities added to Home Assistant, depending on the device model:
- Humidity
- Illuminance
- Pressure (relative depending on home elevation)
- Radon 1-day and longterm average, as well as levels
- Temperature
- VOC
- Co2
- Battery

View File

@ -12,7 +12,7 @@ ha_config_flow: true
ha_platforms:
- diagnostics
- sensor
ha_integration_type: integration
ha_integration_type: device
---
The `airvisual` sensor platform queries the [AirVisual](https://www.iqair.com) cloud API for air quality data. Data can be collected via latitude/longitude, by city/state/country, or from an [AirVisual Node/Pro unit](https://www.iqair.com/air-quality-monitors/airvisual-pro).

View File

@ -9,6 +9,7 @@ ha_quality_scale: internal
ha_domain: alert
ha_codeowners:
- '@home-assistant/core'
- '@frenck'
ha_integration_type: integration
---
@ -103,7 +104,7 @@ done_message:
type: template
notifiers:
description: "List of `notification` integrations to use for alerts."
required: true
required: false
type: list
data:
description: "Dictionary of extra parameters to send to the notifier."

View File

@ -13,7 +13,7 @@ ha_platforms:
- binary_sensor
- diagnostics
- sensor
ha_integration_type: integration
ha_integration_type: hub
---
The `Ambient Weather Station` integration retrieves local weather information

View File

@ -4,18 +4,18 @@ description: Connect and control your AMP Motorization devices using the Motion
ha_category:
- Cover
ha_domain: amp_motorization
ha_integration_type: virtual
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
ha_codeowners:
- '@starkillerOG'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- cover
- sensor
ha_iot_class: Local Push
ha_dhcp: true
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
---
{% include integrations/supported_brand.md %}

View File

@ -106,7 +106,8 @@ Some sensors are disabled by default, since they provide information that is onl
- UPS Register 2 Fault (REG2)
- UPS Register 3 Fault (REG3)
- UPS Restore Requirement (RETPCT)
- UPS Last Self Test (SELFTEST)
- UPS Last Self Test (LASTSTEST)
- UPS Self Test Result (SELFTEST)
- UPS Sensitivity (SENSE)
- UPS Serial Number (SERIALNO)
- UPS Startup Time (STARTTIME)

View File

@ -5,20 +5,20 @@ ha_category:
- Binary Sensor
- Lock
- Sensor
ha_bluetooth: true
ha_release: 2022.9
ha_iot_class: Local Push
ha_domain: august_ble
ha_integration_type: virtual
ha_supporting_domain: yalexs_ble
ha_supporting_integration: Yale Access Bluetooth
ha_bluetooth: true
ha_codeowners:
- '@bdraco'
ha_domain: august_ble
ha_config_flow: true
ha_platforms:
- binary_sensor
- lock
- sensor
ha_integration_type: integration
ha_supporting_domain: yalexs_ble
ha_supporting_integration: Yale Access Bluetooth
ha_iot_class: Local Push
---
Integrates [August](https://august.com/) locks over Bluetooth into Home Assistant.

View File

@ -17,7 +17,7 @@ The `aws` integration provides a single place to interact with [Amazon Web Servi
You have to have an AWS account to use Amazon Web Services, create one [here](https://aws.amazon.com/free/) with a 12 months free tier benefit. Please note, even in the first 12-months, you may still be billed if you use more resources than offered in the free tier. We advise you to monitor your costs in the [AWS Billing Console](https://console.aws.amazon.com/billing/) closely. You can read the [Control your AWS costs](https://aws.amazon.com/getting-started/tutorials/control-your-costs-free-tier-budgets/) guide for more information.
The `lambda`, `sns` and `sqs` services, used in the `aws` component, all provide an **Always Free** tier for all users even after the 12-month period. The general usage in Home Automation will most likely not reach the free tier limit. Please read [Lambda Pricing](https://aws.amazon.com/lambda/pricing/), [SNS Pricing](https://aws.amazon.com/sns/pricing/) and [SQS Pricing](https://aws.amazon.com/sqs/pricing/) for more details.
The `lambda`, `sns`, `sqs`, and `events` services, used in the `aws` component, all provide an **Always Free** tier for all users even after the 12-month period. The general usage in Home Automation will most likely not reach the free tier limit. Please read [Lambda Pricing](https://aws.amazon.com/lambda/pricing/), [SNS Pricing](https://aws.amazon.com/sns/pricing/), [SQS Pricing](https://aws.amazon.com/sqs/pricing/), and [EventBridge Pricing](https://aws.amazon.com/eventbridge/pricing/) for more details.
The `aws` integration is using [botocore](https://botocore.amazonaws.com/v1/documentation/api/latest/index.html) to communicate with Amazon Web Services, which is also used by the [AWS Command Client Interface](https://aws.amazon.com/cli/) tool. Therefore, `aws` shares the same credential and profiles with `awscli` tool. Please read [Configuring the AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html) to learn how to get access keys and how to manage them on your local system securely.
@ -172,3 +172,61 @@ The SQS event payload will contain everything passed in the service call payload
"message": "Hello world!"
}
```
## EventBridge Notify Usage
AWS EventBridge is a notification platform and thus can be controlled by calling the `notify` service [as described here](/integrations/notify/). It will publish a message to the event bus for all targets given in the notification payload. A target must be a name of an event bus accessible by the given credentials. A target is not required, and the default event bus will be used if none are specified. For more information, please see the [EventBridge documentation](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-bus.html) and [bototcore documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/events.html#EventBridge.Client.put_events)
There are two options for generating the event detail based on the service call payload. If the `detail` attribute is specified, then its value will be serialized as a JSON object and used for the event detail. If the attribute is not specified, then the value of the `message` attribute is serialized as a simple JSON object with a single key named `message` and the value of the message supplied to the service call.
Here are a couple of examples showing the service call input and corresponding API entry:
```jsonc
// Service call payload
{
"message": "Hello world!"
}
// Corresponding Entries
{
"Detail": "{\"message\": \"Hello world!\"}"
"DetailType": "",
"Source": "homeassistant",
"Resources": [],
}
```
```jsonc
// Service Call Payload:
{
"target": ["eventbus1", "eventbus2"]
"data": {
"detail_type": "test_event":
"detail": {
"key1", "value1",
"key2", "value2"
},
"resources": ["resource1", "resource2"],
"source": "example"
}
}
// Corresponding Entries
[
{
"Detail": "{\"key1\": \"value1\",\"key2\": \"key2\": \"value2\"}"
"DetailType": "test_event",
"EventBusName": "eventbus1",
"Resources": ["resource1", "resource2"],
"Source": "example"
},
{
"Detail": "{\"key1\": \"value1\",\"key2\": \"key2\": \"value2\"}"
"DetailType": "test_event",
"EventBusName": "eventbus2",
"Resources": ["resource1", "resource2"],
"Source": "example"
}
]
```

View File

@ -23,7 +23,7 @@ ha_platforms:
- diagnostics
- light
- switch
ha_integration_type: integration
ha_integration_type: device
---
[Axis Communications](https://www.axis.com/) devices are surveillance cameras, speakers, access control and other security-related network connected hardware. Event API works with firmware 5.50 and newer.

View File

@ -73,6 +73,10 @@ name:
required: false
type: string
default: Bayesian Binary Sensor
unique_id:
description: An ID that uniquely identifies this bayesian entity. If two entities have the same unique ID, Home Assistant will raise an exception.
required: false
type: string
device_class:
description: Sets the [class of the device](/integrations/binary_sensor/), changing the device state and icon that is displayed on the frontend.
required: false
@ -119,8 +123,9 @@ The following is an example for the `state` observation platform.
```yaml
# Example configuration.yaml entry
binary_sensor:
name: "in_bed"
platform: "bayesian"
name: "in_bed"
unique_id: "172b6ef1-e37e-4f04-8d64-891e84c02b43" # generated on https://www.uuidgenerator.net/
prior: 0.25 # I spend 6 hours a day in bed 6hr/24hr is 0.25
probability_threshold: 0.8 # I am going to be using this sensor to turn out the lights so I only want to to activate when I am sure
observations:

View File

@ -11,7 +11,7 @@ ha_codeowners:
- '@riokuu'
ha_domain: blebox
ha_platforms:
- air_quality
- binary_sensor
- button
- climate
- cover
@ -36,11 +36,19 @@ This integration adds the BleBox device as a cover in Home Assistant.
Currently, this includes support for the following product classes:
- BleBox shutterBox
- BleBox gateController
- BleBox rollerGate
- BleBox gateBox
For now, only a minimum set of features are supported (e.g., no tilt support for shutterBox).
## Binary sensors
This integration adds BleBox device as a binary_sensor in Home Assistant.
Currently, this includes support for the following product classes:
- BleBox rainSensor
- BleBox wind&rainSensor (rain only)
## Sensors
This integration adds the BleBox device as a sensor in Home Assistant.

View File

@ -4,18 +4,18 @@ description: Connect and control your Bliss Automation devices using the Motion
ha_category:
- Cover
ha_domain: bliss_automation
ha_integration_type: virtual
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
ha_codeowners:
- '@starkillerOG'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- cover
- sensor
ha_iot_class: Local Push
ha_dhcp: true
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
---
{% include integrations/supported_brand.md %}

View File

@ -4,18 +4,18 @@ description: Connect and control your Bloc Blinds devices using the Motion Blind
ha_category:
- Cover
ha_domain: bloc_blinds
ha_integration_type: virtual
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
ha_codeowners:
- '@starkillerOG'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- cover
- sensor
ha_iot_class: Local Push
ha_dhcp: true
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
---
{% include integrations/supported_brand.md %}

View File

@ -17,7 +17,7 @@ ha_platforms:
- media_player
- remote
ha_ssdp: true
ha_integration_type: integration
ha_integration_type: device
---
The Bravia TV integration allows you to control a [Sony Bravia TV](https://www.sony.com/).

View File

@ -4,18 +4,18 @@ description: Connect and control your Brel Home devices using the Motion Blinds
ha_category:
- Cover
ha_domain: brel_home
ha_integration_type: virtual
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
ha_codeowners:
- '@starkillerOG'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- cover
- sensor
ha_iot_class: Local Push
ha_dhcp: true
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
---
{% include integrations/supported_brand.md %}

View File

@ -14,7 +14,7 @@ ha_zeroconf: true
ha_platforms:
- diagnostics
- sensor
ha_integration_type: integration
ha_integration_type: device
---
The `Brother Printer` integration allows you to read current data from your local Brother printer.

View File

@ -3,21 +3,25 @@ title: BSwitch
description: Connect and control your BSwitch devices using the SwitchBee integration
ha_category:
- Button
- Climate
- Cover
- Light
- Switch
ha_domain: bswitch
ha_codeowners:
- '@jafar-atili'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- button
- light
- switch
ha_iot_class: Local Polling
ha_integration_type: virtual
ha_supporting_domain: switchbee
ha_supporting_integration: SwitchBee
ha_release: '2022.10'
ha_codeowners:
- '@jafar-atili'
ha_config_flow: true
ha_platforms:
- button
- climate
- cover
- light
- switch
ha_iot_class: Local Polling
---
{% include integrations/supported_brand.md %}

View File

@ -6,7 +6,7 @@ ha_category:
ha_release: 0.82
ha_iot_class: Local Polling
ha_codeowners:
- '@jxwolstenholme'
- '@typhoon2099'
ha_domain: bt_smarthub
ha_platforms:
- device_tracker

View File

@ -13,9 +13,12 @@ ha_category:
- Switch
- Weather
ha_domain: bticino
ha_integration_type: virtual
ha_supporting_domain: netatmo
ha_supporting_integration: Netatmo
ha_release: '0.20'
ha_codeowners:
- '@cgtobi'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- camera
@ -28,9 +31,6 @@ ha_platforms:
- switch
ha_iot_class: Cloud Polling
ha_homekit: true
ha_supporting_domain: netatmo
ha_supporting_integration: Netatmo
ha_release: '0.20'
---
{% include integrations/supported_brand.md %}

View File

@ -13,9 +13,12 @@ ha_category:
- Switch
- Weather
ha_domain: bubendorff
ha_integration_type: virtual
ha_supporting_domain: netatmo
ha_supporting_integration: Netatmo
ha_release: '0.20'
ha_codeowners:
- '@cgtobi'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- camera
@ -28,9 +31,6 @@ ha_platforms:
- switch
ha_iot_class: Cloud Polling
ha_homekit: true
ha_supporting_domain: netatmo
ha_supporting_integration: Netatmo
ha_release: '0.20'
---
{% include integrations/supported_brand.md %}

View File

@ -13,7 +13,7 @@ ha_integration_type: integration
The `clicksend_tts` platform uses [ClickSend](https://clicksend.com) to deliver text-to-speech (TTS) notifications from Home Assistant.
Go to your [ClickSend Dashboard](https://dashboard.clicksend.com) section and create your new project. After creating your project, you should now be able to obtain your `username` and `api_key`.
After creating your account, you should now be able to obtain your `username` and `api_key` [here](https://dashboard.clicksend.com/account/subaccounts).
To add ClickSend to your installation, add the following to your Home Assistant `configuration.yaml` file:
@ -29,10 +29,10 @@ notify:
name:
description: Setting the optional parameter name allows multiple notifiers to be created. The notifier will bind to the service notify.NOTIFIER_NAME.
required: false
default: ClickSend
default: clicksend_tts
type: string
username:
description: Your username.
description: Your username (probably your email address).
required: true
type: string
api_key:
@ -40,15 +40,11 @@ api_key:
required: true
type: string
recipient:
description: Recipient phone number. This is the phone number that you want to call and notify via TTS (e.g., `09171234567`).
description: An [E.164](https://en.wikipedia.org/wiki/E.164) formatted phone number, like `+14151234567`. This is the phone number that you want to call and notify via TTS, see [ClickSend Documentation](https://developers.clicksend.com/docs/rest/v3/#Send-Voice-Message) for more info.
required: true
type: string
caller:
description: Caller phone number. This is the phone number that you want to be the TTS call originator (e.g., `09181234567`). If not defined the recipient number is used.
required: false
type: string
language:
description: The language you want to use to convert the message to audio. Accepted values are found in the [ClickSend Documentation](https://clicksend.docs.apiary.io/#reference/voice/voice-languages).
description: The language you want to use to convert the message to audio. Accepted values are found in the [ClickSend Documentation](https://developers.clicksend.com/docs/rest/v3/#Send-Voice-Message).
required: false
default: en-us
type: string
@ -59,4 +55,17 @@ voice:
type: string
{% endconfiguration %}
To use notifications, please see the [getting started with automation page](/getting-started/automation/).
### Usage
ClickSend is a notify platform and thus can be controlled by calling the notify service [as described here](/integrations/notify/). It will send a notification to the E.164 phone number you configured as **recipient**.
```yaml
alias: "The sun has set"
trigger:
- platform: sun
event: sunset
action:
- service: notify.clicksend_tts
data:
message: "The sun has set"
```

View File

@ -13,7 +13,7 @@ ha_platforms:
- binary_sensor
- stt
- tts
ha_integration_type: integration
ha_integration_type: system
---
The Home Assistant Cloud allows you to quickly integrate your local Home Assistant with various cloud services like Amazon Alexa and Google Assistant. [Learn more.](/cloud)

View File

@ -17,11 +17,14 @@ ha_category:
- Siren
- Switch
ha_domain: cozytouch
ha_integration_type: virtual
ha_supporting_domain: overkiz
ha_supporting_integration: Overkiz
ha_release: 2022.2
ha_codeowners:
- '@imicknl'
- '@vlebourl'
- '@tetienne'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- alarm_control_panel
@ -39,11 +42,8 @@ ha_platforms:
- siren
- switch
ha_iot_class: Cloud Polling
ha_zeroconf: true
ha_dhcp: true
ha_supporting_domain: overkiz
ha_supporting_integration: Overkiz
ha_release: 2022.2
ha_zeroconf: true
---
{% include integrations/supported_brand.md %}

View File

@ -13,7 +13,7 @@ ha_config_flow: true
ha_platforms:
- diagnostics
- sensor
ha_integration_type: integration
ha_integration_type: device
---
The CPU Speed integration allows you to monitor the current CPU speed.

View File

@ -8,9 +8,12 @@ ha_category:
- Select
- Sensor
ha_domain: dacia
ha_integration_type: virtual
ha_supporting_domain: renault
ha_supporting_integration: Renault
ha_release: 2021.8
ha_codeowners:
- '@epenet'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- binary_sensor
@ -20,9 +23,6 @@ ha_platforms:
- select
- sensor
ha_iot_class: Cloud Polling
ha_supporting_domain: renault
ha_supporting_integration: Renault
ha_release: 2021.8
---
{% include integrations/supported_brand.md %}

View File

@ -9,7 +9,7 @@ ha_codeowners:
ha_domain: debugpy
ha_quality_scale: internal
ha_iot_class: Local Push
ha_integration_type: integration
ha_integration_type: service
---
The remote Python debugger integration allows you to use the Visual Studio Code

View File

@ -37,7 +37,7 @@ ha_platforms:
- sensor
- siren
- switch
ha_integration_type: integration
ha_integration_type: hub
---
[deCONZ](https://www.dresden-elektronik.de/funk/software/deconz.html) by [dresden elektronik](https://www.dresden-elektronik.de) is a software that communicates with ConBee/RaspBee Zigbee gateways and exposes Zigbee devices that are connected to the gateway.

View File

@ -33,6 +33,7 @@ This integration is a meta-component and configures a default set of integration
- [Input select](/integrations/input_select/) (`input_select`)
- [Input text](/integrations/input_text/) (`input_text`)
- [Logbook](/integrations/logbook/) (`logbook`)
- [Logger](/integrations/logger/) (`logger`)
- [Map](/integrations/map/) (`map`)
- [Media Source](/integrations/media_source/) (`media_source`)
- [Mobile App Support](/integrations/mobile_app/) (`mobile_app`)

View File

@ -26,7 +26,7 @@ ha_platforms:
- siren
- switch
ha_zeroconf: true
ha_integration_type: integration
ha_integration_type: hub
---
devolo Home Control is a Z-Wave ecosystem with a Z-Wave to IP gateway in the center. The integration allows you to control devices connected to the gateway.

View File

@ -18,7 +18,7 @@ ha_platforms:
- device_tracker
- sensor
ha_zeroconf: true
ha_integration_type: integration
ha_integration_type: device
---
The devolo Home Network integration allows you to monitor your PLC network.

View File

@ -0,0 +1,21 @@
---
title: Diaz
description: Connect and control your Diaz devices using the Motion Blinds integration
ha_category:
- Cover
ha_domain: diaz
ha_integration_type: virtual
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
ha_codeowners:
- '@starkillerOG'
ha_config_flow: true
ha_platforms:
- cover
- sensor
ha_iot_class: Local Push
ha_dhcp: true
---
{% include integrations/supported_brand.md %}

View File

@ -8,9 +8,12 @@ ha_category:
- Light
- Switch
ha_domain: digital_loggers
ha_integration_type: virtual
ha_supporting_domain: wemo
ha_supporting_integration: Belkin WeMo
ha_release: pre 0.7
ha_codeowners:
- '@esev'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- binary_sensor
@ -19,11 +22,8 @@ ha_platforms:
- sensor
- switch
ha_iot_class: Local Push
ha_ssdp: true
ha_homekit: true
ha_supporting_domain: wemo
ha_supporting_integration: Belkin WeMo
ha_release: pre 0.7
ha_ssdp: true
---
{% include integrations/supported_brand.md %}

View File

@ -4,18 +4,18 @@ description: Connect and control your Dooya devices using the Motion Blinds inte
ha_category:
- Cover
ha_domain: dooya
ha_integration_type: virtual
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
ha_codeowners:
- '@starkillerOG'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- cover
- sensor
ha_iot_class: Local Push
ha_dhcp: true
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
---
{% include integrations/supported_brand.md %}

View File

@ -13,7 +13,7 @@ ha_codeowners:
- '@frenck'
ha_platforms:
- sensor
ha_integration_type: integration
ha_integration_type: hub
---
A sensor platform for Belgian, Dutch, Luxembourg and Swedish Smart Meters which comply to DSMR (Dutch Smart Meter Requirements), also known as 'Slimme meter' or 'P1 poort'. Swedish meters with a 'HAN port' are not supported by this integration.

View File

@ -84,30 +84,17 @@ You must [restart Home Assistant](/docs/configuration/#reloading-changes) for th
## Notifications
To get your ecobee notifications working with Home Assistant, you must first have the main ecobee integration loaded and running. Once you have that configured, you can set up this integration to send messages to your ecobee device.
The `ecobee` notify platform allows you to send notifications to an ecobee thermostat. The `target` parameter of the service call is required to specify the index of the recipient thermostat. The index values assigned to the thermostats are consecutive integers, starting at 0.
To use this notification platform in your installation, add the following to your `configuration.yaml` file:
Example service call:
```yaml
# Example configuration.yaml entry
notify:
- name: NOTIFIER_NAME
platform: ecobee
service: notify.ecobee
data:
message: "Hello, this is your thermostat."
target: 0
```
{% configuration %}
name:
description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`.
required: false
default: "`notify`"
type: string
index:
description: If you have multiple thermostats, you can specify which one to send the notification to by setting an `index`. The index values assigned to the thermostats are consecutive integers, starting at 0.
required: false
default: 0
type: integer
{% endconfiguration %}
To use notifications, please see the [getting started with automation page](/getting-started/automation/).
## Thermostat

View File

@ -6,8 +6,6 @@ ha_category:
ha_iot_class: Local Push
ha_release: 0.107
ha_domain: edl21
ha_codeowners:
- '@mtdcr'
ha_platforms:
- sensor
ha_integration_type: integration

View File

@ -15,7 +15,7 @@ ha_platforms:
- button
- diagnostics
- light
ha_integration_type: integration
ha_integration_type: device
---
The [Elgato](https://www.elgato.com/) Lights sets the bar for high-end studio

View File

@ -11,6 +11,7 @@ ha_config_flow: true
ha_codeowners:
- '@gtdiehl'
ha_platforms:
- diagnostics
- sensor
ha_integration_type: integration
---

View File

@ -27,7 +27,7 @@ ha_platforms:
- select
- sensor
- switch
ha_integration_type: integration
ha_integration_type: device
ha_dhcp: true
works_with:
- local

View File

@ -13,6 +13,8 @@ The `template` platform creates fans that combine integrations and provides the
ability to run scripts or invoke services for each of the `turn_on`, `turn_off`, `set_percentage`,
`set_preset_mode`, `set_oscillating`, and `set_direction` commands of a fan.
## Configuration
To enable Template Fans in your installation, add the following to your
`configuration.yaml` file:
@ -146,3 +148,110 @@ When converting a fan with 3 speeds from the old fan entity model, the following
33 - `low`
66 - `medium`
100 - `high`
## Examples
### Helper Fan
This example uses an input_boolean and an input_number to mimic a fan, and
the example shows multiple service calls for set_percentage.
{% raw %}
```yaml
fan:
- platform: template
fans:
helper_fan:
friendly_name: "Helper Fan"
value_template: "{{ states('input_boolean.state') }}"
turn_on:
- service: input_boolean.turn_on
target:
entity_id: input_boolean.state
turn_off:
- service: input_boolean.turn_off
target:
entity_id: input_boolean.state
percentage_template: >
{{ states('input_number.percentage') if is_state('input_boolean.state', 'on') else 0 }}
speed_count: 6
set_percentage:
- service: input_boolean.turn_{{ 'on' if percentage > 0 else 'off' }}
target:
entity_id: input_boolean.state
- service: input_number.set_value
target:
entity_id: input_number.percentage
data:
value: "{{ percentage }}"
```
{% endraw %}
### Preset Modes Fan
This example uses an existing fan with only a percentage. It extends the
percentage value into useable preset modes without a helper entity.
{% raw %}
```yaml
fan:
- platform: template
fans:
preset_mode_fan:
friendly_name: "Preset Mode Fan Example"
value_template: "{{ states('fan.percentage_fan') }}"
turn_on:
- service: fan.turn_on
target:
entity_id: fan.percentage_fan
turn_off:
- service: fan.turn_off
target:
entity_id: fan.percentage_fan
percentage_template: >
{{ state_attr('fan.percentage_fan', 'percentage') }}
speed_count: 3
set_percentage:
- service: fan.set_percentage
target:
entity_id: fan.percentage_fan
data:
percentage: "{{ percentage }}"
preset_modes:
- "off"
- "low"
- "medium"
- "high"
preset_mode_template: >
{% if is_state('fan.percentage_fan', 'on') %}
{% if state_attr('fan.percentage_fan', 'percentage') == 100 %}
high
{% elif state_attr('fan.percentage_fan', 'percentage') == 66 %}
medium
{% else %}
low
{% endif %}
{% else %}
off
{% endif %}
set_preset_mode:
- service: fan.set_percentage
target:
entity_id: fan.percentage_fan
data:
percentage: >-
{% if preset_mode == 'high' %}
100
{% elif preset_mode == 'medium' %}
66
{% elif preset_mode == 'low' %}
33
{% else %}
0
{% endif %}
```
{% endraw %}

View File

@ -63,6 +63,7 @@ This is the main entity of the integration containing the incident message as it
| `longitude` | The Longitude of the incident.|
| `address_type` | Type of address, e.g. `home`.|
| `formatted_address` | Address in string format.|
| `task_ids` | ID(s) of appliance(s) or task(s).|
### Duty Binary Sensor

View File

@ -17,11 +17,14 @@ ha_category:
- Siren
- Switch
ha_domain: flexom
ha_integration_type: virtual
ha_supporting_domain: overkiz
ha_supporting_integration: Overkiz
ha_release: 2022.2
ha_codeowners:
- '@imicknl'
- '@vlebourl'
- '@tetienne'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- alarm_control_panel
@ -39,11 +42,8 @@ ha_platforms:
- siren
- switch
ha_iot_class: Cloud Polling
ha_zeroconf: true
ha_dhcp: true
ha_supporting_domain: overkiz
ha_supporting_integration: Overkiz
ha_release: 2022.2
ha_zeroconf: true
---
{% include integrations/supported_brand.md %}

View File

@ -2,6 +2,7 @@
title: Flume
description: Documentation about the flume sensor.
ha_category:
- Binary Sensor
- Sensor
ha_iot_class: Cloud Polling
ha_release: 0.103
@ -13,6 +14,7 @@ ha_codeowners:
ha_domain: flume
ha_dhcp: true
ha_platforms:
- binary_sensor
- sensor
ha_integration_type: integration
---
@ -27,6 +29,17 @@ You can find your Client ID and Client Secret under "API Access" on the [setting
To add `Flume` to your installation, go to **Settings** -> **Devices & Services** in the UI, click the button with `+` sign and from the list of integrations select **Flume**.
## Notifications
Flume notifications are available via binary sensors. To clear the notifications, you will need to use your Flume app or go to: [https://portal.flumewater.com/notifications]([https://portal.flumewater.com/notifications]) and clear the notification in question.
The following notifications are supported:
* Bridge disconnected
* High flow
* Leak detected
## Configuration for Binary Sensor
The following YAML creates a binary sensor. This requires the default sensor to be configured successfully.

View File

@ -14,7 +14,7 @@ ha_platforms:
- diagnostics
- sensor
ha_quality_scale: platinum
ha_integration_type: integration
ha_integration_type: service
---
The [Forecast.Solar](https://forecast.solar/) service provides solar production

View File

@ -1,6 +1,6 @@
---
title: forked-daapd
description: Instructions on how to integrate a forked-daapd server into Home Assistant.
title: Owntone
description: Instructions on how to integrate an Owntone server into Home Assistant.
ha_category:
- Media Player
ha_release: '0.110'
@ -15,22 +15,26 @@ ha_platforms:
ha_integration_type: integration
---
The `forked_daapd` integration allows you to control your [OwnTone (previously forked-daapd)](https://github.com/owntone/owntone-server) server from Home Assistant. This integration can control the forked-daapd outputs (zones) with limited playback control (play/pause, previous/next track) and media info support. Playlist manipulation is not supported.
The Owntone integration allows you to control your [OwnTone (previously forked-daapd)](https://github.com/owntone/owntone-server) server from Home Assistant. This integration can control the Owntone outputs (zones) with limited playback control (play/pause, previous/next track) and media info support. Playlist manipulation is not supported.
## Requirements
The `forked_daapd` integration requires a OwnTone server built with libwebsockets enabled, version >= 27.0.
The Owntone integration requires an OwnTone server built with libwebsockets enabled, version >= 27.0.
{% include integrations/config_flow.md %}
## Outputs
Once the `forked-daapd` integration is set up, outputs will automatically be loaded from the server and added to HA in real time.
Once the Owntone integration is set up, outputs will automatically be loaded from the server and added to HA in real-time.
## Pipes
As OwnTone supports playing audio input via a pipe, this integration supports the forwarding of basic player controls (play, pause, next track, previous track) directly to the pipe's source. Currently only the pipe source librespot-java is supported. To use this, configure your forked-daapd server to autostart pipes and name your librespot-java pipe "librespot-java" (accompanying metadata is also supported through forked-daapd via a metadata pipe named"librespot-java.metadata"). The `forked-daapd` integration will find the librespot-java pipe in the database and will set it up as a source.
As OwnTone supports playing audio input via a pipe, this integration supports the forwarding of basic player controls (play, pause, next track, previous track) directly to the pipe's source. Currently, only the pipe source librespot-java is supported. To use this, configure your Owntone server to autostart pipes and name your librespot-java pipe "librespot-java" (accompanying metadata is also supported through Owntone via a metadata pipe named "librespot-java.metadata"). The Owntone integration will find the librespot-java pipe in the database and will set it up as a source.
## Playlists
The `forked-daapd` integration will treat playlists in the database as sources. The number of playlists shown as sources can be set in the integration's configuration options.
The Owntone integration will treat playlists in the database as sources. The number of playlists shown as sources can be set in the integration's configuration options.
## Spotify
The Owntone integration supports media browsing via the [Spotify integration](/integrations/spotify). However, to play Spotify content, your Owntone instance must be logged in with Spotify. This can be done through Owntone's own web interface. For more details, see [Owntone's notes on Spotify](https://owntone.github.io/owntone-server/integrations/spotify/#spotify). You should log in with the same Spotify account for both the Owntone server and the Home Assistant [Spotify integration](/integrations/spotify).

View File

@ -9,7 +9,7 @@ ha_domain: fritzbox_callmonitor
ha_config_flow: true
ha_platforms:
- sensor
ha_integration_type: integration
ha_integration_type: device
ha_codeowners:
- '@cdce8p'
---

View File

@ -67,3 +67,43 @@ The following controls are available:
<div class='note warning'>
The Fully Kiosk Browser app does not provide feedback on the device volume or media playback status, so we are unable to display the current volume level or playback status.
</div>
## Services
**Service `load_url`**
You can use the service `fully_kiosk.load_url` to have the tablet open the specified URL.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `device_id` | yes | Device ID (or list of device IDs) to load the URL on.
| `url` | yes | The URL to load.
Example:
```yaml
service: fully_kiosk.load_url
data:
url: "https://home-assistant.io"
target:
device_id: a674c90eca95eca91f6020415de07713
```
**Service `start_application`**
You can use the service `fully_kiosk.start_application` to have the tablet launch the specified app.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `device_id` | yes | Device ID (or list of device IDs) to load the URL on.
| `application` | yes | The package name of the app to load.
Example:
```yaml
service: fully_kiosk.start_application
data:
application: "de.ozerov.fully"
target:
device_id: a674c90eca95eca91f6020415de07713
```

View File

@ -4,18 +4,18 @@ description: Connect and control your Gaviota devices using the Motion Blinds in
ha_category:
- Cover
ha_domain: gaviota
ha_integration_type: virtual
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
ha_codeowners:
- '@starkillerOG'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- cover
- sensor
ha_iot_class: Local Push
ha_dhcp: true
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
---
{% include integrations/supported_brand.md %}

View File

@ -13,7 +13,7 @@ ha_quality_scale: platinum
ha_platforms:
- diagnostics
- sensor
ha_integration_type: integration
ha_integration_type: service
---
The `gios` integration uses the [GIOŚ](http://powietrze.gios.gov.pl/pjp/current) web service as a source for air quality data for your location.

View File

@ -37,6 +37,7 @@ Any Gree Smart device working with the Gree+ app should be supported, including
- Cooper & Hunter
- Proklima
- Tadiran
- Heiwa
## Climate

View File

@ -20,7 +20,7 @@ ha_platforms:
- sensor
- switch
ha_dhcp: true
ha_integration_type: integration
ha_integration_type: device
---
The `guardian` integration integrates

View File

@ -16,7 +16,7 @@ ha_platforms:
- update
ha_codeowners:
- '@home-assistant/supervisor'
ha_integration_type: system
ha_integration_type: integration
---
Supervisor integration allows you to monitor and control Supervisor add-ons and operating system from Home Assistant.

View File

@ -0,0 +1,21 @@
---
title: Havana Shade
description: Connect and control your Havana Shade devices using the Motion Blinds integration
ha_category:
- Cover
ha_domain: havana_shade
ha_integration_type: virtual
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
ha_codeowners:
- '@starkillerOG'
ha_config_flow: true
ha_platforms:
- cover
- sensor
ha_iot_class: Local Push
ha_dhcp: true
---
{% include integrations/supported_brand.md %}

View File

@ -0,0 +1,20 @@
---
title: Heiwa
description: Connect and control your Heiwa devices using the Gree Climate integration
ha_category:
- Climate
ha_release: 0.117
ha_domain: heiwa
ha_integration_type: virtual
ha_supporting_domain: gree
ha_supporting_integration: Gree Climate
ha_codeowners:
- '@cmroche'
ha_config_flow: true
ha_platforms:
- climate
- switch
ha_iot_class: Local Polling
---
{% include integrations/supported_brand.md %}

View File

@ -17,11 +17,14 @@ ha_category:
- Siren
- Switch
ha_domain: hi_kumo
ha_integration_type: virtual
ha_supporting_domain: overkiz
ha_supporting_integration: Overkiz
ha_release: 2022.2
ha_codeowners:
- '@imicknl'
- '@vlebourl'
- '@tetienne'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- alarm_control_panel
@ -39,11 +42,8 @@ ha_platforms:
- siren
- switch
ha_iot_class: Cloud Polling
ha_zeroconf: true
ha_dhcp: true
ha_supporting_domain: overkiz
ha_supporting_integration: Overkiz
ha_release: 2022.2
ha_zeroconf: true
---
{% include integrations/supported_brand.md %}

View File

@ -7,7 +7,7 @@ ha_category:
ha_codeowners:
- '@home-assistant/core'
ha_domain: homeassistant_alerts
ha_integration_type: integration
ha_integration_type: system
ha_quality_scale: internal
---

View File

@ -23,7 +23,7 @@ ha_platforms:
- sensor
- switch
ha_zeroconf: true
ha_integration_type: integration
ha_integration_type: hub
---
The Philips Hue integration allows you to control and monitor the lights and sensors connected to your Hue bridge.

View File

@ -5,6 +5,7 @@ ha_category:
- Button
- Cover
- Scene
- Select
- Sensor
ha_release: 0.15
ha_domain: hunterdouglas_powerview
@ -20,6 +21,7 @@ ha_platforms:
- cover
- diagnostics
- scene
- select
- sensor
ha_zeroconf: true
ha_dhcp: true
@ -33,6 +35,7 @@ There is currently support for the following device types within Home Assistant:
- Button
- Cover
- Scene
- Select
- Sensor
<div class="note">
@ -53,40 +56,35 @@ If your shade is not listed please raise a feature request on the community foru
| Name (Type) | Capabilities |
| :---------------------------------------- | :------------------------------ |
| Roman (4) | Bottom Up |
| Bottom Up (5) | Bottom Up |
| Duette (6) | Bottom Up |
| Duette, Top Down Bottom Up (8) | Top Down, Bottom Up |
| Duette DuoLite, Top Down Bottom Up (9) | Top Down, Bottom Up |
| Silhouette (18) | 90° Tilt when closed |
| Silhouette (23) | 90° Tilt when closed |
| Duette Architella, Top Down Bottom Up (9) | Top Down, Bottom Up |
| M25T Roller Blind (42) | Bottom Up |
| Facette (43) | 90° Tilt when closed |
| Twist (44) | 180° Tilt when closed |
| Pleated, Top Down Bottom Up (47) | Top Down, Bottom Up |
| AC Roller (49) | Bottom Up |
### Devices with limited functionality
<div class="note">
These devices are currently still being tested. We ask you wait patiently while this completes. Until this is completed these may perform basic or slightly odd functionality.
</div>
| Name (Type) | Capabilities |
| :---------------------------------------- | :------------------------------ |
| Bottom Up (5) | Bottom Up |
| Curtain, Left Stack (69) | Vertical |
| Curtain, Right Stack (70) | Vertical |
| Curtain, Split Stack (71) | Vertical |
| Facette (43) | Bottom Up TiltOnClosed 90° |
| Duette (6) | Bottom Up |
| Duette, Top Down Bottom Up (8) | Top Down Bottom Up |
| Duette Architella, Top Down Bottom Up (9) | Top Down Bottom Up |
| Duette DuoLite, Top Down Bottom Up (9) | Top Down Bottom Up |
| Duolite Lift (79) | Dual Shade Overlapped |
| M25T Roller Blind (42) | Bottom Up |
| Palm Beach Shutters (66) | Tilt Only 180° |
| Pirouette (18) | Bottom Up TiltOnClosed 90° |
| Pleated, Top Down Bottom Up (47) | Top Down Bottom Up |
| Roman (4) | Bottom Up |
| Silhouette (23) | Bottom Up TiltOnClosed 90° |
| Silhouette Duolite (38) | Dual Shade Overlapped Tilt 90° |
| Skyline Panel, Left Stack (26) | Vertical |
| Skyline Panel, Right Stack (27) | Vertical |
| Skyline Panel, Split Stack (28) | Vertical |
| Top Down (7) | Top Down |
| Silhouette Duolite (38) | Dual Shade Blackout + 90° Tilt |
| Venetian, Tilt Anywhere (51) | 180° Tilt Anywhere |
| Vertical Slats, Left Stack (54) | 180° Tilt when closed, Vertical |
| Vertical Slats, Right Stack (55) | 180° Tilt when closed, Vertical |
| Vertical Slats, Split Stack (56) | 180° Tilt when closed, Vertical |
| Venetian, Tilt Anywhere (62) | 180° Tilt Anywhere, Vertical |
| Vignette Duolite (65) | Dual Shade Blackout |
| Curtain, Left Stack (69) | 180° Tilt when closed, Vertical |
| Curtain, Right Stack (70) | 180° Tilt when closed, Vertical |
| Curtain, Split Stack (71) | 180° Tilt when closed, Vertical |
| Duolite Lift (79) | Dual Shade Blackout 90° Tilt |
| Twist (44) | Bottom Up TiltOnClosed 180° |
| Venetian, Tilt Anywhere (51) | Bottom Up TiltAnywhere 180° |
| Venetian, Tilt Anywhere (62) | Bottom Up TiltAnywhere 180° |
| Vertical Slats, Left Stack (54) | Vertical TiltAnywhere 180° |
| Vertical Slats, Right Stack (55) | Vertical TiltAnywhere 180° |
| Vertical Slats, Split Stack (56) | Vertical TiltAnywhere 180° |
| Vignette Duolite (65) | Dual Shade Overlapped |
## Capabilities Information
@ -96,14 +94,13 @@ These shades offer only the simple up/down movement of your conventional shades.
### Top Down
<div class="note">Full functionality not currently implemented</div>
These shades offer a unique movement that is inverse to your conventional shade, where the shade is fixed to the floor and lowered from the roof.
### Top Down, Bottom Up (TDBU)
### Top Down Bottom Up(TDBU)
TDBU shades consist of two rails controlled by two motors designated by Top and Bottom with fabric in between.
The Top and Bottom can move independently to cover different parts of the window but cannot pass the other.
Two different entities that will be created for each blind: Top and Bottom.
#### Top entity
@ -126,15 +123,35 @@ Shades with Tilt when closed functionality only allow a shade to tilt when it is
### Tilt Anywhere
<div class="note">Full functionality not currently implemented</div>
These shades can tilt in any position and do not require the shade to be open or closed to adjust the tilt position.
### Dual Shade Blackout
### Dual Shade Overlapped
<div class="note">Full functionality not currently implemented</div>
These shades consist of two pieces of fabric attached to a single rail. The front shade is sheer, with the rear being opaque, and neither panel can move independently from the other.
These shades consist of two pieces of fabric attached to a single rail. The front shade is sheer, with the rear being blackout, and neither panel can move independently from the other.
Three different entities that will be created for each blind: Front, Rear and Combined.
#### Front entity
- 'Up/Open' will move the front shade to the ceiling
- 'Down/Close' will move the front shade to the floor
- As the positioning of the front requires the rear opaque to be fully opened any move will force the rear shade to be opened
#### Rear entity
- 'Up/Open' will move the rear shade to the ceiling
- 'Down/Close' will move the rear shade to the floor
- As the positioning of the rear requires the front sheer to be fully closed any move will force the front shade to be closed
#### Combined entity
- 'Up/Open' will move the front and rear shades to the ceiling
- 'Down/Close' will move the front and rear shades to the floor
- This entity combines movement for two entities in one
- 0-50 represents the rear shade
- 51-100 represents the front shade
- Tilt functionality will also be present on this entity for shades that support tilt
- When Tilted the front sheer needs to be fully closed, this will happen automatically
## Buttons
@ -146,6 +163,16 @@ Initiate a calibration of the shade position. Calibration is a common requiremen
Identify will 'jog' the shade position as a diagnostic tool to ensure the shade you are trying to move is both the intended shade and communicating correctly.
### Favorite
Move the shade to the favorite position as programmed physically on the device. This will perform the same move as the heart on the pebble remote.
## Selection Entities
### Power Source
Set the type for connected power source. Available options are Hardwired Power Supply, Battery Wand and Rechargeable Battery
## Example Automations
### Calling a Powerview Scene

View File

@ -4,18 +4,18 @@ description: Connect and control your Hurrican Shutters Wholesale devices using
ha_category:
- Cover
ha_domain: hurrican_shutters_wholesale
ha_integration_type: virtual
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
ha_codeowners:
- '@starkillerOG'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- cover
- sensor
ha_iot_class: Local Push
ha_dhcp: true
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
---
{% include integrations/supported_brand.md %}

View File

@ -61,9 +61,11 @@ To get the Estimated distance sensor to work, in most cases, it has to be calibr
## Known working devices
- [Blue Charm Beacons BC-U1-USB-Powered-MultiBeacon](https://bluecharmbeacons.com/product/bluetooth-ble-ibeacon-bc-u1-multibeacon-usb-powered/)
- [Blue Charm Beacons BC011-MultiBeacon](https://bluecharmbeacons.com/product/bluetooth-ble-multi-beacon-bc011/)
- [Blue Charm Beacons BC021-MultiBeacon](https://bluecharmbeacons.com/product/bluetooth-ble-ibeacon-bc021-multibeacon-with-button-trigger-and-motion-sensor/)
- [Blue Charm Beacons BC-U1-USB-Powered-MultiBeacon](https://bluecharmbeacons.com/product/bluetooth-ble-ibeacon-bc-u1-multibeacon-usb-powered/)
- [Blue Charm Beacons BC037G-GeoPattern-iBeacon](https://bluecharmbeacons.com/product/blue-charm-bc037-ibeacon/)
- [Blue Charm Beacons BC037S-SmoothPattern-iBeacon](https://bluecharmbeacons.com/product/bluetooth-ble-ibeacon-bc037s-ibeacon/)
- [Blue Charm Beacons BC08-MultiBeacon](https://bluecharmbeacons.com/product/blue-charm-beacons-bluetooth-ble-ibeacon-bc08-multibeacon-w-motion-sensor-and-button-trigger-ble-5-0/)
- Blue Charm Beacons BC037G-GeoPattern-iBeacon (discontinued)
- Blue Charm Beacons BC037S-SmoothPattern-iBeacon (discontinued)

View File

@ -0,0 +1,21 @@
---
title: Inspired Shades
description: Connect and control your Inspired Shades devices using the Motion Blinds integration
ha_category:
- Cover
ha_domain: inspired_shades
ha_integration_type: virtual
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
ha_codeowners:
- '@starkillerOG'
ha_config_flow: true
ha_platforms:
- cover
- sensor
ha_iot_class: Local Push
ha_dhcp: true
---
{% include integrations/supported_brand.md %}

View File

@ -5,6 +5,7 @@ ha_category:
- Binary Sensor
- Climate
- Fan
- Number
- Sensor
- Switch
ha_iot_class: Local Polling
@ -17,6 +18,7 @@ ha_platforms:
- binary_sensor
- climate
- fan
- number
- sensor
- switch
ha_dhcp: true
@ -49,8 +51,11 @@ The following controllable entities are available:
- **Thermostat** - This entity will be present if your unit has thermostatic control.
### Sensor Types
### Number
The integration uses a Number entity to control flame height. Valid flame height vales are `1-5`.
### Sensor Types
The following sensors are available as either a **Binary Sensor** when dealing with on/off.
@ -63,7 +68,7 @@ The following sensors are available as either a **Binary Sensor** when dealing w
### Sensor
- **Flame Height**: Numerical indicator of flame height, where `0` is the lowest setting.
- **Flame Height**: Numerical indicator of flame height, where `1` is the lowest setting and `5` is the highest setting.
- **Temperature**: Current ambient temperature as read by the fireplace remote.
- **Target Temperature**: If the thermostat is engaged this is the target temperature the fireplace will try to reach, as measured by the remote.
- **Fan Speed**: Numerical indicator of fan speed.

View File

@ -12,7 +12,7 @@ ha_domain: iqvia
ha_platforms:
- diagnostics
- sensor
ha_integration_type: integration
ha_integration_type: service
---
The `iqvia` sensor platform collects and displays allergy, asthma and disease

View File

@ -18,11 +18,21 @@ The Islamic Prayer Times (`islamic_prayer_times`) integration displays the vario
This platform calculates prayer times using the following calculation methods:
- University of Islamic Sciences in Karachi
- Shia Ithna-Ansari
- Islamic Society of North America
- University of Islamic Sciences, Karachi
- Muslim World League
- Umm Al-Qura University in Makkah
- Moonsighting
- Umm Al-Qura University, Makkah
- Egyptian General Authority of Survey
- Institute of Geophysics, University of Tehran
- Gulf Region
- Kuwait
- Qatar
- Majlis Ugama Islam Singapura, Singapore
- Union Organization islamic de France
- Diyanet İşleri Başkanlığı, Turkiye
- Spiritual Administration of Muslims of Russia
- Moonsighting Committee Worldwide
{% include integrations/config_flow.md %}

View File

@ -4,18 +4,18 @@ description: Connect and control your iSmartWindow devices using the Motion Blin
ha_category:
- Cover
ha_domain: ismartwindow
ha_integration_type: virtual
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
ha_codeowners:
- '@starkillerOG'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- cover
- sensor
ha_iot_class: Local Push
ha_dhcp: true
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motion Blinds
ha_release: 2020.12
---
{% include integrations/supported_brand.md %}

View File

@ -11,7 +11,7 @@ ha_platforms:
ha_codeowners:
- '@DurgNomis-drol'
ha_config_flow: true
ha_integration_type: integration
ha_integration_type: service
---
The International Space Station (ISS) integration uses the

View File

@ -29,7 +29,7 @@ ha_platforms:
- sensor
- switch
ha_dhcp: true
ha_integration_type: integration
ha_integration_type: hub
---
The ISY994 is a home automation controller that is capable of controlling Insteon and X10 devices. Some models of the ISY994 can even control Z-Wave devices.

View File

@ -2,14 +2,21 @@
title: Jellyfin
description: Instructions on how to integrate the Jellyfin integration into Home Assistant.
ha_category:
- Media Player
- Media Source
- Sensor
ha_release: '2021.12'
ha_iot_class: Local Polling
ha_codeowners:
- '@j-stienstra'
- '@ctalkington'
ha_config_flow: true
ha_domain: jellyfin
ha_integration_type: integration
ha_platforms:
- diagnostics
- media_player
- sensor
ha_integration_type: service
---
The Jellyfin integration exposes a [Jellyfin](https://jellyfin.org/) server as a Media Source in Home Assistant.

View File

@ -40,7 +40,7 @@ ha_platforms:
- switch
- weather
ha_config_flow: true
ha_integration_type: integration
ha_integration_type: hub
---
The [KNX](https://www.knx.org) integration for Home Assistant allows you to connect to KNX/IP devices.
@ -1661,6 +1661,10 @@ entity_category:
required: false
type: string
default: None
device_class:
description: Sets the [class of the device](/integrations/switch/), changing the device state and icon that is displayed on the frontend.
required: false
type: string
{% endconfiguration %}
The optional `state_address` can be used to inform Home Assistant about state changes not triggered by a telegram to the `address` e.g., if you configure a timer on a channel. If a KNX message is seen on the bus addressed to the given state address, this will overwrite the state of the switch object.

View File

@ -5,26 +5,119 @@ ha_category:
- Button
- Notifications
- Number
- Select
- Sensor
- Switch
ha_iot_class: Local Polling
ha_release: 0.49
ha_codeowners:
- '@robbiet480'
- '@frenck'
- '@bachya'
ha_domain: lametric
ha_platforms:
- button
- diagnostics
- notify
- number
ha_integration_type: integration
- select
- sensor
- switch
ha_integration_type: device
ha_config_flow: true
ha_ssdp: true
ha_dhcp: true
ha_quality_scale: platinum
---
[LaMetric TIME](https://lametric.com/) is a smart clock that can be used to access applications, listen to web radio and display notifications.
{% include integrations/config_flow.md %}
## Services
The LaMetric integration provides services to interact with your LaMetric
device(s). Those service can be called in, for example, automations.
### Service `lametric.chart`
The {% my developer_call_service service="lametric.chart" title="`lametric.chart`" %}
service allows you to display a little chart to your LaMetric.
{% my developer_call_service badge service="lametric.chart" %}
{% configuration "lametric.chart" %}
device_id:
description: The ID of the device to send the message to.
required: true
type: string
data:
description: The data points in the chart, as a list of numbers. For example `[1, 2, 3, 2, 1]`.
required: true
type: list
cycles:
description: "Defines how long the notification will be displayed. Set to `0` to require manual dismissal."
required: false
type: integer
default: 1
priority:
description: "Defines the priority of the notification. Allowed values are `info`, `warning`, and `critical`."
required: false
type: string
default: info
icon_type:
description: "Defines the nature of notification. Allowed values are `none`, `info`, and `alert`."
required: false
type: string
default: none
sound:
description: "Defines the sound of the notification. Allowed are listed [below](#list-of-notification-sounds)."
required: false
type: string
{% endconfiguration %}
### Service `lametric.message`
The {% my developer_call_service service="lametric.message" title="`lametric.message`" %}
service allows you to send a message to your LaMetric. These
messages can be enrichted with icons and sounds.
{% my developer_call_service badge service="lametric.message" %}
{% configuration "lametric.message" %}
device_id:
description: The ID of the device to send the message to.
required: true
type: string
message:
description: The message to send to the LaMetric device.
required: true
type: string
icon:
description: "An icon or animation. List of all icons available at [https://developer.lametric.com/icons](https://developer.lametric.com/icons)."
required: false
type: string
cycles:
description: "Defines how long the notification will be displayed. Set to `0` to require manual dismissal."
required: false
type: integer
default: 1
priority:
description: "Defines the priority of the notification. Allowed values are `info`, `warning`, and `critical`."
required: false
type: string
default: info
icon_type:
description: "Defines the nature of notification. Allowed values are `none`, `info`, and `alert`."
required: false
type: string
default: none
sound:
description: "Defines the sound of the notification. Allowed are listed [below](#list-of-notification-sounds)."
required: false
type: string
{% endconfiguration %}
## Notifications
You can send notifications to your LaMetric device using
@ -38,7 +131,7 @@ called "My LaMetric", the service would become `notify.my_lametric`.
The notification service call against an LaMetric device can take the
following, additional, optional parameters:
{% configuration %}
{% configuration "notification" %}
icon:
description: "An icon or animation. List of all icons available at [https://developer.lametric.com/icons](https://developer.lametric.com/icons)."
required: false

View File

@ -13,7 +13,7 @@ ha_platforms:
- diagnostics
- sensor
ha_config_flow: true
ha_integration_type: integration
ha_integration_type: service
---
The `launch_library` sensor will provide you with information about the next planned space launch and SpaceX Starship event.

View File

@ -13,9 +13,12 @@ ha_category:
- Switch
- Weather
ha_domain: legrand
ha_integration_type: virtual
ha_supporting_domain: netatmo
ha_supporting_integration: Netatmo
ha_release: '0.20'
ha_codeowners:
- '@cgtobi'
ha_integration_type: integration
ha_config_flow: true
ha_platforms:
- camera
@ -28,9 +31,6 @@ ha_platforms:
- switch
ha_iot_class: Cloud Polling
ha_homekit: true
ha_supporting_domain: netatmo
ha_supporting_integration: Netatmo
ha_release: '0.20'
---
{% include integrations/supported_brand.md %}

View File

@ -12,8 +12,10 @@ ha_homekit: true
ha_platforms:
- binary_sensor
- button
- diagnostics
- light
- select
- sensor
ha_integration_type: integration
ha_codeowners:
- '@bdraco'
@ -66,6 +68,28 @@ To determine whether or not a HEV cycle is currently running, Home Assistant exp
| `power` | Start a HEV cycle (`True`) or stop a cycle (`False`).
| `duration` | Duration (in seconds) for the HEV cycle. The default duration of two hours (7200 seconds) is used if this attribute is omitted.
## Sensors
The following sensors are available depending on the LIFX model:
| Sensor | Description |
| ------ | ----------- |
| Clean cycle | Indicates whether a HEV cycle is currently active on a LIFX Clean bulb |
| Infrared brightness | Controls the infrared brightness amount on a LIFX Nightvision bulb |
| RSSI | Indicates the current WiFi signal strength on any LIFX bulb (disabled by default) |
Note that these sensors are only updated every 30 seconds and may not reflect the current state if changes are made externally to Home Assistant.
## Themes
Home Assistant provides a collection of predefined themes for LIFX multizone lights, each designed to mimic the theme of the same name from the LIFX smartphone app.
To apply a theme interactively, use the theme selection drop-down box found on the device configuration screen.
To apply a theme as part of an automation, use the `select.select_option` service call. You can also apply a theme when calling the `lifx.effect_move` service. See the **Light effects** section below for more details, including how to set a custom theme for that effect.
The following themes are available: `autumn`, `blissful`, `cheerful`, `dream`, `energizing`, `epic`, `exciting`, `focusing`, `halloween`, `hanukkah`, `holly`, `independence_day`, `intense`, `mellow`, `peaceful`, `powerful`, `relaxing`, `santa`, `serene`, `soothing`, `sports`, `spring`, `tranquil`, `warming`.
## Light effects
The LIFX platform supports several software-controlled light effects and one hardware based effect. You can start these effects with default options by using the `effect` attribute of the normal [`light.turn_on`](/integrations/light/#service-lightturn_on) service, for example like this:
@ -100,13 +124,17 @@ script:
         change: 35
```
The `lifx.effect_move` effect is hardware effect that is only available on LIFX multizone devices like the LIFX Z, Lightstrip or Beam. Note that if all the LEDs of the multizone device are set to the same color, the effect will not be visible. The effect can be stopped and started regardless of the power state of the device, but the default is to turn the device on when starting the effect. Set the `power_on` attribute of the `lifx.effect_move` service to `false` to override the default.
### Hardware effects
The Flame (`lifx_effect_flame`), Morph (`lifx.effect_morph`) and Move (`lifx.effect_move`) effects are hardware-based and only work on specific LIFX devices. Flame and Morph are available on the LIFX Tile and Candle, while the Move effect requires a LIFX Z, Lightstrip, or Beam.
All hardware-based effects can be stopped and started regardless of the device's power state, but the default behavior for each service is to turn the device on when starting an effect. Set the `power_on` attribute of the service to `false` to override this default.
All the available light effects and their options are listed below.
### Service `lifx.effect_pulse`
Run a flash effect by changing to a color and then back.
Run a software-based flash effect by changing to a color and then back.
| Service data attribute | Description |
| ---------------------- | ----------- |
@ -121,7 +149,7 @@ Run a flash effect by changing to a color and then back.
### Service `lifx.effect_colorloop`
Run an effect with colors looping around the color wheel. All participating lights will coordinate to keep similar (but not identical) colors.
Run a software-based effect that continuously loops colors around the color wheel. All participating lights will coordinate to keep similar (but not identical) colors.
| Service data attribute | Description |
| ---------------------- | ----------- |
@ -133,9 +161,35 @@ Run an effect with colors looping around the color wheel. All participating ligh
| `spread` | Maximum color difference between participating lights, in degrees on a color wheel (ranges from 0 to 359).
| `power_on` | Set this to False to skip the effect on lights that are turned off (defaults to True).
### Service `lifx.effect_flame`
Run a hardware-based effect on LIFX matrix devices that creates a flame effect on the device. The device will be powered on by default, but this can be overridden by setting `power_on` to `false`. The `speed` attribute controls the speed of the flames.
| Service data attribute | Description |
| ---------------------- | ----------- |
| `entity_id` | String or list of strings that point at `entity_id`s of matrix lights.
| `speed` | Duration in seconds for the effect to travel the length of the device (min: 1s, max: 25s)
| `power_on` | Whether to turn the light on before starting the effect (optional, default: true)
### Service `lifx.effect_morph`
Run a hardware-based effect on LIFX matrix devices that animates blobs of colors across the device. The `speed` attribute controls the speed of the movement.
You must provide a `palette` or `theme` to use for the effect, but not both. The `palette` attribute allows you to select the colors used by the effect, while the `theme` attribute allows you to select one of the pre-configured themes which match those found in the LIFX smartphone app.
The device will be powered on by default, but this can be overridden by setting `power_on` to `false`.
| Service data attribute | Description |
| ---------------------- | ----------- |
| `entity_id` | String or list of strings that point at `entity_id`s of matrix lights.
| `speed` | Duration in seconds for the effect to travel the length of the device (min: 1s, max: 25s)
| `palette` | A list of at least 2 and at most 16 HSBK values to use for this effect.
| `theme` | The theme to use for the effect. Must be one of: `autumn`, `blissful`, `cheerful`, `dream`, `energizing`, `epic`, `exciting`, `focusing`, `halloween`, `hanukkah`, `holly`, `independence` `day`, `intense`, `mellow`, `peaceful`, `powerful`, `relaxing`, `santa`, `serene`, `soothing`, `sports`, `spring`, `tranquil`, `warming`.
| `power_on` | Whether to turn the light on before starting the effect (optional, default: true)
### Service `lifx.effect_move`
A harware-based effect available on LIFX multizone devices that creates a movement animation of the colors currently set on the device. The direction and speed of the animation are controlled by the `speed` and `direction` attributes. You can change the colors of the effect while it is running using the `lifx.set_state` service.
Run a hardware-based effect on LIFX multizone devices that move the current colors on the device in a particular direction. The direction and speed of the animation are controlled by the `speed` and `direction` attributes. You can change the effect's colors while running using the `lifx.set_state` service.
The effect will not be visible if all LEDs on the device are set to the same color and is ignored by unsupported devices.
@ -144,6 +198,7 @@ The effect will not be visible if all LEDs on the device are set to the same col
| `entity_id` | String or list of strings that point at `entity_id`s of multizone lights.
| `speed` | Duration in seconds for the effect to travel the length of the device (min: 0.1s, max: 60s)
| `direction` | The direction in which the effect will travel, either "right" or "left" (default: right)
| `theme` | The name of a pre-defined theme to apply to the multizone device before starting the effect.
| `power_on` | Whether to turn the light on before starting the effect (optional, default: true)
### Service `lifx.effect_stop`

View File

@ -79,7 +79,6 @@ where **namespace** is the *<component_namespace>* currently logging.
description: Default log level. See [log_level](#log-levels).
required: false
type: string
default: debug
logs:
description: List of integrations and their log level.
required: false

View File

@ -15,7 +15,7 @@ ha_domain: luftdaten
ha_platforms:
- diagnostics
- sensor
ha_integration_type: integration
ha_integration_type: device
---
The Sensor.Communtiy integration will query the open data API of [Sensor.Community](https://sensor.community) to monitor air quality and other weather data from a specific (self build) sensor station.

Some files were not shown because too many files have changed in this diff Show More