Merge branch 'current' into next

This commit is contained in:
Franck Nijhof 2019-11-12 13:51:01 +01:00
commit 9cfb9b69b1
No known key found for this signature in database
GPG Key ID: D62583BA8AB11CA3
57 changed files with 529 additions and 177 deletions

18
Gemfile
View File

@ -1,9 +1,9 @@
source "https://rubygems.org"
source 'https://rubygems.org'
ruby "> 2.5.0"
ruby '> 2.5.0'
group :development do
gem 'rake', '13.0.0'
gem 'rake', '13.0.1'
gem 'jekyll', '4.0.0'
gem 'compass', '1.0.3'
gem 'sass-globbing', '1.1.5'
@ -19,4 +19,14 @@ group :jekyll_plugins do
end
gem 'sinatra', '2.0.7'
gem 'nokogiri', '1.10.4'
gem 'nokogiri', '1.10.5'
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
# and associated library
install_if -> { RUBY_PLATFORM =~ %r!mingw|mswin|java! } do
gem 'tzinfo', '~> 1.2'
gem 'tzinfo-data'
end
# Performance-booster for watching directories on Windows
gem "wdm", "~> 0.1.0" if Gem.win_platform?

View File

@ -24,10 +24,12 @@ GEM
eventmachine (>= 0.12.9)
http_parser.rb (~> 0.6.0)
eventmachine (1.2.7)
eventmachine (1.2.7-x64-mingw32)
ffi (1.11.1)
ffi (1.11.1-x64-mingw32)
forwardable-extended (2.6.0)
http_parser.rb (0.6.0)
i18n (1.6.0)
i18n (1.7.0)
concurrent-ruby (~> 1.0)
jekyll (4.0.0)
addressable (~> 2.4)
@ -50,7 +52,7 @@ GEM
jekyll-paginate (1.1.0)
jekyll-redirect-from (0.15.0)
jekyll (>= 3.3, < 5.0)
jekyll-sass-converter (2.0.0)
jekyll-sass-converter (2.0.1)
sassc (> 2.0.1, < 3.0)
jekyll-sitemap (1.3.1)
jekyll (>= 3.7, < 5.0)
@ -62,15 +64,16 @@ GEM
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
liquid (4.0.3)
listen (3.1.5)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
ruby_dep (~> 1.2)
listen (3.2.0)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
mercenary (0.3.6)
mini_portile2 (2.4.0)
multi_json (1.13.1)
multi_json (1.14.1)
mustermann (1.0.3)
nokogiri (1.10.4)
nokogiri (1.10.5)
mini_portile2 (~> 2.4.0)
nokogiri (1.10.5-x64-mingw32)
mini_portile2 (~> 2.4.0)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
@ -78,19 +81,20 @@ GEM
rack (2.0.7)
rack-protection (2.0.7)
rack
rake (13.0.0)
rake (13.0.1)
rb-fsevent (0.10.3)
rb-inotify (0.10.0)
ffi (~> 1.0)
rouge (3.9.0)
rouge (3.12.0)
ruby-enum (0.7.2)
i18n
ruby_dep (1.5.0)
safe_yaml (1.0.5)
sass (3.4.25)
sass-globbing (1.1.5)
sass (>= 3.1)
sassc (2.2.0)
sassc (2.2.1)
ffi (~> 1.9)
sassc (2.2.1-x64-mingw32)
ffi (~> 1.9)
sinatra (2.0.7)
mustermann (~> 1.0)
@ -100,11 +104,17 @@ GEM
stringex (2.8.5)
terminal-table (1.8.0)
unicode-display_width (~> 1.1, >= 1.1.1)
tilt (2.0.9)
thread_safe (0.3.6)
tilt (2.0.10)
tzinfo (1.2.5)
thread_safe (~> 0.1)
tzinfo-data (1.2019.3)
tzinfo (>= 1.0.0)
unicode-display_width (1.6.0)
PLATFORMS
ruby
x64-mingw32
DEPENDENCIES
compass (= 1.0.3)
@ -114,11 +124,13 @@ DEPENDENCIES
jekyll-redirect-from (= 0.15.0)
jekyll-sitemap (= 1.3.1)
jekyll-time-to-read (= 0.1.2)
nokogiri (= 1.10.4)
rake (= 13.0.0)
nokogiri (= 1.10.5)
rake (= 13.0.1)
sass-globbing (= 1.1.5)
sinatra (= 2.0.7)
stringex (= 2.8.5)
tzinfo (~> 1.2)
tzinfo-data
RUBY VERSION
ruby 2.6.2p47

View File

@ -101,8 +101,8 @@ social:
# Home Assistant release details
current_major_version: 0
current_minor_version: 101
current_patch_version: 0
date_released: 2019-10-30
current_patch_version: 3
date_released: 2019-11-05
# Either # or the anchor link to latest release notes in the blog post.
# Must be prefixed with a # and have double quotes around it.

View File

@ -23,6 +23,4 @@
@import "homepage/hero_unit";
@import "helpers/classes";
@import "helpers/grid-fix";
@import "custom/**/*"
@import "helpers/grid-fix";

View File

@ -1,6 +0,0 @@
// You can freely create SCSS files within this Custom directory
// and they will be imported into the end of the theme's output CSS.
// The directory is loaded to increase abstraction and reduce the amount of
// changes to be made to the Oscailte theme itself.
// THESE FILES AREA LOADED ALPHABETICALLY

View File

@ -28,6 +28,13 @@ Sometimes shares will not show up under network in Windows. Then you could open
"10.0.0.0/8",
"172.16.0.0/12",
"192.168.0.0/16"
],
"veto_files": [
"._*",
".DS_Store",
"Thumbs.db",
"icon?",
".Trashes"
]
}
```
@ -55,4 +62,9 @@ allow_hosts:
required: false
default: '`["10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"]`'
type: list
veto_files:
description: List of files that are neither visible nor accessible. Useful to stop clients from littering the share with temporary hidden files (e.g. macOS .DS_Store, Windows Thumbs.db)
required: false
default: '`["._*", ".DS_Store", "Thumbs.db", "icon?", ".Trashes"]`'
type: list
{% endconfiguration %}

View File

@ -31,6 +31,7 @@ homeassistant:
auth_providers:
- type: homeassistant
- type: legacy_api_password
api_password: !secret http_password
```
## Available auth providers

View File

@ -17,6 +17,8 @@ Home Assistant has been installed. Open it here: http://localhost:8123
Home Assistant will log to `~/Library/Logs/homeassistant.log`
Configuration is kept in `~/.homeassistant`
To uninstall the service, run:
```bash

View File

@ -6,8 +6,9 @@ redirect_from: /getting-started/yaml/
Home Assistant uses the [YAML](https://yaml.org/) syntax for configuration. YAML might take a while to get used to but is really powerful in allowing you to express complex configurations.
For each integration that you want to use in Home Assistant, you add code in your `configuration.yaml` file to specify its settings.
The following example entry specifies that you want to use the [notify component](/integrations/notify) with the [pushbullet platform](/integrations/pushbullet).
For integrations that you want to use in Home Assistant, you add code in your `configuration.yaml` file to specify its settings. This especially applies to integrations that are not yet available to configure through the UI.
The following example entry assumes that you would like to set up the [notify component](/integrations/notify) with the [pushbullet platform](/integrations/pushbullet).
```yaml
@ -30,14 +31,14 @@ You can use the online service [YAMLLint](http://www.yamllint.com/) to check if
<div class='note'>
Please pay attention on not storing private data (passwords, API keys, etc.) directly in your `configuration.yaml` file. Private data can be stored in a [separate file](/docs/configuration/secrets/) or in [environmental variables](/docs/configuration/yaml/#using-environment-variables), which circumvents this problem of security.
Please pay attention to not storing private data (passwords, API keys, etc.) directly in your `configuration.yaml` file. Private data can be stored in either a [separate file](/docs/configuration/secrets/) or in [environmental variables](/docs/configuration/yaml/#using-environment-variables), which circumvents this security problem.
</div>
Text following a `#` are comments and are ignored by the system.
Strings of text following a `#` are comments and are ignored by the system.
The next example shows an [input_select](/integrations/input_select) integration that uses a block collection for the options values.
The other properties (like name) are specified using mappings. Note that the second line just has `threat:` with no value on the same line. Here threat is the name of the input_select and the values for it are everything nested below it.
The next example shows an [input_select](/integrations/input_select) integration that uses a block collection for the values of options.
The other properties (like `name:`) are specified using mappings. Note that the second line just has `threat:` with no value on the same line. Here threat is the name of the input_select and the values for it are everything nested below it.
```yaml
input_select:
@ -62,16 +63,17 @@ sensor:
state_topic: sensor2/topic
```
## Using Environment Variables
## Including values
You can include values from your system's environment variables with `!env_var`.
### Environmental variables
You can include values from your system's environment variables with `!env_var`. Note that this will only work in a scenario where it is possible to specify these. Hass.io users are recommended to use `!include` statements instead.
```yaml
http:
api_password: !env_var PASSWORD
```
### Default Value
#### Default value
If an environment variable is not set, you can fallback to a default value.
@ -80,7 +82,7 @@ http:
api_password: !env_var PASSWORD default_password
```
### Including Separate Files
### Including entire files
To improve readability, you can source out certain domains from your main configuration file with the `!include`-syntax.

View File

@ -46,7 +46,7 @@ Before creating and pushing your Home Assistant configuration to GitHub, please
</div>
Creating a `.gitignore` file in your repository will tell Git which files NOT to push to the GitHub server. This should be used to prevent publishing sensitive files to the public. It should contain a list of filenames and pattern matches. This list should include at least your [`secrets.yaml`](/docs/configuration/secrets/) file, device configuration files, and the Home Assistant database/directory structure. The `.gitignore` file should be placed in the root of your Home Assistant configuration directory: `<config dir/.gitignore`.
Creating a `.gitignore` file in your repository will tell Git which files NOT to push to the GitHub server. This should be used to prevent publishing sensitive files to the public. It should contain a list of filenames and pattern matches. This list should include at least your [`secrets.yaml`](/docs/configuration/secrets/) file, device configuration files, and the Home Assistant database/directory structure. The `.gitignore` file should be placed in the root of your Home Assistant configuration directory: `<config dir>/.gitignore`.
<div class='note'>

View File

@ -14,12 +14,6 @@ Change to your Home Assistant [configuration directory](/getting-started/configu
The certificate **must** be `.pem` extension.
If you are going to use this certificate with the iOS app, you need to ensure you complete **all** fields during the certificate creation process, then:
* Send **only** the `certificate.pem` file to the iOS device, using airdrop or other transfer method.
* Open the `.pem` file on the iOS device, follow the prompts to trust and install it.
* If you are using iOS 10.3 or newer then [additional steps](https://support.apple.com/en-us/HT204477) are needed.
```bash
openssl req -sha256 -newkey rsa:4096 -nodes -keyout privkey.pem -x509 -days 730 -out certificate.pem
```
@ -46,3 +40,23 @@ sudo chmod 755 certificate.pem privkey.pem
```
A tutorial "[Working with SSL Certificates, Private Keys and CSRs](https://www.digitalocean.com/community/tutorials/openssl-essentials-working-with-ssl-certificates-private-keys-and-csrs)" could give you some insight about special cases.
### iOS and macOS Specific Requirements
#### iOS
If you are going to use this certificate with the iOS app, you need to ensure you complete **all** fields during the certificate creation process, then:
* Send **only** the `certificate.pem` file to the iOS device, using airdrop or other transfer method.
* Open the `.pem` file on the iOS device, follow the prompts to trust and install it.
* If you are using iOS 10.3 or newer then [additional steps](https://support.apple.com/en-us/HT204477) are needed.
#### iOS 13 and macOS 10.15
There are [new security requirements](https://support.apple.com/en-us/HT210176) for TLS server certificates in iOS 13 and macOS 10.15. To summarize:
* The key size must be greater than or equal to 2048 bits.
* A hash algorithm from the SHA-2 family is required. SHA-1 signed certificates are no longer trusted for TLS.
* The DNS name of the server must be included in the Subject Alternative Name extension of the certificate.
* For certificates issued after July 1, 2019:
* Certificates must contain an ExtendedKeyUsage (EKU) extension containing the id-kp-serverAuth OID.
* Certificates must have a validity period of 825 days or fewer.

View File

@ -62,8 +62,8 @@ If you use these install methods, we assume that you know how to manage and admi
**Method**|**You have**|**Recommended for**
:-----|:-----|:-----
[venv<BR>(as another user)](/docs/installation/raspberry-pi/)|Any Linux, Python 3.6 or later|Those familiar with their operating system
[venv<BR>(as your user)](/docs/installation/virtualenv/)|Any Python 3.6 or later|Developers
[venv<BR>(as another user)](/docs/installation/raspberry-pi/)|Any Linux, Python 3.7 or later|Those familiar with their operating system
[venv<BR>(as your user)](/docs/installation/virtualenv/)|Any Python 3.7 or later|Developers
## Community provided guides

View File

@ -40,10 +40,23 @@ Alternatively, `docker-compose` works with any recent release of `docker-ce` on
### Windows
Docker containers are completely isolated from its Windows host system. So when you delete a container, all the changes you made to that container are also removed. If you want to have configuration files or other assets remain persistent, try mounting Windows folders on containers.
Before proceeding, make sure you have shared out a drive for docker to mount to. This will allow the saving of config files to persist on the local machine rather than in the docker container (which may be destroyed when upgraded).
<https://docs.docker.com/docker-for-windows/#shared-drives>
<https://docs.docker.com/docker-for-windows/troubleshoot/#verify-domain-user-has-permissions-for-shared-drives-volumes>
```powershell
$ docker run --init -d --name="home-assistant" -e "TZ=America/Los_Angeles" -v /PATH_TO_YOUR_CONFIG:/config --net=host homeassistant/home-assistant:stable
```
Its easier to understand the trick when put into practice. Here we would like to mount a current working directory (something like `C:\Users\<your login name>\homeassistant` make sure this exists first) into the `homeassistant/home-assistant:stable` image at the `/config` location in the container. We would do that as so:
```powershell
$ docker run --init -d --name="home-assistant" -e "TZ=America/Los_Angeles" -v //c/Users/<your login name>/homeassistant:/config --net=host homeassistant/home-assistant:stable
```
When running Home Assistant in Docker on Windows, you may have some difficulty getting ports to map for routing (since the `--net=host` switch actually applies to the hypervisor's network interface). To get around this, you will need to add port proxy ipv4 rules to your local Windows machine, like so (Replacing '192.168.1.10' with whatever your Windows IP is, and '10.0.50.2' with whatever your Docker container's IP is):
```bash

View File

@ -5,7 +5,7 @@ description: "Installation of Home Assistant on your macOS system."
[macOS](http://www.apple.com/macos/) is available by default on Apple computer. If you run a different operating system, please refer to the other section of the documentation.
To run Home Assistant on macOS, you need to install Python first. Download Python 3.6 or later (at this time, we recommend Python 3.7) from [https://www.python.org/downloads/mac-osx/](https://www.python.org/downloads/mac-osx/) and follow the instructions of the installer.
To run Home Assistant on macOS, you need to install Python first. Download Python 3.7 or later from [https://www.python.org/downloads/mac-osx/](https://www.python.org/downloads/mac-osx/) and follow the instructions of the installer.
Open a terminal and install Home Assistant in a virtual environment:

View File

@ -6,7 +6,7 @@ redirect_from: /getting-started/installation-raspberry-pi/
This installation of Home Assistant requires the Raspberry Pi to run [Raspbian Lite](https://www.raspberrypi.org/downloads/raspbian/). The installation will be installed in a [Virtual Environment](/docs/installation/virtualenv) with minimal overhead. Instructions assume this is a new installation of Raspbian Lite.
You must have Python 3.6 or later installed (including the package `python3-dev`) which is *not* the case for Raspbian Stretch.
You must have Python 3.7 or later installed (including the package `python3-dev`) which is *not* the case for Raspbian Stretch.
<div class='note'>
Although these installation steps specifically mention a Raspberry Pi, you can go ahead and proceed on any Linux install as well. This guide is also referred to as the "Advanced Guide" for a virtual environment install.

View File

@ -4,9 +4,9 @@ description: "How to install Home Assistant in a Python virtual environment."
redirect_from: /getting-started/installation-virtualenv/
---
If you already have Python 3.6 or later installed (we suggest 3.7 or later), you can easily give Home Assistant a spin.
If you already have Python 3.7 or later installed, you can easily give Home Assistant a spin.
It's recommended when installing Python packages that you use a [virtual environment](https://docs.python.org/3.6/library/venv.html#module-venv). This will make sure that your Python installation and Home Assistant installation won't impact one another. The following steps will work on most UNIX like systems.
It's recommended when installing Python packages that you use a [virtual environment](https://docs.python.org/3.7/library/venv.html#module-venv). This will make sure that your Python installation and Home Assistant installation won't impact one another. The following steps will work on most UNIX like systems.
<div class='note'>

View File

@ -16,19 +16,26 @@ If you are using the embedded MQTT broker, the command looks a little different
$ mosquitto_pub -V mqttv311 -u homeassistant -P <broker password> -t "hello" -m world
```
Another way to send MQTT messages by hand is to use the "Developer Tools" in the Frontend. Choose "Call Service" and then `mqtt.publish` under "Available Services". Enter something similar to the example below into the "Service Data" field.
```json
{
"topic":"home-assistant/switch/1/on",
"payload":"Switch is ON"
}
```
The message should appear on the bus:
Another way to send MQTT messages by hand is to use the "Developer Tools" in the Frontend. Choose the "MQTT" tab. Enter something similar to the example below into the "Topic" field.
```bash
... [homeassistant] Bus:Handling <Event MQTT_MESSAGE_RECEIVED[L]: topic=home-assistant/switch/1/on, qos=0, payload=Switch is ON>
home-assistant/switch/1/power
```
and in the Payload field
```bash
ON
```
In the "Listen to a topic" field, type # to see everything, or "home-assistant/switch/#" to just follow the published topic. Press "Start Listening" and then press "Publish". The result should appear similar to the text below
```bash
Message 23 received on home-assistant/switch/1/power/stat/POWER at 12:16 PM:
ON
QoS: 0 - Retain: false
Message 22 received on home-assistant/switch/1/power/stat/RESULT at 12:16 PM:
{
"POWER": "ON"
}
QoS: 0 - Retain: false
```
For reading all messages sent on the topic `home-assistant` to a broker running on localhost:

View File

@ -12,14 +12,14 @@ $ hass --script keyring --help
To store a password in keyring, replace your password or API key with `!secret` and an identifier in `configuration.yaml` file.
```yaml
http:
api_password: !secret http_password
integration1:
api_key: !secret integration1_key
```
Create an entry in your keyring.
```bash
$ hass --script keyring set http_password
$ hass --script keyring set integration1_key
```
If you launch Home Assistant now, you will be prompted for the keyring password to unlock your keyring.

View File

@ -90,6 +90,8 @@ Field | Description
`event_type` | The type of the event.
`event_utc` | The UTC timestamp of the event.
`user_name` | The Abode user that triggered the event, if applicable.
`app_type` | The Abode app that triggered the event (e.g. web app, iOS app, etc.).
`event_by` | The keypad user that triggered the event.
`date` | The date of the event in the format `MM/DD/YYYY`.
`time` | The time of the event in the format `HH:MM AM`.

View File

@ -124,12 +124,21 @@ media_player:
'com.ellation.vrv':
- 'audio_state'
'com.plexapp.android':
- 'playing':
'media_session_state': 3 # this indentation is important!
'wake_lock_size': 3 # this indentation is important!
- 'paused':
'media_session_state': 3 # this indentation is important!
'wake_lock_size': 1 # this indentation is important!
- 'playing':
'media_session_state': 3 # this indentation is important!
- 'standby'
'com.amazon.avod':
- 'playing':
'wake_lock_size': 4 # this indentation is important!
- 'playing':
'wake_lock_size': 3 # this indentation is important!
- 'paused':
'wake_lock_size': 2 # this indentation is important!
- 'paused':
'wake_lock_size': 1 # this indentation is important!
- 'standby'
# Use an ADB server to setup a Fire TV device and don't get the running apps.

View File

@ -118,6 +118,10 @@ Where for example on a Philips Hue Dimmer, 2001 would be holding the dim up butt
For the IKEA Tradfri remote the first digit equals, 1 for the middle button, 2 for up, 3 for down, 4 for left, and 5 for right (e.g., "event: 1002" for middle button short release).
### Finding your events
Navigate to **Developer tools->Events**. In the section **Listen to events** add `deconz_event` and press **START LISTENING**. All events from deCONZ will now be shown and by pushing your remote button while monitoring the log it should be fairly easy to find the events you are looking for.
### Device triggers
To simplify using remote control devices in automations deCONZ integration exposes them as device triggers. This will expose all possible variations of button presses and rotations. Note that this is a manually curated list and will not initially be as complete as what deCONZ supports.

View File

@ -58,7 +58,7 @@ device_tracker:
track_new_devices: true
```
Multiple device trackers can be used in parallel, such as [Owntracks](/integrations/owntracks/#using-owntracks-with-other-device-trackers) and [Nmap](/integrations/nmap_tracker/). The state of the device will be determined by the source that reported last.
Multiple device trackers can be used in parallel, such as [Owntracks](/integrations/owntracks/) and [Nmap](/integrations/nmap_tracker/). The state of the device will be determined by the source that reported last.
## `known_devices.yaml`

View File

@ -19,7 +19,13 @@ There is currently support for the following device types within Home Assistant:
## Setup
The user, which you are going to use with Home Assistant, needs the "API-Operator" permission enabled.
It is recommended to set up a new account on your Doorbird for use with Home Assistant. This can be added via the Doorbird App by choosing Administration -> (User) Add. This user, needs specific permissions enabled, depending on what functionality you want:
- Live view -> Watch Always
- Last motion -> Motion + History
- Last ring -> History
In addition, the "API-Operator" permission needs to be enabled as well.
## Configuration
@ -47,7 +53,7 @@ devices:
required: true
type: string
username:
description: The username of a non-administrator user account on the device. This user needs the "API-Operator" permission enabled on Doorbird. It is recommended to set up a new account on your Doorbird for use with Home Assistant. This can be added via the Doorbird App by choosing Administration -> (User) Add. When the new account is created, you will need to enable the permission "API-Operator" in the "permissions" option.
description: The username of a non-administrator user account on the device ([User setup](/integrations/doorbird/#setup))
required: true
type: string
password:

View File

@ -31,6 +31,15 @@ duckdns:
type: string
{% endconfiguration %}
## Service `set_txt`
Set the TXT record of your DuckDNS subdomain.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `txt` | no | Payload for the TXT record. |
<div class='note'>
If you are running the Hass.io [DuckDNS add-on](/addons/duckdns/) this integration is not required. The add-on will keep your IP updated with DuckDNS.

View File

@ -43,7 +43,7 @@ elkm1:
{% configuration %}
host:
description: Connection string to Elk of the form `<method>://<address>[:port]`. `<method>` is `elk` for non-secure connection, `elks` for secure connection, and `serial` for serial port connection. `<address>` is IP address or domain or for `serial` the serial port that the Elk is connected to. Optional `<port>` is the port to connect to on the Elk, defaulting to 2101 for `elk` and 2601 for `elks`. For `serial` method, _address_ is the path to the tty _/dev/ttyS1_ for example and `[:baud]` is the baud rate to connect with. You may have multiple host sections for connecting multiple controllers.
description: Connection string to Elk of the form `<method>://<address>[:port]`. `<method>` is `elk` for non-secure connection, `elks` for secure connection, and `serial` for serial port connection. `<address>` is IP address or domain or for `serial` the serial port that the Elk is connected to. Optional `<port>` is the port to connect to on the Elk, defaulting to 2101 for `elk` and 2601 for `elks`. For `serial` method, _address_ is the path to the tty _/dev/ttyS1_ for example and `[:baud]` is the baud rate to connect with (Elk systems default to 115200 baud, but this can be changed during Elk system configuration). You may have multiple host sections for connecting multiple controllers.
required: true
type: string
username:
@ -270,18 +270,29 @@ elkm1:
exclude: [b12-d5]
```
Example for a serial port instance on /dev/ttyS1 at 9600 baud:
Example for a serial port instance on /dev/ttyUSB0 at 115200 baud:
```yaml
elkm1:
host: serial://dev/ttyS1:9600
username: USERNAME
password: PASSWORD
area:
exclude: [5-8]
zone:
exclude: [11-16, 19-192, 199-208]
plc:
include: [a1-d16, 192]
exclude: [b12-d5]
- host: serial:///dev/ttyUSB0:115200
# Elk doesn't know which areas/zones/etc are unused, so it can generate
# many unwanted Home Assistant Entities. Be liberal in excluding them:
area:
exclude: [2-8]
zone:
exclude: [17-192, 195-208]
plc:
enabled: false
task:
enabled: false
counter:
exclude: [1-64]
keypad:
exclude: [3-16]
setting:
exclude: [1-20]
output:
enabled: false
thermostat:
enabled: false
```

View File

@ -18,9 +18,30 @@ MB_KEY="INSERT-YOUR-KEY-HERE"
sudo docker run --name=facebox --restart=always -p 8080:8080 -e "MB_KEY=$MB_KEY" machinebox/facebox
```
or using `docker-compose`:
```yaml
version: '3'
services:
facebox:
image: machinebox/facebox
container_name: facebox
restart: unless-stopped
ports:
- 8080:8080
environment:
- MB_KEY=${MB_KEY}
- MB_FACEBOX_DISABLE_RECOGNITION=false
```
You can run Facebox with a username and password by adding `-e "MB_BASICAUTH_USER=my_username" -e "MB_BASICAUTH_PASS=my_password"` but bear in mind that the integration does not encrypt these credentials and this approach does not guarantee security on an unsecured network.
If you only require face detection (number of faces) you can disable face recognition by adding `-e "MB_FACEBOX_DISABLE_RECOGNITION=true"` to the `docker run` command.
After you created an account at [Machinebox](https://machinebox.io/account), you can grab your `MB_KEY` at [your Account page](https://developer.veritone.com/machinebox/overview).
If you only require face detection (number of faces) you can disable face recognition by adding `-e "MB_FACEBOX_DISABLE_RECOGNITION=true"` in the `docker run` command.
If your host machine does not support [AVX](https://en.wikipedia.org/wiki/Advanced_Vector_Extensions) and you experience issues running the `machinebox/facebox` image there is an alternative image without AVX support available at `machinebox/facebox_noavx`(*HINT*: This image is currently not supported by machinebox and should only be used if necessary)
## Configuration

View File

@ -42,7 +42,7 @@ port:
type: string
{% endconfiguration %}
You can find out your Freebox host and port by opening the address mafreebox.freebox.fr/api_version in your browser. The
You can find out your Freebox host and port by opening the address <http://mafreebox.freebox.fr/api_version> in your browser. The
returned json should contain an api_domain (`host`) and a https_port (`port`).
Please consult the [api documentation](https://dev.freebox.fr/sdk/os/) for more information.

View File

@ -22,7 +22,7 @@ The Google Assistant integration requires a bit more setup than most due to the
<div class='note warning'>
To use Google Assistant, your Home Assistant configuration has to be [externally accessible with a hostname and SSL certificate](/docs/configuration/remote/). If you haven't already configured that, you should do so before continuing.
To use Google Assistant, your Home Assistant configuration has to be [externally accessible with a hostname and SSL certificate](/docs/configuration/remote/). If you haven't already configured that, you should do so before continuing. If you make DNS changes to accomplish this, please ensure you have allowed up to the full 48 hours for DNS changes to propogate, otherwise Google may not be able to reach your server.
</div>
@ -65,14 +65,14 @@ If you've added Home Assistant to the home screen, you have to first remove it f
3. When the new user opens the link with their own Google account, it will enable your draft test app under their account.
3. Have the new user go to their `Google Assistant` app to add `[test] your app name` to their account.
2. If you want to support actively reporting of state to Google's server (config option `report_state`) and support `google_assistant.request_sync`, you need to generate a service account.
1. In the GCP Console, go to the [Create Service account key](https://console.cloud.google.com/apis/credentials/serviceaccountkey) page.
2. From the Service account list, select New service account.
3. In the Service account name field, enter a name.
4. In the Service account ID field, enter an ID.
5. From the Role list, select Service Accounts > Service Account Token Creator.
6. For the Key type, select the JSON option.
7. Click Create. A JSON file that contains your key downloads to your computer.
8. Use the information in this file or the file directly to add to the `service_account`key in the configuration.
1. In the GCP Console, go to the [Create Service account key](https://console.cloud.google.com/apis/credentials/serviceaccountkey) page.
2. From the Service account list, select New service account.
3. In the Service account name field, enter a name.
4. In the Service account ID field, enter an ID.
5. From the Role list, select Service Accounts > Service Account Token Creator.
6. For the Key type, select the JSON option.
7. Click Create. A JSON file that contains your key downloads to your computer.
8. Use the information in this file or the file directly to add to the `service_account` key in the configuration.
3. If you didn't specify a service account and want to use the `google_assistant.request_sync` service, to update devices without unlinking and relinking, in Home Assistant, then enable Homegraph API for your project:
1. Go to the [Google API Console](https://console.cloud.google.com/apis/api/homegraph.googleapis.com/overview).
2. Select your project and click Enable Homegraph API.
@ -127,7 +127,7 @@ service_account:
keys:
private_key:
description: Private key in PEM format
requried: true
required: true
type: string
client_email:
description: Service email address

View File

@ -218,10 +218,10 @@ sensor:
- platform: template
sensors:
family_room:
value_template: '{{ state_attr('remote.family_room', 'current_activity') }}'
value_template: '{{ state_attr("remote.family_room", "current_activity") }}'
friendly_name: 'Family Room'
bedroom:
value_template: '{{ state_attr('remote.bedroom', 'current_activity') }}'
value_template: '{{ state_attr("remote.bedroom", "current_activity") }}'
friendly_name: 'bedroom'
```
{% endraw %}

View File

@ -163,7 +163,7 @@ homekit:
After Home Assistant has started, the entities specified by the filter are exposed to HomeKit if they are [supported](#supported-components). To add them:
1. Open the Home Assistant frontend. A new card will display the `pin code`. Note: If pin code is not displayed, check "Notifications" (the bell icon) in the upper-right of the Home Assistant UI.
1. Open the Home Assistant frontend. A new card will display the `pin code`. Note: If pin code is not displayed, check "Notifications" (the bell icon) in the lower-left of the Home Assistant UI.
2. Open the `Home` app.
3. Click `Add Accessory`, then select `Don't Have a Code or Can't Scan?` and choose the `Home Assistant Bridge`.
4. Confirm that you are adding an `Uncertified Accessory` by clicking on `Add Anyway`.

View File

@ -36,6 +36,7 @@ Fill the form:
* Your **access point ID** (SGTIN)
* Optional a **name** to identify your access point, this will be used to prefix your device names.
* The **PIN**, mandatory if one is used in the native HomematicIP App.
The authentification token will be generated and stored internally.

View File

@ -12,7 +12,7 @@ The `lg_soundbar` platform allows you to control [LG Soundbars](https://www.lg.c
Supported devices:
- The SK range
- Devices in the SK range with Ethernet and/or Wi-Fi
Compatible devices will be automatically added if the [`discovery`](/integrations/discovery/) integration is enabled.

View File

@ -73,3 +73,19 @@ After setup, scenes will appear in Home Assistant using the area, keypad and but
## Occupancy Sensors
Any configured Powr Savr occuancy sensors will be added as occupancy binary sensors. Lutron reports occupancy for an area, rather than reporting individual sensors. Sensitivity and timeouts are controlled on the sensors themselves, not in software.
## Example Automations
``` yaml
- alias: "keypad button pressed notification"
trigger:
- platform: event
event_type: lutron_event
event_data:
id: office_pico_on
action: single
action:
- service: notify.telegram
data:
message: "pico just turned on!"
```

View File

@ -141,7 +141,7 @@ modbus:
| Attribute | Description |
| --------- | ----------- |
| name | Hub name (defaults to 'default' when omitted) |
| hub | Hub name (defaults to 'default' when omitted) |
| unit | Slave address (set to 255 you talk to Modbus via TCP) |
| address | Address of the Register (e.g., 138) |
| value | A single value or an array of 16-bit values. Single value will call modbus function code 6. Array will call modbus function code 16. Array might need reverse ordering. E.g., to set 0x0004 you might need to set `[4,0]` |

View File

@ -33,6 +33,7 @@ The Proximity entity which is created has the following values:
- 'm'
- 'mi'
- 'ft'
- `nearest`: The device which is nearest to the zone
To enable this integration in your installation, add the following to your `configuration.yaml` file:

View File

@ -34,23 +34,26 @@ The `ps4` integration allows you to control a
## Granting Port Access
The PlayStation 4 integration requires the use of privileged ports to work correctly, specifically UDP port 987 and TCP port 997. Depending on your OS of your Home Assistant instance you may need to allow usage of privileged ports manually.
The PlayStation 4 integration requires the use of privileged ports to work correctly, specifically UDP port 987 and TCP port 997. Depending on your OS of your Home Assistant instance, you may need to allow usage of privileged ports manually.
<div class='note warning'>
Do not run your <b>Home Assistant</b> instance itself as <b>root</b> or with <b>root/sudo privileges</b> to accomplish this. This would create a security risk for your host system.
</div>
There are varying methods to perform this, dependent on your OS that is running Home Assistant. Specifically, your *Python Interpreter* which runs your Home Assistant instance needs access to the mentioned ports.
There are varying methods to perform this, dependent on your OS that is running Home Assistant. Specifically, your *Python Interpreter*, which runs your Home Assistant instance, needs access to the mentioned ports.
<div class='note'>
If your Home Assistant device is running <b>Hass.io</b> on <b>HassOS</b>, it does not require additional configuration.
If your Home Assistant device is running **Hass.io** on **HassOS**, it does not require additional configuration.
</div>
### Debian-based
Home Assistant installed on a Debian-type OS may require configuration. This section is applicable but not limited to the following operating systems:
- Debian
- Rassbian
- Raspbian
- Armbian
- Ubuntu
@ -63,13 +66,14 @@ sudo setcap 'cap_net_bind_service=+ep' <python>
Replace `<python>` with your **system path** to Python that is running Home Assistant and/or your virtual environment if used. The path **should not** be a **symlink** or be **inside of a virtual environment**.
Example:
```bash
sudo setcap 'cap_net_bind_service=+ep' /usr/bin/python3.5
```
To find your system Python path:
- Add the [System Health](/integrations/system_health/) integration to your `configuration.yaml`. In a web browser access your frontend and navigate to the about/logs page "http://<yourhomeassistanturl>/developer-tools/info). In the System Health box locate the item **python_version** and note the value that is displayed. Then in terminal run:
- Add the [System Health](/integrations/system_health/) integration to your `configuration.yaml`. In a web browser, access your frontend and navigate to the about/logs page "http://<yourhomeassistanturl>/developer-tools/info). In the System Health box, locate the item **python_version** and note the value that is displayed. Then in a terminal run:
```bash
whereis python<version>
@ -110,7 +114,7 @@ When running Home Assistant using Docker, make sure that the Home Assistant cont
## Regions
Some titles will have different SKUs in the PlayStation Store database depending on your region. You must select your specific region in the setup in order to retrieve the cover art for such titles correctly. The integration will attempt to search other databases for the correct title if it cannot be found, although it will take longer to do so and may fetch an incorrect cover.
Some titles will have different SKUs in the PlayStation Store database, depending on your [region](https://www.playstation.com/country-selector/index.html). You must select your specific region in the setup in order to retrieve the cover art for such titles correctly. The integration will attempt to search other databases for the correct title if it cannot be found, although it will take longer to do so and may fetch an incorrect cover.
| Available Regions | Unavailable Regions |
| --------------------------------------------------------------------------- | -------------------------- |
@ -125,11 +129,67 @@ Some titles will have different SKUs in the PlayStation Store database depending
| Thailand, Turkey, United Arab Emirates, United Kingdom, United States | |
<div class='note'>
The regions which are unavailable have no database or have formatting in the database which can not be used by the component.
The regions which are unavailable have no database or have formatting in the database, which can not be used by the component.
</div>
## Media Data
The PlayStation 4 integration will fetch information about the game or app that is currently running from your region's [PlayStation Store](https://store.playstation.com) database.
Occasionally, the integration may fail to get the data at all, or may get incorrect data. To correct this issue, the integration allows for manual editing via any text editor.
### Formatting
When the integration retrieves data from the PlayStation Store, it stores it in a JSON file named `.ps4-games.json` in the same directory as where your `configuration.yaml` file is located. The first line in the file will be `{` and the last line will be `}`. Between these lines, there will be indented entries for each game or app the integration finds. See the following example and table:
```json
{
"CUSA00129": {
"locked": true,
"media_content_type": "app",
"media_image_url": "http://localhost:8123/local/image.jpg",
"media_title": "Some App"
},
"CUSA00123": {
"locked": false,
"media_content_type": "game",
"media_image_url": "https://somerandomurl.com/image.jpg",
"media_title": "Some Game"
}
}
```
| Field | Value | Description |
| ----- | ----- | ----------- |
| `locked` | boolean | Must be `true` or `false`
| `media_content_type` | string | Must be `game` or `app`
| `media_image_url` | string | Any valid url for an image
| `media_title` | string | The title of the game or app
The data in the example shows 2 entries.
Each entry will begin with the SKU ID of the title, e.g., `CUSA00000` and will have a field named `locked` with a value of `true` or `false` associated with it. The default value will be `false` for each entry. If `locked` is `true`, the integration will not overwrite the data pertaining to that game or app.
The `media_image_url` value can be any valid URL. This includes the `local directory` of your Home Assistant instance. The first entry in the example directs to a file named `image.jpg` located in the `config/www/` directory.
### Editing with Text Editor
<div class='note'>
Backup a copy of your <b>.ps4-games.json</b> file before continuing. If there are errors in the formatting, your file may be deleted.
</div>
To edit, simply open the file in a text editor, find the game or app you would like to edit, and edit the value(s) you wish to change and then save the file. The changes will appear the next time you play the game or app on your console.
## Services
### Service `select_source`
Opens new application/game and closes currently running application/game. The game/app must be in the entity's source list. Games will be added automatically when you open them normally.
| Service data attribute | Optional | Example | Description |
| ---------------------- | -------- | ---------------------------- | ------------------------------------- |
| `entity_id` | No | `media_player.playstation_4` | The entity id for your PlayStation 4. |
| `source` | No | `Some Game` or `CUSA00123` | The game/app you want to open. You can use the title or SKU ID. Using the SKU ID will be the most reliable.|
### Service `send_command`
Emulate button press on PlayStation 4. This emulates the commands available for the PS4 Second Screen App. This is not to be confused with DualShock 4 controller buttons.
@ -157,7 +217,7 @@ Full list of supported commands.
## Troubleshooting
### Cover Art Issues
If you are running a game/title on your PS4 that does not display a cover or displays the incorrect cover, post an issue [here](https://github.com/ktnrg45/pyps4-homeassistant/issues).
If you are running a game/title on your PS4 that does not display a cover or displays the incorrect cover, post an issue [here](https://github.com/ktnrg45/pyps4-2ndscreen/issues).
Be sure to include the following information:
- Your Country

View File

@ -17,7 +17,7 @@ This integration allows you to write Python scripts that are exposed as services
| `logger` | A logger to allow you to log messages: `logger.info()`, `logger.warning()`, `logger.error()`. [API reference][logger-api]
[hass-api]: /developers/development_hass_object/
[logger-api]: https://docs.python.org/3.4/library/logging.html#logger-objects
[logger-api]: https://docs.python.org/3.7/library/logging.html#logger-objects
<div class='note'>

View File

@ -10,11 +10,13 @@ ha_iot_class: Local Polling
The `xiaomi miio` remote platform allows you to send IR commands from your Xiaomi IR Remote (ChuangmiIr).
## Setup
Please follow the instructions on [Retrieving the Access Token](/integrations/vacuum.xiaomi_miio/#retrieving-the-access-token) to get the API token to use in the `configuration.yaml` file.
## Configuring the Platform
To add a Xiaomi IR Remote to your installation, add the following to your configuration.yaml file:
To add a Xiaomi IR Remote to your installation, add the following to your `configuration.yaml` file:
```yaml
remote:
- platform: xiaomi_miio
@ -112,18 +114,41 @@ The Xiaomi IR Remote Platform currently supports two different formats for IR co
A raw command is a command learned from [`remote.xiaomi_miio_learn_command`](/integrations/remote.xiaomi_miio/#remotexiaomi_miio_learn_command).
A raw command is defined as in the following example:
`raw:Z6UFANEAAAAjAQAAAwkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIAE=`
```bash
raw:Z6UFANEAAAAjAQAAAwkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIAE=
```
with an optional last parameter of frequency:
`raw:Z6UFANEAAAAjAQAAAwkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIAE=:38400`
```bash
raw:Z6UFANEAAAAjAQAAAwkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIAE=:38400
```
### Pronto Hex Code
A pronto hex code is a hex code often supplied by the device manufacturer.
A pronto hex code is defined as in the following example:
`pronto:0000 006C 0022 0002 015B 00AD 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0016 0016 0016 0016 0041 0016 0016 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0016 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0623 015B 0057 0016 0E6E`
```bash
pronto:0000 006C 0022 0002 015B 00AD 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0016 0016 0016 0016 0041 0016 0016 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0016 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0623 015B 0057 0016 0E6E
```
with an optional last parameter of repeats (required by some devices):
`pronto:0000 006C 0022 0002 015B 00AD 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0016 0016 0016 0016 0041 0016 0016 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0016 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0623 015B 0057 0016 0E6E:2`
```bash
pronto:0000 006C 0022 0002 015B 00AD 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0016 0016 0016 0016 0041 0016 0016 0016 0041 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0016 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0623 015B 0057 0016 0E6E:2
```
Note there are at least 4 versions of the Xiaomi IR Remote (ChuangmiIr) which can be recognized by their default hostname:
* `chuangmi.ir.v2`
* `chuangmi.remote.h102a03`
* `chuangmi.remote.v2`
* `chuangmi.remote.h102c01`
For now, pronto hex codes only work on the first version (`chuangmi.ir.v2`).
## Platform Services

View File

@ -95,6 +95,9 @@ The api calls are like this:
```txt
GET http:// ROKU_IP:8060/query/apps
POST http://ROKU_IP:8060/launch/APP_ID
YouTube example:
POST http://YOUR_ROKU_IP:8060/launch/837?contentID=YOUR_YOUTUBE_VIDEOS_CONTENT_ID&MediaType=live
```
More details can be found on the [Roku dev pages](https://developer.roku.com/docs/developer-program/discovery/external-control-api.md)

View File

@ -24,10 +24,12 @@ scene:
entities:
light.tv_back_light:
state: on
brightness: 100
brightness: 125
light.ceiling: off
media_player.sony_bravia_tv:
state: on
source: HDMI 1
state: on
```
{% configuration %}
@ -36,15 +38,15 @@ name:
required: true
type: string
entities:
description: Entities to control.
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.
- Define a complex state with its attributes.
- 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).
@ -82,6 +84,7 @@ automation:
brightness: 100
light.ceiling: off
media_player.sony_bravia_tv:
state: on
source: HDMI 1
```

View File

@ -29,7 +29,6 @@ To enable the sensor, add the following lines to your `configuration.yaml` file:
# Example configuration.yaml entry
sensor:
- platform: season
type: astronomical
```
{% configuration %}

View File

@ -55,6 +55,6 @@ input_number:
{% raw %}
shell_command:
set_ac_to_slider: 'irsend SEND_ONCE DELONGHI AC_{{ states('input_number.ac_temperature') }}_AUTO'
set_ac_to_slider: 'irsend SEND_ONCE DELONGHI AC_{{ states("input_number.ac_temperature") }}_AUTO'
{% endraw %}
```

View File

@ -12,7 +12,13 @@ The `slack` platform allows you to deliver notifications from Home Assistant to
## Setup
If you are planning to use Slack as yourself then you'll need to create a [new app](https://api.slack.com/apps) under your Slack.com account. After creating the app, access the OAuth & Permissions link under the Features heading in the sidebar. Your OAuth Access Token should be located there. This is the key that you'll use in your `configuration.yaml` file.
### Bot posting as you
1. Create a [new app](https://api.slack.com/apps) under your Slack.com account
2. Click the `OAuth & Permissions` link in the sidebar, under the Features heading
2. In the Scopes section, add the `chat:write:user` scope, `Send messages as user`
3. Scroll up to `OAuth Tokens & Redirect URLs` and click `Install App`
4. Copy your `OAuth Access Token` and put that key into your `configuration.yaml` file -- see below
<div class='note'>
@ -20,8 +26,7 @@ There is an app credential Verification Token on the Basic Settings of your app.
</div>
You will also need to ensure that you have added the appropriate scope when configuring your app. In this case, in the Scopes section, add the `Send messages as user` scope, e.g., (chat:write:user).
### Bot posting as its own user
It is also possible to use Slack bots as users. Just create a new bot at https://[YOUR_TEAM].slack.com/apps/build/custom-integration and use the provided token for that. You can add an icon from the frontend for Home Assistant and give the bot a meaningful name.
Don't forget to invite the bot to the room where you want to get the notifications.

View File

@ -82,7 +82,7 @@ baseoid:
required: true
type: string
auth_key:
description: A"uthentication key for SNMPv3. Variable `priv_key` must also be set."
description: "Authentication key for SNMPv3. Variable `priv_key` must also be set."
required: inclusive
type: string
priv_key:

View File

@ -19,7 +19,7 @@ To connect Somfy, you need to set up a developer account.
3. Open the *My Apps* menu.
4. Add a new App:
- App Name: Home Assistant
- Callback URL: `<YOUR_HOME_ASSISTANT_URL>/auth/somfy/callback`
- 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.

View File

@ -33,12 +33,9 @@ To create the required Spotify application:
If you are using SSL:
`https://<your_home_assistant_url_or_local_ip>:<port>/api/spotify`
The URL is whatever you use to access Home Assistant from outside your network
(including port if applicable).
- Click **Save** after adding the URI.
You will likely also need to set the `base_url` attribute of the [HTTP Component](/integrations/http/). This should be set using the same base URL as the redirect URI, e.g., if you used a domain name (not local IP) in the redirect, then use the same domain name in your `base_url`.
If you are using an externally accessible address you will likely also need to set the `base_url` attribute of the [HTTP Component](/integrations/http/). This should be set using the same base URL as the redirect URI, e.g., if you used a domain name (not local IP) in the redirect, then use the same domain name in your `base_url`.
## Configuration

View File

@ -273,7 +273,7 @@ That means that Home Assistant is not getting any response from your Xiaomi gate
- You should generate the key again using an Android Phone or alternatively an emulator such as [bluestacks](https://www.bluestacks.com). In some instances, there is an issue with keys being generated using the iOS application.
- You need to make sure to have multicast support on your network. If you are running Home Assistant in a virtual machine (like Proxmox), try `echo 0 >/sys/class/net/vmbr0/bridge/multicast_snooping` on the host and restart the service or reboot the host.
- If the required library "PyXiaomiGateway" cannot be installed you will need to install some missing system dependencies `python3-dev`, `libssl-dev`, `libffi-dev` manually (e.g., `$ sudo apt-get install python3-dev libssl-dev libffi-dev`).
- If your gateway's MAC address starts with `04:CF:8C`, there is a good chance that the required port `9898` is closed on your gateway (you can check it with the Nmap utility, using the command `sudo nmap - sU {gateway_ip} -p 9898`). To fix that issue, you need to do these steps:
- If your gateway's MAC address starts with `04:CF:8C`, there is a good chance that the required port `9898` is closed on your gateway (you can check it with the Nmap utility, using the command `sudo nmap -sU {gateway_ip} -p 9898`). To fix that issue, you need to do these steps:
- Find a specific screw bit (like a fork) to open the gateway case.
- Find a USB-UART cable/module and connect it to your computer.
- Solder 3 wires - RX, TX and GND like [here](https://cs5-3.4pda.to/14176168/IMG_20181020_201150.jpg).

View File

@ -311,5 +311,5 @@ entities:
```
<div class='note'>
Please be aware that the entity types divider and weblink aren't yet support by the UI editor and a warning about `Expected a value of type...` is shown. You can ignore the warning and save your edits to verify.
Please be aware that the entity types divider and weblink aren't yet supported by the UI editor and a warning about `Expected a value of type...` is shown. You can ignore the warning and save your edits to verify.
</div>

View File

@ -103,6 +103,10 @@ Screenshot of the device picker.
[mdonoughe](https://github.com/mdonoughe) added support the activate scene action in the automation editor.
## Lovelace
Check the [Lovelace changelog](https://www.home-assistant.io/lovelace/changelog/) for all changes.
## In other news
<blockquote class="twitter-tweet"><p lang="en" dir="ltr">Proud to announce that the Visual Studio Code add-on for <a href="https://twitter.com/home_assistant?ref_src=twsrc%5Etfw">@home_assistant</a> reached v1.0.0! 🎉<br><br>This version ships the second generation code-server, VSCode 1.39, HA extension 1.3, updates MDI ext and adds a rainbow indent function ❤️<br><br>Oh, and it is FAST 🚀 <a href="https://t.co/eBe8CirZ4B">pic.twitter.com/eBe8CirZ4B</a></p>&mdash; Franck Nijhof (@Frenck) <a href="https://twitter.com/Frenck/status/1188044714571907072?ref_src=twsrc%5Etfw">October 26, 2019</a></blockquote>
@ -110,9 +114,6 @@ Screenshot of the device picker.
<blockquote class="twitter-tweet"><p lang="en" dir="ltr">It is done! Making magic with <a href="https://twitter.com/hashtag/python?src=hash&amp;ref_src=twsrc%5Etfw">#python</a> <a href="https://twitter.com/hashtag/opencv?src=hash&amp;ref_src=twsrc%5Etfw">#opencv</a> <a href="https://twitter.com/hashtag/tensorflow?src=hash&amp;ref_src=twsrc%5Etfw">#tensorflow</a> <a href="https://twitter.com/hashtag/homeassistant?src=hash&amp;ref_src=twsrc%5Etfw">#homeassistant</a>. <a href="https://t.co/ZiN5AE7ixt">https://t.co/ZiN5AE7ixt</a></p>&mdash; Esther Makes Tech (@esthermakestech) <a href="https://twitter.com/esthermakestech/status/1185696326710808576?ref_src=twsrc%5Etfw">October 19, 2019</a>
</blockquote>
<blockquote class="twitter-tweet"><p lang="en" dir="ltr">It is done! Making magic with <a href="https://twitter.com/hashtag/python?src=hash&amp;ref_src=twsrc%5Etfw">#python</a> <a href="https://twitter.com/hashtag/opencv?src=hash&amp;ref_src=twsrc%5Etfw">#opencv</a> <a href="https://twitter.com/hashtag/tensorflow?src=hash&amp;ref_src=twsrc%5Etfw">#tensorflow</a> <a href="https://twitter.com/hashtag/homeassistant?src=hash&amp;ref_src=twsrc%5Etfw">#homeassistant</a>. <a href="https://t.co/ZiN5AE7ixt">https://t.co/ZiN5AE7ixt</a></p>&mdash; Esther Makes Tech (@esthermakestech) <a href="https://twitter.com/esthermakestech/status/1185696326710808576?ref_src=twsrc%5Etfw">October 19, 2019</a>
</blockquote>
<blockquote class="twitter-tweet"><p lang="en" dir="ltr">Weekend IOT project: Weather info from the Cloud, literally. Details on github here:<a href="https://t.co/V9xpxqyRAv">https://t.co/V9xpxqyRAv</a><a href="https://twitter.com/hashtag/homeassistant?src=hash&amp;ref_src=twsrc%5Etfw">#homeassistant</a> <a href="https://twitter.com/hashtag/arduino?src=hash&amp;ref_src=twsrc%5Etfw">#arduino</a> <a href="https://twitter.com/hashtag/mqtt?src=hash&amp;ref_src=twsrc%5Etfw">#mqtt</a> <a href="https://twitter.com/hashtag/smarthome?src=hash&amp;ref_src=twsrc%5Etfw">#smarthome</a> <a href="https://t.co/YrkEBpa9Rw">pic.twitter.com/YrkEBpa9Rw</a></p>&mdash; Gabe Scelta (@sfgabe) <a href="https://twitter.com/sfgabe/status/1183871117972430848?ref_src=twsrc%5Etfw">October 14, 2019</a>
</blockquote>
@ -135,6 +136,78 @@ Screenshot of the device picker.
- Add sensor platform to Airly integration ([@bieniu] - [#27717]) ([airly docs]) (new-platform)
- Move imports in mqtt component ([@exxamalte] - [#27835]) ([mqtt docs]) (new-platform)
## Release 0.101.1 - October 31
- Bump songpal to fix a regression ([@rytilahti] - [#28115]) ([songpal docs])
- Bump pymyq to 2.0.1 ([@bachya] - [#28348]) ([myq docs])
- Bump pysaj to v0.0.13 (fix for sensor date) ([@fredericvl] - [#28351]) ([saj docs])
- Bump env_canada to fixed 0.0.29 version ([@shmick] - [#28360]) ([environment_canada docs])
- Fix Airly asyncio timeout error ([@bieniu] - [#28387]) ([airly docs])
- Fix hdate spamming homeassistant log ([@tsvi] - [#28392]) ([jewish_calendar docs])
- Fix check config ([@balloob] - [#28393])
- Check for import errors before validating config ([@balloob] - [#28395])
[#28115]: https://github.com/home-assistant/home-assistant/pull/28115
[#28348]: https://github.com/home-assistant/home-assistant/pull/28348
[#28351]: https://github.com/home-assistant/home-assistant/pull/28351
[#28360]: https://github.com/home-assistant/home-assistant/pull/28360
[#28387]: https://github.com/home-assistant/home-assistant/pull/28387
[#28392]: https://github.com/home-assistant/home-assistant/pull/28392
[#28393]: https://github.com/home-assistant/home-assistant/pull/28393
[#28395]: https://github.com/home-assistant/home-assistant/pull/28395
[@bachya]: https://github.com/bachya
[@balloob]: https://github.com/balloob
[@bieniu]: https://github.com/bieniu
[@fredericvl]: https://github.com/fredericvl
[@rytilahti]: https://github.com/rytilahti
[@shmick]: https://github.com/shmick
[@tsvi]: https://github.com/tsvi
[airly docs]: /integrations/airly/
[environment_canada docs]: /integrations/environment_canada/
[jewish_calendar docs]: /integrations/jewish_calendar/
[myq docs]: /integrations/myq/
[saj docs]: /integrations/saj/
[songpal docs]: /integrations/songpal/
## Release 0.101.2 - November 1
- Prevent TypeError when KNX RGB(W) light value contains None ([@phispi] - [#28358]) ([knx docs])
- Change Abode cache file path, add cache path to config flow ([@MisterWil] - [#28389]) ([abode docs])
- SNMP switch fix integer support ([@rfpronk] - [#28425]) ([snmp docs])
- Use server-specific unique_ids for Plex media_players ([@jjlawren] - [#28447]) ([plex docs])
- Also install after_deps ([@balloob] - [#28453])
[#28358]: https://github.com/home-assistant/home-assistant/pull/28358
[#28389]: https://github.com/home-assistant/home-assistant/pull/28389
[#28425]: https://github.com/home-assistant/home-assistant/pull/28425
[#28447]: https://github.com/home-assistant/home-assistant/pull/28447
[#28453]: https://github.com/home-assistant/home-assistant/pull/28453
[@MisterWil]: https://github.com/MisterWil
[@balloob]: https://github.com/balloob
[@jjlawren]: https://github.com/jjlawren
[@phispi]: https://github.com/phispi
[@rfpronk]: https://github.com/rfpronk
[abode docs]: /integrations/abode/
[knx docs]: /integrations/knx/
[plex docs]: /integrations/plex/
[snmp docs]: /integrations/snmp/
## Release 0.101.3 - November 5
- Fix missing import ([@timmccor] - [#28460]) ([sonos docs])
- Fix Airly if more than one config entry ([@bieniu] - [#28498]) ([airly docs])
- Add deprecated attributes to light.reproduce_state ([@Santobert] - [#28557]) ([light docs])
[#28460]: https://github.com/home-assistant/home-assistant/pull/28460
[#28498]: https://github.com/home-assistant/home-assistant/pull/28498
[#28557]: https://github.com/home-assistant/home-assistant/pull/28557
[@Santobert]: https://github.com/Santobert
[@bieniu]: https://github.com/bieniu
[@timmccor]: https://github.com/timmccor
[airly docs]: /integrations/airly/
[light docs]: /integrations/light/
[sonos docs]: /integrations/sonos/
## 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).
@ -148,11 +221,12 @@ Experiencing issues introduced by this release? Please report them in our [issue
## Breaking Changes
- __Removed__ - The following integrations have been removed:
- __Direct authentication via trusted networks or API password__ - It is no longer possible to make authenticated requests using trusted networks or by appending ?api_password=X to the URL. You will now first need to get an authentication token and use that token to make requests. - ([@balloob] - [#27656]) ([auth docs]) ([http docs]) ([websocket_api docs])
- __Direct authentication via trusted networks or API password__ - It is no longer possible to make authenticated requests using trusted networks or by appending ?api_password=X to the URL. You will now first need to get an authentication token and use that token to make requests. Auth providers for trusted networks and API passwords are still available. - ([@balloob] - [#27656]) ([auth docs]) ([http docs]) ([websocket_api docs])
- __Stride__ - The Stride notification integration was discontinued in February 2019 due to a take over by Slack. - ([@hmmbob] - [#27934]) ([stride docs])
- __Hipchat__ - The Hipchat notification integration was discontinued in February 2019, also due to a take over by Slack. - ([@fabaff] - [#27399]) ([hipchat docs])
- __Deprecated__ - Python 3.6 support is deprecated (to be removed completely by December 2019), as version 3.8.0 is now out - ([@scop] - [#27680])
- __Scene__ - Scenes have to be configured more strictly from now on. Each entity must be configured with a valid state. Furthermore, the attributes that can be used must be `device state attributes`. This means that they should be listed under _developer-tools -> states_. - ([scene docs])
- __Ecobee__ - Adds `turn_on` method to ecobee climate platform. Previously, calling `climate.turn_on` would cause the ecobee thermostat to turn on in heat mode, regardless of the mode when the thermostat was turned off. Now, the thermostat will turn on to the last "active" HVAC mode (i.e., "heat", "cool", or "auto") (or, if the thermostat was "off" when Home Assistant started, to "auto"). - ([@marthoc] - [#27103]) ([ecobee docs])
- __Genius Hub__ - This addresses an issue that requires the `unique_id` of **climate** and **water_heater** entities to be changed. After upgrading HA with this change, users will have stale entities in the entity registry that they may wish to clear out. - ([@zxdavb] - [#27916]) ([geniushub docs])
- __Abode__ - The configuration variables were removed: `name`, `exclude` and `lights`, which were all previously optional. Existing users of the abode integration that use these configuration variables will have to remove them from the `configuration.yaml` file. Entities that users wish to disable can be done from the Entity Registry in the Configuration UI. - ([@shred86] - [#26699]) ([abode docs])

View File

@ -0,0 +1,10 @@
---
title: "Home Assistant Android"
description: "Landing page for Home Assistant Android app."
---
<link rel='redirect_uri' href='homeassistant://auth-callback'>
Nothing to see yet :)
<script>/*document.location.href = '/docs/ecosystem/ios';*/</script>

View File

@ -8,7 +8,7 @@ redirect_from:
When your devices are set up, it's time to put the cherry on the pie: automation. In this guide we're going to create a simple automation rule to **turn on the lights when the sun sets**.
In Home Assistant, open the menu by clicking on the top-left icon and click on configuration. Now click on automations. This is the automation screen from which you can manage all the automations in Home Assistant.
In Home Assistant, open the menu by clicking on the top-left icon and click on configuration. Now click on automation. This is the automation screen from which you can manage all the automations in Home Assistant.
Click on the orange button at the bottom right to create a new automation. You are presented with a blank automation screen.

View File

@ -38,19 +38,19 @@ We will need a few things to get started with installing Home Assistant. The Ras
- [Raspberry Pi 3 Model B+](https://amzn.to/2IAyNl0) + [Power Supply](https://www.raspberrypi.org/help/faqs/#powerReqs) (at least 2.5A)
- [Micro SD Card](https://amzn.to/2X0Z2di). Ideally get one that is [Application Class 2](https://www.sdcard.org/developers/overview/application/index.html) as they handle small I/O much more consistently than cards not optimized to host applications. A 32 GB or bigger card is recommended.
- SD Card reader. This is already part of most laptops, but you can purchase a [standalone USB adapter](https://amzn.to/2WWxntY) if you don't have one. The brand doesn't matter, just pick the cheapest.
- Ethernet cable. Hass.io can work with Wi-Fi, but an Ethernet connection would be more reliable.
- Ethernet cable. Home Assistant can work with Wi-Fi, but an Ethernet connection would be more reliable.
### Software requirements
- Download the Hass.io image for [your device](/hassio/installation/)
- Download the HassOS image for [your device](/hassio/installation/)
- Download [balenaEtcher] to write the image to an SD card
[balenaEtcher]: https://www.balena.io/etcher
### Installing Hass.io
### Installation
1. Put the SD card in your card reader.
2. Open balenaEtcher, select the Hass.io image and flash it to the SD card.
2. Open balenaEtcher, select the HassOS image and flash it to the SD card.
3. Unmount the SD card and remove it from your card reader.
4. Follow this step if you want to configure Wi-Fi or a static IP address (this step requires a USB stick). Otherwise, move to step 5.
- Format a USB stick to FAT32 with the volume name `CONFIG`.

View File

@ -101,19 +101,19 @@ The packages you need to have available on your system that will run Hass.io may
### Debian/Ubuntu
- apparmor-utils
- apt-transport-https
- avahi-daemon
- ca-certificates
- curl
- dbus
- jq
- socat
- software-properties-common
- `apparmor-utils`
- `apt-transport-https`
- `avahi-daemon`
- `ca-certificates`
- `curl`
- `dbus`
- `jq`
- `socat`
- `software-properties-common`
Optional:
- network-manager
- `network-manager`
<div class='note warning'>
@ -123,14 +123,14 @@ Optional:
### Arch Linux
- apparmor
- avahi
- ca-certificates
- curl
- dbus
- docker
- jq
- socat
- `apparmor`
- `avahi`
- `ca-certificates`
- `curl`
- `dbus`
- `docker`
- `jq`
- `socat`
You also need to have Docker-CE installed. There are well-documented procedures for installing Docker on Ubuntu at [Docker.com](https://docs.docker.com/install/linux/docker-ce/ubuntu/), you can find installation steps for your Linux distribution in the menu on the left.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

View File

@ -36,13 +36,6 @@ description: Open source home automation that puts local control and privacy fir
</div>
</div>
<a
class="material-card picture-promo"
href="https://developers.home-assistant.io/blog/2019/09/27/hacktoberfest.html"
style="background-image: url(/images/frontpage/hacktoberfest.png); padding-top: 27%;"
>
</a>
<div class="material-card text">
<h1>Alexa, turn on the lights</h1>
Use Alexa to control Home Assistant.
@ -95,17 +88,9 @@ description: Open source home automation that puts local control and privacy fir
<a
class="material-card picture-promo"
href="/blog/2018/11/16/state-of-the-union/"
style="background-image: url(/images/blog/2018-11-state-of-the-union/share-the-love.jpg)"
href="/state-of-the-union/"
style="background-image: url(/images/frontpage/sotu2019.png);background-size: contain;background-repeat: no-repeat;background-color: #41bdf5;background-position: top left;"
>
<div class="caption">
<div class="title">
Watch the State of the Union 2018
</div>
<div class="subtitle">
Learn about the origin of Home Assistant and where we're heading.
</div>
</div>
</a>
<a

View File

@ -0,0 +1,46 @@
---
show_title: true
sidebar: false
title: State of the Union
hide_github_edit: true
description: Join us on November 13, 2019 for the Home Assistant State of the Union.
og_image: /images/frontpage/sotu2019.png
---
Home Assistant is proud to present the State of the Union 2019. We're going to discuss all things Home Assistant: the platform, our goals, our achievements and a sneak peek at what we have planned for the home automation ecosystem.
It will take place on November 13, 2019 in Amsterdam. Tickets have already been sold out (in 24h!) but we're having a live stream (see below).
This years presenters are:
- Paulus Schoutsen (founder Home Assistant)
- Pascal Vizeli (founder Hass.io)
[See last year's edition.](/blog/2018/11/16/state-of-the-union/)
## Livestream
This year, the Home Assistant State of the Union will be live streamed to YouTube!
<div class='videoWrapper'>
<iframe width="560" height="315" src="https://www.youtube.com/embed/tc17q1Zn0Xs" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
Direct YouTube URL: <https://www.youtube.com/watch?v=tc17q1Zn0Xs>
🔔 Don't forget to go to the above URL to hit the "Set reminder" bell!
Doing that, ensures you'll get a notification from YouTube, when the stream starts.
The presentation is going to start on 13 November at:
- 9.30 AM in PST
- 12.30 PM in EST
- 18:30 in CET
- [Other time zones](https://www.timeanddate.com/worldclock/converter.html?iso=20191113T173000&p1=137&p2=179&p3=16)
## Local Meetups
If you would like to meet other Home Assistant users and watch the livestream together, check out the following local meetups:
- [Berlin](https://www.meetup.com/Berlin-Home-Assistant/events/265634883/)
- [Rhein-Main Area](https://www.meetup.com/de-DE/Home-Assistant-Meetup-Rhein-Main-Neckar/events/265920456/)