Merge pull request #14235 from home-assistant/rc

This commit is contained in:
Franck Nijhof 2020-08-12 12:57:46 +02:00 committed by GitHub
commit 7f870730fb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
63 changed files with 2026 additions and 502 deletions

View File

@ -214,7 +214,6 @@ source/_integrations/lametric.markdown @robbiet480
source/_integrations/launch_library.markdown @ludeeus
source/_integrations/lcn.markdown @alengwenus
source/_integrations/life360.markdown @pnbruckner
source/_integrations/linky.markdown @Quentame
source/_integrations/linux_battery.markdown @fabaff
source/_integrations/local_ip.markdown @issacg
source/_integrations/logger.markdown @home-assistant/core

View File

@ -100,9 +100,9 @@ social:
# Home Assistant release details
current_major_version: 0
current_minor_version: 113
current_patch_version: 3
date_released: 2020-08-01
current_minor_version: 114
current_patch_version: 0
date_released: 2020-08-12
# 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

@ -5,6 +5,8 @@ description: "Steps to help you get automation setup in Home Assistant."
Home Assistant offers a wide range of automation configurations. In this section, we'll try to guide you through all the different possibilities and options. Besides this documentation, there are also a couple of people who have made their automations [publicly available](/cookbook/#example-configurationyaml).
Please see [Automation Integration](/integrations/automation/) for configuration options and services.
### Automation basics
Before you can go ahead and create your own automations, it's important to learn the basics. To explore these, let's have a look at the following example home automation rule:
@ -40,55 +42,3 @@ Automation rules interact directly with the internal state of Home Assistant, so
State changes can be used as the source of triggers and the current state can be used in conditions.
Actions are all about calling services. To explore the available services open the <img src='/images/screenshots/developer-tool-services-icon.png' class='no-shadow' height='38' /> Services developer tool. Services allow to change anything. For example turn on a light, run a script or enable a scene. Each service has a domain and a name. For example the service `light.turn_on` is capable of turning on any light in your system. Services can be passed parameters to for example tell which device to turn on or what color to use.
### Automation initial state
When you create a new automation, it will be enabled unless you explicitly add `initial_state: false` to it or turn it off manually via UI/another automation/developer tools. In case automations need to be always enabled or disabled when Home Assistant starts, then you can set the `initial_state` in your automations. Otherwise, the previous state will be restored.
Please note that if for some reason Home Assistant cannot restore the previous state, it will result in the automation being enabled.
```yaml
automation:
- alias: Automation Name
initial_state: false
trigger:
...
```
### Automation Modes
The automation's `mode` configuration option controls what happens when the automation is triggered while the actions are still running from a previous trigger.
Mode | Description
-|-
`single` | (Default) Do not start a new run. Issue a warning.
`restart` | Start a new run after first stopping previous run.
`queued` | Start a new run after all previous runs complete. Runs are guaranteed to execute in the order they were queued.
`parallel` | Start a new, independent run in parallel with previous runs.
<p class='img'>
<img src='/images/integrations/script/script_modes.jpg'>
</p>
For both `queued` and `parallel` modes, configuration option `max` controls the maximum
number of runs that can be executing and/or queued up at a time. The default is 10.
#### Example Setting Automation Mode
```yaml
automation:
- trigger:
- ...
mode: queued
max: 25
action:
- ...
```
### Deleting Automations
When automations remain visible in the Home Assistant Dashboard, even after having deleted in the YAML file, you have to delete them in the UI.
To delete them completely, go to UI **Configuration** -> **Entities** and find the automation in the search field or by scrolling down.
Check the square box aside of the automation you wish to delete and from the top-right of your screen, select 'REMOVE SELECTED'.

View File

@ -313,6 +313,17 @@ automation:
at: "15:32:00"
```
Or at multiple specific times:
```yaml
automation:
trigger:
platform: time
at:
- "15:32:00"
- "20:30:00"
```
### Time pattern trigger
With the time pattern trigger, you can match if the hour, minute or second of the current time matches a specific value. You can prefix the value with a `/` to match whenever the value is divisible by that number. You can specify `*` to match any value (when using the web interface this is required, the fields cannot be left empty).

View File

@ -27,7 +27,7 @@ There is currently support for the following device types within Home Assistant:
- **Alarm Control Panel**: Reports on the current alarm status and can be used to arm and disarm the system.
- **Binary Sensor**: Reports on `Quick Actions`, `Door Contacts`, `Connectivity` sensors (remotes, keypads, and status indicators), `Moisture` sensors, and `Motion` or `Occupancy` sensors.
- **Camera**: Reports on `Camera` devices and will download and show the latest captured still image.
- **Camera**: Reports on `Camera` devices and will download and show the latest captured still image. Can be turned off and on using the [`camera.turn_off`](/integrations/camera/#service-turn_off) and [`camera.turn_on`](/integrations/camera/#service-turn_on) services.
- **Cover**: Reports on `Secure Barriers` and can be used to open and close the cover.
- **Lock**: Reports on `Door Locks` and can be used to lock and unlock the door.
- **Light**: Reports on `Dimmer` lights and can be used to dim or turn the light on and off.
@ -78,7 +78,6 @@ They are grouped into the below events:
- **abode_test**: Fired when a sensor is in test mode.
- **abode_capture**: Fired when an image is captured.
- **abode_device**: Fired for device changes/additions/deletions.
- **abode_automation_edit**: Fired for changes to automations.
All events have the fields:

View File

@ -0,0 +1,28 @@
---
title: AccuWeather
description: Instructions on how to integrate Accuweather within Home Assistant.
ha_category:
- Weather
ha_release: 0.114
ha_iot_class: Cloud Polling
ha_config_flow: true
ha_codeowners:
- '@bieniu'
ha_domain: accuweather
---
The `accuweather` integration uses the [AccuWeather](https://accuweather.com/) web service as a source for weather data for your location.
## Setup
To generate an AccuWeather API key, go to [AccuWeather APIs](https://developer.accuweather.com/) page, register and create application with product **Limited Trial**.
## Configuration
To add AccuWeather to your installation, go to **Configuration** >> **Integrations** in the UI, click the button with `+` sign and from the list of integrations select **AccuWeather**. By default, the values will be taken from the Home Assistant configuration. Weather forecast is not enabled by default. You can enable it in the integration options.
<div class="note warning">
Due to limitations of the terms of use of AccuWeather free API key, it is possible to configure only one integration instance.
</div>

View File

@ -72,6 +72,10 @@ panels:
required: false
type: string
default: Template Alarm Control Panel
unique_id:
description: An ID that uniquely identifies this alarm control panel. Set this to an unique value to allow customisation trough the UI.
required: false
type: string
value_template:
description: "Defines a template to set the state of the alarm panel. Only the states `armed_away`, `armed_home`, `armed_night`, `disarmed`, `pending`, `triggered` and `unavailable` are used."
required: false

View File

@ -129,6 +129,7 @@ zones:
There are several attributes available on the alarm panel to give you more information about your alarm.
- `ac_power`: Set to `true` if your system has AC power supplying it.
- `alarm_event_occurred`: Set to `true` if your system was recently triggered. When `alarm_event_occurred` is `true`, it must be cleared by entering your code + 1 (or calling the `alarm_control_panel.alarm_disarm` service) before attempting to arm your alarm.
- `backlight_on`: Set to `true` if your keypad's backlight is on.
- `battery_low`: Set to `true` if your system's back-up battery is low.
- `check_zone`: Set to `true` if your system detects a problem with a zone.

View File

@ -10,25 +10,13 @@ ha_codeowners:
ha_domain: automation
---
Please see the [automation section](/docs/automation/) for in-depth
Please see [Automating Home Assistant](/docs/automation/) for in-depth
documentation on how to use the automation integration.
<p class='img'>
<img src='{{site_root}}/images/screenshots/automation-switches.png' />
</p>
You can also use `initial_state: 'false'` so that the automation
is not automatically turned on after a Home Assistant reboot.
```yaml
automation:
- alias: Door alarm
initial_state: true
trigger:
- platform: state
...
```
## Configuration
This integration is by default enabled, unless you've disabled or removed the [`default_config:`](https://www.home-assistant.io/integrations/default_config/) line from your configuration. If that is the case, the following example shows you how to enable this integration manually:
@ -37,3 +25,86 @@ This integration is by default enabled, unless you've disabled or removed the [`
# Example configuration.yaml entry
automation:
```
### Automation initial state
When you create a new automation, it will be enabled unless you explicitly add `initial_state: false` to it or turn it off manually via UI/another automation/developer tools. In case automations need to be always enabled or disabled when Home Assistant starts, then you can set the `initial_state` in your automations. Otherwise, the previous state will be restored.
Please note that if for some reason Home Assistant cannot restore the previous state, it will result in the automation being enabled.
```yaml
automation:
- alias: Automation Name
initial_state: false
trigger:
...
```
### Automation Modes
The automation's `mode` configuration option controls what happens when the automation is triggered while the actions are still running from a previous trigger.
Mode | Description
-|-
`single` | (Default) Do not start a new run. Issue a warning.
`restart` | Start a new run after first stopping previous run.
`queued` | Start a new run after all previous runs complete. Runs are guaranteed to execute in the order they were queued.
`parallel` | Start a new, independent run in parallel with previous runs.
<p class='img'>
<img src='/images/integrations/script/script_modes.jpg'>
</p>
For both `queued` and `parallel` modes, configuration option `max` controls the maximum
number of runs that can be executing and/or queued up at a time. The default is 10.
#### Example Setting Automation Mode
```yaml
automation:
- trigger:
- ...
mode: queued
max: 25
action:
- ...
```
### Deleting Automations
When automations remain visible in the Home Assistant Dashboard, even after having deleted in the YAML file, you have to delete them in the UI.
To delete them completely, go to UI **Configuration** -> **Entities** and find the automation in the search field or by scrolling down.
Check the square box aside of the automation you wish to delete and from the top-right of your screen, select 'REMOVE SELECTED'.
## Services
### `automation.turn_on`
This service enables the automation's triggers.
Service data attribute | Optional | Description
-|-|-
`entity_id` | no | Entity ID of automation to turn on. Can be a list. `none` or `all` are also accepted.
### `automation.turn_off`
This service disables the automation's triggers, and optionally stops any currently active actions.
Service data attribute | Optional | Description
-|-|-
`entity_id` | no | Entity ID of automation to turn on. Can be a list. `none` or `all` are also accepted.
`stop_actions` | yes | Stop any currently active actions (defaults to true.)
### `automation.toggle`
This service enables the automation's triggers if they were disabled, or disables the automation's triggers, and stops any currently active actions, if the triggers were enabled.
Service data attribute | Optional | Description
-|-|-
`entity_id` | no | Entity ID of automation to turn on. Can be a list. `none` or `all` are also accepted.
### `automation.reload`
This service reloads all automations, stopping any currently active actions in all of them.

View File

@ -0,0 +1,29 @@
---
title: Azure DevOps
description: Instructions on how to integrate Azure DevOps with Home Assistant.
ha_category:
- Sensor
ha_release: 0.114
ha_iot_class: Cloud Polling
ha_config_flow: true
ha_codeowners:
- '@timmo001'
ha_domain: azure_devops
---
The `azure_devops` integration allows you to control and monitor your
Azure DevOps instance in Home Assistant.
## Configuration
Menu: **Configuration** -> **Integrations**.
Click on the `+` sign to add an integration and click on **Azure DevOps**.
After completing the configuration flow, the Azure DevOps
integration will be available.
## Sensors
This integration provides a sensor for Azure DevOps:
- Latest build - This includes attributes with additional info about the build.

View File

@ -51,6 +51,10 @@ sensors:
description: A list of entity IDs so the sensor only reacts to state changes of these entities. This can be used if the automatic analysis fails to find all relevant entities.
required: false
type: [string, list]
unique_id:
description: An ID that uniquely identifies this binary sensor. Set this to an unique value to allow customisation trough the UI.
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

View File

@ -31,32 +31,7 @@ The preferred method for setting this up is by using the configuration flow. Go
Your integration will then set up. Given that setup is asynchronous, you may see your sensors before they have finished extracting data from the Blink servers. After a few minutes (at most) this information should populate.
Existing YAML will be converted to this flow but will be removed in a future version. This is due to Blink's migration to 2FA which is rolling out this year, and which YAML cannot support.
If you'd like to continue using YAML until it is fully removed, you can use the following example:
```yaml
# Example configuration.yaml entry
blink:
username: YOUR_USERNAME
password: YOUR_PASSWORD
```
{% configuration %}
username:
description: The username for accessing your Blink account.
required: true
type: string
password:
description: The password for accessing your Blink account.
required: true
type: string
scan_interval:
description: How frequently to query for new data. Defaults to 300 seconds (5 minutes).
required: false
type: integer
{% endconfiguration %}
Once Home Assistant starts and you authenticate access, the `blink` integration will create the following platforms:
Once Home Assistant starts and you authenticate access, the `blink` integration will create the following platforms (note: Blink Mini cameras do not currently support any of the sensors, nor the battery status binary sensor):
- An `alarm_control_panel` to arm/disarm the whole blink system (note, `alarm_arm_home` is not implemented and will not actually do anything, despite it being an option in the GUI).
- A `camera` for each camera linked to your Blink sync module.
@ -65,17 +40,7 @@ Once Home Assistant starts and you authenticate access, the `blink` integration
Since the cameras are battery operated, setting the `scan_interval` must be done with care so as to not drain the battery too quickly, or hammer Blink's servers with too many API requests. The cameras can be manually updated via the `trigger_camera` service which will ignore the throttling caused by `scan_interval`. As a note, all of the camera-specific sensors are only polled when a new image is requested from the camera. This means that relying on any of these sensors to provide timely and accurate data is not recommended.
Please note that each camera reports two different states: one as `sensor.blink_<camera_name>_status` and the other as `binary_sensor.blink_<camera_name>_motion_enabled`. The `motion_enabled` property reports if the `camera` is ready to detect motion *regardless if the system is actually armed**.
Below is an example showing every possible entry:
```yaml
# Example configuration.yaml entry
blink:
username: YOUR_USERNAME
password: YOUR_PASSWORD
scan_interval: 300
```
Please note that each camera reports two different states: one as `sensor.blink_<camera_name>_status` and the other as `binary_sensor.blink_<camera_name>_motion_enabled`. The `motion_enabled` property reports if the `camera` is ready to detect motion **regardless if the system is actually armed**.
## Services
@ -120,8 +85,7 @@ Send a new pin to blink. Since Blink's 2FA implementation is new and changing,
### Other Services
In addition to the services mentioned above, there are generic `camera` and `alarm_control_panel` services available for use as well. The `camera.enable_motion_detection` and `camera.disable_motion_detection` services allow for individual cameras to be enabled and disabled, respectively, within the Blink system. The `alarm_control_panel.alarm_arm_away` and `alarm_control_panel.alarm_disarm` services allow for the whole system to be armed and disarmed, respectively.
In addition to the services mentioned above, there are generic `camera` and `alarm_control_panel` services available for use as well. The `camera.enable_motion_detection` and `camera.disable_motion_detection` services allow for individual cameras to be enabled and disabled, respectively, within the Blink system. The `alarm_control_panel.alarm_arm_away` and `alarm_control_panel.alarm_disarm` services allow for the whole system to be armed and disarmed, respectively. Blink Mini cameras linked to an existing sync module cannot be armed/disarmed via Home Assistant.
## Examples

View File

@ -0,0 +1,34 @@
---
title: "Control4"
description: "Instructions on adding a Control4 system to Home Assistant."
ha_release: "0.114"
ha_category: Light
ha_iot_class: "Local Polling"
ha_quality_scale: silver
ha_config_flow: true
ha_codeowners:
- '@lawtancool'
ha_domain: control4
---
The Control4 integration allows you to control and monitor lights from your local Control4 system. Your Control4 controller must be running OS 3.0+.
## Configuration
Before setting up, you should assign a static IP address/DHCP reservation on your router to your Control4 controller. Home Assistant must be able to communicate with the controller over the local network; 4Sight remote access is not supported.
Setup the Control4 integration by going to **Configuration** -> **Integrations** -> **Control4**.
Enter the IP address of your controller and your Control4 username and password, then continue. Home Assistant will automatically add all lights it discovers in your Control4 system.
## Options
The Control4 integration offers additional options in **Configuration** -> **Integrations** -> **Control4** -> **Options**:
{% configuration %}
Seconds between updates:
description: How often Home Assistant will poll the Control4 controller for state updates. Very frequent polling could cause the controller to lag, especially with many devices.
required: false
type: integer
default: 5
{% endconfiguration %}

View File

@ -62,6 +62,11 @@ covers:
description: The name used to display the cover in the frontend.
required: false
type: string
command_timeout:
description: Defines number of seconds for command timeout.
required: false
type: integer
default: 15
{% endconfiguration %}
## Examples

View File

@ -53,6 +53,10 @@ cover:
description: A list of entity IDs so the cover only reacts to state changes of these entities. This can be used if the automatic analysis fails to find all relevant entities.
required: false
type: [string, list]
unique_id:
description: An ID that uniquely identifies this cover. Set this to an unique value to allow customisation trough the UI.
required: false
type: string
value_template:
description: Defines a template to get the state of the cover. Valid values are `open`/`true` or `closed`/`false`. [`value_template`](#value_template) and [`position_template`](#position_template) cannot be specified concurrently.
required: exclusive

View File

@ -63,6 +63,10 @@ fan:
description: Name to use in the frontend.
required: false
type: string
unique_id:
description: An ID that uniquely identifies this fan. Set this to an unique value to allow customisation trough the UI.
required: false
type: string
value_template:
description: "Defines a template to get the state of the fan. Valid value: 'on'/'off'"
required: true

View File

@ -0,0 +1,149 @@
---
title: Firmata
description: "Connect Arduino-compatible boards within Home Assistant"
ha_category:
- DIY
- Binary Sensor
- Switch
ha_release: 0.114
ha_iot_class: Local Push
ha_codeowners:
- '@DaAwesomeP'
ha_domain: firmata
---
[Firmata](https://github.com/firmata/protocol) can be used to add digital inputs and outputs to Home Assistant. Currently, this component supports high/low digital inputs and outputs. This allows for buttons, switches, motion detectors, relay control, etc. The component can currently connect to a Firmata board via serial or serial over USB.
The Firmata protocol is a standard protocol for microcontrollers. Most of these boards are support digital and analog inputs and outputs. [Arduino](https://www.arduino.cc/) and Arduino-compatible microcontroller development boards are the most popular boards to use with Firmata.
There is currently support for the following device types within Home Assistant:
- [Binary Sensor](#binary_sensor)
- [Switch](#switches)
## Configuration
You will need to upload a [Firmata firmware](https://github.com/firmata/) to your board. Please upload any `StandardFirmata` sketch to your board; please refer to the [Arduino documentation](https://www.arduino.cc/en/Main/Howto) for further information for uploading sketches. Firmata is available in the Arduino Library Manager in the Arduino IDE. You may also use a [Firmata Express](https://github.com/MrYsLab/FirmataExpress).
To integrate Arduino boards with Home Assistant, add the following section to your `configuration.yaml` file:
<div class='note warning'>
Firmata does not store the last state across power cycles. This means that with every powerup the pins are set to off/low and after every initialization, they will be set to the default that you have configured in YAML.
</div>
<div class='note warning'>
Firmata may cycle pins HIGH/LOW during initialization. If your pins should not be accidentally cycled, you may need to modify your Firmtata sketch or if you are using a relay board use an output pin as VCC. See this issue for details: [Make initial pin value configurable](https://github.com/firmata/arduino/issues/166).
</div>
You may configure multiple Firmata boards. Each board has the following options:
{% configuration %}
serial_port:
description: The port where your board is connected to your Home Assistant host. It is recommended to use the `by-id` reference (instead of numerical like `/dev/ttyACM0` or `/dev/ttyUSB0`) since these will never change after a reboot. If you are using HassOS, you can find a list of connected serial devices in the Hardware dialog on the System tab of the Supervisor.
required: true
type: string
serial_baud_rate:
description: The baud rate of the Arduino sketch. If you are using Firmata Express, then you do not need to set this option. **If you are using the default StandardFirmata, then you should set this to `57600`.**
required: false
type: integer
arduino_instance_id:
description: If you are using Firmata Express, then this should match the instance number that you set in the sketch.
required: false
type: integer
arduino_wait:
description: Time in seconds to wait for the Arduino is initially respond. May need to be used for boards that respond slowly at first connection.
required: false
type: integer
sleep_tune:
description: Time in seconds to wait for reply from the Arduino after sending a command. Rarely needs to be adjusted.
required: false
type: float
sampling_interval:
description: Sampling interval in millseconds sent to Firmata. Most Firmata sketches will ignore any interval less than 10 milliseconds.
required: false
type: integer
switches:
description: Digital high/low outputs to configure
required: false
type: list
keys:
name:
description: The name of the entity to create in Home Assistant
required: true
type: string
pin:
description: The digital pin number on the board.
required: true
type: integer
pin_mode:
description: The digital pin output mode. For switches, this must be set to `OUTPUT`. No other output modes are currently implemented.
required: true
type: integer
initial:
description: The initial output of the pin after initialization. Note that this is inverted if `negate` is enabled.
required: false
default: False
type: boolean
negate:
description: Flips the output of the digital pin
required: false
default: False
type: boolean
binary_sensor:
description: Digital high/low input to configure
required: false
type: list
keys:
name:
description: The name of the entity to create in Home Assistant
required: true
type: string
pin:
description: The digital pin number on the board.
required: true
type: integer
pin_mode:
description: The digital pin input mode. Supported modes are `INPUT` and `PULLUP`. Check your board specifications to see which pins have optional internal pullups available.
required: true
type: integer
negate:
description: Flips the input of the digital pin
required: false
default: False
type: boolean
{% endconfiguration %}
<div class='note'>
If you double-configure a pin, the integration will fail to configure the second one that it attempts to set up and will log an error.
</div>
```yaml
# Example firmata configuration.yaml entry
firmata:
- serial_port: /dev/serial/by-id/usb-Teensyduino_USB_Serial_358320-if00
serial_baud_rate: 57600
switches:
- name: my_light
pin_mode: OUTPUT
pin: 4
negate: true
- name: my_other_output
pin_mode: OUTPUT
pin: 5
initial: true
- name: my_light
pin_mode: OUTPUT
pin: 6
initial: true
negate: true
binary_sensors:
- name: my_motion
pin_mode: INPUT
pin: 2
- name: my_door
pin_mode: PULLUP
pin: 3
negate: true
```

View File

@ -74,46 +74,27 @@ The example above defined two themes named `happy` and `sad`. For each theme you
Check our [community forums](https://community.home-assistant.io/c/projects/themes) to find themes to use.
### Theme automation
### Setting themes
There are 2 themes-related services:
- `frontend.reload_themes`: reloads theme configuration from your `configuration.yaml` file.
- `frontend.set_theme(name)`: sets backend-preferred theme name.
- `frontend.set_theme`: sets backend-preferred theme name.
### Service `set_theme`
Example in automation:
| Service data attribute | Description |
| ---------------------- | --------------------------------------------------------------------------------------------------- |
| `name` | Name of the theme to set, `default` for the default theme or `none` to restore to the default. |
| `mode` | If the theme should be applied in light or dark mode `light` or `dark` (Optional, default `light`) |
Set a theme at the startup of Home Assistant:
```yaml
automation:
- alias: 'Set theme at startup'
trigger:
- platform: homeassistant
event: start
action:
service: frontend.set_theme
data:
name: happy
```
To enable "night mode":
```yaml
automation:
- alias: 'Set dark theme for the night'
trigger:
- platform: time
at: '21:00:00'
action:
- service: frontend.set_theme
data:
name: darkred
```
If no dark mode backend theme is set, the light mode theme will also be used in dark mode.
The backend theme settings will be saved and restored on a restart of Home Assistant.
### Manual Theme Selection
When themes are enabled in the `configuration.yaml` file, a new option will show up in the user profile page (accessed by clicking your user account initials at the bottom of the sidebar). You can then choose any installed theme from the dropdown list and it will be applied immediately.
This will overrule the theme settings set by the above service calls, and will only be applied to the current device.
<p class='img'>
<img src='/images/frontend/user-theme.png' />

View File

@ -1,87 +1,20 @@
---
title: Hi-Link HLK-SW16
description: Instructions on how to integrate HLK-SW16 relay into Home Assistant.
logo: hlktech.jpg
ha_category:
- DIY
- Switch
ha_release: 0.84
ha_iot_class: Local Push
ha_codeowners:
- '@jameshilliard'
ha_domain: hlk_sw16
---
The [HLK-SW16](http://www.hlktech.net/product_detail.php?ProId=48) by [Hi-Link](http://www.hlktech.net/) is a simple networkable 16 port relay device.
To enable it, add the following lines to your `configuration.yaml`:
## Configuration
```yaml
# Example configuration.yaml entry
hlk_sw16:
relay1:
host: 10.225.225.53
switches:
0:
name: relay1-0
1:
name: relay1-1
2:
name: relay1-2
3:
name: relay1-3
4:
name: relay1-4
5:
name: relay1-5
6:
name: relay1-6
7:
name: relay1-7
8:
name: relay1-8
9:
name: relay1-9
a:
name: relay1-a
b:
name: relay1-b
c:
name: relay1-c
d:
name: relay1-d
e:
name: relay1-e
f:
name: relay1-f
```
To add a Hi-Link HLK-SW16 to your installation, go to **Configuration** >> **Integrations** in the UI, click the button with `+` sign and from the list of integrations select **Hi-Link HLK-SW16**.
{% configuration %}
deviceid:
description: The array that contains the HLK-SW16 devices.
required: true
type: map
keys:
host:
description: The IP address or hostname of the HLK-SW16.
required: true
type: string
port:
description: The control port for the relays.
required: false
type: integer
default: 8080
switches:
description: The array that contains the relays.
required: true
type: map
keys:
relayid:
description: The array that contains the HLK-SW16 relays, each must be a number between 0 and 9 or letter between a and f which each corresponds to a labeled relay switch on the HLK-SW16.
required: false
type: map
keys:
name:
description: The name used to display the switch in the frontend.
required: false
type: string
default: relayid
{% endconfiguration %}
Enter the host and port for the HLK-SW16 TCP socket control interface and hit submit, if the connection is successful this will automatically populate the 16 relay switches as switch entities.

View File

@ -143,6 +143,10 @@ homekit:
description: The `entity_id` of a `sensor` entity to use as the battery of the accessory. HomeKit will cache an accessory's feature set on the first run so a device must be [reset](#resetting-accessories) for any change to take effect.
required: false
type: string
linked_doorbell_sensor:
description: The `entity_id` of a `binary_sensor` entity to use as the doorbell sensor of the camera accessory to enable doorbell notifications. HomeKit will cache an accessory's feature set on the first run so a device must be [reset](#resetting-accessories) for any change to take effect.
required: false
type: string
linked_motion_sensor:
description: The `entity_id` of a `binary_sensor` entity to use as the motion sensor of the camera accessory to enable motion notifications. HomeKit will cache an accessory's feature set on the first run so a device must be [reset](#resetting-accessories) for any change to take effect.
required: false
@ -171,6 +175,11 @@ homekit:
required: false
type: string
default: '`switch`'
stream_count:
description: Only for `camera` entities. The number of simultaneous stream the camera can support.
required: false
type: integer
default: 3
stream_address:
description: Only for `camera` entities. The source IP address to use when streaming to RTP clients. If your Home Assistant host has multiple interfaces, selecting a specific IP may be necessary.
required: false
@ -644,9 +653,9 @@ Ensure that the [`ffmpeg`](/integrations/ffmpeg) integration is configured corre
If your camera supports native H.264 streams, Home Assistant can avoid converting the video stream, which is an expensive operation. To enable native H.264 streaming when configured via YAML, change the `video_codec` to `copy`. To allow native H.264 streaming when via the UI, go to **Configuration** >> **Integrations** in the UI, click **Options** for your HomeKit Bridge, and check the box for your camera on the `Cameras that support native H.264 streams` screen.
#### One video stream limit per camera
#### Multiple camera streams
Currently, cameras are limited to one video stream. Multiple streams are not possible at this time. One workaround is to create a second `HomeKit Bridge` to generate a copy of the camera accessory.
Multiple streams can be configured with the `stream_count` configuration option. If you alter the number of streams, you must [reset the accessory](#resetting-accessories).
#### Camera audio is not streaming
@ -656,6 +665,10 @@ Make sure `support_audio` is `True` in the camera's entity configuration.
A motion sensor can be linked via the `linked_motion_sensor` configuration setting to enable motion notifications.
#### Doorbell button notifications
A doorbell sensor can be linked via the `linked_doorbell_sensor` configuration setting to enable motion notifications.
#### HomeKit stalls or devices respond slowly with many cameras
HomeKit updates each camera snapshot sequentially when there are multiple cameras on a bridge. The HomeKit update methodology can lead to the app stalling or taking a while to update. To avoid this problem, limit each `HomeKit Bridge` to 6 cameras and create a new `HomeKit Bridge` for additional cameras.

View File

@ -33,9 +33,9 @@ http:
{% configuration %}
server_host:
description: "Only listen to incoming requests on specific IP/host. By default it will accept all IPv4 connections. Use `server_host: ::0` if you want to listen to (and only) IPv6."
description: "Only listen to incoming requests on specific IP/host. By default the `http` integration will accept all IPv4 and IPv6 connections. Use `server_host: 0.0.0.0` if you want to only listen to IPv4 addresses."
required: false
type: string
type: [list, string]
default: 0.0.0.0
server_port:
description: Let you set a port to use.

View File

@ -149,6 +149,10 @@ tags_attributes:
description: The list of attribute names which should be reported as tags and not fields to InfluxDB. For example, if set to `friendly_name`, it will be possible to group by entities' friendly names as well, in addition to their ids.
required: false
default: 0
ignore_attributes:
type: [string, list]
description: The list of attribute names to ignore when reporting to InfluxDB. This can be used to filter out attributes that either don't change or don't matter to you in order to reduce the amount of data stored in InfluxDB.
required: false
component_config:
type: string
required: false
@ -158,6 +162,10 @@ component_config:
type: string
description: Measurement name to use instead of a unit or default measurement. This will store all data points in a single measurement.
required: false
ignore_attributes:
type: [string, list]
description: The list of attribute names to ignore when reporting to InfluxDB. Will be merged with the default `ignore_attributes` list when processing a state change event for a particular entity.
required: false
component_config_domain:
type: string
required: false
@ -167,6 +175,10 @@ component_config_domain:
type: string
description: Measurement name to use instead of a unit or default measurement. This will store all data points in a single measurement.
required: false
ignore_attributes:
type: [string, list]
description: The list of attribute names to ignore when reporting to InfluxDB. Will be merged with the default `ignore_attributes` list when processing a state change event for a particular entity.
required: false
component_config_glob:
type: string
required: false
@ -176,6 +188,10 @@ component_config_glob:
type: string
description: Measurement name to use instead of unit or default measurement. This will store all data points in a single measurement.
required: false
ignore_attributes:
type: [string, list]
description: The list of attribute names to ignore when reporting to InfluxDB. Will be merged with the default `ignore_attributes` list when processing a state change event for a particular entity.
required: false
{% endconfiguration %}
## Configure Filter

View File

@ -20,27 +20,10 @@ Data measured includes:
* Current outlook
* more!
## Configuring the Platform
## Configuring the Integration
To integrate `iqvia` into Home Assistant, add the following section to your
`configuration.yaml` file:
```yaml
iqvia:
zip_code: "00544"
```
{% configuration %}
zip_code:
description: The U.S. ZIP code to gather data for (as a quoted string).
required: true
type: string
{% endconfiguration %}
<div class='note warning'>
It is important to ensure the ZIP code is quoted if it starts with a 0. Unquoted
ZIP codes that start with 0 will cause errors.
</div>
This integration can be configured via the Home Assistant UI by navigating to
**Configuration** -> **Integrations**.
## Understanding the Indices

View File

@ -12,7 +12,7 @@ This integration allows you to track and control various light bulbs. Read the i
### Default turn-on values
To set the default color and brightness values when the light is turned on, create a custom `light_profiles.csv` (as described below in the `profile` attribute of `light.turn_on`).
To set the default color, brightness and transition values when the light is turned on, create a custom `light_profiles.csv` (as described below in the `profile` attribute of `light.turn_on`).
The `.default` suffix should be added to the entity identifier of each light to define a default value, e.g., for `light.ceiling_2` the `id` field is `light.ceiling_2.default`. To define a default for all lights, the identifier `group.all_lights.default` can be used. Individual settings always supercede the `all_lights` default setting.
@ -26,7 +26,7 @@ Most lights do not support all attributes. You can check the integration documen
| ---------------------- | -------- | ----------- |
| `entity_id` | no | String or list of strings that point at `entity_id`s of lights. To target all the lights use all as `entity_id`.
| `transition` | yes | Number that represents the time (in seconds) the light should take to transition to the new state.
| `profile` | yes | String with the name of one of the [built-in profiles](https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/light/light_profiles.csv) (relax, energize, concentrate, reading) or one of the custom profiles defined in `light_profiles.csv` in the current working directory. Light profiles define an xy color and a brightness. If a profile is given and a brightness then the profile brightness will be overwritten.
| `profile` | yes | String with the name of one of the [built-in profiles](https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/light/light_profiles.csv) (relax, energize, concentrate, reading) or one of the custom profiles defined in `light_profiles.csv` in the current working directory. Light profiles define an xy color, brightness and a transition value (if no transition is desired, set to 0 or leave out the column entirely). If a profile is given, and a brightness is set, then the profile brightness will be overwritten.
| `hs_color` | yes | A list containing two floats representing the hue and saturation of the color you want the light to be. Hue is scaled 0-360, and saturation is scaled 0-100.
| `xy_color` | yes | A list containing two floats representing the xy color you want the light to be. Two comma-separated floats that represent the color in XY. You can find a great chart here: [Hue Color Chart](https://developers.meethue.com/documentation/core-concepts#color_gets_more_complicated).
| `rgb_color` | yes | A list containing three integers between 0 and 255 representing the RGB color you want the light to be. Three comma-separated integers that represent the color in RGB, within square brackets. Note that the specified RGB value will not change the light brightness, only the color.

View File

@ -74,6 +74,10 @@ light:
description: A list of entity IDs so the light only reacts to state changes of these entities. This can be used if the automatic analysis fails to find all relevant entities.
required: false
type: [string, list]
unique_id:
description: An ID that uniquely identifies this light. Set this to an unique value to allow customisation trough the UI.
required: false
type: string
value_template:
description: Defines a template to get the state of the light.
required: false

View File

@ -1,52 +0,0 @@
---
title: Enedis Linky
description: Instructions on how to integrate Linky consumption data within Home Assistant.
ha_release: 0.79
ha_category:
- Energy
- Sensor
ha_iot_class: Cloud Polling
ha_config_flow: true
ha_codeowners:
- '@Quentame'
ha_domain: linky
---
The `linky` sensor platform is retrieving the consumption of your home from the [Linky electric meter](https://www.enedis.fr/linky-compteur-communicant).
## Setup the integration
You need to create an Enedis account [here](https://espace-client-connexion.enedis.fr/auth/UI/Login?realm=particuliers) if you don't have one already.
### Via the frontend
Menu: *Configuration* -> *Integrations*
Search for "Linky", add your credentials, click submit, you are done !
### Via the configuration file
Add the Linky sensor to your `configuration.yaml` file like below:
```yaml
# Example configuration.yaml entry
linky:
- username: YOUR_LINKY_USERNAME
password: YOUR_LINKY_PASSWORD
```
{% configuration %}
username:
description: The Enedis account username.
required: true
type: string
password:
description: The Enedis account password.
required: true
type: string
timeout:
description: Timeout to wait for the Enedis API connection.
required: false
type: integer
default: 10
{% endconfiguration %}

View File

@ -47,6 +47,10 @@ lock:
required: false
type: string
default: Template Lock
unique_id:
description: An ID that uniquely identifies this lock. Set this to an unique value to allow customisation trough the UI.
required: false
type: string
value_template:
description: Defines a template to set the state of the lock.
required: true

View File

@ -7,79 +7,78 @@ ha_category:
- Sensor
- Weather
ha_codeowners:
- '@victorcerutti'
- '@oncleben31'
- '@Quentame'
ha_config_flow: true
ha_domain: meteo_france
---
The `meteo_france` integration uses the [Météo-France](http://www.meteofrance.com/) web service as a source for meteorological data for your location. The location is based on the `city` configured in your `configuration.yaml` file.
The `meteo_france` integration uses the meteorological data from [Météo-France](http://www.meteofrance.com/) to provide weather forecast for any location in the world. One or more locations can be set via the front end or via the configuration file.
There is currently support for the following platforms within Home Assistant:
The integration support the following platforms within Home Assistant:
- [Sensor](#sensor)
- Weather
- [Weather](#weather-platform)
- [Sensor](#sensor-platforms)
It displays the current weather along with a 4 days forecast and create sensors, including weather alerts from [Vigilance Météo-France](https://vigilance.meteofrance.com/)
It displays the current weather along with a 5 days forecast and create sensors, including weather alerts and 1 hour rain forecast when available.
## Setup the integration
There are two ways to integrate Météo-France in Home Assistant.
### Via the frontend
### Via the frontend (recommended)
Menu: *Configuration* -> *Integrations*
Menu: **Configuration** -> **Integrations** click the button with `+` sign and from the list of integrations select **Météo-France**
Search for "Météo-France", add your city, click submit, you are done!
Enter your city or French postal code in the form. If more than one city correspond to your search in the Météo-France's database you will have the possibility to select one in a dropdown list. Click submit, you are done!
### Via the configuration file
With this way of configuration you can't select a specific cities if more than one location is found in the Météo-France database corresponding to your inputs. The integration will take the first one returned by the API.
To add Météo-France to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
# Example configuration.yaml entry for 2 cities
meteo_france:
- city: '76000'
- city: 'Auch'
```
{% configuration %}
city:
description: French postal code or name of the city ([see below](#about-city-configuration)).
description: French postal code or name of the city.
required: true
type: string
{% endconfiguration %}
### About `city` configuration
## Weather platform
This integration use the Météo-France search API to get the first city from the results returned.
To be used with the weather Lovelace card to access current condition, today and next four days forecast.
It works well with french postal code, city name, etc. In case your expected result doesn't come first, you can set a more specified query like `<city name>, <postal_code>`.
The weather platform can be configured in the frontend to decide if the forecast is given daily (default) or hourly. To change the setting go in **Configuration** -> **Integrations**, click on the city name in **Météo-France** box and click on **Options**. You can update the `Forecast mode` by choosing between `daily` or `hourly`.
It also works with international city, with mixed results. You may have to find the correct city query.
For example `Montreal, Canada` will return a city in Ardèche, France, whereas `Montreal, america` works
## Sensor platforms
[https://www.meteofrance.com/mf3-rpc-portlet/rest/lieu/facet/previsions/search/montreal,amerique](https://www.meteofrance.com/mf3-rpc-portlet/rest/lieu/facet/previsions/search/montreal,amerique)
All the following sensors will be created :
```yaml
# Example configuration.yaml entry for Montreal, Canada
meteo_france:
- city: 'montreal,amerique'
```
|Entity|Description|Enabled by default|
|------|-----------|------------------|
|`cloud`|The current cloud cover in %|Yes|
|`freeze_chance` |Probability of temperature below 0°C in the following hours|Yes|
|`next_rain`|Datetime of the next rain if expected within the next hour ([see note below](#about-next_rain-condition-sensor))|Yes|
|`precipitation`|Precipitation cumulation for next 24 hours in mm|Yes|
|`pressure`|The current pressure in hPa|No|
|`rain_chance` |Probability of rain in the following hours|Yes|
|`snow_chance` |Probability of snow for the following hours|Yes|
|`temperature`|The current temperature in °C|No|
|`uv`|The current UV index|Yes|
|`weather_alert` |Weather alert status ([see note below](#about-weather_alert-sensor))|Yes|
|`wind_speed` |The current wind speed in km/h|No|
## Sensor
Warning: The probability entities data are not always provided by the API. They are added only if available.
All these sensors will be created :
- `temperature`: The current temperature.
- `weather`: A human-readable text summary of the current conditions.
- `wind_speed`: The wind speed.
- `uv`: The current UV index.
- `next_rain`: Time to the next rain if happening for the next hour ([see note below](#about-next_rain-condition-sensor)).
- `freeze_chance`: Probability of temperature below 0°C for the day.
- `rain_chance`: Probability of rain for the day.
- `snow_chance`: Probability of snow for the day.
- `thunder_chance`: Probability of thunderstorm for the day.
- `weather_alert`: Weather alert status ([see note below](#about-weather_alert-sensor)).
To enable an entity disabled by default, go in **Configuration** -> **Integrations**, click on the city name in **Météo-France** and then the **X entities** link. You will have the list of the enabled entities. Here click the filter button and select **Show disable entities**. The disabled entities will be visible in the list, select the one you want to enable and click the **Enable Selected** button.
### About `next_rain` condition sensor
@ -90,35 +89,14 @@ All these sensors will be created :
</div>
The `next_rain` sensor value is the time to next rain, from 0 to 55 minutes.
If no rain is forecasted for the next hour, value will be "No rain".
Attributes also give the forecast for the next hour in 5 minutes intervals.
Possible value for each intervals attributes are:
- 1 No rain
- 2 Light rain
- 3 Moderate rain
- 4 Heavy rain
The attributes allow to have a forecast of the rain type by 5 to 10 minutes intervals.
### About `weather_alert` sensor
<div class='note warning'>
The weather alert is available for the metropolitan France.
The weather alert is available for the metropolitan France and Andorre.
</div>
The `weather_alert` sensor value give the current weather alert status for the department linked to the city. Data is retrieve from [Météo-France vigilance website](https://vigilance.meteofrance.com/).
The `weather_alert` sensor state give the current weather alert status for the department linked to the city. Only one entity by department is created.
The sensor attributes give access to each type of alerts and date of the bulletin emitted by Météo-France.
### Complete example
This is an example for 3 cities forecast:
```yaml
# Complete example configuration.yaml entry
meteo_france:
- city: '69004'
- city: 'Rouen'
- city: 'Oslo, norvege'
```
The sensor attributes give access to each type of alerts raised by Météo-France.

View File

@ -11,9 +11,9 @@ ha_codeowners:
ha_domain: min_max
---
The `min_max` sensor platform consumes the state from other sensors to determine the minimum, maximum, latest (last) and the mean of the collected states. The sensor will always show you the lowest/highest/latest value which was received from all monitored sensors. If you have spikes in your values, it's recommended to filter/equalize your values with a [statistics sensor](/integrations/statistics) first.
The `min_max` sensor platform consumes the state from other sensors to determine the minimum, maximum, latest (last), mean and median of the collected states. The sensor will always show you the lowest/highest/latest value which was received from all monitored sensors. If you have spikes in your values, it's recommended to filter/equalize your values with a [statistics sensor](/integrations/statistics) first.
This sensor is an alternative to the [template sensor](/integrations/template)'s `value_template:` to get the average of multiple sensors.
This sensor is an alternative to the [template sensor](/integrations/template)'s `value_template:` to get the average or the median of multiple sensors.
{% raw %}
```yaml
@ -46,7 +46,7 @@ entity_ids:
required: true
type: [list, string]
type:
description: "The type of sensor: `min`, `max`, `last` or `mean`."
description: "The type of sensor: `min`, `max`, `last`, `mean` or `median`."
required: false
default: max
type: string
@ -55,7 +55,7 @@ name:
required: false
type: string
round_digits:
description: Round mean value to specified number of digits.
description: Round mean or median value to specified number of digits.
required: false
type: integer
default: 2

View File

@ -8,10 +8,11 @@ ha_category:
- Sensor
- Climate
- Camera
ha_release: '0.20'
- Light
ha_release: "0.20"
ha_iot_class: Cloud Polling
ha_codeowners:
- '@cgtobi'
- "@cgtobi"
ha_config_flow: true
ha_domain: netatmo
---
@ -22,8 +23,9 @@ There is currently support for the following device types within Home Assistant:
- [Camera](#camera)
- [Climate](#climate)
- [Light](#light)
- [Sensor](#sensor)
- [Webhooks](#webhooks)
- [Webhook Events](#webhook-events)
## Configuration
@ -49,12 +51,16 @@ client_secret:
**After the client_id and client_secret is added to your `configuration.yaml` you must enable Netatmo through the integrations page.**
Menu: **Configuration** -> **Integrations**.
### Extra configuration of the integration
Configuration of Netatmo public weather stations is offered from the front end. Enter the Netatmo integration and press the cogwheel.
In the dialogue, it is possible to create, edit and remove public weather sensors. For each area a unique name has to be set along with an area to be covered and whether to display average or maximum values.
To edit an existing area simply enter its name and follow the dialog.
### Get API and Secret Key
To get your API credentials, you have to declare a new application in the [Netatmo Developer Page](https://dev.netatmo.com/). Sign in using your username and password from your regular Netatmo account.
@ -83,12 +89,42 @@ The `netatmo` camera platform is consuming the information provided by a [Netatm
The `netatmo` thermostat platform is consuming the information provided by a [Netatmo Smart Thermostat](https://www.netatmo.com/product/energy/thermostat) or [Netatmo Smart Radiator Valve](https://www.netatmo.com/en-gb/energy/additional-valve). This integration allows you to view the current temperature and control the setpoint.
## Light
The `netatmo` light platform is consuming information provided by a [Netatmo Smart Outdoor](https://www.netatmo.com/en-gb/security/cam-outdoor) camera and requires an active webhook. This integration allows you to turn on/off the flood lights.
## Sensor
The `netatmo` sensor platform is consuming the information provided by a [Netatmo Smart Home Weather Station](https://www.netatmo.com/en-us/weather/weatherstation) a
[Netatmo Smart Indoor Air Quality Monitor](https://www.netatmo.com/en-us/aircare/homecoach) device or Netatmo Public Weather Stations.
[Netatmo Smart Indoor Air Quality Monitor](https://www.netatmo.com/en-us/aircare/homecoach) device or [Netatmo Public Weather Stations](https://weathermap.netatmo.com/).
## Webhooks
## Services
### Set Schedule
`set_schedule`
Set the heating schedule. This requires an entity id and a schedule name.
### Set Person Home
`set_persons_home`
Set a list of persons as at home. Person's name must match a name known by the Netatmo Smart Indoor Camera.
### Set Person Away
`set_person_away`
Set a person away. If no person is set the home will be marked as empty. Person's name must match a name known by the Netatmo Smart Indoor Camera.
### (Un-)Register Webhooks
`register_webhook` and `unregister_webhook`
Service to manually register and unregister the webhook.
## Webhook Events
The [Netatmo Smart Indoor](https://www.netatmo.com/en-gb/security/cam-indoor) or [Outdoor](https://www.netatmo.com/en-gb/security/cam-outdoor) cameras, [Smart Door and Window Sensors](https://www.netatmo.com/en-gb/security/cam-indoor/tag), as well as the [Netatmo Smart Smoke Alarm](https://www.netatmo.com/en-gb/security/smoke-alarm), send instant events to Home Assistant by using webhooks. It is required to have your camera enabled in Home Assistant.
@ -125,19 +161,19 @@ Example:
```yaml
# Example automation for Netatmo Welcome
- alias: Motion at home
description: 'Motion detected at home'
description: "Motion detected at home"
trigger:
- event_type: netatmo_event
platform: event
event_data:
type: movement
- event_type: netatmo_event
platform: event
event_data:
type: movement
action:
- data_template:
message: >
{{ trigger.event.data["data"]["message"] }}
at {{ trigger.event.data["data"]["home_name"] }}
title: Netatmo event
service: persistent_notification.create
- data_template:
message: >
{{ trigger.event.data["data"]["message"] }}
at {{ trigger.event.data["data"]["home_name"] }}
title: Netatmo event
service: persistent_notification.create
```
{% endraw %}
@ -149,19 +185,19 @@ Example:
```yaml
# Example automation for Netatmo Presence
- alias: Motion at home
description: 'Motion detected at home'
description: "Motion detected at home"
trigger:
- event_type: netatmo_event
platform: event
event_data:
type: human # other possible types: animal, vehicle
- event_type: netatmo_event
platform: event
event_data:
type: human # other possible types: animal, vehicle
action:
- data_template:
message: >
{{ trigger.event.data["data"]["message"] }}
at {{ trigger.event.data["data"]["home_name"] }}
title: Netatmo event
service: persistent_notification.create
- data_template:
message: >
{{ trigger.event.data["data"]["message"] }}
at {{ trigger.event.data["data"]["home_name"] }}
title: Netatmo event
service: persistent_notification.create
```
{% endraw %}
@ -173,26 +209,32 @@ Example:
```yaml
# Example automation
- alias: door or window open or movement
description: 'Notifies which door or window is open or was moved'
description: "Notifies which door or window is open or was moved"
trigger:
- event_type: netatmo_event
platform: event
event_data:
type: tag_open
- event_type: netatmo_event
platform: event
event_data:
type: tag_big_move
- event_type: netatmo_event
platform: event
event_data:
type: tag_small_move
- event_type: netatmo_event
platform: event
event_data:
type: tag_open
- event_type: netatmo_event
platform: event
event_data:
type: tag_big_move
- event_type: netatmo_event
platform: event
event_data:
type: tag_small_move
action:
- data_template:
message: >
{{ trigger.event.data["data"]["message"] }}
title: Netatmo event
service: persistent_notification.create
- data_template:
message: >
{{ trigger.event.data["data"]["message"] }}
title: Netatmo event
service: persistent_notification.create
```
{% endraw %}
## Troubleshooting
### Light
If the lights show as unavailable the issue usually is that webhook is banned by Netatmo. To solve that [unregister](#un-register-webhooks) the webhook, go to the [Netatmo Developer Page](https://dev.netatmo.com/) to unban your webhook and then [register](#un-register-webhooks) the webhook.

View File

@ -29,6 +29,11 @@ command:
description: The action to take.
required: true
type: string
command_timeout:
description: Defines number of seconds for command timeout.
required: false
type: integer
default: 15
{% endconfiguration %}
To use notifications, please see the [getting started with automation page](/getting-started/automation/).

View File

@ -77,6 +77,24 @@ Reset the OpenTherm Gateway.
| ---------------------- | -------- | ----------- |
| `gateway_id` | no | The `gateway_id` as specified during configuration.
### Service `set_central_heating_ovrd`
Set the central heating override option on the gateway.
When overriding the control setpoint (via a [set_control_setpoint](#service-opentherm_gwset_control_setpoint) service call with a temperature value other than 0), the gateway automatically enables the central heating override to start heating. This service can then be used to control the central heating override status.
To return control of the central heating to the thermostat, call the [set_control_setpoint](#service-opentherm_gwset_control_setpoint) service with temperature value 0.
**You will only need this if you are writing your own software thermostat.**
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `gateway_id` | no | The `gateway_id` as specified during configuration.
| `ch_override` | no | The desired value for the central heating override. Use `0` to disable or `1` to enable.
<div class='note'>
Please read [this information](http://otgw.tclcode.com/standalone.html) from the designer of the OpenTherm Gateway before considering to write your own software thermostat.
</div>
### Service `opentherm_gw.set_clock`
Provide the time and day of week to the OpenTherm Gateway. The value provided here will be forwarded to the thermostat on the next date/time request from the thermostat. The OpenTherm Gateway does not have the ability to accurately keep track of time, so it will only retain the information provided here for a maximum of about 61 seconds.

View File

@ -0,0 +1,33 @@
---
title: OVO Energy
description: Instructions on how to integrate OVO Energy with Home Assistant.
ha_category:
- Energy
- Sensor
ha_release: 0.114
ha_iot_class: Cloud Polling
ha_config_flow: true
ha_codeowners:
- "@timmo001"
ha_domain: ovo_energy
---
The `ovo_energy` integration allows you to monitor your energy consumption data
in Home Assistant.
## Configuration
Menu: **Configuration** -> **Integrations**.
Click on the `+` sign to add an integration and click on **OVO Energy**.
After completing the configuration flow, the OVO Energy integration will be
available.
## Sensors
This integration provides a few sensors for OVO Energy:
- Last Electricity Reading - Last meter reading consumption in kWh.
- Last Gas Reading - Last meter reading consumption in kWh.
- Last Electricity Cost - Last meter reading electricity cost.
- Last Gas Cost - Last meter reading gas cost.

View File

@ -3,6 +3,8 @@ title: Pi-hole
description: Instructions on how to integrate Pi-hole with Home Assistant.
ha_category:
- System Monitor
- Sensor
- Switch
ha_iot_class: Local Polling
ha_config_flow: true
ha_release: 0.28
@ -34,8 +36,6 @@ host:
name:
description: >
The name for this Pi-hole. This name will be a part of the sensors created, e.g., `name: My Awesome Pi-hole` would result in sensor names beginning with `sensor.my_awesome_pi_hole_`.
**Note:** If you configure multiple Pi-holes, each one *must* have a unique name.
required: false
type: string
default: Pi-hole
@ -99,7 +99,9 @@ pi_hole:
## Services
The platform provides the following services to interact with your Pi-hole.
The platform provides the following services to interact with your Pi-hole. Use switch entities when calling the services.
_Note: Switch entity requires `api_key` to be configured._
### Service `pi_hole.disable`
@ -107,19 +109,5 @@ Disables configured Pi-hole(s) for the specified amount of time.
| Service data attribute | Required | Type | Description |
| ---------------------- | -------- | -------- | ----------- |
| `entity_id` | `False` | string | Target switch entity. Use `all` to target all Pi-hole services |
| `duration` | `True` | timedelta | Time for which Pi-hole should be disabled |
| `name` | `False` | string | If preset, disables the named Pi-hole, otherwise, disables all configured Pi-holes |
_Note: This service requires `api_key` to be specified in the configuration._
### Service `pi_hole.enable`
Enables configured Pi-holes(s).
| Service data attribute | Required | Type | Description |
| ---------------------- | -------- | -------- | ----------- |
| `name` | `False` | string | If preset, enables the named Pi-hole, otherwise, enables all configured Pi-holes |
_Note: This service requires `api_key` to be specified in the configuration._
This integration was not made by Pi-hole LLC or the Pi-hole community. They did not provide support, feedback, testing, or any other help during its creation. This is a third party platform which may break if Pi-hole changes their API in a later release. It is not official, not developed, not supported, and not endorsed Pi-hole LLC or the Pi-hole community. The trademark `Pi-hole` and the logo is used here to describe the platform. `Pi-hole` is a registered trademark of Pi-hole LLC.

View File

@ -76,11 +76,10 @@ The following attributes can be placed inside the `data` key of the service call
| Attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `file` | yes | A file to include with the message; see below.
| `attachments` | yes | Array of [Slack attachments](https://api.slack.com/messaging/composing/layouts#attachments) (legacy). *NOTE*: if using `attachments`, they are shown **in addition** to `message`.
| `blocks` | yes | Array of [Slack blocks](https://api.slack.com/messaging/composing/layouts). *NOTE*: if using `blocks`, they are shown **in place of** the `message` (note that the `message` is required nonetheless).
| `blocks_template` | yes | The same as `blocks`, but able to support [templates](https://www.home-assistant.io/docs/configuration/templating).
Note that using `file` will ignore all usage of `attachments`, `blocks`, and `blocks_template` (as Slack does not support those frameworks in messages that accompany uploaded files).
Note that using `file` will ignore all usage of `blocks` and `blocks_template` (as Slack does not support those frameworks in messages that accompany uploaded files).
To include a local file with the Slack message, use these attributes underneath the `file` key:
@ -160,14 +159,3 @@ data:
*Average Rating*
1.0
```
To use the legacy attachments framework:
```yaml
message: Message that will be added as a comment to the file.
title: Title of the file.
data:
attachments:
- title: WHAT A HORRIBLE NIGHT TO HAVE A CURSE.
image_url: https://i.imgur.com/JEExnsI.gif
```

View File

@ -21,7 +21,9 @@ There is currently support for the following device types within Home Assistant:
## Configuration
To add your Spider devices into your Home Assistant installation, add the following to your `configuration.yaml` file:
To set up this integration, click Configuration in the sidebar and then click Integrations. Add a new integration using the "+" button in the lower right corner and look for 'Itho Daalderop Spider'. Click configure and you will be presented with a dialog requesting the username and password of your Spider account information. After you click submit, it will automatically retrieve your thermostats and power plugs from mijn.ithodaalderop.nl.
If you'd like to continue using YAML until it is fully removed, you can use the following example:
```yaml
spider:

View File

@ -56,6 +56,11 @@ switches:
description: The name used to display the switch in the frontend.
required: false
type: string
command_timeout:
description: Defines number of seconds for command timeout.
required: false
type: integer
default: 15
{% endconfiguration %}
A note on `friendly_name`:

View File

@ -54,6 +54,10 @@ switch:
description: A list of entity IDs so the switch only reacts to state changes of these entities. This can be used if the automatic analysis fails to find all relevant entities.
required: false
type: [string, list]
unique_id:
description: An ID that uniquely identifies this switch. Set this to an unique value to allow customisation trough the UI.
required: false
type: string
value_template:
description: Defines a template to set the state of the switch. If not defined, the switch will optimistically assume all commands are successful.
required: false

View File

@ -54,6 +54,10 @@ sensor:
description: A list of entity IDs so the sensor only reacts to state changes of these entities. This can be used if the automatic analysis fails to find all relevant entities.
required: false
type: [string, list]
unique_id:
description: An ID that uniquely identifies this sensor. Set this to an unique value to allow customisation trough the UI.
required: false
type: string
unit_of_measurement:
description: "Defines the units of measurement of the sensor, if any. This will also influence the graphical presentation in the history visualization as a continuous value. Sensors with missing `unit_of_measurement` are showing as discrete values."
required: false
@ -104,6 +108,10 @@ If you are using the state of a platform that takes extra time to load, the Temp
The template engine will attempt to work out what entities should trigger an update of the sensor. This can fail, for example, if your template loops over the contents of a group. In this case, you can use `entity_id` to provide a list of entity IDs that will cause the sensor to update or you can run the service `homeassistant.update_entity` to update the sensor at will.
### Unique ID
The optional `unique_id` can be set so the entity will be registered in the [entity registry](https://developers.home-assistant.io/docs/entity_registry_index). This allows changing the `name`, `icon` and `entity_id` from the web interface instead of having to use the [customize](/docs/configuration/customizing-devices/) key in your `configuration.yaml` file.
## Examples
In this section, you find some real-life examples of how to use this sensor.
@ -349,7 +357,7 @@ sensor:
Useful entities to choose might be `sensor.date` which update once per day or `sensor.time`, which updates once per minute.
Please note that the resulting template will be evaluated by Home Assistant state engine on every state change of these sensors, which in case of `sensor.time` happens every minute and might have a negative impact on performance.
An alternative to this is to create an interval-based automation that calls the service `homeassistant.update_entity` for the entities requiring updates. This modified example updates every 5 minutes:
{% raw %}

View File

@ -10,43 +10,64 @@ ha_domain: tensorflow
The `tensorflow` image processing platform allows you to detect and recognize objects in a camera image using [TensorFlow](https://www.tensorflow.org/). The state of the entity is the number of objects detected, and recognized objects are listed in the `summary` attribute along with quantity. The `matches` attribute provides the confidence `score` for recognition and the bounding `box` of the object for each detection category.
<div class='note warning'>
## Home Assistant Core
The following packages must be installed on Raspbian before following the setup for the integration to work:
`sudo apt-get install libatlas-base-dev libopenjp2-7 libtiff5`
If you are using the Home Assistant Core installation type, some additional requirements and steps apply.
For all other installation types, this section can be skipped.
</div>
The following packages must be installed on Debian before following the setup for the integration to work:
`sudo apt-get install libatlas-base-dev libopenjp2-7 libtiff5`
## Setup
It is possible that Home Assistant is unable to install the Python TensorFlow bindings. If that is the case,
you'll need to install those manually using: `pip install tensorflow==2.2.0`, as the Python wheel is
not available for all platforms.
You need to install the `tensorflow` Python packages with: `$ pip3 install tensorflow==1.13.2`. The wheel is not available for all platforms. See [the official install guide](https://www.tensorflow.org/install/) for other options. The required packages are included in Home Assistant Supervised installations but only supported on amd64 architecture.
See [the official install guide](https://www.tensorflow.org/install/) for other options.
This integration requires files to be downloaded, compiled on your computer, and added to the Home Assistant configuration directory. These steps can be performed using the sample script at [this gist](https://gist.github.com/hunterjm/6f9332f92b60c3d5e448ad936d7353c3). Alternatively, if you wish to perform the process manually, the process is as follows:
Furthermore, the official Python TensorFlow wheels by Google, require your CPU to support the `avx` extension.
If your CPU lacks those capabilities, Home Assistant will crash when using TensorFlow, without any message.
- Clone [tensorflow/models](https://github.com/tensorflow/models/tree/master/research/object_detection)
- Compile protobuf models located in `research/object_detection/protos` with `protoc`
- Create the following directory structure inside your configuration directory:
## Preparation
This integration requires files to be downloaded, compiled on your computer, and added to the Home Assistant configuration directory. These steps can be performed by cloning [this repository](https://github.com/hunterjm/hass-tensorflow) into your configuration directory. Alternatively, if you wish to perform the process manually, the process is as follows:
Create the following folder structure in your configuration directory.
```bash
|- {config_dir}
| - tensorflow/
|- object_detection/
|- __init__.py
|- tensorflow/
|- models/
```
- Copy required object_detection dependencies to the `object_detection` folder inside of the `tensorflow` folder:
Follow these steps (Linux) to compile the object detection library.
- `research/object_detection/data`
- `research/object_detection/utils`
- `research/object_detection/protos`
```bash
# Clone tensorflow/models
git clone https://github.com/tensorflow/models.git
# Compile Protobuf (apt-get install protobuf-compiler)
cd models/research
protoc object_detection/protos/*.proto --python_out=.
# Copy object_detection to {config_dir}
cp -r object_detection {config_dir}/tensorflow
```
Your final folder structure should look as follows
```bash
|- {config_dir}
|- tensorflow/
|- models/
|- object_detection/
|- ...
```
## Model Selection
Lastly, it is time to pick a model. It is recommended to start with one of the COCO models available in the [Model Detection Zoo](https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/detection_model_zoo.md).
Lastly, it is time to pick a model. It is recommended to start with one of the COCO models available in the [Model Detection Zoo](https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/tf2_detection_zoo.md).
The trade-off between the different models is accuracy vs speed. Users with a decent CPU should start with the `faster_rcnn_inception_v2_coco` model. If you are running on an ARM device like a Raspberry Pi, start with the `ssd_mobilenet_v2_coco` model.
The trade-off between the different models is accuracy vs speed. Users with a decent CPU should start with one of the `EfficientDet` models. If you are running on an ARM device like a Raspberry Pi, start with the `SSD MobileNet v2 320x320` model.
Whichever model you choose, download it and place the `frozen_inference_graph.pb` file in the `tensorflow` folder in your configuration directory.
Whichever model you choose, download it and extract in to the `tensorflow/models` folder in your configuration directory.
## Configuration
@ -59,7 +80,7 @@ image_processing:
source:
- entity_id: camera.local_file
model:
graph: /home/homeassistant/.homeassistant/tensorflow/frozen_inference_graph.pb
graph: /config/tensorflow/models/efficientdet_d0_coco17_tpu-32/
```
{% configuration %}
@ -86,7 +107,7 @@ model:
type: map
keys:
graph:
description: Full path to `frozen_inference_graph.pb`.
description: Full path to the base model directory.
required: true
type: string
labels:
@ -94,6 +115,11 @@ model:
required: false
type: string
default: tensorflow/object_detection/data/mscoco_label_map.pbtxt
label_offset:
description: Offset for mapping label ID to a name (only use for custom models)
required: false
type: integer
default: 1
model_dir:
description: Full path to TensorFlow models directory.
required: false
@ -143,7 +169,7 @@ image_processing:
- "/tmp/{% raw %}{{ camera_entity.split('.')[1] }}{% endraw %}_latest.jpg"
- "/tmp/{% raw %}{{ camera_entity.split('.')[1] }}_{{ now().strftime('%Y%m%d_%H%M%S') }}{% endraw %}.jpg"
model:
graph: /home/homeassistant/.homeassistant/tensorflow/frozen_inference_graph.pb
graph: /config/tensorflow/models/efficientdet_d0_coco17_tpu-32/
categories:
- category: person
area:

View File

@ -22,7 +22,7 @@ The `Tesla` integration offers integration with the [Tesla](https://auth.tesla.c
This integration provides the following platforms:
- Binary sensors - such as parking and charger connection.
- Binary sensors - such as update available, parking, and charger connection.
- Sensors - such as Battery level, Inside/Outside temperature, odometer, estimated range, and charging rate.
- Device tracker - to track location of your car
- Lock - Door lock, rear trunk lock, front trunk (frunk) lock and charger door lock. Enables you to control Tesla's door, trunks and charger door lock

View File

@ -107,14 +107,17 @@ The Toon integration provides the following sensors:
- Average Daily Energy Usage*
- Average Daily Gas Usage*
- Average Daily Water Usage*
- Average Gas Usage
- Average Power Usage*
- Average Water Usage*
- Average Solar Power Production to Grid* (only with solar module)
- Boiler Modulation Level* (only with OpenTherm)
- Current Gas Usage
- Current Power Usage
- Current Power Usage Covered By Solar (only with solar module)
- Current Solar Power Production (only with solar module)
- Current Water Usage*
- Electricity Meter Feed IN Tariff 1*
- Electricity Meter Feed IN Tariff 2*
- Electricity Meter Feed OUT Tariff 1*
@ -130,6 +133,9 @@ The Toon integration provides the following sensors:
- Solar Energy Produced Today (only with solar module)
- Solar Power Production to Grid (only with solar module)
- Temperature
- Water Meter*
- Water Usage Today*
- Water Cost Today*
Sensors marked with `*` are disabled by default, but can be enabled
from the UI, by clicking on the device and enabling the specific entity.

View File

@ -39,6 +39,10 @@ vacuum:
description: Name to use in the frontend.
required: false
type: string
unique_id:
description: An ID that uniquely identifies this vacuum. Set this to an unique value to allow customisation trough the UI.
required: false
type: string
value_template:
description: "Defines a template to get the state of the vacuum. Valid value: `docked`/`cleaning`/`idle`/`paused`/`returning`/`error`"
required: false

View File

@ -1,40 +1,26 @@
---
title: Volumio
description: How to set up the Volumio media player platform
description: How to set up the Volumio media player integration
ha_category:
- Media Player
ha_release: 0.41
ha_iot_class: Local Polling
ha_config_flow: true
ha_codeowners:
- '@OnFreund'
ha_domain: volumio
---
The `Volumio` platform allows you to control a [Volumio](https://volumio.org/) media player from Home Assistant.
The preferred way to set up the Volumio platform is by enabling the [discovery component](/integrations/discovery/).
## Configuration
In case the discovery does not work, or you need specific configuration variables, you can add the following to your `configuration.yaml` file:
Menu: **Configuration** -> **Integrations**.
```yaml
# Example configuration.yaml entry
media_player:
- platform: volumio
host: homeaudio.local
port: 3000
```
In most cases, your Volumio device should be discovered and you'll simply need to click "Configure" to add it to Home Assistant.
{% configuration %}
name:
description: The name of the device.
required: false
default: Volumio
type: string
host:
description: The IP address or hostname of the device.
required: true
default: localhost
type: string
port:
description: The Port number of Volumio service.
required: true
default: 3000
type: integer
{% endconfiguration %}
If it's not discovered, you can click on the `+` sign to add an integration and then click on **Volumio**, and finally input the host and port.
<div class='note'>
Volumio versions 2.799 and below do not have a unique id when manually configured, so you will not be able to rename your entity or add your device to a area. If discovery does not work for you, it is advised to upgrade Volumio before configuring.
</div>

View File

@ -88,6 +88,7 @@ The list of currently available resources:
- `odometer`
- `trip_meter1`
- `trip_meter2`
- `average_speed`
- `fuel_amount`
- `fuel_amount_level`
- `average_fuel_consumption`
@ -104,6 +105,7 @@ The list of currently available resources:
- `last_trip`
- `is_engine_running`
- `doors_hood_open`
- `doors_tailgate_open`
- `doors_front_left_door_open`
- `doors_front_right_door_open`
- `doors_rear_left_door_open`

View File

@ -0,0 +1,28 @@
---
title: Wolflink
description: Instructions on how to integrate Wolf Smart-Set cloud within Home Assistant.
ha_category:
- Heating
ha_release: 0.114
ha_iot_class: Cloud Polling
ha_config_flow: true
ha_codeowners:
- '@adamkrol93'
ha_domain: wolflink
---
The `wolflink` integration uses the [Wolf Smart-Set](https://www.wolf-smartset.com/) web service as a source to fetch your heating system status.
Currently, integration can collect information such as temperature, pressure and heating state.
Remember that to integrate your heating device with Home Assistant, you need to have a WOLF LinkHome device connected to your heating device.
The integration fetches all data based on parameters, that are exposed by your heating device.
### Tested devices
This integration is with Wolf Link Home Pro connected to a FGB-28 device.
## Configuration
To add WolfLink to your installation, go to **Configuration** >> **Integrations** in the UI, click the button with `+` sign and from the list of integrations select **WOLF SmartSet**.

View File

@ -54,7 +54,7 @@ Oh, and yes, there is also some cool new integrations. Support has been added fo
- Add Logi Circle component, camera and sensor platform ([@evanjd] - [#16540]) ([logi_circle docs]) ([camera.logi_circle docs]) ([sensor.logi_circle docs]) (new-platform)
- deCONZ cover support ([@Kane610] - [#16759]) ([cover docs]) ([deconz docs]) ([cover.deconz docs]) (new-platform)
- GeoJSON platform ([@exxamalte] - [#16610]) ([geo_location docs]) (new-platform)
- Add linky sensor ([@tiste] - [#16468]) ([sensor.linky docs]) (new-platform)
- Add linky sensor ([@tiste] - [#16468]) (new-platform)
## Release 0.79.1 - September 30
@ -244,7 +244,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Handle netgear_lte connection errors ([@amelchio] - [#16806]) ([netgear_lte docs]) ([notify docs]) ([sensor.netgear_lte docs])
- Improve opentherm_gw state detection ([@mvn23] - [#16809]) ([climate.opentherm_gw docs])
- Rework chromecast fix ([@awarecan] - [#16804]) ([media_player.cast docs])
- Add linky sensor ([@tiste] - [#16468]) ([sensor.linky docs]) (new-platform)
- Add linky sensor ([@tiste] - [#16468]) (new-platform)
- Use pyspcwebgw for SPC component ([@mbrrg] - [#16214]) ([spc docs]) ([alarm_control_panel.spc docs]) ([binary_sensor.spc docs])
- Remove discovered MQTT Switch device when discovery topic is cleared ([@emontnemery] - [#16605]) ([mqtt docs]) ([switch.mqtt docs])
- Allow split component definitions in packages ([@thomasloven] - [#16177])

View File

@ -347,7 +347,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Homekit component cleanup ([@cdce8p] - [#17627]) ([homekit docs])
- Use cached robot serial for Neato update ([@dshokouhi] - [#17633]) ([vacuum.neato docs])
- deCONZ - Add support for Xiaomi window covers ([@Kane610] - [#17337]) ([deconz docs]) ([cover.deconz docs])
- Fix linky sensor login error ([@Debaru] - [#17110]) ([sensor.linky docs])
- Fix linky sensor login error ([@Debaru] - [#17110])
- Fix mqtt light brightness slider ([@thinkl33t] - [#17075]) ([light.mqtt docs])
- Add opentherm_gw binary sensor support ([@mvn23] - [#17625]) ([opentherm_gw docs]) ([binary_sensor.opentherm_gw docs]) (new-platform)
- Upgrade dsmr_parser to 0.12 ([@raymondelooff] - [#17634]) ([sensor.dsmr docs])

View File

@ -274,7 +274,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Add ADB server functionality to Fire TV ([@JeffLIrion] - [#21221]) ([media_player.firetv docs]) (breaking change)
- Upgrade pytest to 4.3.0 ([@scop] - [#21412])
- Upgrade mypy to 0.670 ([@scop] - [#20934])
- Update pylinky ([@tiste] - [#21416]) ([sensor.linky docs])
- Update pylinky ([@tiste] - [#21416])
- Mark water_heater as significant domain ([@elupus] - [#21390]) ([history docs])
- Add power and energy attributes to SmartThings switch ([@andrewsayre] - [#21375]) ([smartthings docs]) (new-feature)
- Add SmartThings Cover platform and add cover device classes ([@andrewsayre] - [#21192]) ([cover docs]) ([smartthings docs]) (breaking change) (new-platform)

View File

@ -241,7 +241,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Axis component reflect device availability ([@Kane610] - [#22401]) ([axis docs])
- throw `PlatformNotReady` if unable to connect ([@aav7fl] - [#22515]) ([androidtv docs])
- Ring camera improvements ([@Yarikx] - [#22526]) ([ring docs])
- upgrade pylinky to 0.3.3 ([@royto] - [#22544]) ([linky docs])
- upgrade pylinky to 0.3.3 ([@royto] - [#22544])
- Move core services.yaml file to Home Assistant integration ([@balloob] - [#22489])
- Change HEOS component library and add basic config flow ([@andrewsayre] - [#22517]) ([heos docs])
- Add command_template and value_template for MQTT alarm ([@JumpMaster] - [#21438]) ([mqtt docs])

View File

@ -175,7 +175,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Restore automation last_triggered with initial_state override ([@frenck] - [#24400]) ([automation docs]) (breaking change)
- Fix recorder defaults ([@balloob] - [#24399]) ([recorder docs]) (breaking change)
- Uber API is going away on June 13, 2019, remove component ([@robbiet480] - [#24468]) (breaking change)
- Add Linky sensors : yesterday + months + years ([@Quentame] - [#23726]) ([linky docs]) (breaking change)
- Add Linky sensors : yesterday + months + years ([@Quentame] - [#23726]) (breaking change)
- Position is reversed for horizontal awnings ([@kbickar] - [#23257]) ([tahoma docs]) (breaking change)
- Remove conversation from default config ([@balloob] - [#24515]) ([default_config docs]) (breaking change)
- Added name to sensors ([@cliffordwhansen] - [#24525]) ([synologydsm docs]) (breaking change)
@ -304,7 +304,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Bump pyubee to 0.7 to support more models ([@mzdrale] - [#24477]) ([ubee docs])
- Somfy open api ([@tetienne] - [#19548]) ([somfy docs]) (new-platform)
- Add APRS device tracker component ([@PhilRW] - [#22469]) ([aprs docs]) (new-platform)
- Add Linky sensors : yesterday + months + years ([@Quentame] - [#23726]) ([linky docs]) (breaking change)
- Add Linky sensors : yesterday + months + years ([@Quentame] - [#23726]) (breaking change)
- Add attributs and fix lightlevel inconsistency for LightLevel sensor ([@Cyr-ius] - [#24439]) ([hue docs])
- Support ZLO device types to support newer Zigbee devices in ZHA ([@jurriaan] - [#24429]) ([zha docs])
- Camera platform for buienradar imagery ([@ties] - [#23358]) ([buienradar docs]) (new-platform)

View File

@ -254,7 +254,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
([@SukramJ] - [#26449]) ([homematicip_cloud docs])
- **Linky** - This platform has been moved to an integration. - ([@Quentame] - [#26076]) ([linky docs])
- **Linky** - This platform has been moved to an integration. - ([@Quentame] - [#26076])
New example configuration entry:
@ -371,7 +371,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- IGN Sismologia icon for geolocation entities ([@exxamalte] - [#26408]) ([ign_sismologia docs])
- Migrate legacy typehints in core to PEP-526 ([@frenck] - [#26403]) ([device_tracker docs])
- Add X10 devices as ISY994 switches ([@taylorsilva] - [#26342]) ([isy994 docs])
- Add config flow to linky ([@Quentame] - [#26076]) ([linky docs]) (breaking change)
- Add config flow to linky ([@Quentame] - [#26076]) (breaking change)
- Correct file permissions in slide integration ([@frenck] - [#26390]) ([slide docs])
- Use literal string interpolation in honeywell ([@zxdavb] - [#26386]) ([honeywell docs])
- Initial commit ([@zxdavb] - [#26385]) ([geniushub docs])
@ -397,7 +397,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Unify device_state_attributes handling for Homematic IP Cloud ([@SukramJ] - [#26449]) ([homematicip_cloud docs]) (breaking change)
- Add yeelight nightlight support via separate light entity ([@zewelor] - [#26224]) ([yeelight docs])
- Add set scene service calls to yeelight ([@zewelor] - [#26255]) ([yeelight docs])
- Add device_info to Linky integration ([@Quentame] - [#26477]) ([linky docs])
- Add device_info to Linky integration ([@Quentame] - [#26477])
- Update radiotherm climate attributes ([@dieselrabbit] - [#26465]) ([radiotherm docs]) (breaking change)
- Add Viessmann ViCare Climate platform ([@oischinger] - [#26151]) ([vicare docs]) (new-integration)
- Add new integration for Jandy iAqualink pool control ([@flz] - [#26034]) ([iaqualink docs]) (new-integration)

View File

@ -218,7 +218,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- `contact / mailing_list` has changed to `contact / ml`, to migrate change the `mailing_list` key to `ml`
- `location / address` is no longer required but is optional as the latitude and longitude properties of the location are added automatically from the HA config). There is no need to change anything. - ([@Bouni] - [#26453]) ([spaceapi docs])
- **Linky** - Linky sensors have been grouped to one Linky device. Users will need to remove and re-add the Linky integration to clear the device registry. - ([@piitaya] - [#26738]) ([linky docs])
- **Linky** - Linky sensors have been grouped to one Linky device. Users will need to remove and re-add the Linky integration to clear the device registry. - ([@piitaya] - [#26738])
- **Elv** - ELV/PCA is now its own integration. Existing configuration should be removed and replaced. Optionally the port for the serial interface can be specified (default is: /dev/ttyUSB0). - ([@majuss] - [#26552]) ([elv docs])
@ -416,7 +416,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Bump up ZHA dependencies ([@Adminiuga] - [#26746])
- fix onvif/camera setting up error ([@sanyatuning] - [#26825]) ([onvif docs])
- Bump homematicip_cloud to 0.10.11 ([@SukramJ] - [#26852]) ([homematicip_cloud docs])
- Group Linky sensors to Linky meter device ([@piitaya] - [#26738]) ([linky docs]) (breaking change)
- Group Linky sensors to Linky meter device ([@piitaya] - [#26738]) (breaking change)
- Add unit to 'charging_level_hv' bwm_connected_drive sensor ([@timmccor] - [#26861]) ([bmw_connected_drive docs])
- Add reproduce state template ([@balloob] - [#26866])
- Put draw_box in image_processing ([@robmarkcole] - [#26712]) ([doods docs]) ([image_processing docs]) ([tensorflow docs])

View File

@ -603,7 +603,7 @@ The **holiday name** sensor has been renamed to **holiday**. ([@tsvi] - [#27654]
- Move imports in telegram_bot component ([@Quentame] - [#27785]) ([telegram_bot docs])
- Add device action support to the lock integration ([@emontnemery] - [#27499]) ([lock docs])
- Add grid sensors to SolarEdge_local ([@scheric] - [#27247]) ([solaredge_local docs])
- Unload linky config entry ([@Quentame] - [#27831]) ([linky docs])
- Unload linky config entry ([@Quentame] - [#27831])
- Fix attribution ([@bieniu] - [#27815]) ([airly docs])
- Added handling for connection errors in state update, added available property ([@ratsept] - [#27794]) ([soma docs])
- Add device_info to HomematicIP climate and acp ([@SukramJ] - [#27771]) ([homematicip_cloud docs])
@ -684,7 +684,7 @@ The **holiday name** sensor has been renamed to **holiday**. ([@tsvi] - [#27654]
- Fix whois error, check expiration_date for list and pick first ([@cyberjacob] - [#27930]) ([whois docs])
- Move imports in sql component ([@Michsior14] - [#27713]) ([sql docs])
- move imports in smarthab component ([@Michsior14] - [#27942]) ([smarthab docs])
- Fixing config_entries.async_forward_entry_unload calls (step 1) ([@Quentame] - [#27857]) ([cert_expiry docs]) ([linky docs]) ([locative docs]) ([luftdaten docs]) ([withings docs])
- Fixing config_entries.async_forward_entry_unload calls (step 1) ([@Quentame] - [#27857]) ([cert_expiry docs]) ([locative docs]) ([luftdaten docs]) ([withings docs])
- move imports in sma component ([@Michsior14] - [#27945]) ([sma docs])
- Remove tplink device tracker ([@rytilahti] - [#27936]) ([tplink docs])
- Add option to disable HTTPS verification in Luci component ([@mzdrale] - [#27946]) ([luci docs])

View File

@ -638,7 +638,7 @@ Make sure to fill in all fields of the issue template, that is helping us a lot!
- use isort to sort imports according to PEP8 for group ([@basnijholt] - [#29713])
- Sort imports according to PEP8 for neato ([@basnijholt] - [#29724]) ([neato docs])
- Sort imports according to PEP8 for input_text ([@basnijholt] - [#29719]) ([input_text docs])
- Sort imports according to PEP8 for linky ([@basnijholt] - [#29722]) ([linky docs])
- Sort imports according to PEP8 for linky ([@basnijholt] - [#29722])
- Sort imports according to PEP8 for minio ([@basnijholt] - [#29723]) ([minio docs])
- Sort imports according to PEP8 for netgear_lte ([@basnijholt] - [#29725]) ([netgear_lte docs])
- Sort imports according to PEP8 for iqvia ([@basnijholt] - [#29720]) ([iqvia docs])

View File

@ -903,7 +903,7 @@ Hats over your heart for these shuttered integrations. Pour one out for:
- Added missing file ([@cyberjunky] - [#31189])
- update remove service ([@dmulcahey] - [#31164]) ([zha docs])
- Fix ps4 errors if pin begins with a 0 ([@ktnrg45] - [#31198]) ([ps4 docs])
- Use config_entry.unique_id in Linky ([@Quentame] - [#31051]) ([linky docs])
- Use config_entry.unique_id in Linky ([@Quentame] - [#31051])
- Add Garmin Connect integration ([@cyberjunky] - [#30792]) ([garmin_connect docs]) (new-integration)
- Constrain SimpliSafe's check for emergency token usage ([@bachya] - [#31214]) ([simplisafe docs])
- Update Hue discovery ([@balloob] - [#31215]) ([hue docs])

View File

@ -452,7 +452,7 @@ Added a Coronavirus integration to help monitor the ongoing epidemic. [More info
## All changes
- Change scan_interval defaults for Tesla ([@alandtse] - [#31194]) ([tesla docs]) (breaking change)
- Removes I/O from linky tests ([@balloob] - [#31299]) ([linky docs])
- Removes I/O from linky tests ([@balloob] - [#31299])
- Reorganize insteon code ([@teharris1] - [#31183]) ([insteon docs]) (breaking change)
- Upgrade pre-commit to 2.0.1 ([@frenck] - [#31308])
- Add opening and closing states to MQTT covers ([@rickvdl] - [#31259]) ([mqtt docs])
@ -584,7 +584,7 @@ Added a Coronavirus integration to help monitor the ongoing epidemic. [More info
- Fix spelling of VIVOTEK ([@frenck] - [#31773]) ([vivotek docs])
- Fix spelling of apcupsd in manifest ([@frenck] - [#31770]) ([apcupsd docs])
- Fix spelling of AVM FRITZ!Box in manifest ([@frenck] - [#31765]) ([fritz docs])
- Implement PlatformNotReady to Linky + fix TypeError ([@Quentame] - [#31768]) ([linky docs])
- Implement PlatformNotReady to Linky + fix TypeError ([@Quentame] - [#31768])
- UniFi - Change handling of updated options ([@Kane610] - [#31762]) ([unifi docs]) (breaking change)
- Rename codecov so it will be picked up ([@balloob] - [#31775])
- Fix spelling of ASUSWRT in manifest ([@frenck] - [#31764]) ([asuswrt docs])

File diff suppressed because it is too large Load Diff

View File

@ -762,7 +762,6 @@
/components/sensor.lacrosse /integrations/lacrosse
/components/sensor.lastfm /integrations/lastfm
/components/sensor.launch_library /integrations/launch_library
/components/sensor.linky /integrations/linky
/components/sensor.linux_battery /integrations/linux_battery
/components/sensor.logi_circle /integrations/logi_circle#sensor
/components/sensor.london_air /integrations/london_air
@ -1513,7 +1512,6 @@
/components/limitlessled /integrations/limitlessled
/components/linksys_ap /integrations/linksys_ap
/components/linksys_smart /integrations/linksys_smart
/components/linky /integrations/linky
/components/linode /integrations/linode
/components/linux_battery /integrations/linux_battery
/components/lirc /integrations/lirc

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 127 KiB