Merge branch 'rc' into current
@ -100,9 +100,9 @@ social:
|
||||
|
||||
# Home Assistant release details
|
||||
current_major_version: 0
|
||||
current_minor_version: 101
|
||||
current_patch_version: 3
|
||||
date_released: 2019-11-05
|
||||
current_minor_version: 102
|
||||
current_patch_version: 0
|
||||
date_released: 2019-11-20
|
||||
|
||||
# Either # or the anchor link to latest release notes in the blog post.
|
||||
# Must be prefixed with a # and have double quotes around it.
|
||||
|
@ -97,12 +97,12 @@ This is because we only allow an IP address as a client ID when your IP address
|
||||
If you don't have a valid domain name for your Home Assistant instance, you can modify the `hosts` file on your computer to fake one. On Windows, edit the `C:\Windows\System32\Drivers\etc\hosts` file with administrator privilege, or on Linux the `/etc/hosts` file, and add following entry:
|
||||
|
||||
```text
|
||||
12.34.56.78 hassbian.home
|
||||
12.34.56.78 homeassistant.home
|
||||
```
|
||||
|
||||
Replace `12.34.56.78` with your Home Assistant's public IP address.
|
||||
|
||||
This will allow you to open Home Assistant at `http://hassbian.home:8123/`
|
||||
This will allow you to open Home Assistant at `http://homeassistant.home:8123/`
|
||||
|
||||
### Stuck on Loading data
|
||||
|
||||
|
@ -101,4 +101,4 @@ Of course, if I wanted to make this App or its predecessor reusable, I would hav
|
||||
|
||||
In addition, Apps can write to `AppDaemon`'s log files, and there is a system of constraints that allows you to control when and under what circumstances Apps and callbacks are active to keep the logic clean and simple.
|
||||
|
||||
For full installation instructions, see the [AppDaemon Project Documentation pages](http://appdaemon.readthedocs.io/en/stable/). If you're using Hassbian, then the [Hassbian scripts](https://github.com/home-assistant/hassbian-scripts/blob/dev/docs/suites/appdaemon.md) make it easy to install.
|
||||
For full installation instructions, see the [AppDaemon Project Documentation pages](http://appdaemon.readthedocs.io/en/stable/).
|
||||
|
@ -5,7 +5,7 @@ description: "A guide to remotely accessing Home Assistant and securing the conn
|
||||
|
||||
<div class='note'>
|
||||
|
||||
If you are using Hass.io or Hassbian, do not use this guide. Instead, use the [DuckDNS add-on](/addons/duckdns/) for Hass.io or the [DuckDNS suite](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/duckdns.md) for Hassbian to automatically maintain a subdomain including HTTPS certificates via Let's Encrypt.
|
||||
If you are using Hass.io do not use this guide. Instead, use the [DuckDNS add-on](/addons/duckdns/) for Hass.io.
|
||||
|
||||
</div>
|
||||
|
||||
@ -17,7 +17,7 @@ This guide was added by mf_social on 16/03/2017 and was valid at the time of wri
|
||||
* You want to access your Home Assistant instance when you are away from home (ie, not connected to your local network) and secure it with a TLS/SSL certificate.
|
||||
* You have a basic understanding of the phrases I have used so far.
|
||||
* You are not currently running anything on port 80 on your network (you'd know if you were).
|
||||
* If you are not using Home Assistant on a Debian/Raspian/Hassbian system you will be able to convert any of the terminology I use in to the correct syntax for your system.
|
||||
* If you are not using Home Assistant on a Debian/Raspian system you will be able to convert any of the terminology I use in to the correct syntax for your system.
|
||||
* You understand that this is a 'guide' covering the general application of these things to the general masses and there are things outside of the scope of it, and it does not cover every eventuality (although I have made some notes where people may stumble). Also, I have used some turns of phrase to make it easier to understand for the novice reader which people of advanced knowledge may say is inaccurate. My goal here is to get you through this guide with a satisfactory outcome and have a decent understanding of what you are doing and why, not to teach you advanced internet communication protocols.
|
||||
* Each step presumes you have fully completed the previous step successfully, so if you did an earlier step following a different guide, please ensure that you have not missed anything out that may affect the step you have jumped to, and ensure that you adapt any commands to take in to account different file placements from other guides.
|
||||
|
||||
@ -266,7 +266,7 @@ wget https://dl.eff.org/certbot-auto
|
||||
chmod a+x certbot-auto
|
||||
```
|
||||
|
||||
You might need to stop Home Assistant before continuing with the next step. You can do this via the Web-UI or use the following command if you are running on Hassbian:
|
||||
You might need to stop Home Assistant before continuing with the next step. You can do this via the Web-UI or use the following command if you are running on Raspbian:
|
||||
|
||||
```text
|
||||
sudo systemctl stop home-assistant@homeassistant.service
|
||||
|
@ -63,4 +63,4 @@ http:
|
||||
ssl_key: /etc/letsencrypt/live/mydomain.com/privkey.pem
|
||||
```
|
||||
|
||||
Make sure the files are accessible by the user that runs Home Assistant, eg. `homeassistant` for a HASSbian setup.
|
||||
Make sure the files are accessible by the user that runs Home Assistant.
|
||||
|
@ -31,4 +31,4 @@ HADashboard is a modular, skinnable dashboard for [Home Assistant](/) that is in
|
||||
Glassic Theme
|
||||
</p>
|
||||
|
||||
For full installation instructions see the HADashboard section in the [AppDaemon Project Documentation](http://appdaemon.readthedocs.io/en/stable/DASHBOARD_INSTALL.html). If you're using Hassbian, then the [Hassbian scripts](https://github.com/home-assistant/hassbian-scripts/blob/dev/docs/suites/appdaemon.md) make it easy to install AppDaemon.
|
||||
For full installation instructions see the HADashboard section in the [AppDaemon Project Documentation](http://appdaemon.readthedocs.io/en/stable/DASHBOARD_INSTALL.html).
|
@ -55,7 +55,6 @@ The only installation methods that allow you to use Hass.io Add-ons are the Hass
|
||||
:-----|:-----|:-----
|
||||
[Hass.io](/hassio/installation/)|Raspberry Pi<br>VM|Anybody
|
||||
[Docker](/docs/installation/docker/)|Docker|Anybody already running Docker
|
||||
[Hassbian](/docs/hassbian/installation/)|Raspberry Pi|Those who want a more traditional Linux experience and either have experience with Linux, or intend to learn
|
||||
|
||||
## Alternative installs
|
||||
|
||||
|
@ -1,21 +1,12 @@
|
||||
---
|
||||
title: "Hassbian"
|
||||
description: "Instructions to flash the Home Assistant Hassbian image on a Raspberry Pi."
|
||||
description: "Hassbian image for a Raspberry Pi."
|
||||
redirect_from: /getting-started/hassbian/
|
||||
---
|
||||
|
||||
Hassbian is our customized operating system for the Raspberry Pi Zero, 2,3 and 3B+. It is one of the easiest ways of installing Home Assistant.
|
||||
|
||||
- [Install Hassbian](/docs/hassbian/installation/)
|
||||
- [Customize your installation](/docs/hassbian/customization/)
|
||||
- [Pi specific integrations](/docs/hassbian/integrations/)
|
||||
- [Learn how to perform common tasks](/docs/hassbian/common-tasks/)
|
||||
<div class='note warning'>
|
||||
|
||||
### Activating the virtual environment
|
||||
The Hassbian image is deprecated as of October 2019. Please move to another [installation method](/getting-started/).
|
||||
|
||||
When instructions tell you to activate the virtual environment to install a Python library, or perform some tasks, the following commands will do this:
|
||||
|
||||
```bash
|
||||
sudo -u homeassistant -H -s
|
||||
source /srv/homeassistant/bin/activate
|
||||
```
|
||||
</div>
|
@ -1,135 +0,0 @@
|
||||
---
|
||||
title: "Common tasks on Hassbian"
|
||||
description: "Instructions on how to do common tasks on Hassbian."
|
||||
redirect_from: /docs/hassbian/common-tasks/
|
||||
---
|
||||
|
||||
### Login to the Raspberry Pi
|
||||
|
||||
To login to your Raspberry Pi running Hassbian you're going to be using a ssh client. Depending on your platform there are several alternatives for doing this. Linux and Mac OS generally have a ssh client installed. Windows users are recommended to download and install the ssh client [Putty][ssh-putty].
|
||||
|
||||
Connect to the Raspberry Pi over ssh. Default user name is `pi` and password is `raspberry`.
|
||||
Linux and Mac OS users execute the following command in a terminal.
|
||||
|
||||
```bash
|
||||
ssh pi@ip-address-of-pi
|
||||
```
|
||||
|
||||
Windows users start [Putty][ssh-putty], enter the IP address of the Raspberry Pi in the *Host name* field and port 22 in the *Port* field. Then click *Open* and a terminal window will open. Enter the credentials. Default user name is `pi` and password is `raspberry`.
|
||||
|
||||
Optionally, starting with Windows 10 anniversary update, you can use the built-in '[Bash on Windows][bash-windows]' to use SSH if you have enabled Developer mode and have installed the "Windows Subsystem for Linux (beta)" feature.
|
||||
|
||||
### Start/Stop/Restart Home Assistant
|
||||
|
||||
Log in as the `pi` account and execute the following commands:
|
||||
|
||||
```bash
|
||||
sudo systemctl stop home-assistant@homeassistant.service
|
||||
```
|
||||
|
||||
Replace `stop` with `start` or `restart` to get the desired functionality.
|
||||
To get the current state of the `homeassistant.service` replace `stop` with `status`.
|
||||
|
||||
### Update Home Assistant
|
||||
|
||||
<div class='note'>
|
||||
|
||||
You can use `hassbian-config` to automate the process by running `sudo hassbian-config upgrade homeassistant`
|
||||
|
||||
</div>
|
||||
|
||||
Log in as the `pi` account and execute the following commands:
|
||||
|
||||
```bash
|
||||
sudo systemctl stop home-assistant@homeassistant.service
|
||||
sudo -u homeassistant -H -s
|
||||
source /srv/homeassistant/bin/activate
|
||||
pip3 install --upgrade homeassistant
|
||||
exit
|
||||
sudo systemctl start home-assistant@homeassistant.service
|
||||
```
|
||||
|
||||
This will in order do the following:
|
||||
|
||||
- Stop the Home Assistant service running on Hassbian
|
||||
- Open a shell as the `homeassistant` user running the Homeassistant service and that has ownership over the Home Assistant installation.
|
||||
- Change into the virtual Python environment at `/srv/homeassistant/` containing the Home Assistant installation.
|
||||
- Upgrade the Home Assistant installation to the latest release.
|
||||
- Exit the shell and return to the `pi` user.
|
||||
- Start the Home Assistant service.
|
||||
|
||||
### Manually launch Home Assistant
|
||||
|
||||
Log in as the `pi` account and execute the following commands:
|
||||
|
||||
```bash
|
||||
sudo -u homeassistant -H -s
|
||||
source /srv/homeassistant/bin/activate
|
||||
hass
|
||||
```
|
||||
|
||||
This will start Home Assistant in your shell and output anything that ends up in the log and more into the console. This will fail if the Home Assistant service is already running so don't forget to [stop][stop-homeassistant] it first. If you want the log output to be colored, execute `hass --script check_config` first. This will install the `colorlog` module.
|
||||
|
||||
### Check your configuration
|
||||
|
||||
Log in as the `pi` account and execute the following commands:
|
||||
|
||||
```bash
|
||||
sudo -u homeassistant -H -s
|
||||
source /srv/homeassistant/bin/activate
|
||||
hass --script check_config
|
||||
```
|
||||
|
||||
This will output any errors in your configuration files to console.
|
||||
|
||||
### Read the Home Assistant log file
|
||||
|
||||
Log in as the `pi` account and execute the following commands:
|
||||
|
||||
```bash
|
||||
sudo -u homeassistant -H -s
|
||||
cd /home/homeassistant/.homeassistant
|
||||
nano home-assistant.log
|
||||
```
|
||||
|
||||
This will in order do the following:
|
||||
|
||||
- Open a shell as the `homeassistant` user.
|
||||
- Change directory to the Home Assistant configuration directory.
|
||||
- Open the log file in the nano editor.
|
||||
|
||||
Optionally, you can also view the log with `journalctl`.
|
||||
Log in as the `pi` account and execute the following commands:
|
||||
|
||||
```bash
|
||||
sudo journalctl -fu home-assistant@homeassistant.service
|
||||
```
|
||||
|
||||
### Edit the Home Assistant configuration
|
||||
|
||||
Log in as the `pi` account and execute the following commands:
|
||||
|
||||
```bash
|
||||
sudo -u homeassistant -H -s
|
||||
cd /home/homeassistant/.homeassistant
|
||||
nano configuration.yaml
|
||||
```
|
||||
|
||||
This will in order do the following:
|
||||
|
||||
- Open a shell as the `homeassistant` user.
|
||||
- Change directory to the Home Assistant configuration directory.
|
||||
- Open the configuration file in the nano editor.
|
||||
|
||||
It's generally recommended that you read the [Getting started][configuring-homeassistant] guide for how to configure Home Assistant.
|
||||
|
||||
### Change locale, timezone and keyboard layout
|
||||
|
||||
```bash
|
||||
sudo raspi-config
|
||||
```
|
||||
|
||||
[configuring-homeassistant]: /getting-started/configuration/
|
||||
[ssh-putty]: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
|
||||
[stop-homeassistant]: /docs/installation/hassbian/common-tasks/#startstoprestart-home-assistant
|
||||
[bash-windows]: https://msdn.microsoft.com/en-us/commandline/wsl/about
|
@ -1,55 +0,0 @@
|
||||
---
|
||||
title: "Customization"
|
||||
description: "Instructions to flash the Home Assistant Hassbian image on a Raspberry Pi."
|
||||
redirect_from: /docs/hassbian/customization/
|
||||
---
|
||||
|
||||
To allow you to customize your installation further, we have included a tool called `hassbian-config`. This tool comes with a set of suites that can easily be installed or upgraded for easier customization of your Home Assistant installation.
|
||||
The tool is available by running `hassbian-config`.
|
||||
|
||||
### Install scripts
|
||||
|
||||
To view the available suites run `hassbian-config show` or have a look at the [hassbian-scripts repository][hassbian-repo].
|
||||
These are some of the available suites:
|
||||
|
||||
- [AppDaemon](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/appdaemon.md)
|
||||
- [Cloud9](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/cloud9.md)
|
||||
- [Custom Component Store](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/custom-component-store.md)
|
||||
- [Fail2Ban](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/fail2ban.md) **This suite can't be installed on Raspberry Pi Zero**
|
||||
- [Duck DNS](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/duckdns.md) _This can also be configured to generate Let's Encrypt SSL certificates_
|
||||
- [Hue](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/hue.md)
|
||||
- [Hassbian Manager](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/manager.md) is a web UI tool that can help you manage your suites.
|
||||
- [Mosquitto](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/mosquitto.md)
|
||||
- [Pi-hole](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/pihole.md)
|
||||
- [Razberry](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/razberry.md)
|
||||
- [Samba](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/samba.md)
|
||||
- [Trådfri](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/tradfri.md)
|
||||
- [Webterminal](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/webterminal.md)
|
||||
- [Zigbee2mqtt](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/zigbee2mqtt.md)
|
||||
- Various database engines.
|
||||
- [MariaDB](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/mariadb.md)
|
||||
- [PostgreSQL](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/postgresql.md)
|
||||
- [MS SQL](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/mssql.md)
|
||||
|
||||
To install any of them simply run `sudo hassbian-config install SUITE`.
|
||||
|
||||
### Upgrade scripts
|
||||
|
||||
To view the available suites run `hassbian-config show` or have a look at the [hassbian-scripts repository][hassbian-repo].
|
||||
These are some of the available suites:
|
||||
|
||||
- [AppDaemon](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/appdaemon.md)
|
||||
- [Cloud9](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/cloud9.md)
|
||||
- [Custom Component Store](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/custom-component-store.md)
|
||||
- [Hassbian](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/hassbian.md)
|
||||
- [Hassbian Manager](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/manager.md)
|
||||
- [Home Assistant](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/homeassistant.md)
|
||||
- [hassbian-config (hassbian-scripts)](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/hassbian_config.md)
|
||||
- [Python](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/python.md)
|
||||
|
||||
To upgrade any of them simply run `sudo hassbian-config upgrade SUITE`.
|
||||
|
||||
For more information about this tool have a look at the [hassbian-scripts repository][hassbian-repo].
|
||||
|
||||
[hassbian-repo]: https://github.com/home-assistant/hassbian-scripts
|
||||
[cec]: /integrations/hdmi_cec/
|
@ -1,126 +0,0 @@
|
||||
---
|
||||
title: "Installing Hassbian"
|
||||
description: "Instructions to flash the Home Assistant Hassbian image on a Raspberry Pi."
|
||||
redirect_from: /docs/hassbian/installation/
|
||||
---
|
||||
|
||||
One of the easiest ways to install Home Assistant on your Raspberry Pi Zero, 2, 3 and 3B+ is by using Hassbian: a Raspberry Pi image with Home Assistant built-in. The image will install the latest version of Home Assistant on initial boot (~10 minutes).
|
||||
|
||||
1. [Download the Hassbian image][image-download]
|
||||
2. Use [balenaEtcher][balenaEtcher] to flash the image to your SD card. We recommend at least a 32 GB SD card to avoid running out of space.
|
||||
3. Ensure your Raspberry Pi has wired access to the internet for the entire process or configure your [wireless network settings](#wireless-network) **before proceeding to step 4**.
|
||||
4. Insert SD card to Raspberry Pi and turn it on. Initial installation of Home Assistant will take about 10 minutes.
|
||||
|
||||
<div class='note warning'>
|
||||
|
||||
Please remember to ensure you're using an [appropriate power supply](https://www.raspberrypi.org/documentation/faqs/#pi-power) with your Pi. Mobile chargers may not be suitable since some were only designed to provide just enough power to the device it was designed for by the manufacturer. **Do not** try to power the Pi from the USB port on a TV, computer, or similar.
|
||||
|
||||
</div>
|
||||
|
||||
These instructions are also available as a [video](https://www.youtube.com/watch?v=iIz6XqDwHEk).
|
||||
Additional information is available in this [video](https://www.youtube.com/watch?v=tCGlQSsQ-Mc).
|
||||
|
||||
After initial boot an installer will run in the background, this will download and install the newest version of [hassbian-config](https://github.com/home-assistant/hassbian-scripts) and Home-Assistant, this takes around 10 minutes to complete, after it has finished, you will be prompted to login: `hassbian login:`. Installation is complete at this point. The default username is `pi` and the password is `raspberry`.
|
||||
|
||||
Open a browser on a device that's connected to the same network as your Raspberry Pi and point it to Home Assistant at `http://hassbian.local:8123`. If you want to login via SSH, the default username is `pi` and password is `raspberry` (please change this by running `passwd`). The Home Assistant configuration is located at `/home/homeassistant/.homeassistant/`.
|
||||
|
||||
If you find that the web page is not reachable after 30 minutes or so, check that you have files in `/home/homeassistant/.homeassistant/`, if there are no files in this location then run the installer manually using this command: `sudo systemctl start install_homeassistant.service`.
|
||||
|
||||
|
||||
The following extras are included on the image:
|
||||
|
||||
- GPIO pins are ready to use.
|
||||
- Bluetooth is ready to use (supported models only, no Bluetooth LE).
|
||||
- SSH server is enabled.
|
||||
- A tool called [`hassbian-config`](https://github.com/home-assistant/hassbian-scripts#hassbian-scripts).
|
||||
|
||||
### Wireless Network
|
||||
|
||||
After flashing the image to your SD Card open the partition `boot` and create a new file `wpa_supplicant.conf`. Edit the file and enter your network credentials. For more information visit [Setting up WiFi for Raspbian][wifi-setup]. During start the file will automatically be copied in the right folder and the network connection will be established. The file could look like this:
|
||||
|
||||
```conf
|
||||
country=SE
|
||||
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
|
||||
update_config=1
|
||||
|
||||
network={
|
||||
ssid="YOUR_SSID"
|
||||
psk="YOUR_PASSWORD"
|
||||
}
|
||||
```
|
||||
|
||||
You may need to adjust the country code depending upon where you are. A list of codes can be found [here](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements).
|
||||
|
||||
If you are using a [hidden SSID](https://en.wikipedia.org/wiki/Network_cloaking) for your WiFi network , you must add `scan_ssid=1` to the `network` section to be able to connect.
|
||||
|
||||
If you are running in trouble with your WiFi connection (for [further details](https://www.raspberrypi.org/forums/viewtopic.php?t=207882)), check the output of the following command:
|
||||
|
||||
```bash
|
||||
$ sudo rfkill list
|
||||
0: phy0: Wireless LAN
|
||||
Soft blocked: yes
|
||||
Hard blocked: no
|
||||
```
|
||||
|
||||
To unblock it, execute `$ sudo rfkill unblock wifi`.
|
||||
|
||||
### Technical Details
|
||||
|
||||
- Home Assistant is installed in a virtual Python environment at `/srv/homeassistant/`
|
||||
- Home Assistant will be started as a service run by the user `homeassistant`
|
||||
- The configuration is located at `/home/homeassistant/.homeassistant`
|
||||
|
||||
[image-download]: https://github.com/home-assistant/pi-gen/releases/latest
|
||||
[balenaEtcher]: https://www.balena.io/etcher
|
||||
[http://hassbian.local:8123]: http://hassbian.local:8123
|
||||
[wifi-setup]: https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md
|
||||
|
||||
## Updating
|
||||
|
||||
The [Hassbian Scripts](https://github.com/home-assistant/hassbian-scripts) are the easiest way of updating both the host operating system, and Home Assistant.
|
||||
|
||||
### Updating Home Assistant
|
||||
|
||||
SSH to your system as the user `pi` and run:
|
||||
|
||||
```bash
|
||||
$ sudo hassbian-config upgrade homeassistant
|
||||
```
|
||||
|
||||
### Updating the host operating system
|
||||
|
||||
SSH to your system as the user `pi` and run:
|
||||
|
||||
```bash
|
||||
$ sudo hassbian-config upgrade hassbian
|
||||
```
|
||||
|
||||
## Run a specific version
|
||||
|
||||
In the event that a Home Assistant version doesn't play well with your hardware setup, you can downgrade to a previous release. For example:
|
||||
|
||||
```bash
|
||||
$ sudo hassbian-config upgrade homeassistant=0.XX.X
|
||||
```
|
||||
|
||||
#### Run the beta version
|
||||
|
||||
If you would like to test next release before anyone else, you can install the beta version released every two weeks, for example:
|
||||
|
||||
```bash
|
||||
$ sudo hassbian-config upgrade homeassistant --beta
|
||||
```
|
||||
|
||||
## Run the development version
|
||||
|
||||
If you want to stay on the bleeding-edge Home Assistant development branch, you can upgrade to `dev`.
|
||||
|
||||
<div class='note warning'>
|
||||
The "dev" branch is likely to be unstable. Potential consequences include loss of data and instance corruption.
|
||||
</div>
|
||||
|
||||
For example:
|
||||
|
||||
```bash
|
||||
$ sudo hassbian-config upgrade homeassistant --dev
|
||||
```
|
@ -1,50 +0,0 @@
|
||||
---
|
||||
title: "Raspberry Pi integrations"
|
||||
description: "Home Assistant integrations specific to the Raspberry Pi."
|
||||
redirect_from: /docs/hassbian/integrations/
|
||||
---
|
||||
|
||||
Some integrations that are specific for the Raspberry Pi can require some further configuration outside of Home Assistant. All commands below are assumed to be executed with the `pi` account. For full documentation of these integrations refer to the [integrations](/components) page.
|
||||
|
||||
### Bluetooth Tracker
|
||||
|
||||
The Bluetooth tracker will work on a Raspberry Pi 3 with the built-in Bluetooth module or with a USB Bluetooth device on any of the other Raspberry Pi's.
|
||||
|
||||
Software needed for the tracker is pre-installed so just follow the [Bluetooth Tracker integration](/integrations/bluetooth_tracker/) and [Device Tracker page](/integrations/device_tracker/) pages.
|
||||
|
||||
### Raspberry Pi GPIO
|
||||
|
||||
Each of the following devices are connected to the GPIO pins on the Raspberry Pi.
|
||||
For more details about the GPIO layout, visit the [documentation](https://www.raspberrypi.org/documentation/usage/gpio/) from the Raspberry Pi foundation.
|
||||
|
||||
Permission have been given to the `homeassistant` user to use the GPIO pins and all of the following integrations should require no underlying changes to work.
|
||||
Just follow the integration pages for each on how to add them to your Home Assistant installation.
|
||||
|
||||
- [DHT Sensor](/integrations/dht/)
|
||||
- [Raspberry Pi Cover](/integrations/rpi_gpio/#cover)
|
||||
- [Raspberry Pi GPIO Binary Sensor](/integrations/rpi_gpio/#binary-sensor)
|
||||
- [Raspberry Pi GPIO Switch](/integrations/rpi_gpio/#switch)
|
||||
- [Raspberry Pi RF Switch](/integrations/rpi_rf/)
|
||||
|
||||
### Raspberry Pi Camera
|
||||
|
||||
The Raspberry Pi Camera is a specific camera for the Raspberry Pi boards. For more information about the camera I suggest reading the [documentation](https://www.raspberrypi.org/documentation/usage/camera/) from the Raspberry Pi foundation.
|
||||
|
||||
To use the camera it needs to be enabled with the `raspi-config` utility.
|
||||
|
||||
```bash
|
||||
$ sudo raspi-config
|
||||
```
|
||||
|
||||
Go to `Interfacing Options`, select `Enable camera` choose `<Yes>` and hit `Enter`, then go to `Finish` and you'll be prompted to reboot.
|
||||
|
||||
After this follow the [Raspberry Pi Camera integration](/integrations/rpi_camera/) page.
|
||||
|
||||
### One wire Sensor
|
||||
|
||||
The One wire sensor requires that support for it is enabled on the Raspberry Pi and that the One Wire device is connected to GPIO pin 4.
|
||||
To enable One Wire support add the following line to the end of `/boot/config.txt`
|
||||
```yaml
|
||||
dtoverlay=w1-gpio
|
||||
```
|
||||
After this follow the [One Wire Sensor integration](/integrations/onewire/) page.
|
@ -1,32 +0,0 @@
|
||||
---
|
||||
title: "Upgrading Hassbian"
|
||||
description: "Instructions on how to upgrade Hassbian to the latest version."
|
||||
redirect_from: /docs/hassbian/upgrading/
|
||||
---
|
||||
|
||||
Hassbian is based on Raspbian and uses the same repositories. Any changes to Raspbian will be reflected in Hassbian. To update and upgrade system packages and installed software (excluding Home Assistant) do the following.
|
||||
Log in as the `pi` account and execute the following commands:
|
||||
|
||||
```bash
|
||||
sudo apt-get update
|
||||
sudo apt-get -y upgrade
|
||||
```
|
||||
|
||||
#### Updating Home Assistant
|
||||
|
||||
<div class='note'>
|
||||
|
||||
You can use `hassbian-config` to automate the process by running `sudo hassbian-config upgrade homeassistant`
|
||||
|
||||
</div>
|
||||
|
||||
To update the Home Assistant installation execute the following command as the `pi` user.
|
||||
|
||||
```bash
|
||||
sudo systemctl stop home-assistant@homeassistant.service
|
||||
sudo -u homeassistant -H -s
|
||||
source /srv/homeassistant/bin/activate
|
||||
pip3 install --upgrade homeassistant
|
||||
exit
|
||||
sudo systemctl start home-assistant@homeassistant.service
|
||||
```
|
@ -6,7 +6,7 @@ redirect_from: /getting-started/updating/
|
||||
|
||||
<div class='note warning'>
|
||||
|
||||
The upgrade process differs depending on the installation you have, so please review the documentation that is specific to your install [Hass.io](/hassio/), [Hassbian](/docs/installation/hassbian/common-tasks/#update-home-assistant), or [Virtualenv](/docs/installation/virtualenv/#upgrading-home-assistant).
|
||||
The upgrade process differs depending on the installation you have, so please review the documentation that is specific to your install [Hass.io](/hassio/) or [Virtualenv](/docs/installation/virtualenv/#upgrading-home-assistant).
|
||||
|
||||
</div>
|
||||
|
||||
@ -14,7 +14,7 @@ Check what's new in the latest version and potentially impacts your system in [H
|
||||
|
||||
<div class='note'>
|
||||
|
||||
To avoid permission errors, the upgrade must be run as the same user as the installation was completed, again review the documentation specific to your install [Hass.io](/hassio/), [Hassbian](/docs/hassbian/installation/), or [Virtualenv](/docs/installation/virtualenv).
|
||||
To avoid permission errors, the upgrade must be run as the same user as the installation was completed, again review the documentation specific to your install [Hass.io](/hassio/) or [Virtualenv](/docs/installation/virtualenv).
|
||||
|
||||
</div>
|
||||
|
||||
|
88
source/_docs/scene.markdown
Normal file
@ -0,0 +1,88 @@
|
||||
---
|
||||
title: "Scenes"
|
||||
description: "Instructions on how to setup scenes within Home Assistant."
|
||||
---
|
||||
|
||||
You can create scenes that capture the states you want certain entities to be. For example, a scene can specify that light A should be turned on and light B should be bright red.
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
scene:
|
||||
- name: Romantic
|
||||
entities:
|
||||
light.tv_back_light: on
|
||||
light.ceiling:
|
||||
state: on
|
||||
xy_color: [0.33, 0.66]
|
||||
brightness: 200
|
||||
- name: Movies
|
||||
entities:
|
||||
light.tv_back_light:
|
||||
state: on
|
||||
brightness: 125
|
||||
light.ceiling: off
|
||||
media_player.sony_bravia_tv:
|
||||
state: on
|
||||
source: HDMI 1
|
||||
state: on
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Friendly name of scene.
|
||||
required: true
|
||||
type: string
|
||||
entities:
|
||||
description: Entities to control and their desired state.
|
||||
required: true
|
||||
type: list
|
||||
{% endconfiguration %}
|
||||
|
||||
As you can see, there are two ways to define the states of each `entity_id`:
|
||||
|
||||
- Define the `state` directly with the entity. Be aware, that `state` needs to be defined.
|
||||
- Define a complex state with its attributes. You can see all attributes available for a particular entity under `developer-tools -> state`.
|
||||
|
||||
Scenes can be activated using the service `scene.turn_on` (there is no 'scene.turn_off' service).
|
||||
|
||||
```yaml
|
||||
# Example automation
|
||||
automation:
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: device_tracker.sweetheart
|
||||
from: "not_home"
|
||||
to: "home"
|
||||
action:
|
||||
service: scene.turn_on
|
||||
entity_id: scene.romantic
|
||||
```
|
||||
|
||||
## Applying a scene without defining it
|
||||
|
||||
With the `scene.apply` service you are able to apply a scene without first defining it via configuration. Instead, you pass the states as part of the service data. The format of the data is the same as the `entities` field in a configuration.
|
||||
|
||||
```yaml
|
||||
# Example automation
|
||||
automation:
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: device_tracker.sweetheart
|
||||
from: "not_home"
|
||||
to: "home"
|
||||
action:
|
||||
service: scene.apply
|
||||
data:
|
||||
entities:
|
||||
light.tv_back_light:
|
||||
state: on
|
||||
brightness: 100
|
||||
light.ceiling: off
|
||||
media_player.sony_bravia_tv:
|
||||
state: on
|
||||
source: HDMI 1
|
||||
```
|
||||
|
||||
## Reloading scenes
|
||||
|
||||
Whenever you make a change to your scene configuration, you can call the `scene.reload` service to reload the scenes.
|
77
source/_docs/scene/editor.markdown
Normal file
@ -0,0 +1,77 @@
|
||||
---
|
||||
title: "Scenes Editor"
|
||||
description: "Instructions on how to use the scenes editor."
|
||||
---
|
||||
|
||||
In Home Assistant 0.102 we introduced the first version of our scene editor. If you just created a new configuration with Home Assistant, then you're all set! Go to the UI and enjoy.
|
||||
|
||||
From the UI choose **Configuration** which is located in the sidebar, then click on **Scenes** to go to the scene editor. Press the **+** sign in the lower right corner to get started.
|
||||
|
||||
Choose a meaningful name for your scene.
|
||||
|
||||
<p class='img'>
|
||||
<img src='/images/docs/scenes/editor.png' />
|
||||
</p>
|
||||
|
||||
Select all the devices (and/or entities when in advanced mode) you want to include in your scene.
|
||||
The state of your devices will be saved, so it can be restored when you are finished creating your scene.
|
||||
Set the state of the devices to how you want them to be in your scene, this can be done by clicking on it and edit the state from the popup, or any other method that changes the state.
|
||||
On the moment you save the scene, all the states of your devices are stored in the scene.
|
||||
When you leave the editor the states of the devices are restored to the state from before you started editing.
|
||||
|
||||
## Updating your configuration to use the editor
|
||||
|
||||
First, check that you have activated the configuration editor.
|
||||
|
||||
```yaml
|
||||
# Activate the configuration editor
|
||||
config:
|
||||
```
|
||||
|
||||
The scene editor reads and writes to the file `scenes.yaml` in the root of your [configuration](/docs/configuration/) folder.
|
||||
Currently, both the name of this file and its location are fixed.
|
||||
Make sure that you have set up the scene integration to read from it:
|
||||
|
||||
```yaml
|
||||
# Configuration.yaml example
|
||||
scene: !include scenes.yaml
|
||||
```
|
||||
|
||||
If you still want to use your old scene section, add a label to the old entry:
|
||||
|
||||
```yaml
|
||||
scene old:
|
||||
- name: ...
|
||||
```
|
||||
|
||||
You can use the `scene:` and `scene old:` sections at the same time:
|
||||
|
||||
- `scene old:` to keep your manual designed scenes
|
||||
- `scene:` to save the scene created by the online editor
|
||||
|
||||
```yaml
|
||||
scene: !include scenes.yaml
|
||||
scene old: !include_dir_merge_list scenes
|
||||
```
|
||||
|
||||
## Migrating your scenes to `scenes.yaml`
|
||||
|
||||
If you want to migrate your old scenes to use the editor, you'll have to copy them to `scenes.yaml`. Make sure that `scenes.yaml` remains a list! For each scene that you copy over, you'll have to add an `id`. This can be any string as long as it's unique.
|
||||
|
||||
For example:
|
||||
|
||||
```yaml
|
||||
# Example scenes.yaml entry
|
||||
- id: my_unique_id # <-- Required for editor to work.
|
||||
name: Romantic
|
||||
entities:
|
||||
light.tv_back_light: on
|
||||
light.ceiling:
|
||||
state: on
|
||||
xy_color: [0.33, 0.66]
|
||||
brightness: 200
|
||||
```
|
||||
|
||||
<div class='note'>
|
||||
Any comments in the YAML file will be lost and templates will be reformatted when you update an automation via the editor.
|
||||
</div>
|
@ -80,8 +80,6 @@ at this point simply add your user (homeassistant) to the dialout group:
|
||||
$ sudo usermod -a -G dialout homeassistant
|
||||
```
|
||||
|
||||
Finally, reboot again to make those changes active. It's has been tested on hassbian and has been reported that this is also required on the Pi2.
|
||||
|
||||
<div class='note'>
|
||||
|
||||
If you've installed the Z-Way software, you'll need to ensure you disable it before you install Home Assistant or you won't be able to access the board. Do this with `sudo /etc/init.d/z-way-server stop; sudo update-rc.d z-way-server disable`.
|
||||
|
@ -142,23 +142,13 @@ ls -1tr /dev/tty*|tail -n 1
|
||||
|
||||
The `modemmanager` package will interfere with any Z-Wave (or Zigbee) stick and should be removed or disabled. Failure to do so will result in random failures of those components. For example you can disable with `sudo systemctl disable ModemManager` and remove with `sudo apt-get purge modemmanager`
|
||||
|
||||
### Hassbian
|
||||
|
||||
You do not need to install any software to use Z-Wave.
|
||||
|
||||
To find the path of your Z-Wave USB stick, disconnect it and then reconnect it to your system and run:
|
||||
|
||||
```bash
|
||||
ls -1tr /dev/tty*|tail -n 1
|
||||
```
|
||||
|
||||
### Community install methods
|
||||
|
||||
#### Raspberry Pi specific
|
||||
|
||||
On the Raspberry Pi you will need to enable the serial interface in the `raspi-config` tool before you can add Z-Wave to Home Assistant. Make sure to reboot the Raspberry Pi for the setting to take effect.
|
||||
|
||||
#### Linux (except Hassbian)
|
||||
#### Linux
|
||||
|
||||
On Debian Linux platforms there are dependencies you will need to have installed ahead of time (included in `systemd-devel` on Fedora/RHEL systems):
|
||||
|
||||
@ -276,7 +266,7 @@ If you're getting errors like:
|
||||
|
||||
openzwave-embed/open-zwave-master/libopenzwave.a: No such file or directory
|
||||
|
||||
Then the problem is that you're missing `libudev-dev` (or the equivalent for your distribution), please [install it](/docs/z-wave/installation/#linux-except-hassbian).
|
||||
Then the problem is that you're missing `libudev-dev` (or the equivalent for your distribution), please [install it](/docs/z-wave/installation/#linux).
|
||||
|
||||
### Random failures
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
<section class="aside-module grid__item one-whole lap-one-half">
|
||||
<div class='section'>
|
||||
<div class="section">
|
||||
<h1 class="title delta">Topics</h1>
|
||||
<ul class='divided sidebar-menu'>
|
||||
<ul class="divided sidebar-menu">
|
||||
<li>
|
||||
<b>{% active_link /faq/ FAQ %}</b> |
|
||||
<b>{% active_link /docs/glossary/ Glossary %}</b>
|
||||
@ -10,20 +10,35 @@
|
||||
<b>{% active_link /docs/installation/ Installation %}</b>
|
||||
<ul>
|
||||
<li>{% active_link /hassio/ Hass.io %}</li>
|
||||
<li>{% active_link /docs/installation/hassbian/ Hassbian %}</li>
|
||||
<li>{% active_link /docs/installation/updating/ Updating %}</li>
|
||||
<li>{% active_link /docs/installation/troubleshooting/ Troubleshooting %}</li>
|
||||
<li>
|
||||
{% active_link /docs/installation/troubleshooting/ Troubleshooting
|
||||
%}
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<b>{% active_link /docs/configuration/ Configuration %}</b>
|
||||
<ul>
|
||||
<li>{% active_link /docs/configuration/yaml/ YAML %}</li>
|
||||
<li>{% active_link /docs/configuration/basic/ Basic information %}</li>
|
||||
<li>{% active_link /docs/configuration/devices/ Setting up devices %}</li>
|
||||
<li>{% active_link /docs/configuration/customizing-devices/ Customizing entities %}</li>
|
||||
<li>{% active_link /docs/configuration/troubleshooting/ Troubleshooting %}</li>
|
||||
<li>{% active_link /docs/configuration/securing/ Security Check Points %}</li>
|
||||
<li>
|
||||
{% active_link /docs/configuration/basic/ Basic information %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/configuration/devices/ Setting up devices %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/configuration/customizing-devices/ Customizing
|
||||
entities %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/configuration/troubleshooting/ Troubleshooting
|
||||
%}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/configuration/securing/ Security Check Points
|
||||
%}
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
@ -31,25 +46,43 @@
|
||||
<ul>
|
||||
<li>{% active_link /docs/configuration/remote/ Remote access %}</li>
|
||||
<li>{% active_link /docs/configuration/packages/ Packages %}</li>
|
||||
<li>{% active_link /docs/configuration/splitting_configuration/ Splitting up the configuration %}</li>
|
||||
<li>{% active_link /docs/configuration/secrets/ Storing Secrets %}</li>
|
||||
<li>
|
||||
{% active_link /docs/configuration/splitting_configuration/
|
||||
Splitting up the configuration %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/configuration/secrets/ Storing Secrets %}
|
||||
</li>
|
||||
<li>{% active_link /docs/configuration/templating/ Templating %}</li>
|
||||
<li>{% active_link /docs/configuration/group_visibility/ Group Visibility %}</li>
|
||||
<li>{% active_link /docs/configuration/platform_options/ Entity component platform options %}</li>
|
||||
<li>
|
||||
{% active_link /docs/configuration/group_visibility/ Group
|
||||
Visibility %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/configuration/platform_options/ Entity
|
||||
component platform options %}
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<b>{% active_link /docs/authentication/ Authentication %}</b>
|
||||
<ul>
|
||||
<li>{% active_link /docs/authentication/providers/ Auth Providers %}</li>
|
||||
<li>{% active_link /docs/authentication/multi-factor-auth/ Multi Factor Auth %}</li>
|
||||
<li>
|
||||
{% active_link /docs/authentication/providers/ Auth Providers %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/authentication/multi-factor-auth/ Multi Factor
|
||||
Auth %}
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<b>Core objects</b>
|
||||
<ul>
|
||||
<li>{% active_link /docs/configuration/events/ Events %}</li>
|
||||
<li>{% active_link /docs/configuration/state_object/ State Objects %}</li>
|
||||
<li>
|
||||
{% active_link /docs/configuration/state_object/ State Objects %}
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
@ -61,14 +94,21 @@
|
||||
<li>{% active_link /docs/automation/condition/ Conditions %}</li>
|
||||
<li>{% active_link /docs/automation/action/ Actions %}</li>
|
||||
<li>{% active_link /docs/automation/templating/ Templates %}</li>
|
||||
<li>{% active_link /docs/automation/troubleshooting/ Troubleshooting %}</li>
|
||||
<li>
|
||||
{% active_link /docs/automation/troubleshooting/ Troubleshooting %}
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<b>{% active_link /docs/frontend/ Frontend %}</b>
|
||||
<ul>
|
||||
<li>{% active_link /docs/frontend/mobile/ Android/iOS Homescreen %}</li>
|
||||
<li>{% active_link /docs/frontend/browsers/ Browser Compatibility List %}</li>
|
||||
<li>
|
||||
{% active_link /docs/frontend/mobile/ Android/iOS Homescreen %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/frontend/browsers/ Browser Compatibility List
|
||||
%}
|
||||
</li>
|
||||
<li>{% active_link /lovelace Lovelace UI %}</li>
|
||||
</ul>
|
||||
</li>
|
||||
@ -88,6 +128,13 @@
|
||||
<li>{% active_link /docs/scripts/editor/ Editor %}</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<b>{% active_link /docs/scene/ Scenes %}</b>
|
||||
<ul>
|
||||
<li>{% active_link /docs/scene/editor/ Editor %}</li>
|
||||
<li>{% active_link /docs/scene/scenegen/ scenegen %}</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<b>{% active_link /docs/tools/ Tools and Helpers %}</b>
|
||||
<ul>
|
||||
@ -103,21 +150,40 @@
|
||||
<li>
|
||||
<b>{% active_link /docs/security/ Security %}</b>
|
||||
<ul>
|
||||
<li>{% active_link /docs/security/webserver/ Web server fingerprint %}</li>
|
||||
<li>
|
||||
{% active_link /docs/security/webserver/ Web server fingerprint %}
|
||||
</li>
|
||||
<li>{% active_link /docs/security/porosity/ Porosity %}</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<b>{% active_link /docs/z-wave/ Z-Wave %}</b>
|
||||
<ul>
|
||||
<li>{% active_link /docs/z-wave/installation/ Configuring the Z-Wave component %}</li>
|
||||
<li>
|
||||
{% active_link /docs/z-wave/installation/ Configuring the Z-Wave
|
||||
component %}
|
||||
</li>
|
||||
<li>{% active_link /docs/z-wave/adding/ Adding devices %}</li>
|
||||
<li>{% active_link /docs/z-wave/control-panel/ The Z-Wave control panel %}</li>
|
||||
<li>
|
||||
{% active_link /docs/z-wave/control-panel/ The Z-Wave control panel
|
||||
%}
|
||||
</li>
|
||||
<li>{% active_link /docs/z-wave/controllers/ Controllers %}</li>
|
||||
<li>{% active_link /docs/z-wave/devices/ Devices %} and {% active_link /docs/z-wave/entities/ Entities %}</li>
|
||||
<li>{% active_link /docs/z-wave/query-stage/ Query Stages %} for devices</li>
|
||||
<li>{% active_link /docs/z-wave/device-specific/ Device Specific %} configuration</li>
|
||||
<li>{% active_link /docs/z-wave/events/ Events %} and {% active_link /docs/z-wave/services/ Services %}</li>
|
||||
<li>
|
||||
{% active_link /docs/z-wave/devices/ Devices %} and {% active_link
|
||||
/docs/z-wave/entities/ Entities %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/z-wave/query-stage/ Query Stages %} for devices
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/z-wave/device-specific/ Device Specific %}
|
||||
configuration
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/z-wave/events/ Events %} and {% active_link
|
||||
/docs/z-wave/services/ Services %}
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
@ -127,7 +193,10 @@
|
||||
<li>{% active_link /docs/mqtt/certificate/ Certificate %}</li>
|
||||
<li>{% active_link /docs/mqtt/discovery/ Discovery %}</li>
|
||||
<li>{% active_link /docs/mqtt/service/ Publish service %}</li>
|
||||
<li>{% active_link /docs/mqtt/birth_will/ Birth and last will messages %}</li>
|
||||
<li>
|
||||
{% active_link /docs/mqtt/birth_will/ Birth and last will messages
|
||||
%}
|
||||
</li>
|
||||
<li>{% active_link /docs/mqtt/testing/ Testing your setup %}</li>
|
||||
<li>{% active_link /docs/mqtt/logging/ Logging %}</li>
|
||||
<li>{% active_link /docs/mqtt/processing_json/ Processing JSON %}</li>
|
||||
@ -136,21 +205,52 @@
|
||||
<li>
|
||||
<b>{% active_link /docs/ecosystem/ios/ iOS %}</b>
|
||||
<ul>
|
||||
<li>{% active_link /docs/ecosystem/ios/notifications/basic/ Basic notifications %}</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/ios/notifications/basic/ Basic
|
||||
notifications %}
|
||||
</li>
|
||||
<ul>
|
||||
<li>{% active_link /docs/ecosystem/ios/notifications/sounds/ Sounds %}</li>
|
||||
<li>{% active_link /docs/ecosystem/ios/notifications/architecture/ Architecture %}</li>
|
||||
<li>{% active_link /docs/ecosystem/ios/notifications/privacy_security_rate_limits/ Privacy, rate limiting and security %}</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/ios/notifications/sounds/ Sounds %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/ios/notifications/architecture/
|
||||
Architecture %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link
|
||||
/docs/ecosystem/ios/notifications/privacy_security_rate_limits/
|
||||
Privacy, rate limiting and security %}
|
||||
</li>
|
||||
</ul>
|
||||
<li>Advanced notifications</li>
|
||||
<ul>
|
||||
<li>{% active_link /docs/ecosystem/ios/notifications/attachments/ Attachments %}</li>
|
||||
<li>{% active_link /docs/ecosystem/ios/notifications/content_extensions/ Dynamic content %}</li>
|
||||
<li>{% active_link /docs/ecosystem/ios/notifications/actions/ Actionable notifications %}</li>
|
||||
<li>{% active_link /docs/ecosystem/ios/notifications/requesting_location_updates/ Requesting location updates %}</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/ios/notifications/attachments/
|
||||
Attachments %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link
|
||||
/docs/ecosystem/ios/notifications/content_extensions/ Dynamic
|
||||
content %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/ios/notifications/actions/
|
||||
Actionable notifications %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link
|
||||
/docs/ecosystem/ios/notifications/requesting_location_updates/
|
||||
Requesting location updates %}
|
||||
</li>
|
||||
</ul>
|
||||
<li>{% active_link /docs/ecosystem/ios/location/ Location Tracking %}</li>
|
||||
<li>{% active_link /docs/ecosystem/ios/integration/ Integration with other apps %}</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/ios/location/ Location Tracking %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/ios/integration/ Integration with
|
||||
other apps %}
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
@ -159,8 +259,12 @@
|
||||
<li>
|
||||
{% active_link /docs/autostart/ Autostart %}
|
||||
<ul>
|
||||
<li>{% active_link /docs/autostart/systemd/ systemd (Linux) %}</li>
|
||||
<li>{% active_link /docs/autostart/upstart/ Upstart (Linux) %}</li>
|
||||
<li>
|
||||
{% active_link /docs/autostart/systemd/ systemd (Linux) %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/autostart/upstart/ Upstart (Linux) %}
|
||||
</li>
|
||||
<li>{% active_link /docs/autostart/init.d/ init.d (Linux) %}</li>
|
||||
<li>{% active_link /docs/autostart/macos/ macOS %}</li>
|
||||
<li>{% active_link /docs/autostart/synology/ Synology NAS %}</li>
|
||||
@ -176,11 +280,21 @@
|
||||
{% active_link /docs/ecosystem/notebooks/ Notebooks %}
|
||||
<ul>
|
||||
<li>{% active_link /docs/ecosystem/notebooks/ Introduction %}</li>
|
||||
<li>{% active_link /docs/ecosystem/notebooks/installation/ Installation %}</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/notebooks/installation/
|
||||
Installation %}
|
||||
</li>
|
||||
<li>{% active_link /docs/ecosystem/notebooks/graph/ Graph %}</li>
|
||||
<li>{% active_link /docs/ecosystem/notebooks/api/ Home Assistant API %}</li>
|
||||
<li>{% active_link /docs/ecosystem/notebooks/database/ Database %}</li>
|
||||
<li>{% active_link /docs/ecosystem/notebooks/stats/ Statistics %}</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/notebooks/api/ Home Assistant API
|
||||
%}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/notebooks/database/ Database %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/notebooks/stats/ Statistics %}
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
@ -190,30 +304,56 @@
|
||||
<li>{% active_link /docs/ecosystem/caddy/ Caddy Server %}</li>
|
||||
<li>{% active_link /docs/ecosystem/haproxy/ HAProxy %}</li>
|
||||
<li>{% active_link /docs/ecosystem/nginx/ NGINX %}</li>
|
||||
<li>{% active_link /docs/ecosystem/nginx_subdomain/ NGINX with subdomain%}</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/nginx_subdomain/ NGINX with
|
||||
subdomain%}
|
||||
</li>
|
||||
<li>{% active_link /docs/ecosystem/tor/ Tor Onion Service %}</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/certificates/ Certificates %}
|
||||
<ul>
|
||||
<li>{% active_link /docs/ecosystem/certificates/tls_self_signed_certificate/ Self-signed certificate %}</li>
|
||||
<li>{% active_link /docs/ecosystem/certificates/tls_domain_certificate/ Certificate domain owners %}</li>
|
||||
<li>{% active_link /docs/ecosystem/certificates/lets_encrypt/ Let's Encrypt (detailed) %}</li>
|
||||
<li>
|
||||
{% active_link
|
||||
/docs/ecosystem/certificates/tls_self_signed_certificate/
|
||||
Self-signed certificate %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link
|
||||
/docs/ecosystem/certificates/tls_domain_certificate/ Certificate
|
||||
domain owners %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/certificates/lets_encrypt/ Let's
|
||||
Encrypt (detailed) %}
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
Backup
|
||||
<ul>
|
||||
<li>{% active_link /docs/ecosystem/backup/backup_github/ Backup to GitHub %}</li>
|
||||
<li>{% active_link /docs/ecosystem/backup/backup_dropbox/ Backup to Dropbox %}</li>
|
||||
<li>{% active_link /docs/ecosystem/backup/backup_usb/ Backup to USB device %}</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/backup/backup_github/ Backup to
|
||||
GitHub %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/backup/backup_dropbox/ Backup to
|
||||
Dropbox %}
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/backup/backup_usb/ Backup to USB
|
||||
device %}
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>{% active_link /docs/ecosystem/scenegen/ scenegen %}</li>
|
||||
<li>{% active_link /docs/ecosystem/synology/ Synology %}</li>
|
||||
<li>{% active_link /docs/ecosystem/hass-configurator/ HASS Configurator %}</li>
|
||||
<li>
|
||||
{% active_link /docs/ecosystem/hass-configurator/ HASS Configurator
|
||||
%}
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
|
48
source/_integrations/air_quality.xiaomi_miio.markdown
Normal file
@ -0,0 +1,48 @@
|
||||
---
|
||||
title: "Xiaomi Air Quality Monitor"
|
||||
description: "Instructions how to integrate your Xiaomi Mi Air Quality Monitor within Home Assistant."
|
||||
logo: xiaomi.png
|
||||
ha_category:
|
||||
- Health
|
||||
ha_iot_class: Local Polling
|
||||
ha_release: 0.102
|
||||
---
|
||||
|
||||
The `xiaomi_miio` sensor platform is observing your Xiaomi Mi Air Quality Monitor and reporting the air quality values.
|
||||
|
||||
Currently, the supported features are:
|
||||
|
||||
- Particulate matter 2.5
|
||||
- Attributes
|
||||
- carbon_dioxide_equivalent
|
||||
- total_volatile_organic_compounds
|
||||
|
||||
Please follow the instructions on [Retrieving the Access Token](/integrations/vacuum.xiaomi_miio/#retrieving-the-access-token) to get the API token.
|
||||
|
||||
## Configuration
|
||||
|
||||
To add a Xiaomi Mi Air Quality Monitor to your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
air_quality:
|
||||
- platform: xiaomi_miio
|
||||
host: IP_ADDRESS
|
||||
token: YOUR_TOKEN
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
host:
|
||||
description: The IP address of your miio device.
|
||||
required: true
|
||||
type: string
|
||||
token:
|
||||
description: The API token of your miio device.
|
||||
required: true
|
||||
type: string
|
||||
name:
|
||||
description: The name of your miio device.
|
||||
required: false
|
||||
type: string
|
||||
default: Xiaomi Miio Air Quality Monitor
|
||||
{% endconfiguration %}
|
68
source/_integrations/almond.markdown
Normal file
@ -0,0 +1,68 @@
|
||||
---
|
||||
title: "Almond"
|
||||
description: "Instructions on how to setup Almond within Home Assistant."
|
||||
logo: almond.png
|
||||
ha_category:
|
||||
- Voice
|
||||
ha_iot_class: Local Polling
|
||||
ha_release: "0.102"
|
||||
---
|
||||
|
||||
[Almond](https://almond.stanford.edu/) is an open, privacy-preserving virtual assistant by [Stanford Open Virtual Assistant Lab](https://oval.cs.stanford.edu/). It allows you, among other things, to control Home Assistant using natural language. Once installed, it will be available on Lovelace via the microphone icon in the top right.
|
||||
|
||||
Almond consists of three parts:
|
||||
|
||||
- Almond Server: Knows about Home Assistant and your data. Executes your sentences.
|
||||
- LUInet: Neural network that converts your sentences into Thingtalk programs.
|
||||
- Thingpedia: Skills that provide the building blocks for Thingtalk programs.
|
||||
|
||||
<a href='/images/integrations/almond/almond-architecture.svg'><img src='/images/integrations/almond/almond-architecture.svg' alt='Architectural overview of how all pieces fit together.' style='border: 0;box-shadow: none;'></a>
|
||||
|
||||
## Installation
|
||||
|
||||
### Hass.io installation
|
||||
|
||||
To install Almond Server on Hass.io, go to Hass.io App Store, search for Almond and click on Install. Once started, it will initiate a config flow to finish set up in Home Assistant. You can find it on the integrations page in the configuration panel.
|
||||
|
||||
### Manual installation
|
||||
|
||||
You can install Almond Server by following [the instructions in their README](https://github.com/stanford-oval/almond-server#running-almond-server).
|
||||
|
||||
Before linking it to Home Assistant, you will need to visit the Almond UI once to create a password. It is by default available on port 3000.
|
||||
|
||||
Once installed, configure Almond like this:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
almond:
|
||||
type: local
|
||||
host: http://127.0.0.1:3000
|
||||
```
|
||||
|
||||
The Almond integration does not update config entries yet. If you make a change to configuration.yaml, you will need to remove the config entry and then restart Home Assistant.
|
||||
|
||||
### Almond Web
|
||||
|
||||
Stanford offers a hosted version of Almond Server called Almond Web. To use this, go to the integrations page and add Almond using the add integration flow.
|
||||
|
||||
### Almond Web - Manual installation
|
||||
|
||||
It is possible to set up Almond Web manually. You will need to create your own client ID and secret in the web interface.
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
almond:
|
||||
type: oauth2
|
||||
client_id: AAAAAAAAAAAAA
|
||||
client_secret: BBBBBBBBBBBBBBBBB
|
||||
```
|
||||
|
||||
You can now go to the integrations page and start the configuration flow.
|
||||
|
||||
## Language Support
|
||||
|
||||
Almond is currently limited to the English language. This is not a technical limitation but requires specialized engineering effort. Almond has currently no public timeline for adding other languages.
|
||||
|
||||
## Device Support
|
||||
|
||||
Almond is constantly improving. It does not currently support all devices, but we're working with Almond on improving this.
|
107
source/_integrations/azure_service_bus.markdown
Normal file
@ -0,0 +1,107 @@
|
||||
---
|
||||
title: "Azure Service Bus"
|
||||
description: "Setup for Azure Service Bus integration"
|
||||
logo: azure_service_bus.svg
|
||||
ha_category:
|
||||
- Notification
|
||||
ha_release: 0.102
|
||||
---
|
||||
|
||||
The `Azure Service Bus` integration allows you to send messages to [Azure Service Bus](https://azure.microsoft.com/en-us/services/service-bus/) from within Home Assistant.
|
||||
|
||||
## First-time setup
|
||||
|
||||
This assumes you already have an Azure account. Otherwise, create a free account [here](https://azure.microsoft.com/en-us/free/).
|
||||
|
||||
You need to create a Service Bus namespace; you can follow [this guide](https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-create-namespace-portal).
|
||||
|
||||
You must then create a Shared Access Policy for the Service Bus with `Send` claims or use the RootManageAccessKey from your namespace (this key has additional claims, including managing the event hub and listening, which are not needed for this purpose), for more details on the security of Service Bus [go here](https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-authentication-and-authorization#shared-access-signature). Alternatively you can create a dedicated key for only one queue or topic, to restrict access to only that queue or topic.
|
||||
|
||||
Once you have the connection string with `Send` policy, you can set up the integration itself.
|
||||
|
||||
<div class='note warning'>
|
||||
|
||||
The queue or topic that you are sending to needs to exists with the service bus namespace before you use it within Home Assistant. See [here](https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-quickstart-portal) for how to set up a queue and [here](https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-quickstart-topics-subscriptions-portal) for setting up a topic and subscriptions.
|
||||
|
||||
</div>
|
||||
|
||||
## Configuration
|
||||
|
||||
Add the following lines to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
notify:
|
||||
- platform: azure_service_bus
|
||||
connection_string: !secret servicebus_connection_string
|
||||
topic: t-test
|
||||
- platform: azure_service_bus
|
||||
connection_string: !secret servicebus_connection_string
|
||||
queue: q-test
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
required: false
|
||||
type: string
|
||||
default: notify
|
||||
connection_string:
|
||||
description: Connection string found in the Azure portal, with `send` claim in the key.
|
||||
required: true
|
||||
type: string
|
||||
queue:
|
||||
description: Which queue to send notifications on.
|
||||
required: exclusive
|
||||
type: string
|
||||
topic:
|
||||
description: Which topic to send notifications on.
|
||||
required: exclusive
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
<div class="note">
|
||||
|
||||
If you plan to send all state changes from one or more entities within Home Assistant, you should consider using the [Azure Event Hub](/integrations/azure_event_hub/) integration instead.
|
||||
|
||||
</div>
|
||||
|
||||
## Usage
|
||||
|
||||
The notification service will translate the data given to a JSON object on the service bus. The `message` field will always be set, but the fields `target` and `title` are optional and are only included in the service bus message if set. Any input given in the `data` section, will be flattened to the root of the JSON object and follow the structure given. All input given in the data section will be included in the message.
|
||||
|
||||
See the example below for how an automation trigger translates to a message on the service bus.
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
- alias: Sunset Service Bus message
|
||||
trigger:
|
||||
platform: sun
|
||||
event: sunset
|
||||
action:
|
||||
service: notify.test_queue
|
||||
data:
|
||||
message: "Sun is going down"
|
||||
title: "Good evening"
|
||||
data:
|
||||
sun_direction: "Down"
|
||||
custom_field: 123
|
||||
custom_object:
|
||||
trigger_more: true
|
||||
explain: "Its starting to get dark"
|
||||
```
|
||||
|
||||
The message that can be retrieved from a queue or topic subscription:
|
||||
|
||||
```json
|
||||
{
|
||||
"message": "Sun is going down",
|
||||
"title": "Good evening",
|
||||
"sun_direction": "Down",
|
||||
"custom_field": 123,
|
||||
"custom_object": {
|
||||
"trigger_more": true,
|
||||
"explain": "Its starting to get dark"
|
||||
}
|
||||
}
|
||||
```
|
@ -149,6 +149,10 @@ temperature_low_state_topic:
|
||||
description: The MQTT topic to subscribe for changes in the target low temperature. If this is not set, the target low temperature works in optimistic mode (see below).
|
||||
required: false
|
||||
type: string
|
||||
temperature_low_state_template:
|
||||
description: A template to render the value received on the `temperature_low_state_topic` with.
|
||||
required: false
|
||||
type: template
|
||||
temperature_high_command_topic:
|
||||
description: The MQTT topic to publish commands to change the high target temperature.
|
||||
required: false
|
||||
@ -157,6 +161,10 @@ temperature_high_state_topic:
|
||||
description: The MQTT topic to subscribe for changes in the target high temperature. If this is not set, the target high temperature works in optimistic mode (see below).
|
||||
required: false
|
||||
type: string
|
||||
temperature_high_state_template:
|
||||
description: A template to render the value received on the `temperature_high_state_topic` with.
|
||||
required: false
|
||||
type: template
|
||||
precision:
|
||||
description: The desired precision for this device. Can be used to match your actual thermostat's precision. Supported values are `0.1`, `0.5` and `1.0`.
|
||||
required: false
|
||||
|
@ -32,15 +32,17 @@ devices:
|
||||
mac_address:
|
||||
required: true
|
||||
description: The bluetooth address of the switch.
|
||||
type: string
|
||||
name:
|
||||
description: The name to use in the frontend.
|
||||
required: false
|
||||
type: string
|
||||
api_key:
|
||||
description: The API key to access the device.
|
||||
required: true
|
||||
type: string
|
||||
type: list
|
||||
keys:
|
||||
name:
|
||||
description: The name to use in the frontend.
|
||||
required: false
|
||||
default: "`mac_address` of this switch"
|
||||
type: string
|
||||
api_key:
|
||||
description: The API key to access the device.
|
||||
required: true
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
<div class='note'>
|
||||
|
@ -64,7 +64,7 @@ Multiple device trackers can be used in parallel, such as [Owntracks](/integrati
|
||||
|
||||
<div class='note warning'>
|
||||
|
||||
As of 0.94 `known_devices.yaml` is being phased out, and no longer used by all trackers. Depending on the integration you use this section may no longer apply. This includes the mobile app, OwnTracks, GeoFency, GPSLogger, and Locative.
|
||||
As of 0.94 `known_devices.yaml` is being phased out and no longer used by all trackers. Depending on the integration you use this section may no longer apply. This includes the mobile app, OwnTracks, GeoFency, GPSLogger, Locative and Huawei LTE.
|
||||
|
||||
</div>
|
||||
|
||||
|
@ -121,18 +121,6 @@ or
|
||||
2001:raw:600:/dev/ttyUSB0:9600 EVEN 1STOPBIT 7DATABITS XONXOFF LOCAL -RTSCTS
|
||||
```
|
||||
|
||||
[HASSbian](/docs/installation/hassbian/installation/) users have to give dialout permission to the user `homeassistant`:
|
||||
|
||||
```bash
|
||||
$ sudo usermod -a -G dialout homeassistant
|
||||
```
|
||||
|
||||
and after that you need to reboot!
|
||||
|
||||
```bash
|
||||
$ sudo reboot
|
||||
```
|
||||
|
||||
Docker users have to allow Docker access to the device by adding `--device /dev/ttyUSB21:/dev/ttyUSB21` to the run command:
|
||||
|
||||
```hass
|
||||
|
@ -14,13 +14,15 @@ The `environment_canada` weather platforms provide meteorological data for Canad
|
||||
|
||||
The following device types and data are supported:
|
||||
|
||||
- [Weather](#weather) - Current conditions and forecasts
|
||||
- [Sensor](#sensor) - Current conditions and alerts
|
||||
- [Camera](#camera) - Radar imagery
|
||||
- [Location Selection](#location-selection)
|
||||
- [Weather](#weather)
|
||||
- [Sensor](#sensor)
|
||||
- [Alert TTS Script](#alert-tts-script)
|
||||
- [Camera](#camera)
|
||||
|
||||
<p class='note'>
|
||||
|
||||
On Raspbian or Hassbian, you may need to manually install additional prerequisites with the following command:
|
||||
On Raspbian you may need to manually install additional prerequisites with the following command:
|
||||
`sudo apt-get install libatlas-base-dev libopenjp2-7`
|
||||
|
||||
</p>
|
||||
@ -172,7 +174,7 @@ camera:
|
||||
```
|
||||
|
||||
<p class='note'>
|
||||
On Raspbian or Hassbian, you may need to manually install additional prerequisites with the following command:
|
||||
On Raspbian you may need to manually install additional prerequisites with the following command:
|
||||
`sudo apt-get install libatlas-base-dev libopenjp2-7`
|
||||
</p>
|
||||
|
||||
|
@ -11,8 +11,7 @@ The `ffmpeg` integration allows other Home Assistant integrations to process vid
|
||||
|
||||
<div class='note'>
|
||||
|
||||
You need the `ffmpeg` binary in your system path. On Hassbian you will need to login as the `pi` user and `sudo apt install ffmpeg`. On Debian 8 or Raspbian (Jessie) you can install it from [debian-backports](https://backports.debian.org/Instructions/). If you want [hardware acceleration](https://trac.ffmpeg.org/wiki/HWAccelIntro) support on a Raspberry Pi, you will need to build from source by yourself. Windows binaries are available on the [FFmpeg](https://www.ffmpeg.org/) website.
|
||||
|
||||
You need the `ffmpeg` binary in your system path. On Debian 8 or Raspbian (Jessie) you can install it from [debian-backports](https://backports.debian.org/Instructions/). If you want [hardware acceleration](https://trac.ffmpeg.org/wiki/HWAccelIntro) support on a Raspberry Pi, you will need to build from source by yourself. Windows binaries are available on the [FFmpeg](http://www.ffmpeg.org/) website.
|
||||
</div>
|
||||
|
||||
<div class='note'>
|
||||
|
@ -8,7 +8,8 @@ ha_iot_class: Local Polling
|
||||
ha_release: 0.64
|
||||
---
|
||||
|
||||
Sensor for monitoring the contents of a folder. Note that folder paths must be added to [whitelist_external_dirs](/docs/configuration/basic/). Optionally a [wildcard filter](https://docs.python.org/3.6/library/fnmatch.html) can be applied to the files considered within the folder. The state of the sensor is the size in MB of files within the folder that meet the filter criteria. The number of filtered files in the folder and total size in bytes of those files are exposed as attributes.
|
||||
Sensor for monitoring the contents of a folder. Note that folder paths must be added to [whitelist_external_dirs](/docs/configuration/basic/). Optionally a [wildcard filter](https://docs.python.org/3.6/library/fnmatch.html) can be applied to the files considered within the folder. The state of the sensor is the size in MB of files within the folder that meet the filter criteria.
|
||||
The sensor exposes the number of filtered files in the folder, total size in bytes of those files and a comma separated list of the file paths as attributes.
|
||||
|
||||
## Configuration
|
||||
|
||||
|
@ -7,24 +7,32 @@ ha_category:
|
||||
- Water Heater
|
||||
- Sensor
|
||||
- Binary Sensor
|
||||
- Switch
|
||||
ha_release: 0.92
|
||||
ha_iot_class: Local Polling
|
||||
---
|
||||
|
||||
The `geniushub` integration links Home Assistant with your Genius Hub CH/DHW system, including its zones, devices, and issues.
|
||||
|
||||
It uses the [geniushub](https://pypi.org/project/geniushub-client/) client library, which provides data compatible with the v1 API that _may not_ necessarily match that of the official Web App.
|
||||
It uses the [geniushub](https://pypi.org/project/geniushub-client/) client library, which provides data compatible with the v1 API that _may not_ exactly match that of the official Web App.
|
||||
|
||||
### Zones
|
||||
|
||||
Each zone controlled by your Genius Hub will be exposed as either a:
|
||||
|
||||
- `Climate` entity, for **Radiator** and **Wet Underfloor** Zones, and
|
||||
- `Water Heater` entity, for **Hot Water Temperature** Zones
|
||||
- `Climate` entity, for **Radiator** and **Wet Underfloor** zones, and
|
||||
- `Water Heater` entity, for **Hot Water Temperature** zones and
|
||||
- `Switch` entity, for **On/Off** zones
|
||||
|
||||
Other zone types, such as **On/Off** zones, are not currently supported (although see `Binary Sensor`s, below).
|
||||
**Group** zones are not supported.
|
||||
|
||||
Each entity derived from a GH zone will report back its mode, setpoint and current temperature; other properties are available via its attributes (see below). The zone's mode can be changed as below.
|
||||
Currently, there is no support for altering zone schedules, although entities can be switched to/from geniushub modes that utilize schedules.
|
||||
|
||||
There are limitations due to the differences between the Genius Hub and Home Assisatnt schemas (e.g. HA has no **Footprint** mode) - see below for more details.
|
||||
|
||||
### Climate and Water Heater Entities
|
||||
|
||||
Climate and Water Heater entities will report their current temperature, setpoint and mode; other properties (e.g. occupied state) are available via their state attributes (see examples below). The Genius Hub mode will be reported as/set to:
|
||||
|
||||
GH mode | HA Operation | HA Preset
|
||||
:---: | :---: | :---:
|
||||
@ -33,18 +41,27 @@ GH mode | HA Operation | HA Preset
|
||||
**Override** | Heat | Boost
|
||||
**Footprint** | Heat | Activity
|
||||
|
||||
Note that `Boost` mode may
|
||||
|
||||
Note that **Footprint** mode is only available to **Radiator** zones that have room sensors.
|
||||
|
||||
Currently, there is no support for reading/altering zone schedules, although a zone can be switched to/from modes that utilize schedules.
|
||||
### Switch Entities
|
||||
|
||||
Switch entities will report back their state; other properties are available via their state attributes. Currently, HA switches do not have modes/presets, so the Home Assistant state will be reported as:
|
||||
|
||||
- `On` for **Override** \ **On**, and
|
||||
- `Off` otherwise (NB: the zone could still be 'on', e.g. with **Timer** mode)
|
||||
|
||||
If you turn a Switch entity `Off` via HA, it will revert to **Timer** mode.
|
||||
|
||||
### Devices
|
||||
|
||||
Each Device controlled by your Genius hub will be exposed as either a:
|
||||
Each Device controlled by your Genius Hub will be exposed as either a:
|
||||
|
||||
- `Sensor` entity with a % battery, for any Device with a battery (e.g., a Genius Valve), or
|
||||
- `Binary Sensor` entity with on/off state for any Device that is a switch (e.g., Smart Plugs, DCRs)
|
||||
|
||||
Each such entity will report back its primary state and `assigned_zone`. If the Hub is directly polled using Option 1 (see below), then some additional attributes such as `last_comms` (last communications time) are also available.
|
||||
Such entities will report back their primary state and `assigned_zone`. If the Hub is directly polled using Option 1 (see below), then some additional state attributes such as `last_comms` (last communications time) are also available.
|
||||
|
||||
### Issues
|
||||
|
||||
@ -89,7 +106,7 @@ This alert may be useful to see if the CH is being turned on whilst you're on a
|
||||
|
||||
## State Attributes
|
||||
|
||||
Many zone/device properties are available via each entity's state attributes. For example, in the case of **Radiator**-derived `Climate` entities (note 'status'):
|
||||
Many zone/device properties are available via the corresponding entity's state attributes. For example, in the case of **Radiator**-derived `Climate` entities (note 'status'):
|
||||
|
||||
```json
|
||||
{
|
||||
@ -148,9 +165,9 @@ This is the recommended option.
|
||||
- Requires your **username** & **password**, as used with [geniushub.co.uk/app](https://www.geniushub.co.uk/app).
|
||||
- Uses the v3 API - unofficial, but there are additional features (e.g., battery levels).
|
||||
- Polls the hub directly (so is faster, say ~1s response time).
|
||||
- You have the option of specifying a MAC address.
|
||||
- You have the option of specifying a MAC address (not recommended, see above).
|
||||
|
||||
The hub does not have to be in the same subnet as HA.
|
||||
The hub does not have to be in the same subnet as your Home Assistant server.
|
||||
|
||||
### Option 2: hub token only
|
||||
|
||||
|
@ -1,34 +0,0 @@
|
||||
---
|
||||
title: "GTT"
|
||||
description: "Instructions on how to integrate timetable data for a GTT stop within Home Assistant."
|
||||
ha_category:
|
||||
- Transport
|
||||
logo: gtt.png
|
||||
ha_iot_class: Cloud Polling
|
||||
ha_release: 0.85
|
||||
---
|
||||
|
||||
|
||||
The `gtt` sensor will give you the departure time of the next bus at the given stop.
|
||||
|
||||
To enable this sensor, add the following lines to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: gtt
|
||||
stop: '1080'
|
||||
bus_name: '58B'
|
||||
```
|
||||
{% configuration %}
|
||||
stop:
|
||||
description: The name of the stop.
|
||||
required: true
|
||||
type: string
|
||||
bus_name:
|
||||
description: The name of the chosen bus.
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
The data is coming from the [gtt.to.it](http://www.gtt.to.it/cms/) website.
|
@ -38,7 +38,7 @@ ln -s /path/to/your/installation/of/_cec.so /path/to/your/venv/lib/python*/site-
|
||||
|
||||
##### Symlinking examples:
|
||||
|
||||
For the default virtual environment of a [HASSbian Image for Raspberry Pi](/docs/installation/raspberry-pi/) the command would be as follows.
|
||||
For the default virtual environment of a [Manual install for Raspberry Pi](/docs/installation/raspberry-pi/) the command would be as follows.
|
||||
|
||||
```bash
|
||||
ln -s /usr/local/lib/python*/dist-packages/cec.py /srv/homeassistant/lib/python*/site-packages
|
||||
|
@ -167,6 +167,7 @@ Within this delay the device registration should be completed in the App, otherw
|
||||
- `homematicip_cloud.deactivate_eco_mode`: Deactivates the eco mode immediately.
|
||||
- `homematicip_cloud.deactivate_vacation`: Deactivates the vacation mode immediately.
|
||||
- `homematicip_cloud.set_active_climate_profile`: Set the active climate profile index.
|
||||
- `homematicip_cloud.dump_hap_config`: Dump the configuration of the Homematic IP Access Point(s).
|
||||
|
||||
### Service Examples
|
||||
|
||||
@ -241,6 +242,16 @@ action:
|
||||
climate_profile_index: 1
|
||||
```
|
||||
|
||||
Dump the configuration of the Homematic IP Access Point(s).
|
||||
|
||||
```yaml
|
||||
...
|
||||
action:
|
||||
service: homematicip_cloud.dump_hap_config
|
||||
data:
|
||||
anonymize: True
|
||||
```
|
||||
|
||||
|
||||
## Additional info
|
||||
|
||||
|
@ -1,28 +1,75 @@
|
||||
---
|
||||
title: "Huawei LTE Routers"
|
||||
description: "Instructions on how to integrate Huawei LTE routers with Home Assistant."
|
||||
title: "Huawei LTE"
|
||||
description: "Instructions on how to integrate Huawei LTE router and modem devices with Home Assistant."
|
||||
logo: huawei.svg
|
||||
ha_category:
|
||||
- Network
|
||||
- Presence Detection
|
||||
- Notifications
|
||||
- Sensor
|
||||
- Switch
|
||||
ha_release: 0.79
|
||||
ha_iot_class: Local Polling
|
||||
---
|
||||
|
||||
The Huawei LTE router integration for Home Assistant allows you to observe and control [Huawei LTE routers](https://consumer.huawei.com/en/smart-home/).
|
||||
The Huawei LTE router and modem integration for Home Assistant allows you to observe and control [Huawei LTE devices](https://consumer.huawei.com/en/smart-home/).
|
||||
|
||||
There is currently support for the following device types within Home Assistant:
|
||||
There is currently support for the following platforms within Home Assistant:
|
||||
|
||||
- [Presence Detection](#presence-detection) - a device tracker for connected devices
|
||||
- [Notifications](#notifications)
|
||||
- [Sensor](#sensor) - with device, signal, and traffic information
|
||||
|
||||
All platform requires you to have set up the [Huawei LTE component](#configuration).
|
||||
- Presence detection - device tracker for connected devices
|
||||
- Notifications - via SMS
|
||||
- Sensors - device, signal, and traffic information
|
||||
- Switch - mobile data on/off
|
||||
|
||||
## Configuration
|
||||
|
||||
The integration can be enabled in two ways, either using the frontend
|
||||
or using YAML. Additionally, if the [SSDP integration](../ssdp/) is
|
||||
enabled in Home Assistant, automatically discovered Huawei LTE devices
|
||||
which support and have UPnP enabled are made available for further
|
||||
optional configuration in the frontend.
|
||||
|
||||
The integration can be run with or without
|
||||
authentication. Authenticated mode enables all available integration
|
||||
features and entities, but may interfere with accessing the device web
|
||||
interface from another source such as a browser while the integration
|
||||
is active or vice versa. The exact list of features requiring
|
||||
authentication to work varies by device and firmware version. The
|
||||
integration will try to use all configured ones and fail gracefully if
|
||||
it detects one requiring authentication in unauthenticated mode.
|
||||
|
||||
Only a subset of the entities provided by the target device by
|
||||
default:
|
||||
|
||||
- WAN IP address sensor
|
||||
- LTE signal sensors RSRQ, RSRP, RSSI, and SINR
|
||||
- mobile data switch
|
||||
- device tracker entries
|
||||
|
||||
The rest are added to the entity registry, but disabled by default.
|
||||
|
||||
Support for different categories of information and thus available
|
||||
entities varies by device model and firmware version.
|
||||
|
||||
### Configuration via the frontend
|
||||
|
||||
Menu: **Configuration** -> **Integrations**.
|
||||
|
||||
Click on the `+` sign to add an integration and click on **Huawei
|
||||
LTE**, and follow the configuration flow. After finishing, the Huawei
|
||||
LTE integration will be available.
|
||||
|
||||
To use unauthenticated mode, leave username and password empty. The
|
||||
integration will then attempt to first use empty strings to
|
||||
authenticate and fall back to unauthenticated mode in case that
|
||||
fails. If this process does not yield desired results, the YAML
|
||||
configuration (see below) is available for more fine grained control.
|
||||
|
||||
Default list of notification recipient phone numbers can be set using
|
||||
the integration's configuration options.
|
||||
|
||||
### Configuration via YAML
|
||||
|
||||
To enable the component, add the following lines to your
|
||||
`configuration.yaml` file:
|
||||
|
||||
@ -30,132 +77,42 @@ To enable the component, add the following lines to your
|
||||
# Example configuration.yaml entry
|
||||
huawei_lte:
|
||||
- url: http://192.168.100.1/
|
||||
username: YOUR_USERNAME
|
||||
password: YOUR_PASSWORD
|
||||
```
|
||||
For routers configured via the UI, each configuration item for the
|
||||
same router in YAML overrides and updates the values set in UI
|
||||
whenever the YAML configuration values are introduced or updated.
|
||||
|
||||
{% configuration %}
|
||||
url:
|
||||
description: URL of the router web interface.
|
||||
description: URL of the device web interface. Typically http://192.168.100.1/ or http://192.168.1.1/.
|
||||
required: true
|
||||
type: string
|
||||
username:
|
||||
description: The username used for the router web interface.
|
||||
required: true
|
||||
description: The username used for the device web interface in authenticated mode. Typically `admin`, or empty string (`""`) for USB stick modems. To use unauthenticated mode, leave this variable out altogether.
|
||||
required: false
|
||||
type: string
|
||||
password:
|
||||
description: The password used for the router web interface.
|
||||
required: true
|
||||
description: The password used for the device web interface in authenticated mode. Typically empty string (`""`) for USB stick modems. To use unauthenticated mode, leave this variable out altogether.
|
||||
required: false
|
||||
type: string
|
||||
notify:
|
||||
description: Enable notifications using SMS messages. To use notifications, please see the [getting started with automation page](/getting-started/automation/).
|
||||
required: false
|
||||
type: map
|
||||
keys:
|
||||
recipient:
|
||||
description: The phone number of a default recipient or a list with multiple recipients.
|
||||
required: false
|
||||
type: [string, list]
|
||||
{% endconfiguration %}
|
||||
|
||||
### Tested routers
|
||||
### Tested devices
|
||||
|
||||
Routers we know to be working with this integration based on the documentation of used libraries and reports by users:
|
||||
Devices we know to be working with this integration based on the [documentation of used libraries](https://github.com/Salamek/huawei-lte-api/#huawei-lte-api) and reports by users:
|
||||
|
||||
- Huawei B310s-22
|
||||
- Huawei B525s-23a
|
||||
- Huawei E5186s-22a
|
||||
- Huawei B618
|
||||
|
||||
This is not a complete list. The integration can probably connect to other Huawei LTE routers running similar firmware.
|
||||
|
||||
## Presence Detection
|
||||
|
||||
This platform offers presence detection by looking at connected devices to a [Huawei LTE router](https://consumer.huawei.com/en/smart-home/).
|
||||
|
||||
To enable the sensor, add the following lines to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
device_tracker:
|
||||
- platform: huawei_lte
|
||||
```
|
||||
|
||||
See the [device tracker integration page](/integrations/device_tracker/) for instructions how to configure the people to be tracked.
|
||||
|
||||
## Notifications
|
||||
|
||||
The `huawei_lte` platform allows you to use a Huawei LTE router for notifications from Home Assistant. The messages will be sent as SMS text messages.
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
notify:
|
||||
- platform: huawei_lte
|
||||
recipient: "+15105550123"
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
recipient:
|
||||
description: The phone number of a default recipient or a list with multiple recipients.
|
||||
required: true
|
||||
type: [string, list]
|
||||
name:
|
||||
description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
required: false
|
||||
default: notify
|
||||
type: string
|
||||
url:
|
||||
description: The router to use. Not needed if you only have one.
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
To use notifications, please see the [getting started with automation page](/getting-started/automation/).
|
||||
|
||||
## Sensor
|
||||
|
||||
The `huawei_lte` sensor platform allows you to monitor Huawei LTE routers.
|
||||
|
||||
The names for the item you want to monitor are dot separated paths to information returned by the router. The data set varies by router model. To see what your router provides, set logging level to debug and watch `homeassistant.components.huawei_lte` debug entries. The configuration variable description contains a few example paths just to illustrate the syntax. These may not be available on all routers or their semantics may differ, and there are quite likely many more that are not listed here.
|
||||
|
||||
To enable the sensor, add the following lines to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: huawei_lte
|
||||
monitored_conditions:
|
||||
- device_information.SoftwareVersion
|
||||
- device_signal.rssi
|
||||
- monitoring_traffic_statistics.CurrentDownloadRate
|
||||
- monitoring_traffic_statistics.TotalConnectTime
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
monitored_conditions:
|
||||
description: Defines the data to monitor as sensors. Defaults to a few generally available data items expected to be available on most boxes.
|
||||
required: false
|
||||
default: Below is indicated which conditions are the default.
|
||||
type: list
|
||||
keys:
|
||||
device_information.SoftwareVersion:
|
||||
description: Software version.
|
||||
device_information.WanIPAddress:
|
||||
description: WAN interface IPv4 address.
|
||||
default: default
|
||||
device_information.WanIPv6Address:
|
||||
description: WAN interface IPv6 address.
|
||||
device_signal.rsrq:
|
||||
description: The signal RSRQ value.
|
||||
default: default
|
||||
device_signal.rsrp:
|
||||
description: The signal RSRP value.
|
||||
default: default
|
||||
device_signal.rssi:
|
||||
description: The signal RSSI value.
|
||||
default: default
|
||||
device_signal.sinr:
|
||||
description: The signal SINR value.
|
||||
default: default
|
||||
monitoring_traffic_statistics.CurrentDownloadRate:
|
||||
description: Current download rate, bytes/sec.
|
||||
monitoring_traffic_statistics.CurrentUploadRate:
|
||||
description: Current upload rate, bytes/sec.
|
||||
monitoring_traffic_statistics.TotalUpload:
|
||||
description: Total bytes uploaded since last reset.
|
||||
monitoring_traffic_statistics.TotalDownload:
|
||||
description: Total bytes downloaded since last reset.
|
||||
monitoring_traffic_statistics.TotalConnectTime:
|
||||
description: Total time connected since last reset.
|
||||
{% endconfiguration %}
|
||||
This is not a complete list. The integration can probably connect to other Huawei LTE devices running similar firmware.
|
||||
|
@ -8,7 +8,7 @@ ha_release: 0.25
|
||||
ha_iot_class: Cloud Push
|
||||
---
|
||||
|
||||
The `imap` sensor platform is observing your [IMAP server](https://en.wikipedia.org/wiki/Internet_Message_Access_Protocol) and reporting the amount of unread emails.
|
||||
The `imap` integration is observing your [IMAP server](https://en.wikipedia.org/wiki/Internet_Message_Access_Protocol) and reporting the amount of unread emails.
|
||||
|
||||
## Configuration
|
||||
|
||||
@ -55,6 +55,11 @@ search:
|
||||
required: false
|
||||
default: UnSeen UnDeleted
|
||||
type: string
|
||||
charset:
|
||||
description: The character set used for this connection.
|
||||
required: false
|
||||
default: utf-8
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
### Configuring IMAP Searches
|
||||
@ -68,7 +73,7 @@ By default, this integration will count unread emails. By configuring the search
|
||||
#### Full configuration sample with search
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
# Example configuration.yaml entry for gmail
|
||||
sensor:
|
||||
- platform: imap
|
||||
server: imap.gmail.com
|
||||
@ -76,4 +81,14 @@ sensor:
|
||||
username: YOUR_USERNAME
|
||||
password: YOUR_PASSWORD
|
||||
search: FROM <sender@email.com>, SUBJECT <subject here>
|
||||
|
||||
# Example configuration.yaml entry for Office 365
|
||||
sensor:
|
||||
- platform: imap
|
||||
server: outlook.office365.com
|
||||
port: 993
|
||||
username: email@address.com
|
||||
password: password
|
||||
search: FROM <sender@email.com>, SUBJECT <subject here>
|
||||
charset: US-ASCII
|
||||
```
|
||||
|
@ -8,7 +8,7 @@ ha_iot_class: Cloud Push
|
||||
ha_release: 0.25
|
||||
---
|
||||
|
||||
The `imap_email_content` sensor platform will read emails from an IMAP email server and report them as a state change within Home Assistant. This is useful if you have a device that only reports its state via email.
|
||||
The `imap_email_content` integration will read emails from an IMAP email server and report them as a state change within Home Assistant. This is useful if you have a device that only reports its state via email.
|
||||
|
||||
## Configuration
|
||||
|
||||
@ -20,9 +20,9 @@ sensor:
|
||||
- platform: imap_email_content
|
||||
server: imap.gmail.com
|
||||
port: 993
|
||||
username: USERNAME
|
||||
password: PASSWORD
|
||||
folder: <Folder>
|
||||
username: YOUR_USERNAME
|
||||
password: YOUR_PASSWORD
|
||||
folder: YOUR_FOLDER
|
||||
senders:
|
||||
- example@gmail.com
|
||||
```
|
||||
@ -68,7 +68,7 @@ value_template:
|
||||
body:
|
||||
description: The body of the email.
|
||||
subject:
|
||||
description: The subject of the email.
|
||||
description: The subject of the email.git.
|
||||
date:
|
||||
description: The date and time the email was sent.
|
||||
{% endconfiguration %}
|
||||
@ -97,4 +97,4 @@ sensor:
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
The same template structure can scan the date, body, or sender for matching text before setting the state of the sensor.
|
||||
The same template structure can scan the date, body or sender for matching text before setting the state of the sensor.
|
||||
|
@ -3,12 +3,15 @@ title: "Juicenet"
|
||||
description: "Instructions on how to setup WiFi-equipped Juicenet charging stations with Home Assistant."
|
||||
logo: juicenet.png
|
||||
ha_category:
|
||||
- Car
|
||||
- Energy
|
||||
- Sensor
|
||||
- Switch
|
||||
ha_iot_class: Cloud Polling
|
||||
ha_release: 0.47
|
||||
---
|
||||
|
||||
The `juicenet` sensor platform pulls data from a [JuiceNet](https://emotorwerks.com/products/juicenet/) charging station equipped with a wifi connection. It will access and make available all of the devices attached to your account.
|
||||
The `juicenet` sensor platform pulls data from a [JuiceNet](https://emotorwerks.com/products/juicenet/) charging station equipped with a wifi connection. It will access and make available all of the devices attached to your account. It also exposes a switch allowing you to charge your car now instead of waiting for the pre-set schedule.
|
||||
|
||||
## Configuration
|
||||
|
||||
@ -41,4 +44,4 @@ These sensors will be added for each juicenet device in your account:
|
||||
- Amps
|
||||
- Watts
|
||||
- Charge time of session
|
||||
- Energy added this session
|
||||
- Energy added this session
|
||||
|
@ -22,10 +22,25 @@ keyboard_remote:
|
||||
|
||||
{% configuration %}
|
||||
type:
|
||||
description: Possible values are `key_up`, `key_down`, and `key_hold`. Be careful, `key_hold` will fire a lot of events.
|
||||
description: Possible values are `key_up`, `key_down`, and `key_hold`. Be careful, `key_hold` will fire a lot of events. This can be a list of types.
|
||||
required: true
|
||||
type: string
|
||||
device_description:
|
||||
emulate_key_hold:
|
||||
description: Emulate key hold events when key is held down. (Some input devices do not send these otherwise.)
|
||||
required: false
|
||||
type: boolean
|
||||
default: false
|
||||
emulate_key_hold_delay:
|
||||
description: Number of milliseconds to wait before sending first emulated key hold event
|
||||
required: false
|
||||
type: float
|
||||
default: 0.250
|
||||
emulate_key_hold_repeat:
|
||||
description: Number of milliseconds to wait before sending subsequent emulated key hold event
|
||||
required: false
|
||||
type: float
|
||||
default: 0.033
|
||||
device_descriptor:
|
||||
description: Path to the local event input device file that corresponds to the keyboard.
|
||||
required: false
|
||||
type: string
|
||||
@ -45,9 +60,14 @@ A full configuration for two Keyboard Remotes could look like the one below:
|
||||
```yaml
|
||||
keyboard_remote:
|
||||
- device_descriptor: '/dev/input/by-id/bluetooth-keyboard'
|
||||
type: 'key_up'
|
||||
type: 'key_down'
|
||||
emulate_key_hold: true
|
||||
emulate_key_hold_delay: 250
|
||||
emulate_key_hold_repeat: 33
|
||||
- device_descriptor: '/dev/input/event0'
|
||||
type: 'key_up'
|
||||
type:
|
||||
- 'key_up'
|
||||
- 'key_down'
|
||||
```
|
||||
|
||||
Or like the following for one keyboard:
|
||||
|
@ -132,12 +132,6 @@ The log information are stored in the
|
||||
and you can read it with the command-line tool `cat` or follow it dynamically
|
||||
with `tail -f`.
|
||||
|
||||
If you are a Hassbian user you can use the example below:
|
||||
|
||||
```bash
|
||||
$ tail -f /home/homeassistant/.homeassistant/home-assistant.log
|
||||
```
|
||||
|
||||
If you are a Hass.io user, you can use the example below, when logged in through
|
||||
the [SSH add-on](/addons/ssh/):
|
||||
|
||||
|
@ -37,7 +37,7 @@ gender:
|
||||
type: string
|
||||
default: "`Female`"
|
||||
type:
|
||||
description: "The voice type you want to use. Accepted values are listed as the service name mapping [in the documentation](https://docs.microsoft.com/en-us/azure/cognitive-services/Speech/api-reference-rest/bingvoiceoutput)."
|
||||
description: "The voice type you want to use. Accepted values are listed as the service name mapping [in the documentation](https://docs.microsoft.com/en-us/azure/cognitive-services/speech-service/language-support#text-to-speech)."
|
||||
required: false
|
||||
type: string
|
||||
default: "`ZiraRUS`"
|
||||
@ -60,6 +60,11 @@ contour:
|
||||
description: "Change the contour of the output in percentages. This overrides the pitch setting. See the [W3 SSML specification](https://www.w3.org/TR/speech-synthesis/#pitch_contour) for what it does. Example value: `(0,0) (100,100)`."
|
||||
required: false
|
||||
type: string
|
||||
region:
|
||||
description: "The region of your API endpoint. See [documentation](https://docs.microsoft.com/en-us/azure/cognitive-services/speech-service/regions)."
|
||||
required: false
|
||||
type: string
|
||||
default: "`eastus`"
|
||||
{% endconfiguration %}
|
||||
|
||||
|
||||
@ -79,4 +84,5 @@ tts:
|
||||
volume: -50
|
||||
pitch: high
|
||||
contour: (0, 0) (100, 100)
|
||||
region: eastus
|
||||
```
|
||||
|
@ -7,7 +7,7 @@ ha_release: "0.40"
|
||||
ha_iot_class: Local Polling
|
||||
---
|
||||
|
||||
The `modem_callerid` sensor platform uses an available modem for collecting caller ID information. It requires a Hayes AT compatible modem that supports caller ID detection (via AT+VCID=1).
|
||||
The `modem_callerid` integration uses an available modem for collecting caller ID information. It requires a Hayes AT compatible modem that supports caller ID detection (via AT+VCID=1).
|
||||
|
||||
When the sensor detects a new call, its state changes to 'ring' for each ring and 'callerid' when caller id information is received. It returns to 'idle' once ringing stops. The state event includes an attribute payload that includes the time of the call, name and number.
|
||||
|
||||
@ -19,7 +19,7 @@ To find the path of your USB modem, run:
|
||||
ls /dev/ttyACM*
|
||||
```
|
||||
|
||||
If Home Assistant (`hass`) runs with another user (e.g., `homeassistant` on Hassbian) give access to the stick with:
|
||||
If Home Assistant (`hass`) runs with another user (e.g., `homeassistant`) give access to the stick with:
|
||||
|
||||
```bash
|
||||
sudo usermod -a -G dialout homeassistant
|
||||
@ -54,7 +54,7 @@ To find the path of your USB modem, run:
|
||||
|
||||
`$ ls /dev/ttyACM*`
|
||||
|
||||
If Home Assistant (`hass`) runs with another user (e.g., `homeassistant` on Hassbian) give access to the stick with:
|
||||
If Home Assistant (`hass`) runs with another user (e.g., `homeassistant`) give access to the stick with:
|
||||
|
||||
`$ sudo usermod -a -G dialout homeassistant`
|
||||
|
||||
|
@ -251,6 +251,18 @@ camera:
|
||||
- camera_name2
|
||||
```
|
||||
|
||||
### Services (only for camera)
|
||||
|
||||
The services below permit to control whether the camera should monitor and alert on motion detection. Also, it allows to control the status of the flood light (only for Presence model).
|
||||
|
||||
| Service | Description |
|
||||
| ------- | ----------- |
|
||||
| enable_motion_detection | Enable motion detection and alert.
|
||||
| disable_motion_detection | Disable motion detection and alert.
|
||||
| set_light_auto | Presence model only : Set flood light on automatic mode.
|
||||
| set_light_on | Presence model only : Set flood light on.
|
||||
| set_light_off | Presence model only : Set flood light off.
|
||||
|
||||
## Climate
|
||||
|
||||
The `netatmo` thermostat platform is consuming the information provided by a [Netatmo Smart Thermostat](https://www.netatmo.com/product/energy/thermostat) thermostat. This integration allows you to view the current temperature and setpoint.
|
||||
|
@ -43,7 +43,7 @@ route:
|
||||
stop:
|
||||
description: The stop tag from NextBus.
|
||||
required: true
|
||||
type: integer
|
||||
type: string
|
||||
name:
|
||||
description: Name to use in the frontend.
|
||||
required: false
|
||||
|
@ -14,7 +14,7 @@ As an alternative to the router-based device tracking, it is possible to directl
|
||||
Please keep in mind that modern smart phones will usually turn off WiFi when they are idle. Simple trackers like this may not be reliable on their own.
|
||||
</div>
|
||||
|
||||
You might have to install the packages for `arp` and `nmap`. On Debian based hosts (for example Hassbian and Raspbian) do so by running `$ sudo apt-get install net-tools nmap`. On a Fedora host run `$ sudo dnf -y install nmap`.
|
||||
You might have to install the packages for `arp` and `nmap`. On Debian based hosts (for example Raspbian) do so by running `$ sudo apt-get install net-tools nmap`. On a Fedora host run `$ sudo dnf -y install nmap`.
|
||||
|
||||
<div class='note'>
|
||||
|
||||
|
@ -66,6 +66,35 @@ This component will create these sensors:
|
||||
- `nzbget_uptime`: NZBGet server uptime.
|
||||
- `nzbget_size`: Amount of data downloaded since server start in MB.
|
||||
|
||||
## Event Automation
|
||||
|
||||
The NZBGet integration continuously monitors nzbget's download history. When a download completes, an event usable for automation is triggered on the Home Assistant Bus.
|
||||
|
||||
Possible events are:
|
||||
|
||||
- `nzbget_download_complete`
|
||||
|
||||
The event includes the name, category, and status of the downloaded nzb.
|
||||
|
||||
Example automation to send a Telegram message on a completed download:
|
||||
{% raw %}
|
||||
|
||||
```yaml
|
||||
- alias: Completed Torrent
|
||||
trigger:
|
||||
platform: event
|
||||
event_type: nzbget_download_complete
|
||||
- event_data:
|
||||
category: tv
|
||||
action:
|
||||
service: notify.telegram_notifier
|
||||
data_template:
|
||||
title: "Download completed!"
|
||||
message: "{{trigger.event.data.name}}"
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
||||
## Services
|
||||
|
||||
Available services:
|
||||
@ -76,6 +105,6 @@ Available services:
|
||||
|
||||
### Service `nzbget/set_speed`
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| Service data attribute | Optional | Description |
|
||||
|------------------------|----------|-------------------------------------------------------------------------------------------------|
|
||||
| `speed` | yes | Sets the download speed limit, specified in Kb/s. 0 disables the speed limit. Defaults to 1000. |
|
||||
|
123
source/_integrations/pcal9535a.markdown
Normal file
@ -0,0 +1,123 @@
|
||||
---
|
||||
title: "PCAL9535A I2C GPIO expander"
|
||||
description: "Instructions on how to integrate the PCAL9535A GPIO pin expander with I2C interface into Home Assistant."
|
||||
logo: raspberry-pi.png
|
||||
ha_category:
|
||||
- DIY
|
||||
- Binary Sensor
|
||||
- Switch
|
||||
ha_release: 0.102
|
||||
ha_iot_class: Local Polling
|
||||
---
|
||||
|
||||
The `pcal9535a` integration is the base for all related pcal9535a platforms in Home Assistant. There is no setup needed for the integration itself, for the platforms, please check their corresponding sections.
|
||||
|
||||
One of the use cases is [Seeed studio Raspberry Pi Relay Board](http://wiki.seeedstudio.com/Raspberry_Pi_Relay_Board_v1.0/).
|
||||
|
||||
For more details about the PCAL9535A I2C I/O port expander, you can find its datasheet here: [PCAL9535A](https://www.nxp.com/docs/en/data-sheet/PCAL9535A.pdf).
|
||||
|
||||
## Binary Sensor
|
||||
|
||||
The `pcal9535a` binary sensor platform allows you to read sensor values from the I/O pins of your [PCAL9535A I2C I/O expander](https://www.nxp.com/products/interfaces/ic-spi-serial-interface-devices/ic-general-purpose-i-o/low-voltage-16-bit-ic-bus-i-o-port-with-interrupt-and-agile-i-o:PCAL9535A).
|
||||
|
||||
The pin numbers are from 0 to 15, where: 0-7 correspond to port P0 (P0_0 - P0_7) and 8-15 to port P1 (P1_0 - P1_7).
|
||||
|
||||
### Configuration
|
||||
|
||||
To use the I/O pins of an PCAL9535A connected to an I2C bus of your Raspberry Pi as binary sensors, add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
binary_sensor:
|
||||
- platform: pcal9535a
|
||||
pins:
|
||||
0: PIR Office
|
||||
1: PIR Bedroom
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
i2c_bus:
|
||||
description: i2c bus number of PCAL9535A chip.
|
||||
required: false
|
||||
type: integer
|
||||
default: 1
|
||||
i2c_address:
|
||||
description: i2c address of PCAL9535A chip.
|
||||
required: false
|
||||
type: integer
|
||||
default: "`0x20`"
|
||||
pins:
|
||||
description: List of used pins.
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
"pin: name":
|
||||
description: The pin numbers (from 0 to 15) and corresponding names.
|
||||
required: true
|
||||
type: [integer, string]
|
||||
invert_logic:
|
||||
description: If `true`, inverts the input logic to ACTIVE LOW.
|
||||
required: false
|
||||
type: boolean
|
||||
default: "`false` (ACTIVE HIGH)"
|
||||
pull_mode:
|
||||
description: >
|
||||
Type of internal pull resistor to use.
|
||||
Options are `UP` - pull-up resistor, `DOWN` - pull-down resistor, `DISABLED` - resistors disconnected.
|
||||
required: false
|
||||
type: string
|
||||
default: "`DISABLED`"
|
||||
{% endconfiguration %}
|
||||
|
||||
## Switch
|
||||
|
||||
The `pcal9535a` switch platform allows you to write to the I/O pins of your [PCAL9535A I2C I/O expander](https://www.nxp.com/products/interfaces/ic-spi-serial-interface-devices/ic-general-purpose-i-o/low-voltage-16-bit-ic-bus-i-o-port-with-interrupt-and-agile-i-o:PCAL9535A).
|
||||
|
||||
The pin numbers are from 0 to 15, where: 0-7 correspond to port P0 (P0_0 - P0_7) and 8-15 to port P1 (P1_0 - P1_7).
|
||||
|
||||
### Configuration
|
||||
|
||||
To use the I/O pins of a PCAL9535A connected to an I2C bus of your Raspberry Pi as switches, add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
switch:
|
||||
- platform: pcal9535a
|
||||
pins:
|
||||
11: Fan Office
|
||||
12: Light Desk
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
i2c_bus:
|
||||
description: i2c bus number of PCAL9535A chip.
|
||||
required: false
|
||||
type: integer
|
||||
default: 1
|
||||
i2c_address:
|
||||
description: i2c address of PCAL9535A chip.
|
||||
required: false
|
||||
type: integer
|
||||
default: "`0x20`"
|
||||
pins:
|
||||
description: Array of used pins.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
pin:
|
||||
description: The pin numbers (from 0 to 15) and corresponding names.
|
||||
required: true
|
||||
type: [integer, string]
|
||||
invert_logic:
|
||||
description: If true, inverts the output logic to ACTIVE LOW.
|
||||
required: false
|
||||
default: false
|
||||
type: boolean
|
||||
strength:
|
||||
description: >
|
||||
Control the output drive level of the GPIO. Each GPIO can be configured independently to one of the four possible output current levels. By programming these bits, the user is changing the number of transistor pairs or ‘fingers’ that drive the I/O pad.
|
||||
Options are `0.25`, `0.5`, `0.75`, `1.0`.
|
||||
required: false
|
||||
default: "`1.0`"
|
||||
type: string
|
||||
{% endconfiguration %}
|
@ -7,7 +7,7 @@ ha_category:
|
||||
- Sensor
|
||||
featured: true
|
||||
ha_release: 0.7.4
|
||||
ha_iot_class: Local Polling
|
||||
ha_iot_class: Local Push
|
||||
ha_config_flow: true
|
||||
---
|
||||
|
||||
|
@ -26,6 +26,7 @@ climate:
|
||||
password: YOUR_SHORT_IP
|
||||
host: YOUR_SMILE_LOCAL_IP
|
||||
```
|
||||
**Please note**: for a legacy Anna (firmware 1.8.x) an additional line is required, see below, this line is not needed for a more recent Anna (firmware 3.1.x).
|
||||
|
||||
{% configuration %}
|
||||
password:
|
||||
@ -51,6 +52,11 @@ port:
|
||||
required: false
|
||||
type: integer
|
||||
default: 80
|
||||
legacy_anna:
|
||||
description: Indicate that the Anna is a legacy unit
|
||||
required: false
|
||||
type: boolean
|
||||
default: false
|
||||
min_temp:
|
||||
description: If you want to adjust the lower boundary, the integration will not allow temperatures below the set value.
|
||||
required: false
|
||||
@ -72,6 +78,7 @@ climate:
|
||||
password: YOUR_SHORT_ID
|
||||
host: YOUR_SMILE_LOCAL_IP
|
||||
port: YOUR_SMILE_PORT_NUMBER
|
||||
legacy_anna: true
|
||||
min_temp: YOUR_MINIMAL_TARGET_TEMPERATURE
|
||||
max_temp: YOUR_MAXIMAL_TARGET_TEMPERATURE
|
||||
```
|
||||
|
@ -31,6 +31,10 @@ host:
|
||||
description: "The IP address of the SAJ Solar Inverter."
|
||||
required: true
|
||||
type: string
|
||||
name:
|
||||
description: "An optional name for your SAJ Solar Inverter."
|
||||
required: false
|
||||
type: string
|
||||
type:
|
||||
description: "Type of connection module: 'ethernet' or 'wifi'"
|
||||
required: false
|
||||
@ -57,7 +61,7 @@ Sensors available in the library:
|
||||
| today_time | h | Inverter's running time for today. |
|
||||
| today_max_current | W | Maximum current power for today. (only for connection via ethernet module) |
|
||||
| total_yield | kWh | Total kWh generated to date. |
|
||||
| total_time | h | Total running time of the inverter . |
|
||||
| total_time | h | Total running time of the inverter. |
|
||||
| total_co2_reduced | kg | Total CO2 in kg reduced. |
|
||||
| temperature | °C | Temperature of the inverter. |
|
||||
| state | N/A | Live state of the inverter. |
|
||||
@ -67,6 +71,7 @@ Sensors available in the library:
|
||||
```yaml
|
||||
sensor:
|
||||
- platform: saj
|
||||
name: MY_INVERTER_NAME
|
||||
host: IP_ADDRESS_OF_DEVICE
|
||||
type: wifi
|
||||
username: USERNAME
|
||||
|
@ -107,6 +107,7 @@ Currently tested but not working models:
|
||||
- JS8005 - State tracking working but unable to control (but port 8001 *is* open)
|
||||
- JS9000 - State is always "on" and unable to control (but port 8001 *is* open)
|
||||
- JS9500 - State is always "on" and unable to control (but port 8001 *is* open)
|
||||
- JU6445K - State is always "on" and unable to control (but port 8001 *is* open)
|
||||
- JU6800 - Unable to see state and unable to control
|
||||
- JU7000 - Unable to see state and unable to control (but port 8001 *is* open)
|
||||
- JU7500 - Unable to see state and unable to control
|
||||
@ -144,15 +145,6 @@ No additional actions are required
|
||||
|
||||
No additional actions are required
|
||||
|
||||
### Hassbian
|
||||
|
||||
You will need to activate the venv and install the websocket library:
|
||||
|
||||
```bash
|
||||
sudo -u homeassistant -H -s
|
||||
source /srv/homeassistant/bin/activate
|
||||
pip3 install websocket-client
|
||||
```
|
||||
### Other install methods
|
||||
|
||||
You will need to install the `websocket-client` Python package in your Home Assistant install. This will probably be done with:
|
||||
|
@ -91,3 +91,31 @@ automation:
|
||||
## Reloading scenes
|
||||
|
||||
Whenever you make a change to your scene configuration, you can call the `scene.reload` service to reload the scenes.
|
||||
|
||||
## Creating scenes on the fly
|
||||
|
||||
Create a new scene without having to configure it by calling the `scene.create` service. This scene will be discarded after reloading the configuration.
|
||||
|
||||
You need to pass a `scene_id` in lowercase and with underscores instead of spaces. You also need to specify the entities in the same format as when configuring the scene.
|
||||
|
||||
If the scene was previously created by `scene.create`, it will be overwritten. If the scene was created by YAML, nothing happens but a warning in your log files.
|
||||
|
||||
```yaml
|
||||
# Example automation
|
||||
automation:
|
||||
trigger:
|
||||
platform: homeassistant
|
||||
event: start
|
||||
action:
|
||||
service: scene.create
|
||||
data:
|
||||
scene_id: my_scene
|
||||
entities:
|
||||
light.tv_back_light:
|
||||
state: on
|
||||
brightness: 100
|
||||
light.ceiling: off
|
||||
media_player.sony_bravia_tv:
|
||||
state: on
|
||||
source: HDMI 1
|
||||
```
|
||||
|
@ -141,7 +141,7 @@ group:
|
||||
- group.sense_hat
|
||||
```
|
||||
|
||||
### Directions for installing on Raspberry Pi All-In-One installer and HASSbian:
|
||||
### Directions for installing on Raspberry Pi Raspbian Based installation:
|
||||
|
||||
Here are the steps to make the _SenseHAT_ sensor work _successfully_ with the virtual environment versions.
|
||||
|
||||
@ -182,7 +182,7 @@ sudo reboot
|
||||
```
|
||||
|
||||
Unfortunately enabling the SenseHAT Sensor integration for a Virtual Environment install of Home Assistant fails with errors.
|
||||
_(The Raspberry Pi All-In-One installer and HASSbian both run Home Assistant in an virtual environment)._
|
||||
_(The Raspberry Pi All-In-One installer run Home Assistant in an virtual environment)._
|
||||
These issues have been discussed in the repository issue [#5093](https://github.com/home-assistant/home-assistant/issues/5093)
|
||||
|
||||
This fix has been tested with a clean install of:
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
title: "Xiaomi Air Quality Monitor"
|
||||
description: "Instructions how to integrate your Xiaomi Mi Air Quality Monitor within Home Assistant."
|
||||
title: "Xiaomi Air Quality Index Monitor"
|
||||
description: "Instructions how to integrate your Xiaomi Mi Air Quality Index Monitor within Home Assistant."
|
||||
logo: xiaomi.png
|
||||
ha_category:
|
||||
- Health
|
||||
@ -29,8 +29,7 @@ To add a Xiaomi Mi Air Quality Monitor to your installation, add the following t
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: xiaomi_miio
|
||||
name: Xiaomi Air Quality Monitor
|
||||
host: 192.168.130.73
|
||||
host: IP_ADDRESS
|
||||
token: YOUR_TOKEN
|
||||
```
|
||||
|
||||
|
@ -10,18 +10,30 @@ ha_release: 0.95
|
||||
|
||||
The Somfy integration will allow users to integrate their Somfy devices into Home Assistant using the [official API](https://developer.somfy.com/somfy-open-api/apis), unlike the [tahoma](/integrations/tahoma/) component.
|
||||
|
||||
### Setting up developer account
|
||||
## Installation
|
||||
|
||||
To connect Somfy, you need to set up a developer account.
|
||||
Somfy is leveraging the new account linking service. This means that to set up Somfy, you only need to go to the integrations page and click on add new integration.
|
||||
|
||||
<div class='videoWrapper'>
|
||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/y0SECWUVR-M" frameborder="0" allowfullscreen></iframe>
|
||||
</div>
|
||||
|
||||
## Installation with own developer account
|
||||
|
||||
It is possible to create your own developer account and configure Somfy via that.
|
||||
|
||||
### Setting up developer account
|
||||
|
||||
1. Visit [https://developer.somfy.com](https://developer.somfy.com).
|
||||
2. Log in using your Somfy credentials.
|
||||
3. Open the *My Apps* menu.
|
||||
3. Open the _My Apps_ menu.
|
||||
4. Add a new App:
|
||||
- App Name: Home Assistant
|
||||
- Callback URL: `<YOUR_HOME_ASSISTANT_URL>/auth/external/callback`
|
||||
- Description: Home Assistant instance
|
||||
- Product: Somfy Open API
|
||||
|
||||
- App Name: Home Assistant
|
||||
- Callback URL: `<YOUR_HOME_ASSISTANT_URL>/auth/external/callback`
|
||||
- Description: Home Assistant instance
|
||||
- Product: Somfy Open API
|
||||
|
||||
5. Once Home Assistant restarted, go to Configuration>Integrations.
|
||||
6. Select the Somfy integration.
|
||||
|
||||
@ -36,13 +48,13 @@ somfy:
|
||||
|
||||
{% configuration %}
|
||||
client_id:
|
||||
description: Your Somfy consumer key.
|
||||
required: true
|
||||
type: string
|
||||
description: Your Somfy consumer key.
|
||||
required: true
|
||||
type: string
|
||||
client_secret:
|
||||
description: Your Somfy consumer secret.
|
||||
required: true
|
||||
type: string
|
||||
description: Your Somfy consumer secret.
|
||||
required: true
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
### Potential duplicate with the Tahoma integration
|
||||
@ -54,5 +66,21 @@ If you use the [tahoma](/integrations/tahoma) component, you will have to exclud
|
||||
tahoma:
|
||||
username: YOUR_USERNAME
|
||||
password: YOUR_PASSWORD
|
||||
exclude: ['rts:RollerShutterRTSComponent','rts:CurtainRTSComponent','rts:BlindRTSComponent','rts:VenetianBlindRTSComponent','rts:DualCurtainRTSComponent','rts:ExteriorVenetianBlindRTSComponent','io:ExteriorVenetianBlindIOComponent','io:RollerShutterUnoIOComponent','io:RollerShutterWithLowSpeedManagementIOComponent','io:RollerShutterVeluxIOComponent','io:RollerShutterGenericIOComponent','io:WindowOpenerVeluxIOComponent','io:VerticalExteriorAwningIOComponent','io:HorizontalAwningIOComponent']
|
||||
exclude:
|
||||
[
|
||||
"rts:RollerShutterRTSComponent",
|
||||
"rts:CurtainRTSComponent",
|
||||
"rts:BlindRTSComponent",
|
||||
"rts:VenetianBlindRTSComponent",
|
||||
"rts:DualCurtainRTSComponent",
|
||||
"rts:ExteriorVenetianBlindRTSComponent",
|
||||
"io:ExteriorVenetianBlindIOComponent",
|
||||
"io:RollerShutterUnoIOComponent",
|
||||
"io:RollerShutterWithLowSpeedManagementIOComponent",
|
||||
"io:RollerShutterVeluxIOComponent",
|
||||
"io:RollerShutterGenericIOComponent",
|
||||
"io:WindowOpenerVeluxIOComponent",
|
||||
"io:VerticalExteriorAwningIOComponent",
|
||||
"io:HorizontalAwningIOComponent",
|
||||
]
|
||||
```
|
||||
|
@ -23,5 +23,6 @@ ssdp:
|
||||
|
||||
The following integrations are automatically discovered by the SSDP integration:
|
||||
|
||||
- Deconz
|
||||
- Philips Hue
|
||||
- [deCONZ](../deconz/)
|
||||
- [Huawei LTE](../huawei_lte/)
|
||||
- [Philips Hue](../hue/)
|
||||
|
9
source/_integrations/stt.markdown
Normal file
@ -0,0 +1,9 @@
|
||||
---
|
||||
title: "Speech-to-Text (STT)"
|
||||
description: "Instructions on how to set up Speech-to-Text (STT) with Home Assistant."
|
||||
ha_release: "0.102"
|
||||
---
|
||||
|
||||
Speech-to-Text (SST) allows you to stream speech data to the SST API and get text back.
|
||||
|
||||
This is an integration that is a building block for other integrations or apps building on top of Home Assistant, like [Ada](https://github.com/home-assistant/ada).
|
@ -12,7 +12,7 @@ The `tensorflow` image processing platform allows you to detect and recognize ob
|
||||
|
||||
<div class='note warning'>
|
||||
|
||||
The following packages must be installed on Hassbian/Raspbian before following the setup for the integration to work:
|
||||
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`
|
||||
|
||||
</div>
|
||||
|
@ -16,7 +16,7 @@ The `triggered` state also provides a state attribute called `triggered_source`
|
||||
- `Fire/Smoke` is when fire or smoke is detected, or a person pushed the Fire button
|
||||
- `Carbon Monoxide` is when carbon monoxide is detected
|
||||
|
||||
If you have issues running this component, you may require `libxml2-dev` and `libxmlsec1-dev` packages. To install these on Hassbian, run the command `apt install libxml2-dev libxmlsec1-dev` with sudo.
|
||||
If you have issues running this component, you may require `libxml2-dev` and `libxmlsec1-dev` packages. To install these on Raspbian, run the command `apt install libxml2-dev libxmlsec1-dev` with sudo.
|
||||
|
||||
## Configuration
|
||||
|
||||
|
@ -120,3 +120,21 @@ Adds a new torrent to download. It can either be a URL (http, https or ftp), mag
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `torrent` | no | Torrent to download
|
||||
|
||||
## Templating
|
||||
|
||||
### Sensor `started_torrents`
|
||||
|
||||
The state attribute `torrent_info` contains information about the torrents that are currently downloading. You can see this information in **Developer Tools** -> **States** -> `sensor.transmission_started_torrents` -> **Attributes**, or by adding a Markdown Card to Lovelace.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
content: >
|
||||
{% set payload = state_attr('sensor.transmission_started_torrents', 'torrent_info') %}
|
||||
|
||||
{% for torrent in payload.items() %} {% set name = torrent[0] %} {% set data = torrent[1] %}
|
||||
|
||||
{{ name|truncate(20) }} is {{ data.percent_done }}% complete, {{ data.eta }} remaining {% endfor %}
|
||||
type: markdown
|
||||
```
|
||||
{% endraw %}
|
||||
|
53
source/_integrations/unifiled.markdown
Normal file
@ -0,0 +1,53 @@
|
||||
---
|
||||
title: "UniFi LED"
|
||||
description: "Instructions on how to configure the UniFi LED integration with UniFi LED Controller by Ubiquiti."
|
||||
logo: ubiquiti.png
|
||||
ha_category:
|
||||
- Light
|
||||
ha_release: 0.102
|
||||
ha_iot_class: Local Polling
|
||||
---
|
||||
|
||||
[UniFi LED](https://unifi-led.ui.com/) by [Ubiquiti Networks, inc.](https://www.ubnt.com/) is a system off controller managed led light panels and dimmers.
|
||||
|
||||
There is currently support for the following device type within Home Assistant:
|
||||
|
||||
- [Light](#light)
|
||||
|
||||
## Configuration
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
light:
|
||||
- platform: unifiled
|
||||
host: IP_ADDRESS
|
||||
username: USERNAME
|
||||
password: PASSWORD
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
host:
|
||||
description: Ip address or hostname used to connect to the Unifi LED controller.
|
||||
type: string
|
||||
required: true
|
||||
default: None
|
||||
port:
|
||||
description: Port used to connect to the Unifi LED controller.
|
||||
type: string
|
||||
required: false
|
||||
default: 20443
|
||||
username:
|
||||
description: Username used to log into the Unifi LED controller.
|
||||
type: string
|
||||
required: true
|
||||
default: None
|
||||
password:
|
||||
description: Password used to log into the Unifi LED controller.
|
||||
type: string
|
||||
required: true
|
||||
default: None
|
||||
{% endconfiguration %}
|
||||
|
||||
## Light
|
||||
|
||||
The light panels output state and brightness are synchronized with home assistant.
|
@ -117,3 +117,11 @@ automation:
|
||||
to {{ trigger.to_state.state }}
|
||||
by {{ trigger.to_state.attributes.changed_by }}{% endraw %}
|
||||
```
|
||||
|
||||
## Services
|
||||
|
||||
| Service | Description |
|
||||
| ------- | ----------- |
|
||||
| disable_autolock | Disables autolock function for a specific lock. |
|
||||
| enable_autolock | Enables autolock function for a specific lock. |
|
||||
| smartcam_capture | Capture a new image from a specific smartcam. |
|
||||
|
@ -43,6 +43,11 @@ circuit:
|
||||
description: Heating circuit of your heating device if multiple exist
|
||||
required: false
|
||||
type: integer
|
||||
heating_type:
|
||||
description: One of `generic`, `gas` or `heatpump`. Specifying the heating_type provides additional attributes specific for the heating system.
|
||||
required: false
|
||||
type: string
|
||||
default: generic
|
||||
{% endconfiguration %}
|
||||
|
||||
Two components will be created: `climate.vicare_heating` and `water_heater.vicare_water` (for domestic hot water).
|
||||
|
@ -58,6 +58,11 @@ framerate:
|
||||
required: false
|
||||
default: 2
|
||||
type: integer
|
||||
stream_path:
|
||||
description: This parameter allows you to override the stream path.
|
||||
required: false
|
||||
default: live.sdp
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
### Advanced configuration
|
||||
@ -73,6 +78,7 @@ camera:
|
||||
password: !secret fd_camera_pwd
|
||||
verify_ssl: false
|
||||
framerate: 5
|
||||
stream_path: live2.sdp
|
||||
```
|
||||
|
||||
### Services
|
||||
|
@ -22,7 +22,7 @@ Values for your account:
|
||||
- Logo: Any reasonable picture will do.
|
||||
- Description: Personal app for collecting my data.
|
||||
- Contact Email: Your email address
|
||||
- Callback Uri: `https://your-domain-name/` - Withings will check if this URL is accessible (HTTP HEAD) upon submitting the form.
|
||||
- Callback Uri: `https://your-domain-name/auth/external/callback` - Withings will check if this URL is accessible (HTTP HEAD) upon submitting the form.
|
||||
- Company: Home Assistant
|
||||
|
||||
Once saved, the "Client Id" and "Consumer Secret" fields will be populated. You will need these in the next step.
|
||||
@ -33,7 +33,7 @@ Once saved, the "Client Id" and "Consumer Secret" fields will be populated. You
|
||||
# Example configuration.yaml entry
|
||||
withings:
|
||||
client_id: CLIENT_ID
|
||||
client_secret: CLIENT_SECRET
|
||||
client_secret: CONSUMER_SECRET
|
||||
profiles:
|
||||
- USER_PROFILE_NAME
|
||||
```
|
||||
@ -43,28 +43,27 @@ Withings supports multiple profiles per account. Each profile has a person's nam
|
||||
### Step 3 - Authorize Home Assistant
|
||||
|
||||
- Confirm your YAML configuration is valid by using the `Check Config` tool (see note).
|
||||
- Note: In order for "Check Config" to be visible, you must enable "Advanced Mode" on your user profile. The "Check Config" tool can be found by clicking "Configuration" from the sidebar (cog icon) and then clicking "Server Control".
|
||||
- Restart Home Assistant.
|
||||
- Go to the integrations page.
|
||||
- Add a Withings integration.
|
||||
- Select the profile you intend to pull data. This will take you to the Withings site.
|
||||
- On the Withings site, choose the profile you selected in the previous step (if prompted).
|
||||
- Note: It's important you select the same profile from the previous step. Choosing a different one will result in Home Assistant displaying data for profile 2, but it will be labeled as profile 1.
|
||||
- Authorize the application. Your browser will redirect you to your Home Assistant URL.
|
||||
- Add a Withings integration. This will open a new tab/window on the withings site.
|
||||
- On the Withings site, choose the profile of the data you want to sync.
|
||||
- Authorize the application. Your browser will redirect you to the redirect uri you provided during account setup.
|
||||
- Note: If you get a browser error saying the site is inaccessible, you can modify the
|
||||
`http://domain` portion of the URL to something you know is accessible, locally or publically. For example, `http://localhost:8123`.
|
||||
This occurs when the base URL provided by Home Assistant to Withings is not accessible to the outside world.
|
||||
Changing the domain will not affect how data is synchronized.
|
||||
- Once authorized, the tab/window will close and the integration page will prompt to select a profile. Select the profile you chose while on the withings site.
|
||||
- Note: It's important you select the same profile from the previous step. Choosing a different one will result in Home Assistant displaying the wrong data.
|
||||
- Data will synchronize immediately and update every 5 minutes.
|
||||
|
||||
Note: In order for "Check Config" to be visible, you must enable "Advanced Mode" on your user profile. The "Check Config" tool can be found by clicking "Configuration" from the sidebar (cog icon) and then clicking "Server Control".
|
||||
|
||||
## Configuration
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
withings:
|
||||
client_id: CLIENT_ID
|
||||
client_secret: CLIENT_SECRET
|
||||
client_secret: CONSUMER_SECRET
|
||||
profiles:
|
||||
- USER_PROFILE_NAME
|
||||
```
|
||||
@ -81,9 +80,4 @@ profiles:
|
||||
description: Withings supports multiple profiles per account. Provide the person's name whom you want Home Assistant entities to will be associated with (just a name, it doesn't have to be perfect). During the authorization step, you will be asked to select this user from the Withings website.
|
||||
required: true
|
||||
type: map
|
||||
base_url:
|
||||
description: Overrides Home Assistant's default base URL to use when authorizing with Withings.
|
||||
required: false
|
||||
type: string
|
||||
default: The base URL provided in the Home Assistant `api` component.
|
||||
{% endconfiguration %}
|
||||
|
63
source/_integrations/wled.markdown
Normal file
@ -0,0 +1,63 @@
|
||||
---
|
||||
title: "WLED"
|
||||
description: "Instructions on how to integrate WLED with Home Assistant."
|
||||
logo: wled.png
|
||||
ha_category:
|
||||
- Light
|
||||
- Sensor
|
||||
- Switch
|
||||
ha_release: 0.102
|
||||
ha_iot_class: Local Polling
|
||||
ha_qa_scale: platinum
|
||||
---
|
||||
|
||||
[WLED](https://github.com/Aircoookie/WLED) is a fast and feature-rich
|
||||
implementation of an ESP8266/ESP32 webserver to control
|
||||
NeoPixel (WS2812B, WS2811, SK6812, APA102, and similar) LED's.
|
||||
|
||||
## Configuration
|
||||
|
||||
This integration can be configured using the integrations in the
|
||||
Home Assistant frontend.
|
||||
|
||||
Menu: **Configuration** -> **Integrations**.
|
||||
|
||||
In most cases, the WLED devices will be automatically discovered by
|
||||
Home Assistant. Those automatically discovered WLED devices are listed
|
||||
on the integrations page.
|
||||
|
||||
If for some reason (e.g., due to lack of mDNS support on your network),
|
||||
the WLED device isn't discovered, it can be added manually.
|
||||
|
||||
Click on the `+` sign to add an integration and click on **WLED**.
|
||||
After completing the configuration flow, the WLED
|
||||
integration will be available.
|
||||
|
||||
## Lights
|
||||
|
||||
This integration adds the WLED device as a light in Home Assistant.
|
||||
Home Assistant treats every segment of the LED strip as a separate light
|
||||
entity.
|
||||
|
||||
Only native supported features of a light in Home Assistant are supported
|
||||
(which includes effects).
|
||||
|
||||
## Sensors
|
||||
|
||||
This integration provides sensors for the following information from WLED:
|
||||
|
||||
- Estimated current.
|
||||
- Uptime.
|
||||
- Free memory.
|
||||
|
||||
## Switches
|
||||
|
||||
The integration will create a number of switches:
|
||||
|
||||
- Nightlight.
|
||||
- Sync Receive.
|
||||
- Sync Send.
|
||||
|
||||
## Services
|
||||
|
||||
This integration currently does not offer any additional services.
|
@ -30,7 +30,7 @@ Currently, version 0.1.4-beta2 of the custom firmware is the highest supported.
|
||||
|
||||
<div class='note warning'>
|
||||
|
||||
Hassbian users: Don't forget to install `ffmpeg` support on your platform, otherwise, you'll not see video.
|
||||
Raspbian users: Don't forget to install `ffmpeg` support on your platform, otherwise, you'll not see video.
|
||||
|
||||
</div>
|
||||
|
||||
|
@ -38,7 +38,7 @@ If you use a version higher than 0.1.4-beta2, you can simply solve the FTP issue
|
||||
</div>
|
||||
|
||||
<div class='note warning'>
|
||||
Hassbian users: don't forget to install ffmpeg support on your platform, otherwise, you'll not see video.
|
||||
Raspbian users: don't forget to install ffmpeg support on your platform, otherwise, you'll not see video.
|
||||
</div>
|
||||
|
||||
<div class='note warning'>
|
||||
|
@ -0,0 +1,92 @@
|
||||
---
|
||||
layout: post
|
||||
title: "Almond & Ada: privacy-focused voice assistant"
|
||||
description: "Say Hi! to Almond, a privacy-focused virtual assistant and Ada, a voice assistant powered by Home Assistant."
|
||||
date: 2019-11-20 0:43:02
|
||||
date_formatted: "November 20, 2019"
|
||||
author: Paulus Schoutsen
|
||||
author_twitter: balloob
|
||||
comments: true
|
||||
categories: Announcements
|
||||
og_image: /images/blog/2019-11-voice-assistant/almond.png
|
||||
---
|
||||
|
||||
TL;DR:
|
||||
|
||||
- Teamed up with [Almond](https://almond.stanford.edu/), available in Home Assistant 0.102.
|
||||
- Introducing [Ada](https://github.com/home-assistant/ada), voice assistant powered by Home Assistant integrations. Available as Hass.io add-on.
|
||||
- New beta speech-to-text and text-to-speech service for Home Assistant Cloud subscribers.
|
||||
|
||||
---
|
||||
|
||||
Voice assistants are a great way to interact with your house, ask a quick question, set a timer or control your devices. The more an assistant knows about you, your home and it's other inhabitants, the better it is able to help you.
|
||||
|
||||
Today's available virtual assistants work great, but they have a big problem: They store your data in the cloud, don't provide APIs to allow other companies to build products on top and are run by companies whose core business is building profiles on their users to help serve ads and product suggestions.
|
||||
|
||||
The backbone to our homes needs to be one that keeps data local and has APIs allowing other companies to build on top. Innovation happens when many different people, with many different backgrounds, do many different experiments until we find something that sticks. This cannot be left to a single company.
|
||||
|
||||
Recently we got in touch with the [Open Virtual Assistant Lab at Stanford University](https://oval.cs.stanford.edu/). In the last four years, they have been working on a virtual assistant named Almond. And it's a perfect match for Home Assistant.
|
||||
|
||||
<!--more-->
|
||||
|
||||
## Almond
|
||||
|
||||
[Almond](https://almond.stanford.edu/) is an open, privacy-preserving virtual assistant that is open source. With Almond, you can run a virtual assistant at home, that can tell you the news or control your house. It is powered by [LUInet](https://almond.stanford.edu/doc/genie-intro.md), a state-of-the-art neural network developed at Stanford. And it now works with Home Assistant.
|
||||
|
||||
The Almond team has updated Almond to make it aware of the different device types in Home Assistant and allow Almond to control them. In turn, we have upgraded the conversation integration in Home Assistant to support Almond, allowing users to converse with Almond via the frontend.
|
||||
|
||||
<p class='img'><img src='/images/blog/2019-11-voice-assistant/almond.png' alt='Screenshot showing Almond integration in Home Assistant.'>Screenshot showing Almond integration in Home Assistant.</p>
|
||||
|
||||
Almond is available to users today in Home Assistant 0.102. It requires an Almond Server, which you can either install yourself, use the new Almond Hass.io add-on or rely on Almond Web, a cloud version hosted by Stanford. By default, Almond Server will rely on a cloud version of LUInet, but it is possible to run it locally.
|
||||
|
||||
Almond is set up in a way such that your privacy is still partially preserved even with LUInet running in the cloud. This is made possible because LUInet is only responsible for converting the text into a program, whose details are filled in locally by the Almond Server. For example, LUInet will convert "turn on the lights" into code that Almond Server understands. Only Almond Server will know which lights the user has, how to control them and the context of how the text was received.
|
||||
|
||||
### How Almond compares to Google/Alexa
|
||||
|
||||
You're probably wondering if Almond is as good as Alexa or Google. And it's not yet as good. However, it doesn't matter.
|
||||
|
||||
If you want to have an assistant in your home that knows everything about you, it needs to be one that cares about privacy. It needs to be one that is open. That's not negotiable.
|
||||
|
||||
Almond has room for improvement. But it's open source, and with the Home Assistant community, we'll work with the Almond team on making it better. You can start helping right now:
|
||||
|
||||
Almond is gathering sentences that you want to use to control the devices in your home. We already have a basic set of sentences, but the more, the better. You can submit those sentences [using this form](https://docs.google.com/forms/d/e/1FAIpQLSeStJfjvueNAiueRVmP47XALRaJlx7tttzJjRfVjX4J546-uA/viewform).
|
||||
|
||||
You are also able to help train LUInet directly by teaching it how to interpret sentences [in the training console](https://almond.stanford.edu/developers/train).
|
||||
|
||||
## Ada
|
||||
|
||||
Almond is not the full story. Almond only works with text input, and generates text as output. It doesn't handle speech-to-text to receive input nor text-to-speech to speak answers. Those technologies are out of scope for Almond. However, not out of scope for Home Assistant! Home Assistant already has a text-to-speech integration with different backends. In Home Assistant 0.102, we're introducing a new speech-to-text integration to complement this.
|
||||
|
||||
Now we almost have all the pieces for a voice assistant built-in to Home Assistant, and so we decided to finish it off by introducing a new project called [Ada](https://github.com/home-assistant/ada). Ada integrates hotword detection and will route all data to the various integrations to provide a full voice assistant experience.
|
||||
|
||||
<a href='/images/blog/2019-11-voice-assistant/overview.svg'><img src='/images/blog/2019-11-voice-assistant/overview.svg' alt='Architectural overview of how all pieces fit together.' style='border: 0;box-shadow: none;'></a>
|
||||
|
||||
Ada is still very much in the beginning. We'll be working on improving it. If you have expertise in this area and want to help, please get in touch.
|
||||
|
||||
Ada is also available as a [Hass.io](http://hass.io) add-on. This means that you can plug a microphone and speakers into your Raspberry Pi and turn Hass.io into a full, privacy-focused, voice assistant.
|
||||
|
||||
To make it easier to add speech-to-text and text-to-speech integrations to your system, Nabu Casa is introducing a new beta service offering speech-to-text and text-to-speech services to Home Assistant Cloud subscribers, powered by Azure Cognitive Services.
|
||||
|
||||
<div class='videoWrapper'>
|
||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/8VFZiHcjp78" frameborder="0" allowfullscreen></iframe>
|
||||
</div>
|
||||
|
||||
## Can a virtual assistant still be private if parts run in the cloud?
|
||||
|
||||
With Home Assistant we care about privacy and local control. We want to be able to offer home automation that keeps working if there is no internet. Home automation, that is fast and reliable.
|
||||
|
||||
But we also want privacy to be accessible. A user should be able to get a private solution without running a big server at home. Privacy should not be something that is reserved for the rich.
|
||||
|
||||
With the current approach, some things will still run in the cloud, but the home data and control stays local. We will bring more things local when faster technology becomes more accessible or new projects emerge that can help with this.
|
||||
|
||||
We don't want to wait with integrating this until all the pieces run 100% locally. We need to help build the future we want to see.
|
||||
|
||||
## What's next?
|
||||
|
||||
With Almond and Ada, we've put the building blocks in place to create voice assistants. It's now time to use it, improve it and surprise us by sharing the things you'll use it for.
|
||||
|
||||
## Bonus
|
||||
|
||||
I hacked together a quick prototype to allow you to talk to Almond via a Telegram Bot! It's available as a [custom component](https://gist.github.com/balloob/d59cae89d19a14bcec99ce1bde05bd44).
|
||||
|
||||
<p class='img'><img src='/images/blog/2019-11-voice-assistant/telegram.png' style='max-width: 300px' alt='Screenshot of talking to Almond via Telegram.'>Screenshot of talking to Almond via Telegram.</p>
|
921
source/_posts/2019-11-20-release-102.markdown
Normal file
@ -0,0 +1,921 @@
|
||||
---
|
||||
layout: post
|
||||
title: "0.102: Official Android App, Almond, Scene editor"
|
||||
description: "Download the Android app, install a private voice assistant and easy OAuth2 account linking."
|
||||
date: 2019-11-20 0:41:02
|
||||
date_formatted: "November 20, 2019"
|
||||
author: Paulus Schoutsen
|
||||
author_twitter: balloob
|
||||
comments: true
|
||||
categories: Release-Notes
|
||||
og_image: /images/blog/2019-10-0.102/components.png
|
||||
---
|
||||
|
||||
Home Assistant 0.102 is here ! It's been quite the trip as we hosted our annual State of the Union last week, which took a lot of energy away from our release. This doesn't mean that we don't have anything to share, just that the notes might be a little less polished.
|
||||
|
||||
First, we had our State of the Union at the ING office in Amsterdam! It was great. You can watch it back [on YouTube](https://youtu.be/tc17q1Zn0Xs?t=434) or keep an eye out for the blog post coming soon that will summarize all the announcements.
|
||||
|
||||
Alright, so what's new? A lot.
|
||||
|
||||
## Android App released!
|
||||
|
||||
At the State of the Union we announced that we have released the initial version of the official [Home Assistant Android app](https://play.google.com/store/apps/details?id=io.homeassistant.companion.android). It's still a work in progress, but the basic version already works.
|
||||
|
||||
It's been developed by [@CedrickFlocon](https://github.com/CedrickFlocon) and the source is [available on GitHub](https://play.google.com/store/apps/details?id=io.homeassistant.companion.android). We've already seen some other developers step in, so that's great! Keep it coming.
|
||||
|
||||
<!--more-->
|
||||
|
||||
## Private Voice Assistant
|
||||
|
||||
We teamed up with Stanford to tightly integrate their open, privacy-preserving virtual assistant Almond into Home Assistant. For more information, see the [separate blog post](/blog/2019/11/14/privacy-focused-voice-assistant/).
|
||||
|
||||
## Account Linking
|
||||
|
||||
Some companies only allow us to integrate with their products via cloud APIs. These cloud APIs often use [the OAuth2 specification](https://tools.ietf.org/html/rfc6749) to link accounts. The problem with this specification is that it cannot properly handle non-public or decentralized installations.
|
||||
|
||||
So if you were to link an integration via OAuth2 before today, you would have to sign up for a developer account, configure Home Assistant and expose your instance publicly before you got to the part where you can link your account. That's not good!
|
||||
|
||||
Home Assistant Cloud is introducing a new account linking service that will be freely available for everyone – no cloud account required. With this service, Home Assistant controls the developer account, and users will just need to link their accounts.
|
||||
|
||||
<div class='videoWrapper'>
|
||||
<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/y0SECWUVR-M" frameborder="0" allowfullscreen></iframe>
|
||||
</div>
|
||||
|
||||
The first integration to use this new service is [Somfy][somfy docs]. Manual installation is also still possible. This integration is built on top of our [new OAuth2 framework](https://developers.home-assistant.io/docs/en/config_entries_config_flow_handler.html#configuration-via-oauth2). We expect more integration developers to migrate OAuth2 integrations in the future.
|
||||
|
||||
## Create automations with natural language
|
||||
|
||||
As an experimental feature, we have added a new way to create automations. With the help of Almond, we can transform natural language into Home Assistant automations.
|
||||
|
||||
<p class='img'>
|
||||
<img src='/images/blog/2019-11-0.102/thingtalk-automation.png' alt='Screenshot of the create automation dialog.'></a>
|
||||
Screenshot of the create automation dialog.
|
||||
</p>
|
||||
|
||||
When you click the **+** in the automation editor to add a new automation, you will see a new dialog where you can enter what you want your automation to do in natural language. Like: `Turn on the lights when I come home`. We will try to convert this into an automation. We will check if you need to specify devices or persons for this automation and ask you for them. You can then check the generated automation in the editor and save it.
|
||||
|
||||
Be advised that not all devices are supported yet, and that Almond needs more training for better responses. Check the Almond part for how you can help make Almond better.
|
||||
|
||||
## Scene editor
|
||||
|
||||
<p class='img'>
|
||||
<img src='/images/docs/scenes/editor.png' alt='Screenshot of the scene editor.'></a>
|
||||
Screenshot of the scene editor.
|
||||
</p>
|
||||
|
||||
We're also introducing a [scene editor](/docs/scene/editor/). With the scene editor you can easily store the states of devices in a scene. You simply select the devices (and/or entities if you are in advanced mode) you want to include in your scene and set the states to how you would like them when the scene activates.
|
||||
|
||||
To use the scene editor your scene config should be in the file `scenes.yaml` in your config directory and included in `configuration.yaml`. Every scene should have a unique id for the editor to work.
|
||||
|
||||
```yaml
|
||||
# scenes.yaml
|
||||
- id: my_unique_id # <-- Required for editor to work.
|
||||
name: Romantic
|
||||
entities:
|
||||
light.tv_back_light: on
|
||||
light.ceiling:
|
||||
state: on
|
||||
xy_color: [0.33, 0.66]
|
||||
brightness: 200
|
||||
```
|
||||
|
||||
Then update your `configuration.yaml` to look like this:
|
||||
|
||||
```yaml
|
||||
# Configuration.yaml example
|
||||
scene: !include scenes.yaml
|
||||
```
|
||||
|
||||
## In other news
|
||||
|
||||
Andrew learned Swift and created a new mini-app for Mac:
|
||||
|
||||
<blockquote class="twitter-tweet"><p lang="en" dir="ltr">Using my new found Swift skills I created a tiny Mac menu bar app to control switches on <a href="https://twitter.com/home_assistant?ref_src=twsrc%5Etfw">@home_assistant</a> <a href="https://t.co/N7wl2gXd2O">https://t.co/N7wl2gXd2O</a><br>Saves me reaching behind the printer for the awkward power button.<br>Consider it alpha, I've got a lot to learn on both swift and HA! <a href="https://t.co/o6Wm7Le5nm">pic.twitter.com/o6Wm7Le5nm</a></p>— Andrew Jackson (@AndrewCodeChimp) <a href="https://twitter.com/AndrewCodeChimp/status/1196377630070755328?ref_src=twsrc%5Etfw">November 18, 2019</a>
|
||||
</blockquote>
|
||||
|
||||
Our Android app is not the only new app on the block. [@tuanha2000vn](https://github.com/tuanha2000vn) has released [Hasskit](https://github.com/tuanha2000vn/hasskit/), a new app built with Flutter that can be used on both Android and iOS.
|
||||
|
||||
And finally, Brad posted a video on [Reddit](https://www.reddit.com/r/homeassistant/comments/dz1qsi/picture_elements_are_so_fun_i_made_a_bad_video/) showing his amazing usage of picture elements in Lovelace. Check it out:
|
||||
|
||||
<div class='videoWrapper'>
|
||||
<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/SqIMUSegjrs" frameborder="0" allowfullscreen></iframe>
|
||||
</div>
|
||||
|
||||
Users of Xiaomi Vacuum cleaners can now use this great custom Lovelace card:
|
||||
|
||||
<blockquote class="twitter-tweet"><p lang="en" dir="ltr">Wow 😲<br><br>This custom card for Xiaomi vacuum cleaners allows you to exactly tell what part of the house your vacuum cleaner has to clean 👏<a href="https://t.co/NJtrRLKvDZ">https://t.co/NJtrRLKvDZ</a> <a href="https://t.co/iNOOwt5Wxd">pic.twitter.com/iNOOwt5Wxd</a></p>— Home Assistant (@home_assistant) <a href="https://twitter.com/home_assistant/status/1192889842440507392?ref_src=twsrc%5Etfw">November 8, 2019</a>
|
||||
</blockquote>
|
||||
|
||||
## New Integrations
|
||||
|
||||
- Add Unifi Led ([@florisvdk] - [#27475]) ([unifiled docs]) (new-integration)
|
||||
- Almond integration ([@balloob] - [#28282]) ([almond docs]) (new-integration)
|
||||
- Speech to Text component ([@pvizeli] - [#28434]) ([demo docs]) ([stt docs]) (new-integration)
|
||||
- Add WLED integration ([@frenck] - [#28542]) ([wled docs]) (new-integration)
|
||||
- Add azure servicebus notify service ([@hfurubotten] - [#27566]) ([azure_service_bus docs]) (new-integration)
|
||||
- Add pcal9535a integration ([@Shulyaka] - [#26563]) ([pcal9535a docs]) (new-integration)
|
||||
|
||||
## New Platforms
|
||||
|
||||
- Add Huawei LTE mobile data switch support ([@scop] - [#28188]) ([huawei_lte docs]) (new-platform)
|
||||
- Add support for Xiaomi Air Quality Monitor (cgllc.airmonitor.b1) ([@fwestenberg] - [#27735]) ([xiaomi_miio docs]) (new-platform)
|
||||
- Add switches (on/off zones) to geniushub ([@castaway] - [#28182]) ([geniushub docs]) (new-platform)
|
||||
- Add config endpoint for scene ([@bramkragten] - [#28429]) ([config docs]) ([homeassistant docs]) (new-platform)
|
||||
- Add override switch for juicenet ([@jesserockz] - [#28049]) ([juicenet docs]) (new-platform)
|
||||
- Add SST/TTS support over NC ([@pvizeli] - [#28527]) ([cloud docs]) ([stt docs]) (new-platform)
|
||||
|
||||
## If you need help...
|
||||
|
||||
...don't hesitate to use our very active [forums](https://community.home-assistant.io/) or join us for a little [chat](https://discord.gg/c5DvZ4e).
|
||||
|
||||
## Reporting Issues
|
||||
|
||||
Experiencing issues introduced by this release? Please report them in our [issue tracker](https://github.com/home-assistant/home-assistant/issues). Make sure to fill in all fields of the issue template.
|
||||
|
||||
## Breaking Changes
|
||||
|
||||
- **Huawei LTE** - Configuration has been consolidated below `huawei_lte`. Device tracker no longer uses known_devices.yaml but entity registry. - ([@scop] - [#26675]) ([huawei_lte docs])
|
||||
|
||||
Example configuration yaml:
|
||||
|
||||
```yaml
|
||||
huawei_lte:
|
||||
- url: http://192.168.100.1/
|
||||
username: admin
|
||||
password: something
|
||||
```
|
||||
|
||||
- **Ikea Tradfri** - This removes the battery sensor that was created for the signal repeater. The sensor would never have a state, and after some inspection, it does not look like that device present any valuable metrics. - ([@ludeeus] - [#28181]) ([tradfri docs])
|
||||
|
||||
- **UPNP/IGD** - All UPNP/IGD sensors are now in one device. You have to remove and re-add the integration to get rid of the previous devices. ([@escoand] - [#27517]) ([upnp docs])
|
||||
|
||||
- **PS4** - State `off` is now State `standby`. Affects user defined scripts, automations, etc. ([@ktnrg45] - [#28261]) ([ps4 docs])
|
||||
|
||||
- **SSDP** - `ssdp` in manifest.json has changed; it is now a list of dicts, and as we now match using the UPnP device description fields directly, `device_type` has to be renamed to `deviceType`. No included integrations use it at the moment, nor are they broken by this change. If any custom integrations are using it, they need to adjust accordingly. ([@scop] - [#28285]) ([ssdp docs])
|
||||
|
||||
- **HomematicIP Cloud** - The attribute naming between Homematic IP `HmIP-BSM` (light) and `HmIP-FSM/HmIP-PSM` (switch) was different and in case of light not correct. The attributes for `HmIP-BSM` have been renamed:
|
||||
|
||||
- energy_counter_kwh --> today_energy_kwh
|
||||
- power_consumption --> current_power_w
|
||||
|
||||
Please check your automations, scripts, scenes, etc., if you are using the old attributes in templates, and replace them with the new ones. - ([@SukramJ] - [#28271]) ([homematicip_cloud docs])
|
||||
|
||||
- **Plugwise** - Detection of a legacy Anna (firmware 1.8.x) is no longer automatic: owners of a legacy Anna have to provide info in configuration.yaml, the last line. This change was needed to be able to fix issue #26520. - ([@bouwew] - [#28237]) ([plugwise docs])
|
||||
|
||||
Example configuration yaml:
|
||||
|
||||
```yaml
|
||||
climate:
|
||||
- platform: plugwise
|
||||
name: your_device_name
|
||||
password: your_password
|
||||
host: your_anna_ip
|
||||
legacy_anna: true
|
||||
```
|
||||
|
||||
- **Android TV** - The `source` and `sources_list` attributes for Fire TV devices will use friendly app names instead of app IDs (e.g., "Netflix" instead of "com.netflix.ninja"). If you are using these attributes in automations, sensors, etc., you will need to update them.
|
||||
|
||||
- If you are currently checking that the `source` attribute of a Fire TV device is a particular app ID, you have two options:
|
||||
- Check the `app_id` attribute instead
|
||||
- Replace that app ID with the friendly name for the app.
|
||||
- If you are currently checking the `sources_list` attribute, then you will need to check for friendly app names instead of app IDs.
|
||||
|
||||
You can still use app IDs for the media_player.select_source service. - ([@JeffLIrion] - [#28417]) ([androidtv docs])
|
||||
|
||||
- **Homekit** - Thermostats supported by the Homekit Controller component were reporting "off" for the running status when the HVAC was powered on but not actively heating or cooling. This `hvac_action` attribute will now properly return "idle" instead of off. Any logic that tests for the `hvac_action` condition of `off` will need to change to `idle`. There is no change to any other states. - ([@GaryOkie] - [#28625]) ([homekit_controller docs])
|
||||
|
||||
- **OpenALPR local** - The "alp_bin" option has been corrected to "alpr_bin" as is outlined in the documentation. Users should check their config and update if necessary. ([@HexF] - [#28746]) ([openalpr_local docs])
|
||||
|
||||
## Beta Fixes
|
||||
|
||||
- Bump ZHA quirks to 0.0.28 ([@dmulcahey] - [#28750]) ([zha docs]) (beta fix)
|
||||
- Updated frontend to 20191114.0 ([@bramkragten] - [#28768]) ([frontend docs]) (beta fix)
|
||||
- Fix account link version check ([@balloob] - [#28770]) ([cloud docs]) (beta fix)
|
||||
- Fix amazon dependency conflicts ([@bbrendon] - [#28217]) ([amazon_polly docs]) ([aws docs]) (beta fix)
|
||||
- Change unique id for SAJ sensor based on device SN ([@fredericvl] - [#28663]) ([saj docs]) (breaking change) (beta fix)
|
||||
- Fix changing venstar operation_mode ([@iamtpage] - [#28754]) ([venstar docs]) (beta fix)
|
||||
- Fix Repetier integration entity indexing ([@MTrab] - [#28766]) ([repetier docs]) (beta fix)
|
||||
- Fix HomematicIP Cloud Alarm Control Panel support for basic mode ([@SukramJ] - [#28778]) ([homematicip_cloud docs]) (beta fix)
|
||||
- Fix Swisscom empty response received ([@LeoCal] - [#28782]) ([swisscom docs]) (beta fix)
|
||||
- Fix broken postnl sensor ([@peternijssen] - [#28794]) ([postnl docs]) (beta fix)
|
||||
- Updated frontend to 20191115.0 ([@bramkragten] - [#28797]) ([frontend docs]) (beta fix)
|
||||
- Fix Comfoconnect errors during startup ([@michaelarnauts] - [#28802]) ([comfoconnect docs]) (beta fix)
|
||||
- Fix miio air quality sensor ([@valkjsaaa] - [#28828]) ([xiaomi_miio docs]) (beta fix)
|
||||
- Update pyatmo to 3.0.1 ([@cgtobi] - [#28829]) ([netatmo docs]) (beta fix)
|
||||
- Updated frontend to 20191118.0 ([@bramkragten] - [#28852]) ([frontend docs]) (beta fix)
|
||||
- Fix documentation URL in failed platform config check ([@frenck] - [#28814]) (beta fix)
|
||||
- Fix Synology camera whitelist ([@h4de5] - [#28822]) ([synology docs]) (beta fix)
|
||||
- Fix setting colors while reproducing a lights state ([@Santobert] - [#28871]) ([light docs]) (beta fix)
|
||||
- Updated frontend to 20191119.0 ([@bramkragten] - [#28875]) ([frontend docs]) (beta fix)
|
||||
- Updated frontend to 20191119.1 ([@bramkragten] - [#28881]) ([frontend docs]) (beta fix)
|
||||
- Updated frontend to 20191119.2 ([@bramkragten] - [#28896]) ([frontend docs]) (beta fix)
|
||||
- Fix Almond onboarding url when using cloud ([@bramkragten] - [#28908]) ([almond docs]) (beta fix)
|
||||
|
||||
## All changes
|
||||
|
||||
- Cover all possible values for venstar operation_mode ([@iamtpage] - [#27949]) ([venstar docs])
|
||||
- Add onvif local datetime support ([@djpremier] - [#26656]) ([onvif docs])
|
||||
- Fix Venstar formatting to restore clean CI ([@kennedyshead] - [#28171]) ([venstar docs])
|
||||
- Add Unifi Led ([@florisvdk] - [#27475]) ([unifiled docs]) (new-integration)
|
||||
- Modernize Huawei LTE ([@scop] - [#26675]) ([huawei_lte docs]) (breaking change)
|
||||
- Use latest withings_api module ([@vangorra] - [#27817]) ([withings docs])
|
||||
- Tradfri config flow enhancements ([@ludeeus] - [#28179]) ([tradfri docs])
|
||||
- Add stop feature to tradfri covers ([@ludeeus] - [#28180]) ([tradfri docs])
|
||||
- Fix tzinfo type for onvif component ([@djpremier] - [#28178]) ([onvif docs])
|
||||
- Adding device_class to samsungtv ([@kennedyshead] - [#28168]) ([samsungtv docs])
|
||||
- Bump python-slugify to 4.0.0 ([@BKPepe] - [#28186])
|
||||
- Removes unwanted tradfri battery sensor ([@ludeeus] - [#28181]) ([tradfri docs]) (breaking change)
|
||||
- Huawei LTE sensor metadata update ([@scop] - [#28187]) ([huawei_lte docs])
|
||||
- Add Samsung TV automatic protocol detection ([@escoand] - [#27492]) ([samsungtv docs])
|
||||
- [homematic]Pass channel to light color functions ([@guillempages] - [#27306]) ([homematic docs])
|
||||
- [homematic]Add support for HmIP-BSL LEDs ([@guillempages] - [#27307]) ([homematic docs])
|
||||
- move hass-frontend import back down ([@gngj] - [#28203]) ([frontend docs])
|
||||
- Address post-merge coolmaster config flow code review ([@OnFreund] - [#28163]) ([coolmaster docs])
|
||||
- Add presentation URL to SSDP discovery info ([@scop] - [#28196]) ([ssdp docs])
|
||||
- Change Alexa default display category based on media_player device_class ([@ochlocracy] - [#28191]) ([alexa docs])
|
||||
- Add device condition support for media_player ([@shmooey] - [#28161]) ([media_player docs])
|
||||
- Add device condition support for device_tracker ([@shmooey] - [#28190]) ([device_tracker docs])
|
||||
- Increased python-eq3bt version to latest (0.1.11) ([@Poeschl] - [#28175]) ([eq3btsmart docs])
|
||||
- Add support for supportedOperations to Alexa.PlaybackController ([@ochlocracy] - [#28212]) ([alexa docs])
|
||||
- Improved Alexa ThermostatController thermostatMode handling ([@ochlocracy] - [#28176]) ([alexa docs])
|
||||
- Add additional device conditions to cover ([@emontnemery] - [#27830]) ([cover docs])
|
||||
- Implement Alexa.PlaybackStateReporter Interface for alexa ([@ochlocracy] - [#28215]) ([alexa docs])
|
||||
- Add cloud account linking support ([@balloob] - [#28210]) ([cloud docs]) ([somfy docs])
|
||||
- Add Huawei LTE mobile data switch support ([@scop] - [#28188]) ([huawei_lte docs]) (new-platform)
|
||||
- Upgrade speedtest-cli to 2.1.2 ([@fabaff] - [#28216])
|
||||
- Add available state to unifiled integration ([@florisvdk] - [#28189]) ([unifiled docs]) (new-integration)
|
||||
- Update praw to 6.4.0 ([@fabaff] - [#27324]) ([reddit docs])
|
||||
- Suppress traceback (fixes #28243) ([@fabaff] - [#28262]) ([iss docs])
|
||||
- Add charset to imap component. ([@ZiroNL] - [#28258]) ([imap docs])
|
||||
- Reorg and test attributes for HomematicIP Cloud ([@SukramJ] - [#28234]) ([homematicip_cloud docs])
|
||||
- Add support for Xiaomi Air Quality Monitor (cgllc.airmonitor.b1) ([@fwestenberg] - [#27735]) ([xiaomi_miio docs]) (new-platform)
|
||||
- Add transmission info about torrents that is accessible with templating ([@JPHutchins] - [#27111]) ([transmission docs])
|
||||
- More header cleanup for websocket proxy ([@pvizeli] - [#28288]) ([hassio docs])
|
||||
- Bump avea to 1.4 ([@pattyland] - [#28287]) ([avea docs])
|
||||
- Remove GTT component ([@eliseomartelli] - [#28286])
|
||||
- Hue: Create new config flow when auth is lost ([@bramkragten] - [#28204]) ([hue docs])
|
||||
- Revert "More header cleanup for websocket proxy (#28288)" ([@pvizeli] - [#28293]) ([hassio docs])
|
||||
- Add support for Somfy Garage door Rollixo IO DiscreteGarageOpenerIOComponent in Tahoma component ([@yjajkiew] - [#28291]) ([tahoma docs])
|
||||
- Type hint improvements ([@scop] - [#28260])
|
||||
- Add more iaqualink entity properties, fix timeout issues ([@flz] - [#28236]) ([iaqualink docs])
|
||||
- Add keyboard_remote trigger on multiple event types and emulate key hold events ([@bendavid] - [#27761]) ([keyboard_remote docs])
|
||||
- Remove blocking I/O from the event loop ([@syssi] - [#28305]) ([xiaomi_miio docs])
|
||||
- Use dict[key] for required config keys ([@syssi] - [#28304]) ([xiaomi_miio docs])
|
||||
- Bump black to 19.10b0 ([@frenck] - [#28310]) ([androidtv docs]) ([envirophat docs]) ([hangouts docs]) ([here_travel_time docs])
|
||||
- Add source constants for all config entry discovery sources ([@frenck] - [#28311])
|
||||
- Almond integration ([@balloob] - [#28282]) ([almond docs]) (new-integration)
|
||||
- Bump pre-commit to 1.20.0 ([@frenck] - [#28313])
|
||||
- Bump youtube_dl to 2019.10.29 ([@frenck] - [#28312]) ([media_extractor docs])
|
||||
- Add description for arlo.update service ([@PixelJonas] - [#28270])
|
||||
- Bump pytest to 5.2.2 ([@cgtobi] - [#28230])
|
||||
- Add services description for sabnzbd component ([@karouf] - [#28252])
|
||||
- Clean up Xiaomi Air Quality Monitor support (cgllc.airmonitor.b1) ([@syssi] - [#28301]) ([xiaomi_miio docs])
|
||||
- allow multiple heaters per incomfort gateway ([@zxdavb] - [#28324]) ([incomfort docs])
|
||||
- Add OAuth2 config flow scaffold ([@balloob] - [#28220])
|
||||
- Add services.yaml to local_file component. ([@ZiroNL] - [#28330])
|
||||
- Add device triggers to cover ([@emontnemery] - [#28063]) ([automation docs]) ([cover docs])
|
||||
- Flux log with debug instead of info ([@Santobert] - [#28352]) ([flux docs])
|
||||
- Add modelnumber for ecobee4 ([@marthoc] - [#28278]) ([ecobee docs])
|
||||
- Fill services.yaml for duckdns ([@gngj] - [#28248])
|
||||
- Implement Alexa.SeekController Interface for media_player in Alexa ([@ochlocracy] - [#28299]) ([alexa docs])
|
||||
- Don't set entity_id in ZHA entities ([@Adminiuga] - [#28362]) ([zha docs])
|
||||
- Update withings-api to avoid data parsing bugs. ([@vangorra] - [#28382]) ([withings docs])
|
||||
- Add services.yaml to onvif component ([@ZiroNL] - [#28349])
|
||||
- Fix Telegram Bot ([@Anonym-tsk] - [#28369])
|
||||
- Fill services.yaml for squeezebox ([@gngj] - [#28247])
|
||||
- Add file list to attributes of folder sensor ([@thoscut] - [#28338]) ([folder docs])
|
||||
- Show all UPNP/IGD sensors in one device ([@escoand] - [#27517]) ([upnp docs]) (breaking change)
|
||||
- fix feedreader handling unrecognized published date ([@exxamalte] - [#28225]) ([feedreader docs])
|
||||
- Introduce SUPPORT_COLOR_TEMP for flux_led component ([@yeralin] - [#26692]) ([flux_led docs])
|
||||
- Upgrade thingspeak to 1.0.0 ([@fabaff] - [#28424]) ([thingspeak docs])
|
||||
- Upgrade attrs to 19.3.0 ([@fabaff] - [#28421])
|
||||
- Add a Services YAML for the Dominos integration (#27289) ([@Schoonology] - [#28339])
|
||||
- Upgrade pysnmp to 4.4.12 ([@fabaff] - [#28428]) ([snmp docs])
|
||||
- Bump pyEight library to 0.1.2 to update API URL ([@mezz64] - [#28413]) ([eight_sleep docs])
|
||||
- Use defined device class constants for Homematic ([@SukramJ] - [#28438]) ([homematic docs])
|
||||
- Add improved scene support to the alarm_control_panel integration ([@Santobert] - [#28269]) ([alarm_control_panel docs])
|
||||
- Add improved scene support to the water_heater integration ([@Santobert] - [#28277]) ([demo docs]) ([water_heater docs])
|
||||
- deCONZ - Add Xiaomi Aqara Cube device trigger support ([@Kane610] - [#27548]) ([deconz docs])
|
||||
- deCONZ - Support creating battery sensor when reported ([@Kane610] - [#27538]) ([deconz docs])
|
||||
- deCONZ - Improve discovery logging ([@Kane610] - [#28452]) ([deconz docs])
|
||||
- Add scene.create service ([@Santobert] - [#28300]) ([homeassistant docs])
|
||||
- Update MQTT sensor test ([@fabaff] - [#28449])
|
||||
- Change ps4 state off to state standby ([@ktnrg45] - [#28261]) ([ps4 docs]) (breaking change)
|
||||
- Fix inability to transition between specific presets in Venstar component ([@nkaminski] - [#28238]) ([venstar docs])
|
||||
- pre-commit: ship default and full configs ([@scop] - [#28463])
|
||||
- SSDP matching improvements ([@scop] - [#28285]) ([ssdp docs]) (breaking change)
|
||||
- Bump env_canada to 0.0.30 ([@michaeldavie] - [#28487]) ([environment_canada docs])
|
||||
- Fixing #27722 Watson TTS platform (sdk upgrade) ([@rutkai] - [#28468]) ([watson_tts docs])
|
||||
- Use integration name in docstring ([@fabaff] - [#28445])
|
||||
- Handle Huawei LTE timeouts ([@scop] - [#28465]) ([huawei_lte docs])
|
||||
- Fix flaky Samsung TV tests ([@escoand] - [#28503])
|
||||
- Always provide brightness value ([@elupus] - [#28228]) ([google_assistant docs])
|
||||
- Fix flaky YesssSMS tests on debug messages ([@escoand] - [#28506])
|
||||
- Import CancelledError from asyncio, not .futures ([@scop] - [#28511]) ([bluesound docs])
|
||||
- Don't use deprecated encoding to json.loads ([@scop] - [#28509])
|
||||
- Update Vivotek component stream source ([@HarlemSquirrel] - [#27941]) ([vivotek docs])
|
||||
- Don't fail tox pylint if PYLINT_ARGS is not set ([@scop] - [#28403])
|
||||
- Upgrade pillow to 6.2.1 ([@fabaff] - [#28442]) ([image_processing docs]) ([proxy docs]) ([qrcode docs])
|
||||
- Add dump config service to HomematicIP Cloud ([@SukramJ] - [#28231]) ([homematicip_cloud docs])
|
||||
- Upgrade TwitterAPI to 2.5.10 ([@fabaff] - [#28401]) ([twitter docs])
|
||||
- Replace Netatmo CO2 sensor icon ([@tlrobinson] - [#28520]) ([netatmo docs])
|
||||
- Imports twitch ([@fabaff] - [#28517]) ([twitch docs])
|
||||
- Upgrade paho-mqtt to 1.5.0 ([@fabaff] - [#28423]) ([mqtt docs]) ([shiftr docs])
|
||||
- Upgrade jinja2 to >=2.10.3 ([@fabaff] - [#28422])
|
||||
- iaqualink: better handling of failures ([@flz] - [#28514]) ([iaqualink docs])
|
||||
- Add services description for ness alarm ([@tefinger] - [#28250])
|
||||
- Add information to IFTTT services.yaml ([@PixelJonas] - [#28385])
|
||||
- Expose set auto mode for all Dyson fans ([@soraxas] - [#28488]) ([dyson docs])
|
||||
- Add compatibility for other STBY Codes ([@soundstorm] - [#28478]) ([pioneer docs])
|
||||
- Remove legacy reproduce state ([@balloob] - [#28458])
|
||||
- Align attribute naming between light and switch for HomematicIP Cloud ([@SukramJ] - [#28271]) ([homematicip_cloud docs]) (breaking change)
|
||||
- Enable transition time for HmIP-BSL - HomematicIP Cloud ([@SukramJ] - [#28201]) ([homematicip_cloud docs])
|
||||
- Speech to Text component ([@pvizeli] - [#28434]) ([demo docs]) ([stt docs]) (new-integration)
|
||||
- Add switches (on/off zones) to geniushub ([@castaway] - [#28182]) ([geniushub docs]) (new-platform)
|
||||
- Cleanup Device Registry on Z-Wave Node Removal ([@cgarwood] - [#28240]) ([zwave docs])
|
||||
- Support Huawei LTE SSDP discovery ([@scop] - [#28214]) ([huawei_lte docs])
|
||||
- Fire an event when nzbget download completes ([@chriscla] - [#27763]) ([nzbget docs])
|
||||
- Add heating_type for ViCare integration ([@crazyfx1] - [#27296]) ([vicare docs])
|
||||
- Bump version for asuswrt to 1.1.22 ([@kennedyshead] - [#28322]) ([asuswrt docs])
|
||||
- Add config endpoint for scene ([@bramkragten] - [#28429]) ([config docs]) ([homeassistant docs]) (new-platform)
|
||||
- Update ephember library version ([@ttroy50] - [#28507]) ([ephember docs])
|
||||
- Checking state before actually sending a new state change. Some projectors return ERR if you try to turn off a projector that's already off. ([@mflage] - [#28529]) ([pjlink docs])
|
||||
- rate is a separate word ([@balloob] - [#28535]) ([demo docs]) ([stt docs])
|
||||
- Update Plugwise ([@bouwew] - [#28237]) ([plugwise docs]) (breaking change)
|
||||
- Improve scene.create service ([@Santobert] - [#28533]) ([homeassistant docs])
|
||||
- Reduce test requirements duplication, sync flake8 and related ([@scop] - [#28538])
|
||||
- Avoid drawing image_processing font text inside the bow line ([@snowzach] - [#27796]) ([image_processing docs])
|
||||
- Add override switch for juicenet ([@jesserockz] - [#28049]) ([juicenet docs]) (new-platform)
|
||||
- Move imports in samsungtv component ([@Quentame] - [#27775]) ([samsungtv docs])
|
||||
- Try fix tests ([@pvizeli] - [#28470])
|
||||
- Add additional support over NC ([@pvizeli] - [#28527]) ([cloud docs]) ([stt docs]) (new-platform)
|
||||
- Bump pytile and re-order imports ([@bachya] - [#28570]) ([tile docs])
|
||||
- Update nextbus stop tag to accept strings ([@Grodesh] - [#27765]) ([nextbus docs])
|
||||
- Bump adb-shell to 0.0.8 ([@JeffLIrion] - [#28582])
|
||||
- Fix Doods error when detection labels are specified in list form ([@snowzach] - [#28574]) ([doods docs])
|
||||
- Upgrade youtube_dl to 2019.11.05 ([@BKPepe] - [#28578]) ([media_extractor docs])
|
||||
- Reset states when connection to MPC-HC is lost ([@temeteke] - [#27541]) ([mpchc docs])
|
||||
- Add mqtt temp_low/high_template in SCHEMA_BASE ([@kevinkk525] - [#28257]) ([mqtt docs])
|
||||
- Add Netatmo camera services ([@ssenart] - [#27970]) ([netatmo docs])
|
||||
- Fix token sent to Almond Web ([@balloob] - [#28584]) ([almond docs])
|
||||
- Update to latest Somfy changes ([@balloob] - [#28207]) ([somfy docs])
|
||||
- Always run flake8 through pre-commit, and with doctests ([@scop] - [#28490])
|
||||
- Handle exceptions from PyViCare library ([@oischinger] - [#28536]) ([vicare docs])
|
||||
- Add WLED integration ([@frenck] - [#28542]) ([wled docs]) (new-integration)
|
||||
- update to latest integration library version ([@exxamalte] - [#28597]) ([geonetnz_quakes docs])
|
||||
- Upgrade greeneye_monitor to 1.0.1 ([@jkeljo] - [#28600]) ([greeneye_monitor docs])
|
||||
- Add device actions to vacuum ([@balloob] - [#28554]) ([device_automation docs]) ([vacuum docs])
|
||||
- Add device action to fan ([@balloob] - [#28550]) ([device_automation docs]) ([fan docs])
|
||||
- Add lock device triggers ([@balloob] - [#28547]) ([device_automation docs]) ([lock docs])
|
||||
- Add fan device trigger ([@balloob] - [#28545]) ([device_automation docs]) ([fan docs])
|
||||
- Fix simple typo: unhasable -> unhashable ([@timgates42] - [#28605])
|
||||
- Add device triggers to vacuum ([@balloob] - [#28548]) ([automation docs]) ([device_automation docs]) ([vacuum docs])
|
||||
- Fix demo TTS ([@bramkragten] - [#28608]) ([demo docs])
|
||||
- Add climate device actions ([@balloob] - [#28552]) ([climate docs]) ([device_automation docs])
|
||||
- Add azure servicebus notify service ([@hfurubotten] - [#27566]) ([azure_service_bus docs]) (new-integration)
|
||||
- Add climate device triggers ([@balloob] - [#28544]) ([automation docs]) ([climate docs]) ([device_automation docs]) ([homekit docs])
|
||||
- Add fan device condition ([@balloob] - [#28549]) ([device_automation docs]) ([fan docs])
|
||||
- Add vacuum device conditions ([@balloob] - [#28551]) ([device_automation docs]) ([vacuum docs])
|
||||
- Add cool mode to HomematicIP climate ([@SukramJ] - [#28525]) ([homematicip_cloud docs])
|
||||
- Add device conditions to climate ([@balloob] - [#28553]) ([device_automation docs])
|
||||
- Add support for conversation ID ([@balloob] - [#28620]) ([almond docs]) ([conversation docs])
|
||||
- Match ALARM in NUT UPS status message ([@bwarden] - [#28591]) ([nut docs])
|
||||
- Use friendly app names for Fire TV sources ([@JeffLIrion] - [#28417]) ([androidtv docs]) (breaking change)
|
||||
- Add Huawei LTE device registry support ([@scop] - [#28594]) ([huawei_lte docs])
|
||||
- Fix generic_thermostat too_hot/too_cold ([@akasma74] - [#27860]) ([generic_thermostat docs])
|
||||
- Add switch platform to WLED integration ([@frenck] - [#28606]) ([wled docs]) (new-platform)
|
||||
- Add TT WS API ([@balloob] - [#28599]) ([cloud docs]) ([websocket_api docs])
|
||||
- Add turn_on/off to tfiac ([@fredrike] - [#27712]) ([tfiac docs])
|
||||
- Fix issue with multiple Netatmo home coach devices ([@cgtobi] - [#28407]) ([netatmo docs])
|
||||
- Add attribution and onboarding commands to conversation and Almond ([@bramkragten] - [#28621]) ([almond docs]) ([conversation docs])
|
||||
- Updated frontend to 20191108.0 ([@bramkragten] - [#28638]) ([frontend docs])
|
||||
- Bump ZHA quirks version ([@dmulcahey] - [#28636]) ([zha docs])
|
||||
- Move imports in xiaomi_miio ([@Misiu] - [#27773]) ([xiaomi_miio docs])
|
||||
- Added support for multiple SAJ solar inverters ([@fredericvl] - [#28612]) ([saj docs])
|
||||
- Add support for Heat Mode detection for ecobee Heat Pumps ([@arigit] - [#28273]) ([ecobee docs])
|
||||
- Fix unhandled exception when Swisscom Internet Box is not responsive ([@LeoCal] - [#28618]) ([swisscom docs])
|
||||
- Add pcal9535a integration ([@Shulyaka] - [#26563]) ([pcal9535a docs]) (new-integration)
|
||||
- Add bluesound speaker group attribute ([@bluestripe] - [#28142]) ([bluesound docs])
|
||||
- Fix xiaomi vacuum tests ([@MartinHjelmare] - [#28658])
|
||||
- Add sensor platform to WLED integration ([@frenck] - [#28632]) ([wled docs]) (new-platform)
|
||||
- Upgrade bimmer_connected to 0.6.2 ([@gerard33] - [#28651]) ([bmw_connected_drive docs])
|
||||
- verisure autolock service ([@persandstrom] - [#27366]) ([verisure docs])
|
||||
- Skip updating idle Plex clients ([@jjlawren] - [#28664]) ([plex docs])
|
||||
- Hue: store current sensor entities by bridge ([@bramkragten] - [#28679]) ([hue docs])
|
||||
- #28645: Bump up zm-py to 0.4.0 ([@rohankapoorcom] - [#28681]) ([zoneminder docs])
|
||||
- Add codeowner for lutron integration ([@JonGilmore] - [#28682]) ([lutron docs])
|
||||
- Add xiaomi_miio chuangmi.plug.hmi206 ([@rytilahti] - [#28688]) ([xiaomi_miio docs])
|
||||
- Add Lutron hybrid keypad raise/lower buttons ([@kevineriklee] - [#28674]) ([lutron docs])
|
||||
- Allow icons to be masked ([@bramkragten] - [#28692]) ([frontend docs])
|
||||
- fix typo in comments ([@basnijholt] - [#28694])
|
||||
- Add config flow tests for OwnTracks ([@Quentame] - [#28644]) ([owntracks docs])
|
||||
- Update Homekit climate.py to remap current mode ([@GaryOkie] - [#28625]) ([homekit_controller docs]) (breaking change)
|
||||
- Bump up ZHA dependencies. ([@Adminiuga] - [#28711]) ([zha docs])
|
||||
- Ensure SimpliSafe alarm control panels can return from being offline ([@bachya] - [#28710]) ([simplisafe docs])
|
||||
- Bump plexapi to 3.3.0 ([@jjlawren] - [#28709]) ([plex docs])
|
||||
- Update binary_sensor.py ([@effelle] - [#28707]) ([mqtt docs])
|
||||
- Allow preset boost for Homematic IP Cloud power switches ([@SukramJ] - [#28713]) ([homematicip_cloud docs])
|
||||
- Upgrade discogs_client to 2.2.2 ([@fabaff] - [#28723]) ([discogs docs])
|
||||
- Fix Here Travel Time unable to find entity on startup ([@eifinger] - [#27237]) ([here_travel_time docs])
|
||||
- Use library method for season number ([@jjlawren] - [#28708]) ([plex docs])
|
||||
- Remove choice word when Almond has choices ([@balloob] - [#28725]) ([almond docs])
|
||||
- ESPHome fix missing state in certain circumstances ([@OttoWinter] - [#28729]) ([esphome docs])
|
||||
- Set up Almond Web to connect to HA ([@balloob] - [#28603]) ([almond docs])
|
||||
- version bump pypoint ([@fredrike] - [#28737]) ([point docs])
|
||||
- Upgrade async_upnp_client==0.14.12 ([@StevenLooman] - [#28733]) ([dlna_dmr docs]) ([upnp docs])
|
||||
- Add device classes to weather sensors. ([@davet2001] - [#28512]) ([yr docs])
|
||||
- Upgrade psutil to 5.6.5 ([@fabaff] - [#28717]) ([systemmonitor docs])
|
||||
- Travis and tox config improvements ([@scop] - [#28667])
|
||||
- Correct openalpr_local config option name ([@HexF] - [#28746]) ([openalpr_local docs]) (breaking change)
|
||||
- Bump ZHA quirks to 0.0.28 ([@dmulcahey] - [#28750]) ([zha docs]) (beta fix)
|
||||
- Updated frontend to 20191114.0 ([@bramkragten] - [#28768]) ([frontend docs]) (beta fix)
|
||||
- Fix account link version check ([@balloob] - [#28770]) ([cloud docs]) (beta fix)
|
||||
- Fix amazon dependency conflicts ([@bbrendon] - [#28217]) ([amazon_polly docs]) ([aws docs]) (beta fix)
|
||||
- Change unique id for SAJ sensor based on device SN ([@fredericvl] - [#28663]) ([saj docs]) (breaking change) (beta fix)
|
||||
- Fix changing venstar operation_mode ([@iamtpage] - [#28754]) ([venstar docs]) (beta fix)
|
||||
- Fix Repetier integration entity indexing ([@MTrab] - [#28766]) ([repetier docs]) (beta fix)
|
||||
- Fix HomematicIP Cloud Alarm Control Panel support for basic mode ([@SukramJ] - [#28778]) ([homematicip_cloud docs]) (beta fix)
|
||||
- Fix Swisscom empty response received ([@LeoCal] - [#28782]) ([swisscom docs]) (beta fix)
|
||||
- Fix broken postnl sensor ([@peternijssen] - [#28794]) ([postnl docs]) (beta fix)
|
||||
- Updated frontend to 20191115.0 ([@bramkragten] - [#28797]) ([frontend docs]) (beta fix)
|
||||
- Fix Comfoconnect errors during startup ([@michaelarnauts] - [#28802]) ([comfoconnect docs]) (beta fix)
|
||||
- Fix miio air quality sensor ([@valkjsaaa] - [#28828]) ([xiaomi_miio docs]) (beta fix)
|
||||
- Update pyatmo to 3.0.1 ([@cgtobi] - [#28829]) ([netatmo docs]) (beta fix)
|
||||
- Updated frontend to 20191118.0 ([@bramkragten] - [#28852]) ([frontend docs]) (beta fix)
|
||||
- Fix documentation URL in failed platform config check ([@frenck] - [#28814]) (beta fix)
|
||||
- Fix Synology camera whitelist ([@h4de5] - [#28822]) ([synology docs]) (beta fix)
|
||||
- Fix setting colors while reproducing a lights state ([@Santobert] - [#28871]) ([light docs]) (beta fix)
|
||||
- Updated frontend to 20191119.0 ([@bramkragten] - [#28875]) ([frontend docs]) (beta fix)
|
||||
- Updated frontend to 20191119.1 ([@bramkragten] - [#28881]) ([frontend docs]) (beta fix)
|
||||
- Updated frontend to 20191119.2 ([@bramkragten] - [#28896]) ([frontend docs]) (beta fix)
|
||||
- Fix Almond onboarding url when using cloud ([@bramkragten] - [#28908]) ([almond docs]) (beta fix)
|
||||
|
||||
[#26563]: https://github.com/home-assistant/home-assistant/pull/26563
|
||||
[#26656]: https://github.com/home-assistant/home-assistant/pull/26656
|
||||
[#26675]: https://github.com/home-assistant/home-assistant/pull/26675
|
||||
[#26692]: https://github.com/home-assistant/home-assistant/pull/26692
|
||||
[#27111]: https://github.com/home-assistant/home-assistant/pull/27111
|
||||
[#27237]: https://github.com/home-assistant/home-assistant/pull/27237
|
||||
[#27296]: https://github.com/home-assistant/home-assistant/pull/27296
|
||||
[#27306]: https://github.com/home-assistant/home-assistant/pull/27306
|
||||
[#27307]: https://github.com/home-assistant/home-assistant/pull/27307
|
||||
[#27324]: https://github.com/home-assistant/home-assistant/pull/27324
|
||||
[#27366]: https://github.com/home-assistant/home-assistant/pull/27366
|
||||
[#27475]: https://github.com/home-assistant/home-assistant/pull/27475
|
||||
[#27492]: https://github.com/home-assistant/home-assistant/pull/27492
|
||||
[#27517]: https://github.com/home-assistant/home-assistant/pull/27517
|
||||
[#27538]: https://github.com/home-assistant/home-assistant/pull/27538
|
||||
[#27541]: https://github.com/home-assistant/home-assistant/pull/27541
|
||||
[#27548]: https://github.com/home-assistant/home-assistant/pull/27548
|
||||
[#27566]: https://github.com/home-assistant/home-assistant/pull/27566
|
||||
[#27712]: https://github.com/home-assistant/home-assistant/pull/27712
|
||||
[#27735]: https://github.com/home-assistant/home-assistant/pull/27735
|
||||
[#27761]: https://github.com/home-assistant/home-assistant/pull/27761
|
||||
[#27763]: https://github.com/home-assistant/home-assistant/pull/27763
|
||||
[#27765]: https://github.com/home-assistant/home-assistant/pull/27765
|
||||
[#27773]: https://github.com/home-assistant/home-assistant/pull/27773
|
||||
[#27775]: https://github.com/home-assistant/home-assistant/pull/27775
|
||||
[#27796]: https://github.com/home-assistant/home-assistant/pull/27796
|
||||
[#27817]: https://github.com/home-assistant/home-assistant/pull/27817
|
||||
[#27830]: https://github.com/home-assistant/home-assistant/pull/27830
|
||||
[#27860]: https://github.com/home-assistant/home-assistant/pull/27860
|
||||
[#27941]: https://github.com/home-assistant/home-assistant/pull/27941
|
||||
[#27949]: https://github.com/home-assistant/home-assistant/pull/27949
|
||||
[#27970]: https://github.com/home-assistant/home-assistant/pull/27970
|
||||
[#28049]: https://github.com/home-assistant/home-assistant/pull/28049
|
||||
[#28063]: https://github.com/home-assistant/home-assistant/pull/28063
|
||||
[#28142]: https://github.com/home-assistant/home-assistant/pull/28142
|
||||
[#28161]: https://github.com/home-assistant/home-assistant/pull/28161
|
||||
[#28163]: https://github.com/home-assistant/home-assistant/pull/28163
|
||||
[#28168]: https://github.com/home-assistant/home-assistant/pull/28168
|
||||
[#28171]: https://github.com/home-assistant/home-assistant/pull/28171
|
||||
[#28175]: https://github.com/home-assistant/home-assistant/pull/28175
|
||||
[#28176]: https://github.com/home-assistant/home-assistant/pull/28176
|
||||
[#28178]: https://github.com/home-assistant/home-assistant/pull/28178
|
||||
[#28179]: https://github.com/home-assistant/home-assistant/pull/28179
|
||||
[#28180]: https://github.com/home-assistant/home-assistant/pull/28180
|
||||
[#28181]: https://github.com/home-assistant/home-assistant/pull/28181
|
||||
[#28182]: https://github.com/home-assistant/home-assistant/pull/28182
|
||||
[#28186]: https://github.com/home-assistant/home-assistant/pull/28186
|
||||
[#28187]: https://github.com/home-assistant/home-assistant/pull/28187
|
||||
[#28188]: https://github.com/home-assistant/home-assistant/pull/28188
|
||||
[#28189]: https://github.com/home-assistant/home-assistant/pull/28189
|
||||
[#28190]: https://github.com/home-assistant/home-assistant/pull/28190
|
||||
[#28191]: https://github.com/home-assistant/home-assistant/pull/28191
|
||||
[#28196]: https://github.com/home-assistant/home-assistant/pull/28196
|
||||
[#28201]: https://github.com/home-assistant/home-assistant/pull/28201
|
||||
[#28203]: https://github.com/home-assistant/home-assistant/pull/28203
|
||||
[#28204]: https://github.com/home-assistant/home-assistant/pull/28204
|
||||
[#28207]: https://github.com/home-assistant/home-assistant/pull/28207
|
||||
[#28210]: https://github.com/home-assistant/home-assistant/pull/28210
|
||||
[#28212]: https://github.com/home-assistant/home-assistant/pull/28212
|
||||
[#28214]: https://github.com/home-assistant/home-assistant/pull/28214
|
||||
[#28215]: https://github.com/home-assistant/home-assistant/pull/28215
|
||||
[#28216]: https://github.com/home-assistant/home-assistant/pull/28216
|
||||
[#28217]: https://github.com/home-assistant/home-assistant/pull/28217
|
||||
[#28220]: https://github.com/home-assistant/home-assistant/pull/28220
|
||||
[#28225]: https://github.com/home-assistant/home-assistant/pull/28225
|
||||
[#28228]: https://github.com/home-assistant/home-assistant/pull/28228
|
||||
[#28230]: https://github.com/home-assistant/home-assistant/pull/28230
|
||||
[#28231]: https://github.com/home-assistant/home-assistant/pull/28231
|
||||
[#28234]: https://github.com/home-assistant/home-assistant/pull/28234
|
||||
[#28236]: https://github.com/home-assistant/home-assistant/pull/28236
|
||||
[#28237]: https://github.com/home-assistant/home-assistant/pull/28237
|
||||
[#28238]: https://github.com/home-assistant/home-assistant/pull/28238
|
||||
[#28240]: https://github.com/home-assistant/home-assistant/pull/28240
|
||||
[#28247]: https://github.com/home-assistant/home-assistant/pull/28247
|
||||
[#28248]: https://github.com/home-assistant/home-assistant/pull/28248
|
||||
[#28250]: https://github.com/home-assistant/home-assistant/pull/28250
|
||||
[#28252]: https://github.com/home-assistant/home-assistant/pull/28252
|
||||
[#28257]: https://github.com/home-assistant/home-assistant/pull/28257
|
||||
[#28258]: https://github.com/home-assistant/home-assistant/pull/28258
|
||||
[#28260]: https://github.com/home-assistant/home-assistant/pull/28260
|
||||
[#28261]: https://github.com/home-assistant/home-assistant/pull/28261
|
||||
[#28262]: https://github.com/home-assistant/home-assistant/pull/28262
|
||||
[#28269]: https://github.com/home-assistant/home-assistant/pull/28269
|
||||
[#28270]: https://github.com/home-assistant/home-assistant/pull/28270
|
||||
[#28271]: https://github.com/home-assistant/home-assistant/pull/28271
|
||||
[#28273]: https://github.com/home-assistant/home-assistant/pull/28273
|
||||
[#28277]: https://github.com/home-assistant/home-assistant/pull/28277
|
||||
[#28278]: https://github.com/home-assistant/home-assistant/pull/28278
|
||||
[#28282]: https://github.com/home-assistant/home-assistant/pull/28282
|
||||
[#28285]: https://github.com/home-assistant/home-assistant/pull/28285
|
||||
[#28286]: https://github.com/home-assistant/home-assistant/pull/28286
|
||||
[#28287]: https://github.com/home-assistant/home-assistant/pull/28287
|
||||
[#28288]: https://github.com/home-assistant/home-assistant/pull/28288
|
||||
[#28291]: https://github.com/home-assistant/home-assistant/pull/28291
|
||||
[#28293]: https://github.com/home-assistant/home-assistant/pull/28293
|
||||
[#28299]: https://github.com/home-assistant/home-assistant/pull/28299
|
||||
[#28300]: https://github.com/home-assistant/home-assistant/pull/28300
|
||||
[#28301]: https://github.com/home-assistant/home-assistant/pull/28301
|
||||
[#28304]: https://github.com/home-assistant/home-assistant/pull/28304
|
||||
[#28305]: https://github.com/home-assistant/home-assistant/pull/28305
|
||||
[#28310]: https://github.com/home-assistant/home-assistant/pull/28310
|
||||
[#28311]: https://github.com/home-assistant/home-assistant/pull/28311
|
||||
[#28312]: https://github.com/home-assistant/home-assistant/pull/28312
|
||||
[#28313]: https://github.com/home-assistant/home-assistant/pull/28313
|
||||
[#28322]: https://github.com/home-assistant/home-assistant/pull/28322
|
||||
[#28324]: https://github.com/home-assistant/home-assistant/pull/28324
|
||||
[#28330]: https://github.com/home-assistant/home-assistant/pull/28330
|
||||
[#28338]: https://github.com/home-assistant/home-assistant/pull/28338
|
||||
[#28339]: https://github.com/home-assistant/home-assistant/pull/28339
|
||||
[#28349]: https://github.com/home-assistant/home-assistant/pull/28349
|
||||
[#28352]: https://github.com/home-assistant/home-assistant/pull/28352
|
||||
[#28362]: https://github.com/home-assistant/home-assistant/pull/28362
|
||||
[#28369]: https://github.com/home-assistant/home-assistant/pull/28369
|
||||
[#28382]: https://github.com/home-assistant/home-assistant/pull/28382
|
||||
[#28385]: https://github.com/home-assistant/home-assistant/pull/28385
|
||||
[#28401]: https://github.com/home-assistant/home-assistant/pull/28401
|
||||
[#28403]: https://github.com/home-assistant/home-assistant/pull/28403
|
||||
[#28407]: https://github.com/home-assistant/home-assistant/pull/28407
|
||||
[#28413]: https://github.com/home-assistant/home-assistant/pull/28413
|
||||
[#28417]: https://github.com/home-assistant/home-assistant/pull/28417
|
||||
[#28421]: https://github.com/home-assistant/home-assistant/pull/28421
|
||||
[#28422]: https://github.com/home-assistant/home-assistant/pull/28422
|
||||
[#28423]: https://github.com/home-assistant/home-assistant/pull/28423
|
||||
[#28424]: https://github.com/home-assistant/home-assistant/pull/28424
|
||||
[#28428]: https://github.com/home-assistant/home-assistant/pull/28428
|
||||
[#28429]: https://github.com/home-assistant/home-assistant/pull/28429
|
||||
[#28434]: https://github.com/home-assistant/home-assistant/pull/28434
|
||||
[#28438]: https://github.com/home-assistant/home-assistant/pull/28438
|
||||
[#28442]: https://github.com/home-assistant/home-assistant/pull/28442
|
||||
[#28445]: https://github.com/home-assistant/home-assistant/pull/28445
|
||||
[#28449]: https://github.com/home-assistant/home-assistant/pull/28449
|
||||
[#28452]: https://github.com/home-assistant/home-assistant/pull/28452
|
||||
[#28458]: https://github.com/home-assistant/home-assistant/pull/28458
|
||||
[#28463]: https://github.com/home-assistant/home-assistant/pull/28463
|
||||
[#28465]: https://github.com/home-assistant/home-assistant/pull/28465
|
||||
[#28468]: https://github.com/home-assistant/home-assistant/pull/28468
|
||||
[#28470]: https://github.com/home-assistant/home-assistant/pull/28470
|
||||
[#28478]: https://github.com/home-assistant/home-assistant/pull/28478
|
||||
[#28487]: https://github.com/home-assistant/home-assistant/pull/28487
|
||||
[#28488]: https://github.com/home-assistant/home-assistant/pull/28488
|
||||
[#28490]: https://github.com/home-assistant/home-assistant/pull/28490
|
||||
[#28503]: https://github.com/home-assistant/home-assistant/pull/28503
|
||||
[#28506]: https://github.com/home-assistant/home-assistant/pull/28506
|
||||
[#28507]: https://github.com/home-assistant/home-assistant/pull/28507
|
||||
[#28509]: https://github.com/home-assistant/home-assistant/pull/28509
|
||||
[#28511]: https://github.com/home-assistant/home-assistant/pull/28511
|
||||
[#28512]: https://github.com/home-assistant/home-assistant/pull/28512
|
||||
[#28514]: https://github.com/home-assistant/home-assistant/pull/28514
|
||||
[#28517]: https://github.com/home-assistant/home-assistant/pull/28517
|
||||
[#28520]: https://github.com/home-assistant/home-assistant/pull/28520
|
||||
[#28525]: https://github.com/home-assistant/home-assistant/pull/28525
|
||||
[#28527]: https://github.com/home-assistant/home-assistant/pull/28527
|
||||
[#28529]: https://github.com/home-assistant/home-assistant/pull/28529
|
||||
[#28533]: https://github.com/home-assistant/home-assistant/pull/28533
|
||||
[#28535]: https://github.com/home-assistant/home-assistant/pull/28535
|
||||
[#28536]: https://github.com/home-assistant/home-assistant/pull/28536
|
||||
[#28538]: https://github.com/home-assistant/home-assistant/pull/28538
|
||||
[#28542]: https://github.com/home-assistant/home-assistant/pull/28542
|
||||
[#28544]: https://github.com/home-assistant/home-assistant/pull/28544
|
||||
[#28545]: https://github.com/home-assistant/home-assistant/pull/28545
|
||||
[#28547]: https://github.com/home-assistant/home-assistant/pull/28547
|
||||
[#28548]: https://github.com/home-assistant/home-assistant/pull/28548
|
||||
[#28549]: https://github.com/home-assistant/home-assistant/pull/28549
|
||||
[#28550]: https://github.com/home-assistant/home-assistant/pull/28550
|
||||
[#28551]: https://github.com/home-assistant/home-assistant/pull/28551
|
||||
[#28552]: https://github.com/home-assistant/home-assistant/pull/28552
|
||||
[#28553]: https://github.com/home-assistant/home-assistant/pull/28553
|
||||
[#28554]: https://github.com/home-assistant/home-assistant/pull/28554
|
||||
[#28570]: https://github.com/home-assistant/home-assistant/pull/28570
|
||||
[#28574]: https://github.com/home-assistant/home-assistant/pull/28574
|
||||
[#28578]: https://github.com/home-assistant/home-assistant/pull/28578
|
||||
[#28582]: https://github.com/home-assistant/home-assistant/pull/28582
|
||||
[#28584]: https://github.com/home-assistant/home-assistant/pull/28584
|
||||
[#28591]: https://github.com/home-assistant/home-assistant/pull/28591
|
||||
[#28594]: https://github.com/home-assistant/home-assistant/pull/28594
|
||||
[#28597]: https://github.com/home-assistant/home-assistant/pull/28597
|
||||
[#28599]: https://github.com/home-assistant/home-assistant/pull/28599
|
||||
[#28600]: https://github.com/home-assistant/home-assistant/pull/28600
|
||||
[#28603]: https://github.com/home-assistant/home-assistant/pull/28603
|
||||
[#28605]: https://github.com/home-assistant/home-assistant/pull/28605
|
||||
[#28606]: https://github.com/home-assistant/home-assistant/pull/28606
|
||||
[#28608]: https://github.com/home-assistant/home-assistant/pull/28608
|
||||
[#28612]: https://github.com/home-assistant/home-assistant/pull/28612
|
||||
[#28618]: https://github.com/home-assistant/home-assistant/pull/28618
|
||||
[#28620]: https://github.com/home-assistant/home-assistant/pull/28620
|
||||
[#28621]: https://github.com/home-assistant/home-assistant/pull/28621
|
||||
[#28625]: https://github.com/home-assistant/home-assistant/pull/28625
|
||||
[#28632]: https://github.com/home-assistant/home-assistant/pull/28632
|
||||
[#28636]: https://github.com/home-assistant/home-assistant/pull/28636
|
||||
[#28638]: https://github.com/home-assistant/home-assistant/pull/28638
|
||||
[#28644]: https://github.com/home-assistant/home-assistant/pull/28644
|
||||
[#28651]: https://github.com/home-assistant/home-assistant/pull/28651
|
||||
[#28658]: https://github.com/home-assistant/home-assistant/pull/28658
|
||||
[#28663]: https://github.com/home-assistant/home-assistant/pull/28663
|
||||
[#28664]: https://github.com/home-assistant/home-assistant/pull/28664
|
||||
[#28667]: https://github.com/home-assistant/home-assistant/pull/28667
|
||||
[#28674]: https://github.com/home-assistant/home-assistant/pull/28674
|
||||
[#28679]: https://github.com/home-assistant/home-assistant/pull/28679
|
||||
[#28681]: https://github.com/home-assistant/home-assistant/pull/28681
|
||||
[#28682]: https://github.com/home-assistant/home-assistant/pull/28682
|
||||
[#28688]: https://github.com/home-assistant/home-assistant/pull/28688
|
||||
[#28692]: https://github.com/home-assistant/home-assistant/pull/28692
|
||||
[#28694]: https://github.com/home-assistant/home-assistant/pull/28694
|
||||
[#28707]: https://github.com/home-assistant/home-assistant/pull/28707
|
||||
[#28708]: https://github.com/home-assistant/home-assistant/pull/28708
|
||||
[#28709]: https://github.com/home-assistant/home-assistant/pull/28709
|
||||
[#28710]: https://github.com/home-assistant/home-assistant/pull/28710
|
||||
[#28711]: https://github.com/home-assistant/home-assistant/pull/28711
|
||||
[#28713]: https://github.com/home-assistant/home-assistant/pull/28713
|
||||
[#28717]: https://github.com/home-assistant/home-assistant/pull/28717
|
||||
[#28723]: https://github.com/home-assistant/home-assistant/pull/28723
|
||||
[#28725]: https://github.com/home-assistant/home-assistant/pull/28725
|
||||
[#28729]: https://github.com/home-assistant/home-assistant/pull/28729
|
||||
[#28733]: https://github.com/home-assistant/home-assistant/pull/28733
|
||||
[#28737]: https://github.com/home-assistant/home-assistant/pull/28737
|
||||
[#28746]: https://github.com/home-assistant/home-assistant/pull/28746
|
||||
[#28750]: https://github.com/home-assistant/home-assistant/pull/28750
|
||||
[#28754]: https://github.com/home-assistant/home-assistant/pull/28754
|
||||
[#28766]: https://github.com/home-assistant/home-assistant/pull/28766
|
||||
[#28768]: https://github.com/home-assistant/home-assistant/pull/28768
|
||||
[#28770]: https://github.com/home-assistant/home-assistant/pull/28770
|
||||
[#28778]: https://github.com/home-assistant/home-assistant/pull/28778
|
||||
[#28782]: https://github.com/home-assistant/home-assistant/pull/28782
|
||||
[#28794]: https://github.com/home-assistant/home-assistant/pull/28794
|
||||
[#28797]: https://github.com/home-assistant/home-assistant/pull/28797
|
||||
[#28802]: https://github.com/home-assistant/home-assistant/pull/28802
|
||||
[#28814]: https://github.com/home-assistant/home-assistant/pull/28814
|
||||
[#28822]: https://github.com/home-assistant/home-assistant/pull/28822
|
||||
[#28828]: https://github.com/home-assistant/home-assistant/pull/28828
|
||||
[#28829]: https://github.com/home-assistant/home-assistant/pull/28829
|
||||
[#28852]: https://github.com/home-assistant/home-assistant/pull/28852
|
||||
[#28871]: https://github.com/home-assistant/home-assistant/pull/28871
|
||||
[#28875]: https://github.com/home-assistant/home-assistant/pull/28875
|
||||
[#28881]: https://github.com/home-assistant/home-assistant/pull/28881
|
||||
[#28896]: https://github.com/home-assistant/home-assistant/pull/28896
|
||||
[#28908]: https://github.com/home-assistant/home-assistant/pull/28908
|
||||
[@adminiuga]: https://github.com/Adminiuga
|
||||
[@anonym-tsk]: https://github.com/Anonym-tsk
|
||||
[@bkpepe]: https://github.com/BKPepe
|
||||
[@garyokie]: https://github.com/GaryOkie
|
||||
[@grodesh]: https://github.com/Grodesh
|
||||
[@harlemsquirrel]: https://github.com/HarlemSquirrel
|
||||
[@hexf]: https://github.com/HexF
|
||||
[@jphutchins]: https://github.com/JPHutchins
|
||||
[@jefflirion]: https://github.com/JeffLIrion
|
||||
[@jongilmore]: https://github.com/JonGilmore
|
||||
[@kane610]: https://github.com/Kane610
|
||||
[@leocal]: https://github.com/LeoCal
|
||||
[@mtrab]: https://github.com/MTrab
|
||||
[@martinhjelmare]: https://github.com/MartinHjelmare
|
||||
[@misiu]: https://github.com/Misiu
|
||||
[@onfreund]: https://github.com/OnFreund
|
||||
[@ottowinter]: https://github.com/OttoWinter
|
||||
[@pixeljonas]: https://github.com/PixelJonas
|
||||
[@poeschl]: https://github.com/Poeschl
|
||||
[@quentame]: https://github.com/Quentame
|
||||
[@santobert]: https://github.com/Santobert
|
||||
[@schoonology]: https://github.com/Schoonology
|
||||
[@shulyaka]: https://github.com/Shulyaka
|
||||
[@stevenlooman]: https://github.com/StevenLooman
|
||||
[@sukramj]: https://github.com/SukramJ
|
||||
[@zironl]: https://github.com/ZiroNL
|
||||
[@akasma74]: https://github.com/akasma74
|
||||
[@arigit]: https://github.com/arigit
|
||||
[@bachya]: https://github.com/bachya
|
||||
[@balloob]: https://github.com/balloob
|
||||
[@basnijholt]: https://github.com/basnijholt
|
||||
[@bbrendon]: https://github.com/bbrendon
|
||||
[@bendavid]: https://github.com/bendavid
|
||||
[@bluestripe]: https://github.com/bluestripe
|
||||
[@bouwew]: https://github.com/bouwew
|
||||
[@bramkragten]: https://github.com/bramkragten
|
||||
[@bwarden]: https://github.com/bwarden
|
||||
[@castaway]: https://github.com/castaway
|
||||
[@cgarwood]: https://github.com/cgarwood
|
||||
[@cgtobi]: https://github.com/cgtobi
|
||||
[@chriscla]: https://github.com/chriscla
|
||||
[@crazyfx1]: https://github.com/crazyfx1
|
||||
[@davet2001]: https://github.com/davet2001
|
||||
[@djpremier]: https://github.com/djpremier
|
||||
[@dmulcahey]: https://github.com/dmulcahey
|
||||
[@effelle]: https://github.com/effelle
|
||||
[@eifinger]: https://github.com/eifinger
|
||||
[@eliseomartelli]: https://github.com/eliseomartelli
|
||||
[@elupus]: https://github.com/elupus
|
||||
[@emontnemery]: https://github.com/emontnemery
|
||||
[@escoand]: https://github.com/escoand
|
||||
[@exxamalte]: https://github.com/exxamalte
|
||||
[@fabaff]: https://github.com/fabaff
|
||||
[@florisvdk]: https://github.com/florisvdk
|
||||
[@flz]: https://github.com/flz
|
||||
[@fredericvl]: https://github.com/fredericvl
|
||||
[@fredrike]: https://github.com/fredrike
|
||||
[@frenck]: https://github.com/frenck
|
||||
[@fwestenberg]: https://github.com/fwestenberg
|
||||
[@gerard33]: https://github.com/gerard33
|
||||
[@gngj]: https://github.com/gngj
|
||||
[@guillempages]: https://github.com/guillempages
|
||||
[@h4de5]: https://github.com/h4de5
|
||||
[@hfurubotten]: https://github.com/hfurubotten
|
||||
[@iamtpage]: https://github.com/iamtpage
|
||||
[@jesserockz]: https://github.com/jesserockz
|
||||
[@jjlawren]: https://github.com/jjlawren
|
||||
[@jkeljo]: https://github.com/jkeljo
|
||||
[@karouf]: https://github.com/karouf
|
||||
[@kennedyshead]: https://github.com/kennedyshead
|
||||
[@kevineriklee]: https://github.com/kevineriklee
|
||||
[@kevinkk525]: https://github.com/kevinkk525
|
||||
[@ktnrg45]: https://github.com/ktnrg45
|
||||
[@ludeeus]: https://github.com/ludeeus
|
||||
[@marthoc]: https://github.com/marthoc
|
||||
[@mezz64]: https://github.com/mezz64
|
||||
[@mflage]: https://github.com/mflage
|
||||
[@michaelarnauts]: https://github.com/michaelarnauts
|
||||
[@michaeldavie]: https://github.com/michaeldavie
|
||||
[@nkaminski]: https://github.com/nkaminski
|
||||
[@ochlocracy]: https://github.com/ochlocracy
|
||||
[@oischinger]: https://github.com/oischinger
|
||||
[@pattyland]: https://github.com/pattyland
|
||||
[@persandstrom]: https://github.com/persandstrom
|
||||
[@peternijssen]: https://github.com/peternijssen
|
||||
[@pvizeli]: https://github.com/pvizeli
|
||||
[@rohankapoorcom]: https://github.com/rohankapoorcom
|
||||
[@rutkai]: https://github.com/rutkai
|
||||
[@rytilahti]: https://github.com/rytilahti
|
||||
[@scop]: https://github.com/scop
|
||||
[@shmooey]: https://github.com/shmooey
|
||||
[@snowzach]: https://github.com/snowzach
|
||||
[@soraxas]: https://github.com/soraxas
|
||||
[@soundstorm]: https://github.com/soundstorm
|
||||
[@ssenart]: https://github.com/ssenart
|
||||
[@syssi]: https://github.com/syssi
|
||||
[@tefinger]: https://github.com/tefinger
|
||||
[@temeteke]: https://github.com/temeteke
|
||||
[@thoscut]: https://github.com/thoscut
|
||||
[@timgates42]: https://github.com/timgates42
|
||||
[@tlrobinson]: https://github.com/tlrobinson
|
||||
[@ttroy50]: https://github.com/ttroy50
|
||||
[@valkjsaaa]: https://github.com/valkjsaaa
|
||||
[@vangorra]: https://github.com/vangorra
|
||||
[@yeralin]: https://github.com/yeralin
|
||||
[@yjajkiew]: https://github.com/yjajkiew
|
||||
[@zxdavb]: https://github.com/zxdavb
|
||||
[alarm_control_panel docs]: /integrations/alarm_control_panel/
|
||||
[alexa docs]: /integrations/alexa/
|
||||
[almond docs]: /integrations/almond/
|
||||
[amazon_polly docs]: /integrations/amazon_polly/
|
||||
[androidtv docs]: /integrations/androidtv/
|
||||
[asuswrt docs]: /integrations/asuswrt/
|
||||
[automation docs]: /integrations/automation/
|
||||
[avea docs]: /integrations/avea/
|
||||
[aws docs]: /integrations/aws/
|
||||
[azure_service_bus docs]: /integrations/azure_service_bus/
|
||||
[bluesound docs]: /integrations/bluesound/
|
||||
[bmw_connected_drive docs]: /integrations/bmw_connected_drive/
|
||||
[climate docs]: /integrations/climate/
|
||||
[cloud docs]: /integrations/cloud/
|
||||
[comfoconnect docs]: /integrations/comfoconnect/
|
||||
[config docs]: /integrations/config/
|
||||
[conversation docs]: /integrations/conversation/
|
||||
[coolmaster docs]: /integrations/coolmaster/
|
||||
[cover docs]: /integrations/cover/
|
||||
[deconz docs]: /integrations/deconz/
|
||||
[demo docs]: /integrations/demo/
|
||||
[device_automation docs]: /integrations/device_automation/
|
||||
[device_tracker docs]: /integrations/device_tracker/
|
||||
[discogs docs]: /integrations/discogs/
|
||||
[dlna_dmr docs]: /integrations/dlna_dmr/
|
||||
[doods docs]: /integrations/doods/
|
||||
[dyson docs]: /integrations/dyson/
|
||||
[ecobee docs]: /integrations/ecobee/
|
||||
[eight_sleep docs]: /integrations/eight_sleep/
|
||||
[environment_canada docs]: /integrations/environment_canada/
|
||||
[envirophat docs]: /integrations/envirophat/
|
||||
[ephember docs]: /integrations/ephember/
|
||||
[eq3btsmart docs]: /integrations/eq3btsmart/
|
||||
[esphome docs]: /integrations/esphome/
|
||||
[fan docs]: /integrations/fan/
|
||||
[feedreader docs]: /integrations/feedreader/
|
||||
[flux docs]: /integrations/flux/
|
||||
[flux_led docs]: /integrations/flux_led/
|
||||
[folder docs]: /integrations/folder/
|
||||
[frontend docs]: /integrations/frontend/
|
||||
[generic_thermostat docs]: /integrations/generic_thermostat/
|
||||
[geniushub docs]: /integrations/geniushub/
|
||||
[geonetnz_quakes docs]: /integrations/geonetnz_quakes/
|
||||
[google_assistant docs]: /integrations/google_assistant/
|
||||
[greeneye_monitor docs]: /integrations/greeneye_monitor/
|
||||
[gtt docs]: /integrations/gtt/
|
||||
[hangouts docs]: /integrations/hangouts/
|
||||
[hassio docs]: /integrations/hassio/
|
||||
[here_travel_time docs]: /integrations/here_travel_time/
|
||||
[homeassistant docs]: /integrations/homeassistant/
|
||||
[homekit docs]: /integrations/homekit/
|
||||
[homekit_controller docs]: /integrations/homekit_controller/
|
||||
[homematic docs]: /integrations/homematic/
|
||||
[homematicip_cloud docs]: /integrations/homematicip_cloud/
|
||||
[huawei_lte docs]: /integrations/huawei_lte/
|
||||
[hue docs]: /integrations/hue/
|
||||
[iaqualink docs]: /integrations/iaqualink/
|
||||
[image_processing docs]: /integrations/image_processing/
|
||||
[imap docs]: /integrations/imap/
|
||||
[incomfort docs]: /integrations/incomfort/
|
||||
[iss docs]: /integrations/iss/
|
||||
[juicenet docs]: /integrations/juicenet/
|
||||
[keyboard_remote docs]: /integrations/keyboard_remote/
|
||||
[light docs]: /integrations/light/
|
||||
[lock docs]: /integrations/lock/
|
||||
[lutron docs]: /integrations/lutron/
|
||||
[media_extractor docs]: /integrations/media_extractor/
|
||||
[media_player docs]: /integrations/media_player/
|
||||
[mpchc docs]: /integrations/mpchc/
|
||||
[mqtt docs]: /integrations/mqtt/
|
||||
[netatmo docs]: /integrations/netatmo/
|
||||
[nextbus docs]: /integrations/nextbus/
|
||||
[nut docs]: /integrations/nut/
|
||||
[nzbget docs]: /integrations/nzbget/
|
||||
[onvif docs]: /integrations/onvif/
|
||||
[openalpr_local docs]: /integrations/openalpr_local/
|
||||
[owntracks docs]: /integrations/owntracks/
|
||||
[pcal9535a docs]: /integrations/pcal9535a/
|
||||
[pioneer docs]: /integrations/pioneer/
|
||||
[pjlink docs]: /integrations/pjlink/
|
||||
[plex docs]: /integrations/plex/
|
||||
[plugwise docs]: /integrations/plugwise/
|
||||
[point docs]: /integrations/point/
|
||||
[postnl docs]: /integrations/postnl/
|
||||
[proxy docs]: /integrations/proxy/
|
||||
[ps4 docs]: /integrations/ps4/
|
||||
[qrcode docs]: /integrations/qrcode/
|
||||
[reddit docs]: /integrations/reddit/
|
||||
[repetier docs]: /integrations/repetier/
|
||||
[saj docs]: /integrations/saj/
|
||||
[samsungtv docs]: /integrations/samsungtv/
|
||||
[shiftr docs]: /integrations/shiftr/
|
||||
[simplisafe docs]: /integrations/simplisafe/
|
||||
[snmp docs]: /integrations/snmp/
|
||||
[somfy docs]: /integrations/somfy/
|
||||
[ssdp docs]: /integrations/ssdp/
|
||||
[stt docs]: /integrations/stt/
|
||||
[swisscom docs]: /integrations/swisscom/
|
||||
[synology docs]: /integrations/synology/
|
||||
[systemmonitor docs]: /integrations/systemmonitor/
|
||||
[tahoma docs]: /integrations/tahoma/
|
||||
[telegram_bot docs]: /integrations/telegram_bot/
|
||||
[tfiac docs]: /integrations/tfiac/
|
||||
[thingspeak docs]: /integrations/thingspeak/
|
||||
[tile docs]: /integrations/tile/
|
||||
[tradfri docs]: /integrations/tradfri/
|
||||
[transmission docs]: /integrations/transmission/
|
||||
[twitch docs]: /integrations/twitch/
|
||||
[twitter docs]: /integrations/twitter/
|
||||
[unifiled docs]: /integrations/unifiled/
|
||||
[upnp docs]: /integrations/upnp/
|
||||
[vacuum docs]: /integrations/vacuum/
|
||||
[venstar docs]: /integrations/venstar/
|
||||
[verisure docs]: /integrations/verisure/
|
||||
[vicare docs]: /integrations/vicare/
|
||||
[vivotek docs]: /integrations/vivotek/
|
||||
[water_heater docs]: /integrations/water_heater/
|
||||
[watson_tts docs]: /integrations/watson_tts/
|
||||
[websocket_api docs]: /integrations/websocket_api/
|
||||
[withings docs]: /integrations/withings/
|
||||
[wled docs]: /integrations/wled/
|
||||
[xiaomi_miio docs]: /integrations/xiaomi_miio/
|
||||
[yr docs]: /integrations/yr/
|
||||
[zha docs]: /integrations/zha/
|
||||
[zoneminder docs]: /integrations/zoneminder/
|
||||
[zwave docs]: /integrations/zwave/
|
@ -736,7 +736,6 @@
|
||||
/components/sensor.gpsd /integrations/gpsd
|
||||
/components/sensor.greeneye_monitor /integrations/greeneye_monitor
|
||||
/components/sensor.gtfs /integrations/gtfs
|
||||
/components/sensor.gtt /integrations/gtt
|
||||
/components/sensor.habitica /integrations/habitica
|
||||
/components/sensor.haveibeenpwned /integrations/haveibeenpwned
|
||||
/components/sensor.hddtemp /integrations/hddtemp
|
||||
@ -1418,7 +1417,6 @@
|
||||
/components/growatt_server /integrations/growatt_server
|
||||
/components/gstreamer /integrations/gstreamer
|
||||
/components/gtfs /integrations/gtfs
|
||||
/components/gtt /integrations/gtt
|
||||
/components/habitica /integrations/habitica
|
||||
/components/hangouts /integrations/hangouts
|
||||
/components/harman_kardon_avr /integrations/harman_kardon_avr
|
||||
|
BIN
source/images/blog/2019-11-0.102/components.png
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
source/images/blog/2019-11-0.102/thingtalk-automation.png
Normal file
After Width: | Height: | Size: 100 KiB |
BIN
source/images/blog/2019-11-voice-assistant/almond.png
Normal file
After Width: | Height: | Size: 31 KiB |
1
source/images/blog/2019-11-voice-assistant/overview.svg
Normal file
After Width: | Height: | Size: 293 KiB |
BIN
source/images/blog/2019-11-voice-assistant/telegram.png
Normal file
After Width: | Height: | Size: 65 KiB |
BIN
source/images/docs/scenes/editor.png
Normal file
After Width: | Height: | Size: 117 KiB |
After Width: | Height: | Size: 165 KiB |
BIN
source/images/supported_brands/almond.png
Normal file
After Width: | Height: | Size: 14 KiB |
14
source/images/supported_brands/azure_service_bus.svg
Normal file
@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 19.2.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 50 50" enable-background="new 0 0 50 50" xml:space="preserve">
|
||||
<path fill="#0072C6" d="M0.833,0C0.333,0,0,0.333,0,0.833v10c0,0.5,0.333,0.833,0.833,0.833h5c0.5,0,0.833-0.333,0.833-0.833V6.667
|
||||
h36.667v4.167c0,0.5,0.333,0.833,1,0.833h4.833c0.5,0,0.833-0.333,0.833-0.833v-5v-5C50,0.333,49.667,0,49.167,0l0,0H0.833z"/>
|
||||
<path fill="#0072C6" d="M49.167,50c0.5,0,0.833-0.333,0.833-0.833v-9.833c0-0.5-0.333-0.833-0.833-0.833h-4.833
|
||||
c-0.5,0-0.833,0.333-0.833,0.833v4H6.667v-4.167c0-0.5-0.333-0.833-1-0.833H0.833c-0.5,0-0.833,0.333-0.833,1v9.833
|
||||
C0,49.667,0.333,50,0.833,50H49.167z"/>
|
||||
<path fill="#59B4D9" d="M29.857,26.098C28.56,27.395,26.835,28.11,25,28.11s-3.56-0.714-4.858-2.012l-9.309-9.309v18.923h28.333
|
||||
V16.788L29.857,26.098z"/>
|
||||
<path fill="#59B4D9" d="M25,26.728c1.466,0,2.844-0.571,3.88-1.607l10.286-10.286V14.29H10.833v0.546L21.119,25.12
|
||||
C22.156,26.157,23.534,26.728,25,26.728z"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 20 KiB |
BIN
source/images/supported_brands/wled.png
Normal file
After Width: | Height: | Size: 2.4 KiB |