mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-19 15:26:59 +00:00
Merge branch 'current' into next
This commit is contained in:
commit
a80732c1f1
@ -12,7 +12,10 @@ footer: true
|
|||||||
Start this add-on to activate the BCM43xx Bluetooth chipset.
|
Start this add-on to activate the BCM43xx Bluetooth chipset.
|
||||||
|
|
||||||
<p class='note warning'>
|
<p class='note warning'>
|
||||||
This is not required on HassOS based Hass.io installs and should not be installed
|
This is not required on HassOS based Hass.io installs and should not be installed.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
Supported platforms: Raspberry Pi 3.
|
Supported platforms:
|
||||||
|
|
||||||
|
- Raspberry Pi 3
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@ sharing: true
|
|||||||
footer: true
|
footer: true
|
||||||
---
|
---
|
||||||
|
|
||||||
You can use this addon to check whether your configuration files are valid against the new version of Home Assistant before you actually update your Home Assistant installation. This addon will help you avoid errors due to breaking changes, resulting in a smooth update.
|
You can use this add-on to check whether your configuration files are valid against the new version of Home Assistant before you actually update your Home Assistant installation. This add-on will help you avoid errors due to breaking changes, resulting in a smooth update.
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
|
@ -9,7 +9,7 @@ sharing: true
|
|||||||
footer: true
|
footer: true
|
||||||
---
|
---
|
||||||
|
|
||||||
Load and update configuration files for Home Assistant from a GIT repository.
|
Load and update configuration files for Home Assistant from a [Git](https://git-scm.com/) repository.
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
@ -22,6 +22,8 @@ Load and update configuration files for Home Assistant from a GIT repository.
|
|||||||
"active": false,
|
"active": false,
|
||||||
"interval": 300
|
"interval": 300
|
||||||
},
|
},
|
||||||
|
"deployment_user": "",
|
||||||
|
"deployment_password": "",
|
||||||
"deployment_key": [
|
"deployment_key": [
|
||||||
"-----BEGIN RSA PRIVATE KEY-----",
|
"-----BEGIN RSA PRIVATE KEY-----",
|
||||||
"MIIEowIBAAKCAQEAv3hUrCvqGZKpXQ5ofxTOuH6pYSOZDsCqPqmaGBdUzBFgauQM",
|
"MIIEowIBAAKCAQEAv3hUrCvqGZKpXQ5ofxTOuH6pYSOZDsCqPqmaGBdUzBFgauQM",
|
||||||
@ -35,33 +37,33 @@ Load and update configuration files for Home Assistant from a GIT repository.
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
- **repository** (*Required*): Git URL to your repository (make sure to use double quotes). You have to add .git to your GitHub repository URL (see example config)
|
- **repository** (*Required*): Git URL to your repository (make sure to use double quotes). You have to add `.git` to your GitHub repository URL (see example configuration)
|
||||||
- **git_branch** (*Required*): Branch name of the git repo, leave this as 'master' if you are unsure.
|
- **git_branch** (*Required*): Branch name of the Git repo, leave this as 'master' if you are unsure.
|
||||||
- **git_remote** (*Required*): Name of the tracked repository, leave this as 'origin' if you are unsure.
|
- **git_remote** (*Required*): Name of the tracked repository. Leave this as `origin` if you are unsure.
|
||||||
- **git_command** (*Required*): Must be either 'pull' or 'reset', leave this as 'pull' if you are unsure.
|
- **git_command** (*Required*): Must be either `pull` or `reset`. Leave this as `pull` if you are unsure.
|
||||||
|
|
||||||
* **pull**: Incorporates changes from a remote repository into the current branch. Will preserve any local changes to tracked files.
|
* **pull**: Incorporates changes from a remote repository into the current branch. Will preserve any local changes to tracked files.
|
||||||
* **reset**: Will execute ```git reset --hard``` and overwrite any local changes to tracked files and update from the remote repository.
|
* **reset**: Will execute `git reset --hard` and overwrite any local changes to tracked files and update from the remote repository.
|
||||||
|
|
||||||
<p class='note warning'>
|
<p class='note warning'>
|
||||||
Using the <b>reset</b> option will overwrite changes to tracked files. Tracked files are those visible in the Github repository or those given by the output on this command: ```git ls-tree -r master --name-only```
|
Using the `reset` option will overwrite changes to tracked files. Tracked files are those visible in the Github repository or those given by the output on this command: `git ls-tree -r master --name-only`.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
- **auto_restart** (*Optional*): Restart Home Assistant when the configuration has changed (and is valid).
|
- **auto_restart** (*Optional*): Restart Home Assistant when the configuration has changed (and is valid).
|
||||||
- **repeat/active** (*Optional*): Pull periodic for git updates.
|
- **repeat/active** (*Optional*): Pull periodic for Git updates.
|
||||||
- **repeat/interval** (*Optional*): Pull all x seconds and look for changes.
|
- **repeat/interval** (*Optional*): Pull all x seconds and look for changes.
|
||||||
- **deployment_user** (*Optional*): Username to use when authenticating to a repo with a username and password.
|
- **deployment_user** (*Optional*): Username to use when authenticating to a repository with a username and password.
|
||||||
- **deployment_password** (*Optional*): Password to use when authenticating to a repo. Ignored if deployment_user is not set.
|
- **deployment_password** (*Optional*): Password to use when authenticating to a repository. Ignored if `deployment_user` is not set.
|
||||||
- **deployment_key** (*Optional*): A private SSH key that will be used for communication during git operations. This key is mandatory for ssh-accessed repositories, which are the ones with the following pattern: `<user>@<host>:<repository path>`.
|
- **deployment_key** (*Optional*): A private SSH key that will be used for communication during Git operations. This key is mandatory for ssh-accessed repositories, which are the ones with the following pattern: `<user>@<host>:<repository path>`.
|
||||||
- **deployment_key_protocol** (*Optional*): The key protocol. Default is "rsa". Valid protocols are:
|
- **deployment_key_protocol** (*Optional*): The key protocol. Default is `rsa`. Valid protocols are:
|
||||||
|
|
||||||
* **dsa**
|
* **dsa**
|
||||||
* **ecdsa**
|
* **ecdsa**
|
||||||
* **ed25519**
|
* **ed25519**
|
||||||
* **rsa**
|
* **rsa**
|
||||||
|
|
||||||
The protocol is typically known by the suffix of the private key --e.g., a key file named `id_rsa` will be a private key using "rsa" protocol.
|
The protocol is typically known by the suffix of the private key --e.g., a key file named `id_rsa` will be a private key using `rsa` protocol.
|
||||||
|
|
||||||
<p class='note warning'>
|
<p class='note warning'>
|
||||||
You should only use this add-on if you do not have an existing configuration or if your existing configuration is already in a git repository. If the script does not find the necessary git files in your configuration folder, it will delete anything that might be there. Please ensure that there is a `.git` folder before using this. You can verify this by listing the items in the configuration folder including hidden files. The command is `ls -a /config`.
|
You should only use this add-on if you do not have an existing configuration or if your existing configuration is already in a Git repository. If the script does not find the necessary Git files in your configuration folder, it will delete anything that might be there. Please ensure that there is a `.git` folder before using this. You can verify this by listing the items in the configuration folder including hidden files. The command is `ls -a /config`.
|
||||||
</p>
|
</p>
|
||||||
|
@ -11,11 +11,11 @@ featured: true
|
|||||||
---
|
---
|
||||||
|
|
||||||
<p class='note warning'>
|
<p class='note warning'>
|
||||||
These instructions are outdated - the add-on has been updated and these are no longer accurate or complete
|
These instructions are outdated - the add-on has been updated and these are no longer accurate or complete.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p class='note'>
|
<p class='note'>
|
||||||
If you want to integrate your Google Home, or mobile phone running Google Assistant, with Home Assistant, then you want the [Google Assistant component](/components/google_assistant/).
|
If you want to integrate your Google Home or mobile phone running Google Assistant, with Home Assistant, then you want the [Google Assistant component](/components/google_assistant/).
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
[Google Assistant][GoogleAssistant] is an AI-powered voice assistant that runs on the Raspberry Pi and x86 platforms and interact via the [DialogFlow][comp] integration with Home-Assistant. You can also use [Google Actions][GoogleActions] to extend its functionality.
|
[Google Assistant][GoogleAssistant] is an AI-powered voice assistant that runs on the Raspberry Pi and x86 platforms and interact via the [DialogFlow][comp] integration with Home-Assistant. You can also use [Google Actions][GoogleActions] to extend its functionality.
|
||||||
|
@ -9,11 +9,12 @@ sharing: true
|
|||||||
footer: true
|
footer: true
|
||||||
---
|
---
|
||||||
|
|
||||||
Set up a [HomeMatic](https://github.com/eq-3/occu) hardware layer. At the moment we don't support hmIP, but that is in progress. For learning and handling devices use our internal HomeMatic panel and services (in progress) or use [Homematic-Manager](https://github.com/hobbyquaker/homematic-manager) > 2.0.
|
Set up a [HomeMatic](https://github.com/eq-3/occu) hardware layer. For learning and handling devices use [Homematic-Manager](https://github.com/hobbyquaker/homematic-manager) > 2.0.
|
||||||
|
|
||||||
The logic layer will be Home-Assistant. There is no ReGa or other logic layer installed. You can't import an existing configuration, you'll need re-learn it into Home-Assistant.
|
The logic layer will be Home Assistant. There is no ReGa or other logic layer installed. You can't import an existing configuration, you'll need re-learn it into Home Assistant.
|
||||||
|
|
||||||
Follow devices will be supported and tested:
|
Follow devices will be supported and tested:
|
||||||
|
|
||||||
- [HM-MOD-RPI-PCB](https://www.elv.ch/homematic-funkmodul-fuer-raspberry-pi-bausatz.html)
|
- [HM-MOD-RPI-PCB](https://www.elv.ch/homematic-funkmodul-fuer-raspberry-pi-bausatz.html)
|
||||||
|
|
||||||
```json
|
```json
|
||||||
@ -38,17 +39,19 @@ Follow devices will be supported and tested:
|
|||||||
|
|
||||||
Configuration variables:
|
Configuration variables:
|
||||||
|
|
||||||
- **rf_enable** (*Require*): Boolean. Enable or disable BidCoS-RF.
|
- **rf_enable** (*Required*): Boolean. Enable or disable BidCoS-RF.
|
||||||
- **wired_enable** (*Require*): Boolean. Enable or disable BidCoS-Wired.
|
- **wired_enable** (*Required*): Boolean. Enable or disable BidCoS-Wired.
|
||||||
|
|
||||||
For RF devices
|
For RF devices:
|
||||||
- **type** (*Require*): Device type for RFD service. Look into the manual of your device.
|
|
||||||
- **device** (*Require*): Device on the host.
|
|
||||||
|
|
||||||
For RF devices
|
- **type** (*Required*): Device type for RFD service. Look into the manual of your device.
|
||||||
- **serial** (*Require*): Serial number of the device.
|
- **device** (*Required*): Device on the host.
|
||||||
- **key** (*Require*): Encrypted key.
|
|
||||||
- **ip** (*Require*): IP address of LAN gateway.
|
For wired devices:
|
||||||
|
|
||||||
|
- **serial** (*Required*): Serial number of the device.
|
||||||
|
- **key** (*Required*): Encrypted key.
|
||||||
|
- **ip** (*Required*): IP address of LAN gateway.
|
||||||
|
|
||||||
## {% linkable_title Home Assistant configuration %}
|
## {% linkable_title Home Assistant configuration %}
|
||||||
|
|
||||||
@ -64,7 +67,8 @@ homematic:
|
|||||||
|
|
||||||
## {% linkable_title Raspberry Pi3 %}
|
## {% linkable_title Raspberry Pi3 %}
|
||||||
|
|
||||||
With HM-MOD-PRI-PCB you need to add follow into your `config.txt` on boot partition:
|
With HM-MOD-RPI-PCB you need to add follow into your `config.txt` on boot partition:
|
||||||
```
|
|
||||||
|
```text
|
||||||
dtoverlay=pi3-miniuart-bt
|
dtoverlay=pi3-miniuart-bt
|
||||||
```
|
```
|
||||||
|
@ -9,7 +9,7 @@ sharing: true
|
|||||||
footer: true
|
footer: true
|
||||||
---
|
---
|
||||||
|
|
||||||
Set up a [mariadb](https://mariadb.org/) SQL server. It supports multiple databases, users and permission settings. If you want to only connect from inside Home Assistant use `core-mariadb` as the host address.
|
Set up a [MariaDB](https://mariadb.org/) SQL server. It supports multiple databases, users and permission settings. If you want to only connect from inside Home Assistant use `core-mariadb` as the host address.
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
@ -34,16 +34,16 @@ Set up a [mariadb](https://mariadb.org/) SQL server. It supports multiple databa
|
|||||||
|
|
||||||
Configuration variables:
|
Configuration variables:
|
||||||
|
|
||||||
- **databases** (*Require*): List of databases.
|
- **databases** (*Required*): List of databases.
|
||||||
- **logins** (*Require*): List of SQL accounts to create or update.
|
- **logins** (*Required*): List of SQL accounts to create or update.
|
||||||
- **username** (*Require*): Username for account.
|
- **username** (*Required*): Username for account.
|
||||||
- **host** (*Require*): Host for account. If you need an account on multiple hosts, use '%'.
|
- **host** (*Required*): Host for account. If you need an account on multiple hosts, use '%'.
|
||||||
- **password** (*Require*): Password for account.
|
- **password** (*Required*): Password for account.
|
||||||
- **rights** (*Require*): List of rights to be granted.
|
- **rights** (*Required*): List of rights to be granted.
|
||||||
- **username** (*Require*): Username for granted rights.
|
- **username** (*Required*): Username for granted rights.
|
||||||
- **host** (*Require*): Host is a part of username like above.
|
- **host** (*Required*): Host is a part of username like above.
|
||||||
- **database** (*Require*): Database name on which to grant user rights.
|
- **database** (*Required*): Database name on which to grant user rights.
|
||||||
- **grant** (*Require*): SQL grant part for access too.
|
- **grant** (*Required*): SQL grant part for access too.
|
||||||
|
|
||||||
## {% linkable_title Home Assistant configuration %}
|
## {% linkable_title Home Assistant configuration %}
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@ Allows you to shut down a Windows computer with a service call from Home Assista
|
|||||||
- **computers/address** (*Required*): IP address or NetBIOS name of the computer for the shutdown.
|
- **computers/address** (*Required*): IP address or NetBIOS name of the computer for the shutdown.
|
||||||
- **computers/credentials** (*Required*): Credentials for logging into computer. Use a `%` as the delimiter of username and password.
|
- **computers/credentials** (*Required*): Credentials for logging into computer. Use a `%` as the delimiter of username and password.
|
||||||
|
|
||||||
## {% linkable_title Home Assistant %}
|
### {% linkable_title Home Assistant configuration %}
|
||||||
|
|
||||||
Use the following inside Home Assistant service call to use it:
|
Use the following inside Home Assistant service call to use it:
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@ footer: true
|
|||||||
featured: true
|
featured: true
|
||||||
---
|
---
|
||||||
|
|
||||||
This addon allows you to set up a [Samba](https://samba.org/) server to access hass.io folders using Windows network shares.
|
This addon allows you to set up a [Samba](https://samba.org/) server to access Hass.io folders using Windows network shares.
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
|
@ -33,11 +33,9 @@ You will need to add internal communication details to `configuration.yaml` to e
|
|||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# Example configuration.yaml entry
|
# Example configuration.yaml entry
|
||||||
|
|
||||||
tellstick:
|
tellstick:
|
||||||
host: core-tellstick
|
host: core-tellstick
|
||||||
port: [50800, 50801]
|
port: [50800, 50801]
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
To add [lights](/components/light.tellstick/), [sensors](/components/sensor.tellstick/) and [switches](/components/switch.tellstick/) you follow the guidelines for each type individually that is [described for Home Assistant](/components/tellstick/)
|
To add [lights](/components/light.tellstick/), [sensors](/components/sensor.tellstick/) and [switches](/components/switch.tellstick/) you follow the guidelines for each type individually that is [described for Home Assistant](/components/tellstick/)
|
||||||
@ -71,9 +69,9 @@ Example for adding more devices in the add-on configuration (note the comma sepa
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
## Service calls
|
## {% linkable_title Service calls %}
|
||||||
|
|
||||||
If you wish to teach a selflearning device in your TellStick configuration:
|
If you wish to teach a self-learning device in your TellStick configuration:
|
||||||
|
|
||||||
Go to Home Assistant [service call](http://hassio.local:8123/dev-service) in Developer tools and select.
|
Go to Home Assistant [service call](http://hassio.local:8123/dev-service) in Developer tools and select.
|
||||||
- Service: `hassio.addon_stdin`
|
- Service: `hassio.addon_stdin`
|
||||||
@ -85,8 +83,7 @@ Replace `1` with the corresponding ID of the device in your TellStick configurat
|
|||||||
You can also use this to list devices or sensors and read the output in the add-on log:
|
You can also use this to list devices or sensors and read the output in the add-on log:
|
||||||
`{"addon":"core_tellstick","input":{"function":"list-sensors"}}`
|
`{"addon":"core_tellstick","input":{"function":"list-sensors"}}`
|
||||||
|
|
||||||
|
### {% linkable_title Supported service commands %}
|
||||||
#### Supported service commands
|
|
||||||
|
|
||||||
- `"function":"list"`: List currently configured devices with name and device id and all discovered sensors.
|
- `"function":"list"`: List currently configured devices with name and device id and all discovered sensors.
|
||||||
|
|
||||||
|
@ -13,8 +13,11 @@ ha_release: 0.37
|
|||||||
---
|
---
|
||||||
|
|
||||||
The `linksys_ap` platform offers presence detection by looking at connected devices to a Linksys based access point.
|
The `linksys_ap` platform offers presence detection by looking at connected devices to a Linksys based access point.
|
||||||
|
|
||||||
It was tested with a LAPAC1750 AC1750 Dual Band Access Point.
|
It was tested with a LAPAC1750 AC1750 Dual Band Access Point.
|
||||||
|
|
||||||
|
## {% linkable_title Configuration %}
|
||||||
|
|
||||||
To use a Linksys Access Point in your installation, add the following to your `configuration.yaml` file:
|
To use a Linksys Access Point in your installation, add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@ -22,25 +25,28 @@ To use a Linksys Access Point in your installation, add the following to your `c
|
|||||||
device_tracker:
|
device_tracker:
|
||||||
- platform: linksys_ap
|
- platform: linksys_ap
|
||||||
host: 192.168.1.1
|
host: 192.168.1.1
|
||||||
username: admin
|
username: YOUR_USERNAME
|
||||||
password: password
|
password: YOUR_PASSWORD
|
||||||
```
|
```
|
||||||
|
|
||||||
Configuration variables:
|
Configuration variables:
|
||||||
|
|
||||||
- **host** (*Required*): The hostname or IP address of your access point, eg. `192.168.1.1`.
|
- **host** (*Required*): The hostname or IP address of your access point, eg. `192.168.1.1`.
|
||||||
- **username** (*Required*: The username of an user with administrative privileges (read-only is sufficient).
|
- **username** (*Required*): The username of an user with administrative privileges (read-only is sufficient).
|
||||||
- **password** (*Required*): The password for your given admin account.
|
- **password** (*Required*): The password for your given admin account.
|
||||||
- **verify_ssl** (*Optional*): Verify SSL certificate for https request. Defaults to true.
|
- **verify_ssl** (*Optional*): Verify SSL certificate for HTTPS request. Defaults to true.
|
||||||
|
|
||||||
|
## {% linkable_title Example %}
|
||||||
|
|
||||||
Example for all configuration options:
|
Example for all configuration options:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# Example configuration.yaml entry
|
# Example configuration.yaml entry
|
||||||
device_tracker:
|
device_tracker:
|
||||||
- platform: linksys_ap
|
- platform: linksys_ap
|
||||||
host: 192.168.1.1
|
host: 192.168.1.1
|
||||||
username: admin
|
username: YOUR_USERNAME
|
||||||
password: password
|
password: YOUR_PASSWORD
|
||||||
verify_ssl: true
|
verify_ssl: true
|
||||||
scan_interval: 6
|
scan_interval: 6
|
||||||
consider_home: 12
|
consider_home: 12
|
||||||
|
@ -15,12 +15,15 @@ ha_release: 0.48
|
|||||||
The `linksys_smart` platform offers presence detection by looking at connected devices to a Linksys Smart Wifi based router.
|
The `linksys_smart` platform offers presence detection by looking at connected devices to a Linksys Smart Wifi based router.
|
||||||
|
|
||||||
Tested routers:
|
Tested routers:
|
||||||
LINKSYS WRT3200ACM MU-MIMO Gigabit Wi-Fi Wireless Router
|
|
||||||
LINKSYS WRT1900ACS Dual-band Wi-Fi Router
|
|
||||||
|
|
||||||
<p class='note'>
|
- Linksys WRT3200ACM MU-MIMO Gigabit Wi-Fi Wireless Router
|
||||||
|
- Linksys WRT1900ACS Dual-band Wi-Fi Router
|
||||||
|
|
||||||
|
## {% linkable_title Setup %}
|
||||||
|
|
||||||
For this platform to work correctly, it is necessary to disable the "Access via wireless" feature in the Local Management Access section of the router administration page. If "Access via wireless" is not disabled, a connectivity conflict arises because the Home Assistant integration is trying to pass userid and password, but the router is only expecting a password.
|
For this platform to work correctly, it is necessary to disable the "Access via wireless" feature in the Local Management Access section of the router administration page. If "Access via wireless" is not disabled, a connectivity conflict arises because the Home Assistant integration is trying to pass userid and password, but the router is only expecting a password.
|
||||||
</p>
|
|
||||||
|
## {% linkable_title Configuration %}
|
||||||
|
|
||||||
To use a Linksys Smart Wifi Router in your Home Assistant installation, add the following to your `configuration.yaml` file:
|
To use a Linksys Smart Wifi Router in your Home Assistant installation, add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
|
@ -29,7 +29,6 @@ device_tracker:
|
|||||||
new_device_defaults:
|
new_device_defaults:
|
||||||
track_new_devices: True
|
track_new_devices: True
|
||||||
hide_if_away: False
|
hide_if_away: False
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
The following optional parameters can be used with any platform. However device tracker will only look for global settings under the configuration of the first configured platform:
|
The following optional parameters can be used with any platform. However device tracker will only look for global settings under the configuration of the first configured platform:
|
||||||
@ -89,6 +88,24 @@ devicename:
|
|||||||
| `hide_if_away` | False | If `yes`/`on`/`true` then the device will be hidden if it is not at home. |
|
| `hide_if_away` | False | If `yes`/`on`/`true` then the device will be hidden if it is not at home. |
|
||||||
| `consider_home` | [uses platform setting] | Seconds to wait till marking someone as not home after not being seen. Allows you to override the global `consider_home` setting from the platform configuration on a per device level. |
|
| `consider_home` | [uses platform setting] | Seconds to wait till marking someone as not home after not being seen. Allows you to override the global `consider_home` setting from the platform configuration on a per device level. |
|
||||||
|
|
||||||
|
## {% linkable_title Using GPS device trackers with local network device trackers %}
|
||||||
|
|
||||||
|
GPS based device trackers (like [OwnTracks](/components/device_tracker.owntracks/), [GPSLogger](/components/device_tracker.gpslogger) and others) can also be used with local network device trackers, such as [Nmap](/components/device_tracker.nmap_tracker/) or [Netgear](/components/device_tracker.netgear/). To do this, fill in the `mac` field to the entry in `known_devices.yaml` with the MAC address of the device you want to track. This way the state of the device will be determined by *the source that reported last*. The naming convention for known device list is `<username>_<device-id>` and could be set in the app configuration.
|
||||||
|
|
||||||
|
An example showing the inclusion of the `mac` field for multiple platform tracking. The `mac` field was added to the GPS based device tracker entry and will enable tracking by all platforms that track via the `mac` address.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
USERNAME_DEVICE_ID:
|
||||||
|
name: Friendly Name
|
||||||
|
mac: EA:AA:55:E7:C6:94
|
||||||
|
picture: https://www.home-assistant.io/images/favicon-192x192.png
|
||||||
|
gravatar: test@example.com
|
||||||
|
track: yes
|
||||||
|
hide_if_away: no
|
||||||
|
```
|
||||||
|
|
||||||
|
If you want to track whether either your GPS based tracker or your local network tracker, identify you as being at home, use [a group](/components/group/) instead.
|
||||||
|
|
||||||
## {% linkable_title Device states %}
|
## {% linkable_title Device states %}
|
||||||
|
|
||||||
The state of your tracked device will be `'home'` if it is in the [home zone](/components/zone#home-zone), detected by your network or Bluetooth based presence detection. If you're using a presence detection method that includes coordinates then when it's in a zone the state will be the name of the zone (in lower case). When a device isn't at home and isn't in any zone, the state will be `'not_home'`.
|
The state of your tracked device will be `'home'` if it is in the [home zone](/components/zone#home-zone), detected by your network or Bluetooth based presence detection. If you're using a presence detection method that includes coordinates then when it's in a zone the state will be the name of the zone (in lower case). When a device isn't at home and isn't in any zone, the state will be `'not_home'`.
|
||||||
|
@ -18,7 +18,7 @@ It is HIGHLY recommended that you set the `api_password`, especially if you are
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p class='note'>
|
<p class='note'>
|
||||||
Don't use option `server_host` on a hass.io installation!
|
Don't use option `server_host` on a Hass.io installation!
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@ -29,20 +29,65 @@ http:
|
|||||||
|
|
||||||
Configuration variables:
|
Configuration variables:
|
||||||
|
|
||||||
- **api_password** (*Optional*): Protect Home Assistant with a password.
|
{% configuration http %}
|
||||||
- **server_host** (*Optional*): Only listen to incoming requests on specific IP/host (default: bind to `0.0.0.0` which means accept all IPv4 connections). Use `server_host: "::0"` if you want to listen to (and only) IPv6.
|
api_password:
|
||||||
- **server_port** (*Optional*): Let you set a port to use. Defaults to 8123.
|
description: Protect Home Assistant with a password.
|
||||||
- **base_url** (*Optional*): The URL that Home Assistant is available on the internet. For example: `hass-example.duckdns.org:8123`. Defaults to the local IP address. The iOS app finds local installations, if you have an outside URL use this so that you can auto-fill when discovered in the app.
|
required: false
|
||||||
- **ssl_certificate** (*Optional*): Path to your TLS/SSL certificate to serve Home Assistant over a secure connection.
|
type: string
|
||||||
- **ssl_peer_certificate** (*Optional*): Path to the client/peer TLS/SSL certificate to accept secure connections from.
|
server_host:
|
||||||
- **ssl_key** (*Optional*): Path to your TLS/SSL key to serve Home Assistant over a secure connection.
|
description: 'Only listen to incoming requests on specific IP/host (default: bind to `0.0.0.0` which means accept all IPv4 connections). Use `server_host: "::0"` if you want to listen to (and only) IPv6.'
|
||||||
- **cors_allowed_origins** (*Optional*): A list of origin domain names to allow [CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing) requests from. Enabling this will set the `Access-Control-Allow-Origin` header to the Origin header if it is found in the list, and the `Access-Control-Allow-Headers` header to `Origin, Accept, X-Requested-With, Content-type, X-HA-access`. You must provide the exact Origin, i.e. `https://www.home-assistant.io` will allow requests from `https://www.home-assistant.io` but __not__ `http://www.home-assistant.io`.
|
required: false
|
||||||
- **use_x_forwarded_for** (*Optional*): Enable parsing of the `X-Forwarded-For` header, passing on the client's correct IP address in proxied setups. You must also whitelist trusted proxies using the `trusted_proxies` setting below for this to work. Non-whitelisted requests with this header will be considered IP spoofing attacks, and the header will, therefore, be ignored. Defaults to False.
|
type: string
|
||||||
- **trusted_proxies** (*Optional*): List of trusted proxies, consisting of IP addresses or networks, that are allowed to set the `X-Forwarded-For` header. This is required when using `use_x_forwarded_for` because all requests to Home Assistant, regardless of source, will arrive from the reverse proxy IP address. Therefore in a reverse proxy scenario, this option should be set with extreme care.
|
server_port:
|
||||||
- **trusted_networks** (*Optional*): List of trusted networks, consisting of IP addresses or networks, that are allowed to bypass password protection when accessing Home Assistant. If using a reverse proxy with the `use_x_forwarded_for` option enabled, requests proxied to Home Assistant with a trusted `X-Forwarded-For` header will appear to come from the IP given in that header instead of the proxy IP.
|
description: Let you set a port to use.
|
||||||
- **ip_ban_enabled** (*Optional*): Flag indicating whether additional IP filtering is enabled. Defaults to False.
|
required: false
|
||||||
- **login_attempts_threshold** (*Optional*): Number of failed login attempt from single IP after which it will be automatically banned if `ip_ban_enabled` is True. Defaults to -1, meaning that no new automatic bans will be added.
|
type: integer
|
||||||
- **ssl_profile** (*Optional*): The [Mozilla SSL profile](https://wiki.mozilla.org/Security/Server_Side_TLS) to use. Either `modern` or `intermediate`. Default is `modern`. Only lower if you are experiencing integrations causing SSL handshake errors.
|
default: 8123
|
||||||
|
base_url:
|
||||||
|
description: "The URL that Home Assistant is available on the internet. For example: `hass-example.duckdns.org:8123`. Defaults to the local IP address. The iOS app finds local installations, if you have an outside URL use this so that you can auto-fill when discovered in the app."
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
default: The local IP address
|
||||||
|
ssl_certificate:
|
||||||
|
description: Path to your TLS/SSL certificate to serve Home Assistant over a secure connection.
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
ssl_peer_certificate:
|
||||||
|
description: Path to the client/peer TLS/SSL certificate to accept secure connections from.
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
ssl_key:
|
||||||
|
description: Path to your TLS/SSL key to serve Home Assistant over a secure connection.
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
cors_allowed_origins:
|
||||||
|
description: "A list of origin domain names to allow [CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing) requests from. Enabling this will set the `Access-Control-Allow-Origin` header to the Origin header if it is found in the list, and the `Access-Control-Allow-Headers` header to `Origin, Accept, X-Requested-With, Content-type, X-HA-access`. You must provide the exact Origin, i.e. `https://www.home-assistant.io` will allow requests from `https://www.home-assistant.io` but __not__ `http://www.home-assistant.io`."
|
||||||
|
required: false
|
||||||
|
type: string, list
|
||||||
|
trusted_proxies:
|
||||||
|
description: "List of trusted proxies, consisting of IP addresses or networks, that are allowed to set the `X-Forwarded-For` header. This is required when using `use_x_forwarded_for` because all requests to Home Assistant, regardless of source, will arrive from the reverse proxy IP address. Therefore in a reverse proxy scenario, this option should be set with extreme care."
|
||||||
|
required: false
|
||||||
|
type: string, list
|
||||||
|
use_x_forwarded_for:
|
||||||
|
description: "Enable parsing of the `X-Forwarded-For` header, passing on the client's correct IP address in proxied setups. You **must** also whitelist trusted proxies using the `trusted_proxies` setting below for this to work. Non-whitelisted requests with this header will be considered IP spoofing attacks, and the header will, therefore, be ignored."
|
||||||
|
required: false
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
trusted_networks:
|
||||||
|
description: "List of trusted networks, consisting of IP addresses or networks, that are allowed to bypass password protection when accessing Home Assistant. If using a reverse proxy with the `use_x_forwarded_for` and `trusted_proxies` options enabled, requests proxied to Home Assistant with a trusted `X-Forwarded-For` header will appear to come from the IP given in that header instead of the proxy IP."
|
||||||
|
required: false
|
||||||
|
type: string, list
|
||||||
|
ip_ban_enabled:
|
||||||
|
description: Flag indicating whether additional IP filtering is enabled.
|
||||||
|
required: false
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
login_attempts_threshold:
|
||||||
|
description: "Number of failed login attempt from single IP after which it will be automatically banned if `ip_ban_enabled` is True. When set to -1 no new automatic bans will be added."
|
||||||
|
required: false
|
||||||
|
type: integer
|
||||||
|
default: -1
|
||||||
|
{% endconfiguration %}
|
||||||
|
|
||||||
The sample below shows a configuration entry with possible values:
|
The sample below shows a configuration entry with possible values:
|
||||||
|
|
||||||
|
@ -23,6 +23,7 @@ Currently known supported models:
|
|||||||
- TX-49DX650B
|
- TX-49DX650B
|
||||||
- TX-50DX700B
|
- TX-50DX700B
|
||||||
- TX-55CX700E
|
- TX-55CX700E
|
||||||
|
- TX-55EXW584
|
||||||
- TX-65EXW784
|
- TX-65EXW784
|
||||||
- TX-L42ET50
|
- TX-L42ET50
|
||||||
- TX-P42STW50
|
- TX-P42STW50
|
||||||
|
@ -76,8 +76,8 @@ Avoid using `[ ]` in the `name:` of your device.
|
|||||||
|
|
||||||
Home Assistant is able to turn on a LG webOS Smart TV if you specify an action, like HDMI-CEC or WakeOnLan.
|
Home Assistant is able to turn on a LG webOS Smart TV if you specify an action, like HDMI-CEC or WakeOnLan.
|
||||||
|
|
||||||
Common for webOS 3.0 and higher would be to use WakeOnLan feature.
|
Common for webOS 3.0 and higher would be to use WakeOnLan feature.
|
||||||
To use this feature your TV should be connected to your network via Ethernet rather than Wireless and you should enable *LG Connect Apps* feature in *Network* settings of the TV [instructions](http://www.lg.com/uk/support/product-help/CT00008334-1437131798537-others) (or *Mobile App* in *General* settings for older models).
|
To use this feature your TV should be connected to your network via Ethernet rather than Wireless and you should enable *LG Connect Apps* feature in *Network* settings of the TV [instructions](http://www.lg.com/uk/support/product-help/CT00008334-1437131798537-others) (or *Mobile App* in *General* settings for older models) (*may vary by version). On newer models (2017+), WakeOnLan may need to be enabled in the TV settings by going to Settings > General > Mobile TV On > Turn On Via WiFi [instructions](https://support.quanticapps.com/hc/en-us/articles/115005985729-How-to-turn-on-my-LG-Smart-TV-using-the-App-WebOS-).
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# Example configuration.yaml entry
|
# Example configuration.yaml entry
|
||||||
|
@ -25,7 +25,7 @@ To retrieve your `chat_id`, contact any of the Telegram bots created for this pu
|
|||||||
|
|
||||||
The quickest way to retrieve your `chat_id` is visiting [https://api.telegram.org/botYOUR_API_TOKEN/getUpdates](https://api.telegram.org/botYOUR_API_TOKEN/getUpdates) or to use `$ curl -X GET https://api.telegram.org/botYOUR_API_TOKEN/getUpdates`. Replace `YOUR_API_TOKEN` with your actual token.
|
The quickest way to retrieve your `chat_id` is visiting [https://api.telegram.org/botYOUR_API_TOKEN/getUpdates](https://api.telegram.org/botYOUR_API_TOKEN/getUpdates) or to use `$ curl -X GET https://api.telegram.org/botYOUR_API_TOKEN/getUpdates`. Replace `YOUR_API_TOKEN` with your actual token.
|
||||||
|
|
||||||
The result set will include your chat ID as `id` in the `from` section:
|
The result set will include your chat ID as `id` in the `chat` section:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
|
@ -159,6 +159,10 @@ automation:
|
|||||||
```
|
```
|
||||||
{% endraw %}
|
{% endraw %}
|
||||||
|
|
||||||
|
<p class='note warning'>
|
||||||
|
Rendering templates with time (`now()`) is dangerous as trigger templates only update based on entity state changes.
|
||||||
|
</p>
|
||||||
|
|
||||||
### {% linkable_title Time trigger %}
|
### {% linkable_title Time trigger %}
|
||||||
|
|
||||||
Time can be triggered in many ways. The most common is to specify `at` and trigger at a specific point in time each day. Alternatively, you can also match if the hour, minute or second of the current time has a specific value. You can prefix the value with a `/` to match whenever the value is divisible by that number. You cannot use `at` together with hour, minute or second.
|
Time can be triggered in many ways. The most common is to specify `at` and trigger at a specific point in time each day. Alternatively, you can also match if the hour, minute or second of the current time has a specific value. You can prefix the value with a `/` to match whenever the value is divisible by that number. You cannot use `at` together with hour, minute or second.
|
||||||
|
@ -9,27 +9,18 @@ sharing: true
|
|||||||
footer: true
|
footer: true
|
||||||
---
|
---
|
||||||
|
|
||||||
<p class='note'>
|
Starting with version 0.63, Home Assistant keeps a registry of known entities. The entity registry makes sure that entities get unique identifiers and allow customizing the identifiers and names of these entities.
|
||||||
This is a new and experimental feature of Home Assistant.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
Starting with version 0.63, Home Assistant keeps a registry of known entities.
|
Changes require that Home Assistant is shut down when you edit the file, otherwise Home Assistant may over-write your changes, and a restart of Home Assistant is required for your changes to take effect. Version 0.75 introduced a configuration user interface.
|
||||||
The entity registry makes sure that entities get unique identifiers and allow
|
|
||||||
customizing the identifiers and names of these entities.
|
|
||||||
|
|
||||||
As this is still a very new part of Home Assistant, changes will require a
|
|
||||||
restart of Home Assistant to take effect. A config user interface will be added
|
|
||||||
in a future version.
|
|
||||||
|
|
||||||
<p class='note'>
|
<p class='note'>
|
||||||
An entity needs to have a unique ID to be registered in the entity registry.
|
An entity needs to have a unique ID to be registered in the entity registry.
|
||||||
Not all integrations currently provide a unique id for their entities.
|
Not all integrations currently provide a unique id for their entities.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
The entity registry is stored in `<config>/entity_registry.yaml`. As a user,
|
The entity registry is stored in `<config>/entity_registry.yaml`. As a user, you are unable to add entries, only update them. Here is an example file:
|
||||||
you are unable to add entries, only update them. Here is an example file:
|
|
||||||
|
|
||||||
```
|
```yaml
|
||||||
climate.downstairs_virtual:
|
climate.downstairs_virtual:
|
||||||
platform: nest
|
platform: nest
|
||||||
unique_id: EPoMyWkpNyoYu3pGlmGxabcdefghijkl
|
unique_id: EPoMyWkpNyoYu3pGlmGxabcdefghijkl
|
||||||
@ -40,20 +31,18 @@ light.study_ceiling:
|
|||||||
disabled_by: user
|
disabled_by: user
|
||||||
```
|
```
|
||||||
|
|
||||||
As a user, you can change the `entity_id` and add the `name` and `disabled_by`
|
As a user, you can change the `entity_id` and add the `name` and `disabled_by`value to each entry.
|
||||||
value to each entry.
|
|
||||||
- Changing the _first line_ of each entry will change the `entity_id` of the entity throughout Home Assistant.
|
|
||||||
|
|
||||||
|
- Changing the _first line_ of each entry will change the `entity_id` of the entity throughout Home Assistant.
|
||||||
- The value of `name` will override the _friendly name_ of the entity as given by the integration.
|
- The value of `name` will override the _friendly name_ of the entity as given by the integration.
|
||||||
|
|
||||||
_Added in Home Assistant 0.64._
|
_Added in Home Assistant 0.64._
|
||||||
- The key `disabled_by` can either be `hass` or `user`. This functionality
|
- The key `disabled_by` can either be `hass` or `user`. This functionality is even more experimental than the whole entity registry itself and might cause integrations to fail and might be removed in the future.
|
||||||
is even more experimental than the whole entity registry itself and might
|
|
||||||
cause integrations to fail and might be removed in the future.
|
|
||||||
|
|
||||||
_Added in Home Assistant 0.64._
|
_Added in Home Assistant 0.64._
|
||||||
|
|
||||||
{% linkable_title Supported Components %}
|
{% linkable_title Supported Components %}
|
||||||
|
|
||||||
At the moment, only the following components are supported: Z-Wave, Hue, Nest, LIFX, Sonos, Apple TV, Weather Underground
|
Only components that provide a unique ID for entities will are supported.
|
||||||
|
|
||||||
Note that for Weather Underground, second and subsequent Personal Weather Station ID (pws_id) will have their monitored conditions suffixed with an index number.
|
Note that for Weather Underground, second and subsequent Personal Weather Station ID (pws_id) will have their monitored conditions suffixed with an index number.
|
||||||
|
@ -17,16 +17,9 @@ This is an advanced feature of Home Assistant. You'll need a basic understanding
|
|||||||
|
|
||||||
Templating is a powerful feature in Home Assistant that allows the user control over information that is going into and out of the system. It is used for:
|
Templating is a powerful feature in Home Assistant that allows the user control over information that is going into and out of the system. It is used for:
|
||||||
|
|
||||||
- Formatting outgoing messages in, for example, the [notify] and [alexa] components.
|
- Formatting outgoing messages in, for example, the [notify](/components/notify/) platforms and [alexa](/components/alexa/) component.
|
||||||
- Process incoming data from sources that provide raw data, like [MQTT], [REST sensor], or the [command line sensor].
|
- Process incoming data from sources that provide raw data, like [MQTT](/components/mqtt/), [`rest` sensor](/components/sensor.rest/) or the [`command_line` sensor](/components/sensor.command_line/).
|
||||||
- [Automation Templating].
|
- [Automation Templating](/docs/automation/templating/).
|
||||||
|
|
||||||
[notify]: /components/notify/
|
|
||||||
[alexa]: /components/alexa/
|
|
||||||
[MQTT]: /components/mqtt/
|
|
||||||
[REST sensor]: /components/sensor.rest/
|
|
||||||
[command line sensor]: /components/sensor.command_line/
|
|
||||||
[Automation Templating]: /docs/automation/templating/
|
|
||||||
|
|
||||||
## {% linkable_title Building templates %}
|
## {% linkable_title Building templates %}
|
||||||
|
|
||||||
@ -38,6 +31,7 @@ The frontend has a template editor developer tool to help develop and debug temp
|
|||||||
|
|
||||||
Templates can get big pretty fast. To keep a clear overview, consider using YAML multiline strings to define your templates:
|
Templates can get big pretty fast. To keep a clear overview, consider using YAML multiline strings to define your templates:
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
```yaml
|
```yaml
|
||||||
script:
|
script:
|
||||||
msg_who_is_home:
|
msg_who_is_home:
|
||||||
@ -45,12 +39,13 @@ script:
|
|||||||
- service: notify.notify
|
- service: notify.notify
|
||||||
data_template:
|
data_template:
|
||||||
message: >
|
message: >
|
||||||
{% raw %}{% if is_state('device_tracker.paulus', 'home') %}
|
{% if is_state('device_tracker.paulus', 'home') %}
|
||||||
Ha, Paulus is home!
|
Ha, Paulus is home!
|
||||||
{% else %}
|
{% else %}
|
||||||
Paulus is at {{ states('device_tracker.paulus') }}.
|
Paulus is at {{ states('device_tracker.paulus') }}.
|
||||||
{% endif %}{% endraw %}
|
{% endif %}
|
||||||
```
|
```
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
[Jinja2](http://jinja.pocoo.org/) supports a wide variety of operations:
|
[Jinja2](http://jinja.pocoo.org/) supports a wide variety of operations:
|
||||||
|
|
||||||
@ -104,8 +99,10 @@ Home Assistant adds extensions to allow templates to access all of the current s
|
|||||||
If your template uses an `entity_id` that begins with a number (example: `states.device_tracker.2008_gmc`) you must use a bracket syntax to avoid errors caused by rendering the `entity_id` improperly. In the example given, the correct syntax for the device tracker would be: `states.device_tracker['2008_gmc']`
|
If your template uses an `entity_id` that begins with a number (example: `states.device_tracker.2008_gmc`) you must use a bracket syntax to avoid errors caused by rendering the `entity_id` improperly. In the example given, the correct syntax for the device tracker would be: `states.device_tracker['2008_gmc']`
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
## {% linkable_title Templates using `now()` %}
|
||||||
|
|
||||||
<p class='note warning'>
|
<p class='note warning'>
|
||||||
Rendering templates with time is dangerous as updates only trigger templates in sensors based on entity state changes.
|
Rendering templates with time (`now()`) is dangerous as updates only trigger templates in sensors based on entity state changes.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
## {% linkable_title Home Assistant template extensions %}
|
## {% linkable_title Home Assistant template extensions %}
|
||||||
@ -117,43 +114,51 @@ In templates, besides the normal [state object methods and properties](/topics/s
|
|||||||
## {% linkable_title Examples %}
|
## {% linkable_title Examples %}
|
||||||
|
|
||||||
### {% linkable_title States %}
|
### {% linkable_title States %}
|
||||||
|
|
||||||
The next two statements result in same value if state exists. The second one will result in an error if state does not exist.
|
The next two statements result in same value if state exists. The second one will result in an error if state does not exist.
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
```text
|
```text
|
||||||
{% raw %}{{ states('device_tracker.paulus') }}
|
{{ states('device_tracker.paulus') }}
|
||||||
{{ states.device_tracker.paulus.state }}{% endraw %}
|
{{ states.device_tracker.paulus.state }}
|
||||||
```
|
```
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
### {% linkable_title Attributes %}
|
### {% linkable_title Attributes %}
|
||||||
|
|
||||||
Print an attribute if state is defined. Both will return the same thing but the last one you can specify entity_id from a variable.
|
Print an attribute if state is defined. Both will return the same thing but the last one you can specify entity_id from a variable.
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
```text
|
```text
|
||||||
{% raw %}{% if states.device_tracker.paulus %}
|
{% if states.device_tracker.paulus %}
|
||||||
{{ states.device_tracker.paulus.attributes.battery }}
|
{{ states.device_tracker.paulus.attributes.battery }}
|
||||||
{% else %}
|
{% else %}
|
||||||
??
|
??
|
||||||
{% endif %}{% endraw %}
|
{% endif %}
|
||||||
```
|
```
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
With strings
|
With strings
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
```text
|
```text
|
||||||
{% raw %}{% set tracker_name = "paulus"%}
|
{% set tracker_name = "paulus"%}
|
||||||
|
|
||||||
{% if states("device_tracker." + tracker_name) != "unknown" %}
|
{% if states("device_tracker." + tracker_name) != "unknown" %}
|
||||||
{{ state_attr("device_tracker." + tracker_name, "battery")}}
|
{{ state_attr("device_tracker." + tracker_name, "battery")}}
|
||||||
{% else %}
|
{% else %}
|
||||||
??
|
??
|
||||||
{% endif %}{% endraw %}
|
{% endif %}
|
||||||
```
|
```
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
### {% linkable_title Sensor states %}
|
### {% linkable_title Sensor states %}
|
||||||
|
|
||||||
Print out a list of all the sensor states.
|
Print out a list of all the sensor states.
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
```text
|
```text
|
||||||
{% raw %}{% for state in states.sensor %}
|
{% for state in states.sensor %}
|
||||||
{{ state.entity_id }}={{ state.state }},
|
{{ state.entity_id }}={{ state.state }},
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
||||||
@ -173,48 +178,58 @@ Print out a list of all the sensor states.
|
|||||||
|
|
||||||
{{ as_timestamp(states.binary_sensor.garage_door.last_changed) }}
|
{{ as_timestamp(states.binary_sensor.garage_door.last_changed) }}
|
||||||
|
|
||||||
{{ as_timestamp(now()) - as_timestamp(states.binary_sensor.garage_door.last_changed) }}{% endraw %}
|
{{ as_timestamp(now()) - as_timestamp(states.binary_sensor.garage_door.last_changed) }}
|
||||||
```
|
```
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
### {% linkable_title Distance examples %}
|
### {% linkable_title Distance examples %}
|
||||||
|
|
||||||
If only 1 location is passed in, Home Assistant will measure the distance from home.
|
If only 1 location is passed in, Home Assistant will measure the distance from home.
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
```text
|
```text
|
||||||
{% raw %}Using Lat Lng coordinates: {{ distance(123.45, 123.45) }}
|
Using Lat Lng coordinates: {{ distance(123.45, 123.45) }}
|
||||||
|
|
||||||
Using State: {{ distance(states.device_tracker.paulus) }}
|
Using State: {{ distance(states.device_tracker.paulus) }}
|
||||||
|
|
||||||
These can also be combined in any combination:
|
These can also be combined in any combination:
|
||||||
{{ distance(123.45, 123.45, 'device_tracker.paulus') }}
|
{{ distance(123.45, 123.45, 'device_tracker.paulus') }}
|
||||||
{{ distance('device_tracker.anne_therese', 'device_tracker.paulus') }}{% endraw %}
|
{{ distance('device_tracker.anne_therese', 'device_tracker.paulus') }}
|
||||||
```
|
```
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
### {% linkable_title Closest examples %}
|
### {% linkable_title Closest examples %}
|
||||||
|
|
||||||
Find entities closest to the Home Assistant location:
|
Find entities closest to the Home Assistant location:
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
```text
|
```text
|
||||||
{% raw %}Query all entities: {{ closest(states) }}
|
Query all entities: {{ closest(states) }}
|
||||||
Query all entities of a specific domain: {{ closest('states.device_tracker') }}
|
Query all entities of a specific domain: {{ closest('states.device_tracker') }}
|
||||||
Query all entities in group.children: {{ closest('group.children') }}
|
Query all entities in group.children: {{ closest('group.children') }}
|
||||||
Query all entities in group.children: {{ closest(states.group.children) }}{% endraw %}
|
Query all entities in group.children: {{ closest(states.group.children) }}
|
||||||
```
|
```
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
Find entities closest to a coordinate or another entity. All previous arguments still apply for 2nd argument.
|
Find entities closest to a coordinate or another entity. All previous arguments still apply for 2nd argument.
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
```text
|
```text
|
||||||
{% raw %}Closest to a coordinate: {{ closest(23.456, 23.456, 'group.children') }}
|
Closest to a coordinate: {{ closest(23.456, 23.456, 'group.children') }}
|
||||||
Closest to an entity: {{ closest('zone.school', 'group.children') }}
|
Closest to an entity: {{ closest('zone.school', 'group.children') }}
|
||||||
Closest to an entity: {{ closest(states.zone.school, 'group.children') }}{% endraw %}
|
Closest to an entity: {{ closest(states.zone.school, 'group.children') }}
|
||||||
```
|
```
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
### {% linkable_title Combined %}
|
### {% linkable_title Combined %}
|
||||||
|
|
||||||
Since closest returns a state, we can combine it with distance too.
|
Since closest returns a state, we can combine it with distance too.
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
```text
|
```text
|
||||||
{% raw %}{{ closest(states).name }} is {{ distance(closest(states)) }} kilometers away.{% endraw %}
|
{{ closest(states).name }} is {{ distance(closest(states)) }} kilometers away.
|
||||||
```
|
```
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
## {% linkable_title Processing incoming data %}
|
## {% linkable_title Processing incoming data %}
|
||||||
|
|
||||||
@ -238,11 +253,13 @@ This means that if the incoming values looks like the sample below:
|
|||||||
|
|
||||||
The template for `on` would be:
|
The template for `on` would be:
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
```yaml
|
```yaml
|
||||||
'{% raw %}{{value_json.on}}{% endraw %}'
|
'{{value_json.on}}'
|
||||||
```
|
```
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
Nested JSON in a response is supported as well
|
Nested JSON in a response is supported as well:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
@ -259,10 +276,11 @@ Nested JSON in a response is supported as well
|
|||||||
|
|
||||||
Just use the "Square bracket notation" to get the value.
|
Just use the "Square bracket notation" to get the value.
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
```yaml
|
```yaml
|
||||||
'{% raw %}{{ value_json["values"]["temp"] }}{% endraw %}'
|
'{{ value_json["values"]["temp"] }}'
|
||||||
```
|
```
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
The following overview contains a couple of options to get the needed values:
|
The following overview contains a couple of options to get the needed values:
|
||||||
|
|
||||||
@ -294,8 +312,8 @@ The following overview contains a couple of options to get the needed values:
|
|||||||
|
|
||||||
To evaluate a response, go to the <img src='/images/screenshots/developer-tool-templates-icon.png' alt='template developer tool icon' class="no-shadow" height="38" /> template developer tools, create your output into "Template", and check the result.
|
To evaluate a response, go to the <img src='/images/screenshots/developer-tool-templates-icon.png' alt='template developer tool icon' class="no-shadow" height="38" /> template developer tools, create your output into "Template", and check the result.
|
||||||
|
|
||||||
```yaml
|
|
||||||
{% raw %}
|
{% raw %}
|
||||||
|
```yaml
|
||||||
{% set value_json=
|
{% set value_json=
|
||||||
{"name":"Outside",
|
{"name":"Outside",
|
||||||
"device":"weather-ha",
|
"device":"weather-ha",
|
||||||
@ -304,5 +322,6 @@ To evaluate a response, go to the <img src='/images/screenshots/developer-tool-t
|
|||||||
"hum":"35%"
|
"hum":"35%"
|
||||||
} }%}
|
} }%}
|
||||||
|
|
||||||
{{value_json.data.hum[:-1]}}{% endraw %}
|
{{value_json.data.hum[:-1]}}
|
||||||
```
|
```
|
||||||
|
{% endraw %}
|
||||||
|
@ -22,7 +22,7 @@ On both Android and iOS, you can add the Home Assistant "web app" to your homesc
|
|||||||
4. Tap on Add to Homescreen
|
4. Tap on Add to Homescreen
|
||||||
5. A dialog will popup; tap on Add
|
5. A dialog will popup; tap on Add
|
||||||
|
|
||||||
<p class='img' style='width:500px; margin-left: auto; margin-right: auto;'>
|
<p class='img' style='max-width:500px; margin-left: auto; margin-right: auto;'>
|
||||||
<img src='/images/screenshots/android-homescreen-guide.gif' />
|
<img src='/images/screenshots/android-homescreen-guide.gif' />
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
@ -12,7 +12,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.
|
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.5.3 or later installed, which is the case for Raspbian Stretch.
|
You must have Python 3.5.3 or later installed (including the package `python3-dev`) which is the case for Raspbian Stretch.
|
||||||
|
|
||||||
<p class='note'>
|
<p 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.
|
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.
|
||||||
|
@ -34,10 +34,7 @@ mqtt:
|
|||||||
```
|
```
|
||||||
|
|
||||||
<p class='note warning'>
|
<p class='note warning'>
|
||||||
There is an issue with the HBMQTT broker that can cause a memory leak (slowly increasing used memory). This causes an unstable system after the memory is full. You could measure/monitor this with a system monitor. The issue is from 2016 and could already be resolved with newer versions. Use another broker when you experience this issue, for example, Mosquitto. <br>
|
There is [an issue](https://github.com/beerfactory/hbmqtt/issues/62) with the HBMQTT broker and the WebSocket connection that is causing a memory leak. If you experience this issue, consider using another broker like Mosquitto.
|
||||||
<br>
|
|
||||||
Issue with the HBMQTT broker: https://github.com/beerfactory/hbmqtt/issues/62 <br>
|
|
||||||
System monitor: https://www.home-assistant.io/components/sensor.systemmonitor/
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
### {% linkable_title Owntracks%}
|
### {% linkable_title Owntracks%}
|
||||||
|
@ -196,6 +196,20 @@ Triple tap off|2|4
|
|||||||
Tap and hold on|1|2
|
Tap and hold on|1|2
|
||||||
Tap and hold off|2|2
|
Tap and hold off|2|2
|
||||||
|
|
||||||
|
Some installations will see those details:
|
||||||
|
|
||||||
|
**Top button ID: 1, Bottom ID: 2**
|
||||||
|
|
||||||
|
**Action**|**scene\_data**
|
||||||
|
:-----:|:-----:
|
||||||
|
Single Press|7800
|
||||||
|
Hold Button|7740
|
||||||
|
2x Tap|7860
|
||||||
|
3x Tap|7920
|
||||||
|
4x Tap|7980
|
||||||
|
5x Tap|8040
|
||||||
|
|
||||||
|
|
||||||
### {% linkable_title Fibaro Button FGPB-101-6 v3.2 %}
|
### {% linkable_title Fibaro Button FGPB-101-6 v3.2 %}
|
||||||
|
|
||||||
<!-- from https://hastebin.com/esodiweduq.cs -->
|
<!-- from https://hastebin.com/esodiweduq.cs -->
|
||||||
@ -353,4 +367,4 @@ Button three hold|Circle|3|2
|
|||||||
Button three release|Circle|3|1
|
Button three release|Circle|3|1
|
||||||
Button four tap|Circle with Line|4|0
|
Button four tap|Circle with Line|4|0
|
||||||
Button four hold|Circle with Line|4|2
|
Button four hold|Circle with Line|4|2
|
||||||
Button four release|Circle with Line|4|1
|
Button four release|Circle with Line|4|1
|
||||||
|
@ -58,7 +58,7 @@ network_key:
|
|||||||
type: string
|
type: string
|
||||||
default: None
|
default: None
|
||||||
config_path:
|
config_path:
|
||||||
description: The path to the Python OpenZWave configuration files.
|
description: "The path to the Python OpenZWave configuration files. NOTE: there is also the [update_config service](https://www.home-assistant.io/docs/z-wave/services/) to perform updating the config within python-openzwave automatically."
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
default: the 'config' that is installed by python-openzwave
|
default: the 'config' that is installed by python-openzwave
|
||||||
|
@ -42,7 +42,7 @@ show_state:
|
|||||||
default: "true"
|
default: "true"
|
||||||
column_width:
|
column_width:
|
||||||
required: false
|
required: false
|
||||||
description: "Column width as CSS length like `100px` or `calc(100% / 7)`."
|
description: "Column width as CSS length like `100px` or `calc(100% / 7)`. This controls how many entities appear in a row - at the default 20% you have 5 entities in a row. Use `calc(100% / 7)` for 7 entities in a row, and so on."
|
||||||
type: string
|
type: string
|
||||||
default: 20%
|
default: 20%
|
||||||
{% endconfiguration %}
|
{% endconfiguration %}
|
||||||
|
@ -52,6 +52,6 @@ aspect_ratio:
|
|||||||
- type: map
|
- type: map
|
||||||
aspect_ratio: 100%
|
aspect_ratio: 100%
|
||||||
entities:
|
entities:
|
||||||
- entity: device_tracker.demo_paulus
|
- device_tracker.demo_paulus
|
||||||
- zone.home
|
- zone.home
|
||||||
```
|
```
|
||||||
|
@ -18,6 +18,7 @@ Hass.io images are available for:
|
|||||||
- [Raspberry Pi 2 Model B][pi2]
|
- [Raspberry Pi 2 Model B][pi2]
|
||||||
- [Raspberry Pi 3 Model B and B+ 32bit][pi3-32] (recommended)
|
- [Raspberry Pi 3 Model B and B+ 32bit][pi3-32] (recommended)
|
||||||
- [Raspberry Pi 3 Model B and B+ 64bit][pi3-64]
|
- [Raspberry Pi 3 Model B and B+ 64bit][pi3-64]
|
||||||
|
- [Tinkerboard (Beta)][tinker]
|
||||||
- As [Virtual Appliance]:
|
- As [Virtual Appliance]:
|
||||||
- [VMDK][vmdk]
|
- [VMDK][vmdk]
|
||||||
|
|
||||||
@ -80,6 +81,7 @@ A detailed guide about running Hass.io as a virtual machine is available in the
|
|||||||
[pi2]: https://github.com/home-assistant/hassos/releases/download/1.9/hassos_rpi2-1.9.img.gz
|
[pi2]: https://github.com/home-assistant/hassos/releases/download/1.9/hassos_rpi2-1.9.img.gz
|
||||||
[pi3-32]: https://github.com/home-assistant/hassos/releases/download/1.9/hassos_rpi3-1.9.img.gz
|
[pi3-32]: https://github.com/home-assistant/hassos/releases/download/1.9/hassos_rpi3-1.9.img.gz
|
||||||
[pi3-64]: https://github.com/home-assistant/hassos/releases/download/1.9/hassos_rpi3-64-1.9.img.gz
|
[pi3-64]: https://github.com/home-assistant/hassos/releases/download/1.9/hassos_rpi3-64-1.9.img.gz
|
||||||
|
[tinker]: https://github.com/home-assistant/hassos/releases/download/2.1/hassos_tinker-2.1.img.gz
|
||||||
[vmdk]: https://github.com/home-assistant/hassos/releases/download/1.9/hassos_ova-1.9.vmdk
|
[vmdk]: https://github.com/home-assistant/hassos/releases/download/1.9/hassos_ova-1.9.vmdk
|
||||||
[linux]: https://github.com/home-assistant/hassio-build/tree/master/install#install-hassio
|
[linux]: https://github.com/home-assistant/hassio-build/tree/master/install#install-hassio
|
||||||
[local]: http://hassio.local:8123
|
[local]: http://hassio.local:8123
|
||||||
|
@ -26,6 +26,10 @@ The Lovelace UI is:
|
|||||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/6FX9_leiikw" frameborder="0" allowfullscreen></iframe>
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/6FX9_leiikw" frameborder="0" allowfullscreen></iframe>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<p class='note warning'>
|
||||||
|
If you're not using Chrome, please be sure to [read the FAQ](/lovelace/#faq) below.
|
||||||
|
</p>
|
||||||
|
|
||||||
## {% linkable_title How it works %}
|
## {% linkable_title How it works %}
|
||||||
|
|
||||||
The old user interface relied solely on the state machine. This caused trouble as it meant that the state machine was now not only the source for device states, but also for user interface configuration. With Lovelace, we're taking a completely different approach. All user interface configuration will live in a separate file, controlled by the user.
|
The old user interface relied solely on the state machine. This caused trouble as it meant that the state machine was now not only the source for device states, but also for user interface configuration. With Lovelace, we're taking a completely different approach. All user interface configuration will live in a separate file, controlled by the user.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user