mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-23 09:17:06 +00:00
Merge remote-tracking branch 'origin/current' into next
This commit is contained in:
commit
b5dd360691
5
.github/stale.yml
vendored
5
.github/stale.yml
vendored
@ -3,9 +3,8 @@ daysUntilStale: 60
|
||||
# Number of days of inactivity before a stale issue is closed
|
||||
daysUntilClose: 7
|
||||
# Issues with these labels will never be considered stale
|
||||
#exemptLabels:
|
||||
# - pinned
|
||||
# - security
|
||||
exemptLabels:
|
||||
- has-parent
|
||||
# Label to use when marking an issue as stale
|
||||
staleLabel: Stale
|
||||
# Comment to post when marking an issue as stale. Set to `false` to disable
|
||||
|
@ -138,9 +138,9 @@ social:
|
||||
|
||||
# Home Assistant release details
|
||||
current_major_version: 0
|
||||
current_minor_version: 93
|
||||
current_patch_version: 2
|
||||
date_released: 2019-05-22
|
||||
current_minor_version: 94
|
||||
current_patch_version: 3
|
||||
date_released: 2019-06-13
|
||||
|
||||
# Either # or the anchor link to latest release notes in the blog post.
|
||||
# Must be prefixed with a # and have double quotes around it.
|
||||
|
76
source/.well-known/apple-developer-domain-association.txt
Normal file
76
source/.well-known/apple-developer-domain-association.txt
Normal file
@ -0,0 +1,76 @@
|
||||
MIIQ3QYJKoZIhvcNAQcCoIIQzjCCEMoCAQExCzAJBgUrDgMCGgUAMHMGCSqGSIb3DQEHAaBmBGR7
|
||||
InRlYW1JZCI6IlVUUUZDQlBRUkYiLCJkb21haW4iOiJob21lLWFzc2lzdGFudC5pbyIsImRhdGVD
|
||||
cmVhdGVkIjoiMjAxOS0wNi0xMiwwODoxMToxOCIsInZlcnNpb24iOjF9oIINsTCCA_MwggLboAMC
|
||||
AQICARcwDQYJKoZIhvcNAQEFBQAwYjELMAkGA1UEBhMCVVMxEzARBgNVBAoTCkFwcGxlIEluYy4x
|
||||
JjAkBgNVBAsTHUFwcGxlIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRYwFAYDVQQDEw1BcHBsZSBS
|
||||
b290IENBMB4XDTA3MDQxMjE3NDMyOFoXDTIyMDQxMjE3NDMyOFoweTELMAkGA1UEBhMCVVMxEzAR
|
||||
BgNVBAoTCkFwcGxlIEluYy4xJjAkBgNVBAsTHUFwcGxlIENlcnRpZmljYXRpb24gQXV0aG9yaXR5
|
||||
MS0wKwYDVQQDEyRBcHBsZSBpUGhvbmUgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggEiMA0GCSqG
|
||||
SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCjHr7wR8C0nhBbRqS4IbhPhiFwKEVgXBzDyApkY4j7_Gnu
|
||||
-FT86Vu3Bk4EL8NrM69ETOpLgAm0h_ZbtP1k3bNy4BOz_RfZvOeo7cKMYcIq-ezOpV7WaetkC40I
|
||||
j7igUEYJ3Bnk5bCUbbv3mZjE6JtBTtTxZeMbUnrc6APZbh3aEFWGpClYSQzqR9cVNDP2wKBESnC-
|
||||
LLUqMDeMLhXr0eRslzhVVrE1K1jqRKMmhe7IZkrkz4nwPWOtKd6tulqz3KWjmqcJToAWNWWkhQ1j
|
||||
ez5jitp9SkbsozkYNLnGKGUYvBNgnH9XrBTJie2htodoUraETrjIg-z5nhmrs8ELhsefAgMBAAGj
|
||||
gZwwgZkwDgYDVR0PAQH_BAQDAgGGMA8GA1UdEwEB_wQFMAMBAf8wHQYDVR0OBBYEFOc0Ki4i3jlg
|
||||
a7SUzneDYS8xoHw1MB8GA1UdIwQYMBaAFCvQaUeUdgn-9GuNLkCm90dNfwheMDYGA1UdHwQvMC0w
|
||||
K6ApoCeGJWh0dHA6Ly93d3cuYXBwbGUuY29tL2FwcGxlY2Evcm9vdC5jcmwwDQYJKoZIhvcNAQEF
|
||||
BQADggEBAB3R1XvddE7XF_yCLQyZm15CcvJp3NVrXg0Ma0s-exQl3rOU6KD6D4CJ8hc9AAKikZG-
|
||||
dFfcr5qfoQp9ML4AKswhWev9SaxudRnomnoD0Yb25_awDktJ-qO3QbrX0eNWoX2Dq5eu-FFKJsGF
|
||||
QhMmjQNUZhBeYIQFEjEra1TAoMhBvFQe51StEwDSSse7wYqvgQiO8EYKvyemvtzPOTqAcBkjMqNr
|
||||
Zl2eTahHSbJ7RbVRM6d0ZwlOtmxvSPcsuTMFRGtFvnRLb7KGkbQ-JSglnrPCUYb8T-WvO6q7RCwB
|
||||
SeJ0szT6RO8UwhHyLRkaUYnTCEpBbFhW3ps64QVX5WLP0g8wggP4MIIC4KADAgECAgg9ciDjz4zy
|
||||
JTANBgkqhkiG9w0BAQUFADB5MQswCQYDVQQGEwJVUzETMBEGA1UEChMKQXBwbGUgSW5jLjEmMCQG
|
||||
A1UECxMdQXBwbGUgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxLTArBgNVBAMTJEFwcGxlIGlQaG9u
|
||||
ZSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0xNDA3MTEwMTM1MjVaFw0yMjA0MTIxNzQzMjha
|
||||
MFkxCzAJBgNVBAYTAlVTMRMwEQYDVQQKDApBcHBsZSBJbmMuMTUwMwYDVQQDDCxBcHBsZSBpUGhv
|
||||
bmUgT1MgUHJvdmlzaW9uaW5nIFByb2ZpbGUgU2lnbmluZzCCASIwDQYJKoZIhvcNAQEBBQADggEP
|
||||
ADCCAQoCggEBAOfZmsMXo8npB9XHmaS0dSFMEQNoHzAsB5x3iDFIyEQEjYHNesb40_ZHHG1O7rrm
|
||||
FIVxxO95s0t12miFpnNVosaHUXvXHIG1AWrjjJHueir8z5Ve-XGgKH75q9Thzg5PlfPK7beVCjL_
|
||||
JZk29pidJItkV7b1_b5FIfmuRHa36rA7aZ9tf37XEZuy6kOi5f0mR87MxAfi53XG2_x-FrWkk8Z8
|
||||
rz293cAvgHh2Ok582GRPKiVRh0F2Dm7gk6Qhqj5dyl-niwtApS-zs2pKx8ZTtR9cLIqI7uSQL5_d
|
||||
Uj4WQcY4HmgkjzEt22lxz6DzQhooEUp0nKbWeElYDcS8HFvxPXsCAwEAAaOBozCBoDAdBgNVHQ4E
|
||||
FgQUpF5rO_x6R3KRcAnBJL0vO8l7oL4wDAYDVR0TAQH_BAIwADAfBgNVHSMEGDAWgBTnNCouIt45
|
||||
YGu0lM53g2EvMaB8NTAwBgNVHR8EKTAnMCWgI6Ahhh9odHRwOi8vY3JsLmFwcGxlLmNvbS9pcGhv
|
||||
bmUuY3JsMAsGA1UdDwQEAwIHgDARBgsqhkiG92NkBgICAQQCBQAwDQYJKoZIhvcNAQEFBQADggEB
|
||||
AIq2Vk5B0rHzIUOdC9nH_7SYWJntQacw8e_b2oBtIbazXNy-h_E5IbzEodom0u2m8e3AEZUZrEe4
|
||||
Kg5pmNTm5s5r6iLBK6cBbkFMLB3jI4yGJ6OMF5zMG-7YZDMPRA6LO0hiE2JU03FNki2BOv-my45c
|
||||
Q3FsiDMiPCA_HXi5_xoqIehzac-boaHhPekMF7ypc9fpUrrCth-hIoU-uFwaspp7n8zLUDr-lsf8
|
||||
SEf0JKKtPkz7SttnnANxFSc_g1L7svQZFqk-qewU7F7CCqfzTdEwqtStuDKhUC9NVchCJ6wcznJk
|
||||
8CzgCeRMuQsgNTec1QuRxDEd0CviXIK9fdD-CJkwggW6MIIEoqADAgECAgEBMA0GCSqGSIb3DQEB
|
||||
BQUAMIGGMQswCQYDVQQGEwJVUzEdMBsGA1UEChMUQXBwbGUgQ29tcHV0ZXIsIEluYy4xLTArBgNV
|
||||
BAsTJEFwcGxlIENvbXB1dGVyIENlcnRpZmljYXRlIEF1dGhvcml0eTEpMCcGA1UEAxMgQXBwbGUg
|
||||
Um9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcNMDUwMjEwMDAxODE0WhcNMjUwMjEwMDAxODE0
|
||||
WjCBhjELMAkGA1UEBhMCVVMxHTAbBgNVBAoTFEFwcGxlIENvbXB1dGVyLCBJbmMuMS0wKwYDVQQL
|
||||
EyRBcHBsZSBDb21wdXRlciBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkxKTAnBgNVBAMTIEFwcGxlIFJv
|
||||
b3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
|
||||
5JGpCR-R2x5HUOsF7V55hC3rNqJXTFXsixmJ3vlLbPUHqyIwAugYPvhQCdN_QaiY-dHKZpwkaxHQ
|
||||
o7vkGyrDH5WeegykR4tb1BY3M8vED03OFGnRyRly9V0O1X9fm_IlA7pVj01dDfFkNSMVSxVZHbOU
|
||||
9_acns9QusFYUGePCLQg98usLCBvcLY_ATCMt0PPD5098ytJKBrI_s61uQ7ZXhzWyz21Oq30Dw4A
|
||||
kguxIRYudNU8DdtiFqujcZJHU1XBry9Bs_j743DN5qNMRX4fTGtQlkGJxHRiCxCDQYczioGxMFjs
|
||||
WgQyjGizjx3eZXP_Z15lvEnYdp8zFGWhd5TJLQIDAQABo4ICLzCCAiswDgYDVR0PAQH_BAQDAgEG
|
||||
MA8GA1UdEwEB_wQFMAMBAf8wHQYDVR0OBBYEFCvQaUeUdgn-9GuNLkCm90dNfwheMB8GA1UdIwQY
|
||||
MBaAFCvQaUeUdgn-9GuNLkCm90dNfwheMIIBKQYDVR0gBIIBIDCCARwwggEYBgkqhkiG92NkBQEw
|
||||
ggEJMEEGCCsGAQUFBwIBFjVodHRwczovL3d3dy5hcHBsZS5jb20vY2VydGlmaWNhdGVhdXRob3Jp
|
||||
dHkvdGVybXMuaHRtbDCBwwYIKwYBBQUHAgIwgbYagbNSZWxpYW5jZSBvbiB0aGlzIGNlcnRpZmlj
|
||||
YXRlIGJ5IGFueSBwYXJ0eSBhc3N1bWVzIGFjY2VwdGFuY2Ugb2YgdGhlIHRoZW4gYXBwbGljYWJs
|
||||
ZSBzdGFuZGFyZCB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB1c2UsIGNlcnRpZmljYXRlIHBvbGlj
|
||||
eSBhbmQgY2VydGlmaWNhdGlvbiBwcmFjdGljZSBzdGF0ZW1lbnRzLjBEBgNVHR8EPTA7MDmgN6A1
|
||||
hjNodHRwczovL3d3dy5hcHBsZS5jb20vY2VydGlmaWNhdGVhdXRob3JpdHkvcm9vdC5jcmwwVQYI
|
||||
KwYBBQUHAQEESTBHMEUGCCsGAQUFBzAChjlodHRwczovL3d3dy5hcHBsZS5jb20vY2VydGlmaWNh
|
||||
dGVhdXRob3JpdHkvY2FzaWduZXJzLmh0bWwwDQYJKoZIhvcNAQEFBQADggEBAJ3aLShYL312BLkE
|
||||
0z7Ot2ZjTo8v1P5LrXK9oznGUk0FmFL1iVEBJHm-GjL35USLS0QHOYLWWsq0IF7ZrhVdHYwdMr84
|
||||
MWJIXcfhkLH4JED4X1ibUV1XncHl_zzMciFuxOnpoXfXLBcmwz_rmugLA7rps0py6zMJW63mYjFq
|
||||
6K8v1a8eV3aPfzctLgJc3WPJ8nG4JkDfFY11RD95veYdmeFDLD6tb765pP4ONRlRY7HD3rWSPlF4
|
||||
AXOKpCPKpIjxHlwfQRYtfpUKqumJQZgbGt3LIL9HXgwmxVU1TcYwi5lnFMcJH7pHx9oBCYckQpW9
|
||||
E2AZCu_qfw5uzcFEQzpK1eMxggKMMIICiAIBATCBhTB5MQswCQYDVQQGEwJVUzETMBEGA1UEChMK
|
||||
QXBwbGUgSW5jLjEmMCQGA1UECxMdQXBwbGUgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxLTArBgNV
|
||||
BAMTJEFwcGxlIGlQaG9uZSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQIIPXIg48-M8iUwCQYFKw4D
|
||||
AhoFAKCB3DAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0xOTA2MTIw
|
||||
ODExMThaMCMGCSqGSIb3DQEJBDEWBBTcNAQ84q3p1JpA4YADPkvxYG9QnjApBgkqhkiG9w0BCTQx
|
||||
HDAaMAkGBSsOAwIaBQChDQYJKoZIhvcNAQEBBQAwUgYJKoZIhvcNAQkPMUUwQzAKBggqhkiG9w0D
|
||||
BzAOBggqhkiG9w0DAgICAIAwDQYIKoZIhvcNAwICAUAwBwYFKw4DAgcwDQYIKoZIhvcNAwICASgw
|
||||
DQYJKoZIhvcNAQEBBQAEggEAPdMEunJrRbCBu0BHComwqNhFZwpBumcnD1IOq_9FfwN1XK2WJFxt
|
||||
Oad41ZZdFe4ku1ARAven-h_EdKaaaTeBddaUj6hl3fj6IVxMYKg0owRRR2HIjNjseLBSxFYl8j6u
|
||||
Mo1qXfzwEeAiUPxAme5q_EXLye3by0CxdSbx3WTXHzi47r8t8a7fb-SqQtgLYiehQO8ROO1OgTrO
|
||||
rqnOFRAsbwZy_m_Dmx5nqqzN1vLYKbo6sc4YWt8E_YmEqv-nXQDn8y7bI_24vOTz5FWZCOUDVsJc
|
||||
fOUtmLOmsw78uqdqbO3LjqQlIIcqecYPyBH5zxaA5iC_aLNYPxnxyljawyMzJQ
|
@ -17,7 +17,7 @@ The Snips add-on depends on the Mosquitto add on to bridge to Home Assistant, so
|
||||
|
||||
Home Assistant comes with certain Intents builtin to handle common tasks. A complete list of Intents can be found in this wiki [Hass Snips Bundle](https://github.com/tschmidty69/hass-snips-bundle-intents/wiki).
|
||||
|
||||
The Snips add-on by default comes with an assistant that allows you to turn on lights or switches, open covers, or add and list items to a shopping list if that component is enabled.
|
||||
The Snips add-on by default comes with an assistant that allows you to turn on lights or switches, open covers, or add and list items to a shopping list if that integration is enabled.
|
||||
|
||||
If using a USB microphone and speakers plugged into the Raspberry Pi output, Snips will work without any change to the configuration. Trying saying things like:
|
||||
|
||||
|
@ -102,7 +102,7 @@ name:
|
||||
required: false
|
||||
type: string
|
||||
device_class:
|
||||
description: The [type/class](/components/binary_sensor/) of the sensor to set the icon in the frontend.
|
||||
description: Sets the [class of the device](/components/binary_sensor/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
@ -250,6 +250,6 @@ name:
|
||||
type: string
|
||||
device_class:
|
||||
required: false
|
||||
description: Sets the class of the device, changing the device state and icon that is displayed on the UI (awning, blind, curtain, damper, door, garage, shade, shutter, window)
|
||||
description: Sets the [class of the device](/components/cover/), changing the device state and icon that is displayed on the frontend.
|
||||
type: device_class
|
||||
{% endconfiguration %}
|
||||
|
@ -7,12 +7,11 @@ sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: home-assistant.png
|
||||
ha_category:
|
||||
- Alarm
|
||||
ha_qa_scale: internal
|
||||
ha_release: 0.7.3
|
||||
---
|
||||
|
||||
Home Assistant can give you an interface with is similar to a classic alarm system. There are several panels supported:
|
||||
|
||||
- [Alarm.com](/components/alarm_control_panel.alarmdotcom/)
|
||||
- [Manual](/components/alarm_control_panel.manual/)
|
||||
- [MQTT](/components/alarm_control_panel.mqtt/)
|
||||
- [Verisure](/components/verisure/)
|
||||
Home Assistant can give you an interface with is similar to a classic alarm system.
|
||||
|
@ -237,29 +237,6 @@ alert:
|
||||
|
||||
The resulting message could be `Plant Officeplant needs help (moisture low)`.
|
||||
|
||||
The next example uses a template for the alert name.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
alert:
|
||||
garage_door:
|
||||
name: Garage has been open for {{ relative_time(states.binary_sensor.garage.last_changed) }}
|
||||
done_message: Garage is closed
|
||||
entity_id: binary_sensor.garage
|
||||
state: 'on'
|
||||
repeat:
|
||||
- 30
|
||||
- 60
|
||||
- 120
|
||||
can_acknowledge: true
|
||||
skip_first: true
|
||||
notifiers:
|
||||
- ryans_phone
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
The resulting title of the alert could be `Garage has been open for 30 min`.
|
||||
|
||||
### {% linkable_title Additional parameters for notifiers %}
|
||||
|
||||
Some notifiers support more parameters (e.g., to set text color or action
|
||||
|
@ -26,6 +26,12 @@ There is currently support for the following device types within Home Assistant:
|
||||
- [Binary Sensor](#binary-sensor)
|
||||
- [Sensor](#sensor)
|
||||
|
||||
## {% linkable_title Hass.io Installation %}
|
||||
|
||||
Install this [unofficial add-on](https://github.com/korylprince/hassio-apcupsd/) to use this integration with Hass.io. Keep in mind that we can't give you support for this add-on.
|
||||
|
||||
After installation, follow the instructions on the Github page to configure the plugin. Then continue to follow the integration configurations below.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
To enable this sensor, add the following lines to your `configuration.yaml`:
|
||||
@ -127,13 +133,33 @@ OUTPUTV : 218.4 Volts
|
||||
[...]
|
||||
```
|
||||
|
||||
Use the (case insensitive) values from the left hand column:
|
||||
Use the values from the left hand column (lower case required).
|
||||
|
||||
Full Example Configuration:
|
||||
|
||||
```yaml
|
||||
sensor:
|
||||
- platform: apcupsd
|
||||
resources:
|
||||
- apc
|
||||
- date
|
||||
- hostname
|
||||
- version
|
||||
- upsname
|
||||
- cable
|
||||
- driver
|
||||
- upsmode
|
||||
- starttime
|
||||
- model
|
||||
- status
|
||||
- linev
|
||||
- loadpct
|
||||
- bcharge
|
||||
- timeleft
|
||||
- mbattchg
|
||||
- mintimel
|
||||
- maxtime
|
||||
- maxlinev
|
||||
- minlinev
|
||||
- outputv
|
||||
```
|
||||
|
@ -26,6 +26,7 @@ Starting with 0.28 your automation rules can be controlled with the frontend.
|
||||
This allows one to reload the automation without restarting Home Assistant
|
||||
itself. If you don't want to see the automation rule in your frontend use
|
||||
`hide_entity: true` to hide it.
|
||||
|
||||
You can also use `initial_state: 'false'` so that the automation
|
||||
is not automatically turned on after a Home Assistant reboot.
|
||||
|
||||
@ -33,7 +34,7 @@ is not automatically turned on after a Home Assistant reboot.
|
||||
automation:
|
||||
- alias: Door alarm
|
||||
hide_entity: true
|
||||
initial_state: 'true'
|
||||
initial_state: true
|
||||
trigger:
|
||||
- platform: state
|
||||
...
|
||||
|
@ -37,7 +37,7 @@ name:
|
||||
required: false
|
||||
type: string
|
||||
device_class:
|
||||
description: HASS device class e.g., "motion".
|
||||
description: Sets the [class of the device](/components/binary_sensor/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: string
|
||||
significant_bit:
|
||||
|
@ -7,10 +7,14 @@ sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: home-assistant.png
|
||||
ha_category:
|
||||
- Binary Sensor
|
||||
ha_qa_scale: internal
|
||||
ha_release: 0.9
|
||||
---
|
||||
|
||||
Binary sensors gather information about the state of devices which have a "digital" return value (either 1 or 0). These can be switches, contacts, pins, etc. These sensors only have two states: **0/off/low/closed/false** and **1/on/high/open/true**. Knowing that there are only two states allows Home Assistant to represent these sensors in a better way in the frontend according to their functionality.
|
||||
Binary sensors gather information about the state of devices which have a "digital" return value (either 1 or 0). These can be switches, contacts, pins, etc. These sensors only have two states: **0/off/low/closed/false** and **1/on/high/open/true**. Knowing that there are only two states allows Home Assistant to represent these sensors in a better way in the frontend according to their functionality.
|
||||
|
||||
### {% linkable_title Device Class %}
|
||||
|
||||
|
@ -87,7 +87,7 @@ unique_id:
|
||||
required: false
|
||||
type: string
|
||||
device_class:
|
||||
description: The [type/class](/components/binary_sensor/) of the sensor to set the icon in the frontend.
|
||||
description: Sets the [class of the device](/components/binary_sensor/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: string
|
||||
value_template:
|
||||
|
@ -73,9 +73,7 @@ name:
|
||||
type: string
|
||||
default: REST Binary Sensor
|
||||
device_class:
|
||||
description: >
|
||||
The [type/class](/components/binary_sensor/) of
|
||||
the sensor to set the icon in the frontend.
|
||||
description: Sets the [class of the device](/components/binary_sensor/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: string
|
||||
value_template:
|
||||
|
@ -55,7 +55,7 @@ devices:
|
||||
required: false
|
||||
type: list
|
||||
device_class:
|
||||
description: The [type or class of the sensor](/components/binary_sensor/#device-class) to set the icon in the frontend.
|
||||
description: Sets the [class of the device](/components/binary_sensor/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: string
|
||||
off_delay:
|
||||
|
@ -63,7 +63,7 @@ devices:
|
||||
required: false
|
||||
type: string
|
||||
device_class:
|
||||
description: "The [type or class of the sensor](/components/binary_sensor/) to set the icon in the frontend."
|
||||
description: Sets the [class of the device](/components/binary_sensor/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: device_class
|
||||
fire_event:
|
||||
|
@ -56,7 +56,7 @@ sensors:
|
||||
required: false
|
||||
type: string, list
|
||||
device_class:
|
||||
description: The type/class of the sensor to set the icon in the frontend.
|
||||
description: Sets the [class of the device](/components/binary_sensor/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: device_class
|
||||
default: None
|
||||
|
@ -7,10 +7,26 @@ sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: home-assistant.png
|
||||
ha_category:
|
||||
- Camera
|
||||
ha_qa_scale: internal
|
||||
ha_release: 0.7
|
||||
---
|
||||
|
||||
The camera component allows you to use IP cameras with Home Assistant. With a little additional work you could use [USB cameras](/blog/2016/06/23/usb-webcams-and-home-assistant/) as well.
|
||||
The camera component allows you to use IP cameras with Home Assistant.
|
||||
|
||||
### {% linkable_title Streaming Video %}
|
||||
|
||||
If your camera supports it, and the [`stream`](/components/stream) component is setup, you will be able to stream your cameras in the frontend and on supported media players.
|
||||
|
||||
This option will keep the stream alive, and preload the feed on Home Assistant startup. This will result in reduced latency when opening the stream in the frontend, as well as when using the `play_stream` service or Google Assistant integration. It does, however, utilize more resources on your machine, so it is recommended to check CPU usage if you plan to use this feature.
|
||||
|
||||
<p class='img'>
|
||||
<img src='/images/components/camera/preload-stream.png' alt='Screenshot showing Preload Stream option in Home Assistant front end.'>
|
||||
Example showing the Preload Stream option in the camera dialog.
|
||||
</p>
|
||||
|
||||
|
||||
### {% linkable_title Services %}
|
||||
|
||||
@ -18,6 +34,26 @@ Once loaded, the `camera` platform will expose services that can be called to pe
|
||||
|
||||
Available services: `turn_on`, `turn_off`, `enable_motion_detection`, `disable_motion_detection`, `snapshot`, and `play_stream`.
|
||||
|
||||
#### {% linkable_title Service `play_stream` %}
|
||||
|
||||
Play a live stream from a camera to selected media player(s). Requires [`stream`](/components/stream) component to be set up.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | no | Name of entity to fetch stream from, e.g., `camera.living_room_camera`. |
|
||||
| `media_player` | no | Name of media player to play stream on, e.g., `media_player.living_room_tv`. |
|
||||
| `format` | yes | Stream format supported by `stream` component and selected `media_player`. Default: `hls` |
|
||||
|
||||
For example, the following action in an automation would send an `hls` live stream to your chromecast.
|
||||
|
||||
```yaml
|
||||
action:
|
||||
service: camera.play_stream
|
||||
data:
|
||||
entity_id: camera.yourcamera
|
||||
media_player: media_player.chromecast
|
||||
```
|
||||
|
||||
#### {% linkable_title Service `turn_on` %}
|
||||
|
||||
Turn on camera. Not all camera models support this service, please consult individual camera page.
|
||||
@ -100,26 +136,6 @@ action:
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
#### {% linkable_title Service `play_stream` %}
|
||||
|
||||
Play a live stream from a camera to selected media player(s). Requires [`stream`](/components/stream) component to be set up.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | no | Name of entity to fetch stream from, e.g., `camera.living_room_camera`. |
|
||||
| `media_player` | no | Name of media player to play stream on, e.g., `media_player.living_room_tv`. |
|
||||
| `format` | yes | Stream format supported by `stream` component and selected `media_player`. Default: `hls` |
|
||||
|
||||
For example, the following action in an automation would send an `hls` live stream to your chromecast.
|
||||
|
||||
```yaml
|
||||
action:
|
||||
service: camera.play_stream
|
||||
data:
|
||||
entity_id: camera.yourcamera
|
||||
media_player: media_player.chromecast
|
||||
```
|
||||
|
||||
### {% linkable_title Test if it works %}
|
||||
|
||||
A simple way to test if you have set up your `camera` platform correctly, is to use <img src='/images/screenshots/developer-tool-services-icon.png' alt='service developer tool icon' class="no-shadow" height="38" /> **Services** from the **Developer Tools**. Choose your service from the dropdown menu **Service**, enter something like the sample below into the **Service Data** field, and hit **CALL SERVICE**.
|
||||
@ -128,13 +144,4 @@ A simple way to test if you have set up your `camera` platform correctly, is to
|
||||
{
|
||||
"entity_id": "camera.living_room_camera"
|
||||
}
|
||||
```
|
||||
|
||||
### {% linkable_title Preload Stream %}
|
||||
|
||||
If your camera supports it, and the [`stream`](/components/stream) component is setup, You will notice a "Preload Stream" option in the top right of the dialog when clicking to view the camera stream. This option will keep the stream alive, and preload the feed on Home Assistant startup. This will result in reduced latency when opening the stream in the frontend, as well as when using the `play_stream` service or Google Assistant integration. It does, however, utilize more resources on your machine, so it is recommended to check CPU usage if you plan to use this feature.
|
||||
|
||||
<p class='img'>
|
||||
<img src='/images/components/camera/preload-stream.png' alt='Screenshot showing Preload Stream option in Home Assistant front end.'>
|
||||
Example showing the Preload Stream option in the camera dialog.
|
||||
</p>
|
||||
```
|
@ -7,19 +7,14 @@ sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: home-assistant.png
|
||||
ha_category:
|
||||
- Climate
|
||||
ha_qa_scale: internal
|
||||
ha_release: 0.19
|
||||
---
|
||||
|
||||
|
||||
The `climate` component is built for the controlling and monitoring of HVAC (heating, ventilating, and air conditioning) and thermostat devices.
|
||||
|
||||
To enable this component, pick one of the platforms, and add it to your `configuration.yaml`:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
climate:
|
||||
platform: demo
|
||||
```
|
||||
|
||||
## {% linkable_title Services %}
|
||||
|
||||
@ -238,13 +233,3 @@ Turn climate device off
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`'s of climate devices to control. Targets all when omitted.
|
||||
|
||||
#### {% linkable_title Customization %}
|
||||
|
||||
The step for the setpoint can be adjusted (default to 0,5 increments) by adding the following line into configuration
|
||||
|
||||
```yaml
|
||||
customize:
|
||||
- entity_id
|
||||
target_temp_step: 1
|
||||
```
|
||||
|
@ -31,6 +31,7 @@ binary_sensor:
|
||||
<p class='note'>
|
||||
It's highly recommended to enclose the command in single quotes `'` as it ensures all characters can be used in the command and reduces the risk of unintentional escaping. To include a single quote in a command enclosed in single quotes, double it: `''`.
|
||||
</p>
|
||||
|
||||
{% configuration %}
|
||||
command:
|
||||
description: The action to take to get the value.
|
||||
@ -42,7 +43,7 @@ name:
|
||||
type: string
|
||||
default: "*name* from the device"
|
||||
device_class:
|
||||
description: The [type/class](/components/binary_sensor/) of the sensor to set the icon in the frontend.
|
||||
description: Sets the [class of the device](/components/binary_sensor/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: string
|
||||
payload_on:
|
||||
|
@ -24,6 +24,6 @@ The configurator component allows components to request information from the use
|
||||
- Input fields can be defined with a description, and optional type
|
||||
- It will trigger a callback when the button is pressed
|
||||
|
||||
The Hue component in [the demo](/demo) and Plex are implemented using the configurator. See [the source of the demo component](https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/demo.py#L132) for a simple example.
|
||||
The Hue component in [the demo](/demo) and Plex are implemented using the configurator. See [the source of the demo component](https://github.com/home-assistant/home-assistant/tree/dev/homeassistant/components/demo) for a simple example.
|
||||
|
||||
See [the source](https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/configurator.py#L39) for more details on how to use the configurator component.
|
||||
See [the source](https://github.com/home-assistant/home-assistant/tree/dev/homeassistant/components/configurator) for more details on how to use the configurator component.
|
||||
|
@ -7,19 +7,16 @@ sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: home-assistant.png
|
||||
ha_category:
|
||||
- Cover
|
||||
ha_qa_scale: internal
|
||||
ha_release: 0.27
|
||||
---
|
||||
|
||||
Home Assistant can give you an interface to control covers such as rollershutters, blinds, and garage doors.
|
||||
|
||||
The display style of each entity can be modified in the [customize section](/getting-started/customizing-devices/). Besides the basic ones like `friendly_name` or `hidden`, the following attributes are supported for covers:
|
||||
|
||||
| Attribute | Default | Description |
|
||||
| --------- | ------- | ----------- |
|
||||
| `device_class` | | see below
|
||||
| `assumed_state` | `false` | If set to `true`, cover buttons will always be enabled
|
||||
|
||||
### {% linkable_title Device Class %}
|
||||
## {% linkable_title Device Class %}
|
||||
|
||||
The way these sensors are displayed in the frontend can be modified in the [customize section](/docs/configuration/customizing-devices/). The following device classes are supported for covers:
|
||||
|
||||
@ -74,7 +71,7 @@ Set cover tilt position of one or multiple covers.
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`'s of covers. Else targets all.
|
||||
| `position` | no | Integer between 0 and 100.
|
||||
| `tilt_position` | no | Integer between 0 and 100.
|
||||
|
||||
#### {% linkable_title Automation example %}
|
||||
|
||||
@ -87,5 +84,5 @@ automation:
|
||||
- service: cover.set_cover_tilt_position
|
||||
data:
|
||||
entity_id: cover.demo
|
||||
position: 50
|
||||
tilt_position: 50
|
||||
```
|
||||
|
@ -179,7 +179,7 @@ tilt_invert_state:
|
||||
type: boolean
|
||||
default: false
|
||||
device_class:
|
||||
description: The [type/class](/components/cover/#device-class) of the cover to set the icon in the frontend.
|
||||
description: Sets the [class of the device](/components/cover/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: string
|
||||
json_attributes_topic:
|
||||
|
@ -69,7 +69,7 @@ cover:
|
||||
required: false
|
||||
type: template
|
||||
device_class:
|
||||
description: The [type/class](/components/cover/#device-class) of the cover to set the icon in the frontend.
|
||||
description: Sets the [class of the device](/components/cover/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: string
|
||||
open_cover:
|
||||
|
@ -99,6 +99,7 @@ A few notes:
|
||||
- An additional option for the control of Denon AVR receivers with a built-in web server is using the HTTP interface with `denonavr` platform.
|
||||
- The `denonavr` platform supports some additional functionalities like album covers, custom input source names and auto discovery.
|
||||
- Marantz receivers seem to a have quite a similar interface. Thus if you own one, give it a try.
|
||||
- To remotely power on Marantz receivers with Home Assistant, the Auto-Standby feature must be enabled in the receiver's settings.
|
||||
- Sound mode: The command to set a specific sound mode is different from the value of the current sound mode reported by the receiver (sound_mode_raw). There is a key-value structure (sound_mode_dict) that matches the raw sound mode to one of the possible commands to set a sound mode (for instance {'MUSIC':['PLII MUSIC']}. If you get a "Not able to match sound mode" warning, please open an issue on the [denonavr library](https://github.com/scarface-4711/denonavr), stating which raw sound mode could not be matched so it can be added to the matching dictionary. You can find the current raw sound mode under "Development Tools/States" in the front panel.
|
||||
|
||||
[Denon]: /components/media_player.denon/
|
||||
|
@ -7,14 +7,14 @@ sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: home-assistant.png
|
||||
ha_category:
|
||||
- Presence Detection
|
||||
ha_qa_scale: internal
|
||||
ha_release: 0.7
|
||||
---
|
||||
|
||||
Home Assistant can get information from your wireless router or third party services like iCloud or OwnTracks to track which devices are connected and considered "in home". Please check the sidebar for a list of brands of supported wireless routers and services.
|
||||
|
||||
There are also trackers available which use different technologies like [MQTT](/components/mqtt/) or [Nmap](/components/nmap_tracker/) to scan the network for devices.
|
||||
|
||||
An [event](/getting-started/automation-trigger/#event-trigger) (`device_tracker_new_device`) will be fired when a device is discovered for the first time.
|
||||
The device tracker allows you to track devices in Home Assistant. This can happen by querying your wireless router or by having applications push location info.
|
||||
|
||||
## {% linkable_title Configuring a `device_tracker` platform %}
|
||||
|
||||
@ -24,8 +24,8 @@ To get started add the following lines to your `configuration.yaml` (example for
|
||||
# Example configuration.yaml entry for Netgear device
|
||||
device_tracker:
|
||||
- platform: netgear
|
||||
host: 192.168.1.1
|
||||
username: admin
|
||||
host: IP_ADDRESS
|
||||
username: YOUR_USERNAME
|
||||
password: YOUR_PASSWORD
|
||||
new_device_defaults:
|
||||
track_new_devices: true
|
||||
@ -54,8 +54,8 @@ The extended example from above would look like the following sample:
|
||||
# Example configuration.yaml entry for Netgear device
|
||||
device_tracker:
|
||||
- platform: netgear
|
||||
host: 192.168.1.1
|
||||
username: admin
|
||||
host: IP_ADDRESS
|
||||
username: YOUR_USERNAME
|
||||
interval_seconds: 10
|
||||
consider_home: 180
|
||||
new_device_defaults:
|
||||
@ -66,6 +66,10 @@ Multiple device trackers can be used in parallel, such as [Owntracks](/component
|
||||
|
||||
## {% linkable_title `known_devices.yaml` %}
|
||||
|
||||
<p class='note warning'>
|
||||
As of 0.94 `known_devices.yaml` is being phased out, and no longer used by all trackers. Depending on the component you use this section may no longer apply. This includes the mobile app, OwnTracks, GeoFency, GPSLogger, and Locative.
|
||||
</p>
|
||||
|
||||
Once `device_tracker` is enabled, a file will be created in your config dir named `known_devices.yaml`. Edit this file to adjust which devices to be tracked.
|
||||
|
||||
Here's an example configuration for a single device:
|
||||
@ -94,24 +98,6 @@ devicename:
|
||||
| `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. |
|
||||
|
||||
## {% linkable_title Using GPS device trackers with local network device trackers %}
|
||||
|
||||
GPS based device trackers (like [OwnTracks](/components/owntracks/), [GPSLogger](/components/gpslogger) and others) can also be used with local network device trackers, such as [Nmap](/components/nmap_tracker/) or [Netgear](/components/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: true
|
||||
hide_if_away: false
|
||||
```
|
||||
|
||||
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 %}
|
||||
|
||||
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 (case sensitive). When a device isn't at home and isn't in any zone, the state will be `'not_home'`.
|
||||
|
@ -112,7 +112,7 @@ Events can be defined for each configured DoorBird device independently. These e
|
||||
|
||||
See [Schedules](#schedules) section below for details on how to configure schedules.
|
||||
|
||||
Event names will be prefixed by `doorbird_`. For example, the example event `somebody_pressed_the_button` will be seen in Home Assistant as `doorbird_somebody_pressed_the_button`. This is to prevent conflicts with other events.
|
||||
Event names will be prefixed by `doorbird_devicename`. For example, the example event `somebody_pressed_the_button` for the device 'Driveway Gate' will be seen in Home Assistant as `doorbird_driveway_gate_somebody_pressed_the_button`. This is to prevent conflicts with other events.
|
||||
|
||||
See [Automation Example](#automation_example) section below for details on how to use the event names in an automation.
|
||||
|
||||
@ -167,7 +167,7 @@ Remember to complete the schedule assignment steps above for each event type tha
|
||||
- alias: Doorbird Ring
|
||||
trigger:
|
||||
platform: event
|
||||
event_type: doorbird_somebody_pressed_the_button
|
||||
event_type: doorbird_driveway_gate_somebody_pressed_the_button
|
||||
action:
|
||||
service: light.turn_on
|
||||
entity_id: light.side_entry_porch
|
||||
|
@ -320,7 +320,7 @@ are not implemented for this thermostat.
|
||||
|
||||
### {% linkable_title Service `set_away_mode` %}
|
||||
|
||||
Turns the away mode on or off for the thermostat.
|
||||
Turns Away Mode on or off, ignoring the next scheduled activity. This setting will override the thermostat Hold Duration setting, even if you set the hold duration to "Until the next scheduled activity" within thermostat preferences.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
@ -330,12 +330,12 @@ Turns the away mode on or off for the thermostat.
|
||||
### {% linkable_title Service `set_hold_mode` %}
|
||||
|
||||
Puts the thermostat into the given hold mode. For 'home', 'away', 'sleep',
|
||||
and any other hold based on a reference climate, the
|
||||
target temperature is taken from the reference climate.
|
||||
and any other hold based on a comfort setting, the
|
||||
target temperature is set to whatever is programmed in the comfort setting.
|
||||
For 'temp', the current temperature is taken as the target temperature.
|
||||
When None is provided as parameter, the hold_mode is turned off.
|
||||
It is not possible to set a vacation hold; such hold has to be
|
||||
defined on the thermostat directly. However, a vacation hold can be
|
||||
If the thermostat Hold Duration is set to "Until the next scheduled activity" within thermostat preferences, then the next scheduled activity will change this hold mode.
|
||||
Note that it is not possible to set a vacation hold; this must be defined on the thermostat directly. However, a vacation hold can be
|
||||
canceled.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
|
@ -32,7 +32,7 @@ It is recommended to assign a static IP address to the computer running Home Ass
|
||||
</p>
|
||||
|
||||
<p class='note'>
|
||||
Both Google Home and Alexa use the device they were initially set up with for communication with emulated_hue. In other words: if you remove/replace this device you will also break emulated_hue.
|
||||
Both Google Home and Alexa use the device they were initially set up with for communication with `emulated_hue`. In other words: if you remove/replace this device you will also break `emulated_hue`. To recover your `emulated_hue` functionality, backup your `config/emulated_hue_ids.json` file, delete the original one and reboot your Home Assistant instance.
|
||||
</p>
|
||||
|
||||
### {% linkable_title Configuration %}
|
||||
|
@ -102,7 +102,7 @@ name:
|
||||
type: string
|
||||
default: EnOcean binary sensor
|
||||
device_class:
|
||||
description: The [type/class](/components/binary_sensor/) of the sensor to set the icon in the frontend.
|
||||
description: Sets the [class of the device](/components/binary_sensor/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: device_class
|
||||
{% endconfiguration %}
|
||||
@ -193,7 +193,7 @@ name:
|
||||
type: string
|
||||
default: EnOcean sensor
|
||||
device_class:
|
||||
description: The [type/class](/components/binary_sensor/) of the sensor to set the icon in the frontend.
|
||||
description: Sets the [class of the device](/components/binary_sensor/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: device_class
|
||||
default: powersensor
|
||||
|
@ -7,17 +7,11 @@ sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: home-assistant.png
|
||||
ha_category:
|
||||
- Fan
|
||||
ha_qa_scale: internal
|
||||
ha_release: 0.27
|
||||
---
|
||||
|
||||
|
||||
The `fan` component is built for the controlling of fan devices. It can be called the little brother of the [climate](/components/climate/) component.
|
||||
|
||||
To enable this component, pick one of the platforms, and add it to your `configuration.yaml`:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
climate:
|
||||
platform: fan
|
||||
```
|
||||
|
||||
The `fan` component is built for the controlling of fan devices.
|
||||
|
@ -16,15 +16,13 @@ redirect_from:
|
||||
- /components/device_tracker.geofency/
|
||||
---
|
||||
|
||||
This component sets up integration with [Geofency](http://www.geofency.com/). Geofency is a [paid app](https://itunes.apple.com/app/id615538630) for iOS that lets users to configure a request that will be sent when a geofence or iBeacon region is entered or exited. This can be configured with Home Assistant to update your location.
|
||||
|
||||
Enabling this component will automatically enable the Geofency Device Tracker.
|
||||
This component sets up integration with [Geofency](http://www.geofency.com/). Geofency is a paid app for iOS that lets users to configure a request that will be sent when a geofence or iBeacon region is entered or exited. This can be configured with Home Assistant to update your location.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
To configure Geofency, you must set it up via the integrations panel in the configuration screen. You must then configure the iOS app (via the Webhook feature) to send a POST request to your Home Assistant server at the webhook URL provided by the integration during setup. Use the default POST format. Make sure to enable the 'Update Geo-Position' functionality for mobile beacons.
|
||||
|
||||
Geofency will automatically generate the device tracker name used for geofences, and you will find it in `known_devices.yaml` after the first request. For beacons, the device name will be `beacon_<name from Geofency>`, e.g., `device_tracker.beacon_car`.
|
||||
Geofency will automatically generate the device tracker name used for geofences, and you will find it in the integrations section after the first request. For beacons, the device name will be `beacon_<name from Geofency>`, e.g., `device_tracker.beacon_car`.
|
||||
|
||||
When using mobile beacons (optional) an entry in `configuration.yaml` is still needed as this can't be added via the integrations panel.
|
||||
|
||||
@ -49,4 +47,4 @@ geofency:
|
||||
|
||||
When you enter a geofence or stationary beacon, your location name in Home Assistant will be set to the name of the geofence or beacon location in Geofency. When you exit a geofence or stationary beacon, your location name in Home Assistant will be set to `not home`. For mobile beacons, the location name will be `not_home` whenever the beacon is entered or exited outside of a [zone](/components/zone/), otherwise, it will be set to the name of the zone.
|
||||
|
||||
To make Geofency work better with the [proximity](/components/proximity/) component, you should enable the 'Send Current Location' feature in the Webhook configuration screen. This ensures that the _current_ GPS coordinates are included in exit events instead of the coordinates of the (center of) the zone that was exited.
|
||||
To make Geofency work better with the [proximity](/components/proximity/) component, you should enable the 'Send Current Location' feature in the Webhook configuration screen. This ensures that the _current_ GPS coordinates are included in exit events instead of the coordinates of the (center of) the zone that was exited.
|
||||
|
@ -193,6 +193,7 @@ Currently, the following domains are available to be used with Google Assistant,
|
||||
- media_player (on/off/set volume (via set brightness)/source (via set input source))
|
||||
- climate (temperature setting, operation_mode)
|
||||
- vacuum (dock/start/stop/pause)
|
||||
- sensor (temperature setting, only for temperature sensor)
|
||||
|
||||
<p class='note warning'>
|
||||
The domain groups contains groups containing all items, by example group.all_automations. When telling Google Assistant to shut down everything, this will lead in this example to disabling all automations
|
||||
|
@ -16,9 +16,7 @@ redirect_from:
|
||||
- /components/device_tracker.gpslogger/
|
||||
---
|
||||
|
||||
This component sets up integration with [GPSLogger](http://code.mendhak.com/gpslogger/). GPSLogger is an open source app for [Android](https://play.google.com/store/apps/details?id=com.mendhak.gpslogger) that allows users to set up a `POST` request to update GPS coordinates. This can be configured with Home Assistant to update your location.
|
||||
|
||||
Enabling this component will automatically enable the GPSLogger Device Tracker.
|
||||
This component sets up integration with [GPSLogger](https://gpslogger.app/). GPSLogger is an open source app for Android that allows users to update your location in Home Assistant.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
@ -77,4 +75,4 @@ If your battery drains too fast then you can tune the performance of GPSLogger u
|
||||
Performance
|
||||
</p>
|
||||
|
||||
A request can be forced from the app to test if everything is working fine. A successful request will update the `known_devices.yaml` file with the device's serial number.
|
||||
A request can be forced from the app to test if everything is working fine.
|
||||
|
@ -14,10 +14,80 @@ ha_qa_scale: internal
|
||||
ha_release: pre 0.7
|
||||
---
|
||||
|
||||
Groups allow the user to combine multiple entities into one. A group can be promoted to a **view** by setting `view: true` under the group definition. This will make the group available as a new tab in the frontend.
|
||||
Groups allow the user to combine multiple entities into one.
|
||||
|
||||
Check the **Set State** <img src='/images/screenshots/developer-tool-states-icon.png' class='no-shadow' height='38' /> page from the **Developer Tools** and browse the **Current entities:** listing for all available entities.
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
group:
|
||||
kitchen:
|
||||
name: Kitchen
|
||||
entities:
|
||||
- switch.kitchen_pin_3
|
||||
climate:
|
||||
name: Climate
|
||||
entities:
|
||||
- sensor.bedroom_temp
|
||||
- sensor.porch_temp
|
||||
awesome_people:
|
||||
name: Awesome People
|
||||
entities:
|
||||
- device_tracker.dad_smith
|
||||
- device_tracker.mom_smith
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Name of the group.
|
||||
required: false
|
||||
type: string
|
||||
entities:
|
||||
description: Array or comma delimited string, list of entities to group.
|
||||
required: true
|
||||
type: list
|
||||
all:
|
||||
description: Set this to `true` if the group state should only turn *on* if **all** grouped entities are *on*.
|
||||
required: false
|
||||
type: boolean
|
||||
icon:
|
||||
description: The icon that shows in the front end. **The rest of this only applies to the deprecated UI `/states`**. If the group is a view, this icon will show at the top in the frontend instead of the name. If the group is a view and both name and icon have been specified, the icon will appear at the top of the frontend and the name will be displayed as the mouse-over text.
|
||||
required: false
|
||||
type: string
|
||||
view:
|
||||
description: "**Only applies to the deprecated UI `/states`**. If yes then the entry will be shown as a view (tab) at the top. Groups that are set to `view: true` cannot be used as entities in other views. *Does not apply to Lovelace.*"
|
||||
required: false
|
||||
type: boolean
|
||||
control:
|
||||
description: "**Only applies to the deprecated UI `/states`**. Set value to `hidden`. If hidden then the group switch will be hidden. *Does not apply to Lovelace.*"
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Default groups %}
|
||||
|
||||
Some components automatically create special groups containing component entities. These groups are named like `group.all_...`, for example:
|
||||
|
||||
- `group.all_switches`
|
||||
- `group.all_lights`
|
||||
- `group.all_devices`
|
||||
- `group.all_scripts`
|
||||
- `group.all_automations`
|
||||
|
||||
You can see list of these groups in **State** <img src='/images/screenshots/developer-tool-states-icon.png' class='no-shadow' height='38' /> page of the **Developer Tools**.
|
||||
|
||||
## {% linkable_title Group behavior %}
|
||||
|
||||
By default when any member of a group is `on` then the group will also be `on`. Similarly with a device tracker, when any member of the group is `home` then the group is `home`. If you set the `all` option to `true` though, this behavior is inverted and all members of the group have to be `on` for the group to turn on as well.
|
||||
|
||||
---
|
||||
|
||||
## {% linkable_title Old user interface %}
|
||||
|
||||
This section only applies if you've not moved off the deprecated `/states` user interface.
|
||||
|
||||
A group can be promoted to a **view** by setting `view: true` under the group definition. This will make the group available as a new tab in the frontend.
|
||||
|
||||
By default, every group appears in the HOME tab. If you create a group `default_view` it will REPLACE the contents of the HOME tab so you can customize the HOME tab as you wish.
|
||||
|
||||
```yaml
|
||||
@ -57,33 +127,6 @@ group:
|
||||
- device_tracker.mom_smith
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Name of the group.
|
||||
required: false
|
||||
type: string
|
||||
view:
|
||||
description: "If yes then the entry will be shown as a view (tab) at the top. Groups that are set to `view: true` cannot be used as entities in other views."
|
||||
required: false
|
||||
type: boolean
|
||||
icon:
|
||||
description: If the group is a view, this icon will show at the top in the frontend instead of the name. If the group is a view and both name and icon have been specified, the icon will appear at the top of the frontend and the name will be displayed as the mouse-over text. If it's not a view, then the icon shows when this group is used in another group.
|
||||
required: false
|
||||
type: string
|
||||
control:
|
||||
description: Set value to `hidden`. If hidden then the group switch will be hidden.
|
||||
required: false
|
||||
type: string
|
||||
entities:
|
||||
description: Array or comma delimited string, list of entities to group.
|
||||
required: true
|
||||
type: list
|
||||
all:
|
||||
description: Set this to `true` if the group state should only turn *on* if **all** grouped entities are *on*.
|
||||
required: false
|
||||
type: boolean
|
||||
{% endconfiguration %}
|
||||
|
||||
<p class='img'>
|
||||
<img src='/images/blog/2016-01-release-12/views.png'>
|
||||
Example of groups shown as views in the frontend.
|
||||
@ -110,18 +153,6 @@ Notice in the example below that in order to refer to the group "Living Room", y
|
||||
- group.bedroom
|
||||
```
|
||||
|
||||
## {% linkable_title Default groups %}
|
||||
|
||||
Some components automatically create special groups containing component entities. These groups are named like `group.all_...`, for example:
|
||||
|
||||
- `group.all_switches`
|
||||
- `group.all_lights`
|
||||
- `group.all_devices`
|
||||
- `group.all_scripts`
|
||||
- `group.all_automations`
|
||||
|
||||
You can see list of these groups in **State** <img src='/images/screenshots/developer-tool-states-icon.png' class='no-shadow' height='38' /> page of the **Developer Tools**.
|
||||
|
||||
Default groups appear in the HOME tab, if not overridden by user views and groups. Default groups are hidden by default, so you must [customize](/docs/configuration/customizing-devices/) them to be visible in your custom groups and views.
|
||||
|
||||
```yaml
|
||||
@ -140,10 +171,6 @@ group:
|
||||
- group.all_scripts
|
||||
```
|
||||
|
||||
## {% linkable_title Group behavior %}
|
||||
|
||||
By default when any member of a group is `on` then the group will also be `on`. Similarly with a device tracker, when any member of the group is `home` then the group is `home`. If you set the `all` option to `true` though, this behavior is inverted and all members of the group have to be `on` for the group to turn on as well.
|
||||
|
||||
## {% linkable_title Customize group order %}
|
||||
You can also order your groups using [customize](/docs/configuration/customizing-devices/) with `order: ` if they don't show up in the order you want them in.
|
||||
|
||||
|
@ -354,6 +354,20 @@ action:
|
||||
value: 23.0
|
||||
```
|
||||
|
||||
Manually set the active profile on thermostat:
|
||||
|
||||
```yaml
|
||||
...
|
||||
action:
|
||||
service: homematic.set_device_value
|
||||
data:
|
||||
address: LEQ1234567
|
||||
channel: 1
|
||||
param: ACTIVE_PROFILE
|
||||
value: 1
|
||||
value_type: int
|
||||
```
|
||||
|
||||
Set the week program of a wall thermostat:
|
||||
|
||||
```yaml
|
||||
|
@ -116,7 +116,6 @@ authtoken:
|
||||
* Temperature and humidity Sensor with display (*HmIP-STHD*)
|
||||
|
||||
* homematicip_cloud.cover
|
||||
* Blind actuator for brand switches (*HmIP-BBL*)
|
||||
* Shutter actuator brand-mount (*HmIP-BROLL*)
|
||||
* Shutter actuator flush-mount (*HmIP-FROLL*)
|
||||
|
||||
|
@ -119,8 +119,7 @@ http:
|
||||
- https://www.home-assistant.io
|
||||
use_x_forwarded_for: true
|
||||
trusted_proxies:
|
||||
- 127.0.0.1
|
||||
- ::1
|
||||
- 10.0.0.200
|
||||
ip_ban_enabled: true
|
||||
login_attempts_threshold: 5
|
||||
```
|
||||
|
@ -44,7 +44,7 @@ light:
|
||||
required: false
|
||||
type: string
|
||||
priority:
|
||||
description: The priority of the Hyperion instance.
|
||||
description: The priority of the Hyperion instance make sure this is higher then the system prio in hyperion itself.
|
||||
required: false
|
||||
type: int
|
||||
default: 128
|
||||
@ -65,7 +65,7 @@ light:
|
||||
default: "['HDMI', 'Cinema brighten lights', 'Cinema dim lights', 'Knight rider', 'Blue mood blobs', 'Cold mood blobs', 'Full color mood blobs', 'Green mood blobs', 'Red mood blobs', 'Warm mood blobs', 'Police Lights Single', 'Police Lights Solid', 'Rainbow mood', 'Rainbow swirl fast', 'Rainbow swirl', 'Random', 'Running dots', 'System Shutdown', 'Snake', 'Sparks Color', 'Sparks', 'Strobe blue', 'Strobe Raspbmc', 'Strobe white', 'Color traces', 'UDP multicast listener', 'UDP listener', 'X-Mas']"
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Example %}
|
||||
## {% linkable_title Examples %}
|
||||
|
||||
To start Hyperion with an effect, use the following automation:
|
||||
|
||||
@ -83,3 +83,39 @@ automation:
|
||||
entity_id: light.hyperion
|
||||
effect: "Full color mood blobs"
|
||||
```
|
||||
|
||||
To have the lights playing a effect when pausing, idle or turn off a media player like plex you can use this example:
|
||||
|
||||
```
|
||||
- alias: Set hyperion effect after playback
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: media_player.plex
|
||||
to: 'off'
|
||||
- platform: state
|
||||
entity_id: media_player.plex.plex
|
||||
to: 'paused'
|
||||
- platform: state
|
||||
entity_id: media_player.plex.plex
|
||||
to: 'idle'
|
||||
action:
|
||||
- service: light.turn_on
|
||||
data:
|
||||
entity_id: light.hyperion
|
||||
effect: "Full color mood blobs"
|
||||
```
|
||||
|
||||
To capture the screen when playing something of a media_player you can use this example:
|
||||
|
||||
```
|
||||
- alias: Set hyperion when playback starts
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: media_player.plex
|
||||
to: 'playing'
|
||||
action:
|
||||
- service: light.turn_on
|
||||
data:
|
||||
entity_id: light.hyperion
|
||||
effect: HDMI
|
||||
```
|
||||
|
@ -18,7 +18,7 @@ redirect_from:
|
||||
- /components/sensor.integration/
|
||||
---
|
||||
|
||||
The `integration` platform provides the [Riemann sum](https://en.wikipedia.org/wiki/Riemann_sum) of the values provided by a source sensor. The Riemann sum is an approximation of an **integral** by a finite sum. In this implementation, the default is the Trapezoidal method, but Left and Right methods can optionally be used.
|
||||
The `integration` platform provides the [Riemann sum](https://en.wikipedia.org/wiki/Riemann_sum) of the values provided by a source sensor. The Riemann sum is an approximation of an **integral** by a finite sum. The integration sensors is updated upon changes of the the **source**. Fast sampling source sensors provide better results. In this implementation, the default is the Trapezoidal method, but Left and Right methods can optionally be used.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
|
@ -7,14 +7,14 @@ sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: home-assistant.png
|
||||
ha_category:
|
||||
- Light
|
||||
ha_qa_scale: internal
|
||||
ha_release: pre 0.7
|
||||
---
|
||||
|
||||
This component allows you to track and control various light bulbs. Read the platform documentation for your particular light hardware to learn how to enable it.
|
||||
|
||||
<p class='note'>
|
||||
The light component supports multiple entries in <code>configuration.yaml</code> by appending a sequential number to the section: <code>light 2:</code>, <code>light 3:</code> etc.
|
||||
</p>
|
||||
This component allows you to track and control various light bulbs. Read the integration documentation for your particular light hardware to learn how to enable it.
|
||||
|
||||
### {% linkable_title Default turn-on values %}
|
||||
|
||||
@ -26,7 +26,7 @@ The `.default` suffix should be added to the entity identifier of each light to
|
||||
|
||||
Turns one light on or multiple lights on using [groups]({{site_root}}/components/group/).
|
||||
|
||||
Most lights do not support all attributes. You can check the platform documentation of your particular light for hints, but in general, you will have to try things out and see what works.
|
||||
Most lights do not support all attributes. You can check the integration documentation of your particular light for hints, but in general, you will have to try things out and see what works.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
|
@ -17,7 +17,7 @@ redirect_from:
|
||||
---
|
||||
|
||||
<p class='note'>
|
||||
Locative is no longer under active development. <a href="https://blog.locative.io/bye-everyone-df01871fe949">Read more here</a>
|
||||
Locative is no longer under active development.
|
||||
</p>
|
||||
|
||||
This platform allows you to detect presence using [Locative](https://my.locative.io/). Locative is an open source app for [iOS](https://github.com/LocativeHQ/ios-app) and [Android](https://github.com/LocativeHQ/Locative-Android) that allows users to set up a `GET` or `POST` request when a geofence is entered or exited. This can be configured with Home Assistant to update your location.
|
||||
@ -27,12 +27,10 @@ Install on your smartphone:
|
||||
- [Android](https://play.google.com/store/apps/details?id=io.locative.app)
|
||||
- [iOS](https://itunes.apple.com/us/app/geofancy/id725198453)
|
||||
|
||||
To configure Locative, you must set it up via the integrations panel in the configuration screen. You must set up the app to send a POST request to your Home Assistant server at the webhook URL provided by the integration during setup. When you enter or exit a geofence, Locative will send the appropriate request to that URL, updating Home Assistant. You are not able to specify a device name in Locative. Instead, you will need to look in your known_devices.yaml file for a new device that Locative will have created on it's first `GET`. If you had been or are using Owntracks as well, you will need to update the device name used in the Owntracks setup with the name that Locative generated.
|
||||
To configure Locative, you must set it up via the integrations panel in the configuration screen. You must set up the app to send a POST request to your Home Assistant server at the webhook URL provided by the integration during setup. When you enter or exit a geofence, Locative will send the appropriate request to that URL, updating Home Assistant. You are not able to specify a device name in Locative. Instead, you will need to look in your `dev-state` menu for a new device that Locative will have created on it's first `GET`. If you had been or are using Owntracks as well, you will need to update the device name used in the Owntracks setup with the name that Locative generated.
|
||||
|
||||
<p class='img'>
|
||||
<img src='{{site_root}}/images/screenshots/locative.png'/>
|
||||
</p>
|
||||
|
||||
When you enter a geofence, your location name in Home Assistant will be set to the name of the geofence in Locative. When you exit a geofence, your location name in Home Assistant will be set to "not home".
|
||||
|
||||
To use Locative in combination with another device tracker, such as [Nmap](/components/device_tracker.nmap_tracker/) or [Netgear](/components/device_tracker.netgear/), fill in the `mac` field to the Locative entry in `known_devices.yaml` with the MAC address of the device you want to track. The state of the device will be determined by the source that reported last.
|
||||
|
@ -7,6 +7,10 @@ sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: home-assistant.png
|
||||
ha_category:
|
||||
- Lock
|
||||
ha_qa_scale: internal
|
||||
ha_release: 0.9
|
||||
---
|
||||
|
||||
|
@ -33,8 +33,7 @@ components:
|
||||
logger:
|
||||
default: info
|
||||
logs:
|
||||
homeassistant.components.device_tracker: critical
|
||||
homeassistant.components.camera: critical
|
||||
homeassistant.components.yamaha: critical
|
||||
custom_components.my_integration: critical
|
||||
```
|
||||
|
||||
@ -46,11 +45,20 @@ components:
|
||||
logger:
|
||||
default: critical
|
||||
logs:
|
||||
homeassistant.components: info
|
||||
homeassistant.components.rfxtrx: debug
|
||||
homeassistant.components.device_tracker: critical
|
||||
homeassistant.components.camera: critical
|
||||
# log level for HA core
|
||||
homeassistant.core: fatal
|
||||
|
||||
# log level for MQTT integration
|
||||
homeassistant.components.mqtt: warning
|
||||
|
||||
# log level for SmartThings lights
|
||||
homeassistant.components.smartthings.light: info
|
||||
|
||||
# log level for a custom component
|
||||
custom_components.my_integration: debug
|
||||
|
||||
# log level for the `aiohttp` Python package
|
||||
aiohttp: error
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
@ -107,9 +115,11 @@ An example call might look like this:
|
||||
```yaml
|
||||
service: logger.set_level
|
||||
data:
|
||||
homeassistant.components: warning
|
||||
homeassistant.components.media_player.yamaha: debug
|
||||
homeassistant.core: fatal
|
||||
homeassistant.components.mqtt: warning
|
||||
homeassistant.components.smartthings.light: info
|
||||
custom_components.my_integration: debug
|
||||
aiohttp: error
|
||||
```
|
||||
|
||||
The log information are stored in the
|
||||
|
@ -15,7 +15,7 @@ redirect_from:
|
||||
- /components/notify.mastodon/
|
||||
---
|
||||
|
||||
The `mastodon` platform uses [Mastodon](https://joinmastodon.org/) to delivery notifications from Home Assistant.
|
||||
The `mastodon` platform uses [Mastodon](https://joinmastodon.org/) to deliver notifications from Home Assistant.
|
||||
|
||||
### {% linkable_title Setup %}
|
||||
|
||||
|
@ -7,10 +7,14 @@ sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: home-assistant.png
|
||||
ha_category:
|
||||
- Media Player
|
||||
ha_qa_scale: internal
|
||||
ha_release: 0.7
|
||||
---
|
||||
|
||||
Interacts with media players on your network. Please check the right sidebar for a full list of supported devices.
|
||||
Interacts with media players on your network.
|
||||
|
||||
## {% linkable_title Services %}
|
||||
|
||||
|
@ -99,7 +99,7 @@ automation:
|
||||
action:
|
||||
- service: notify.notify
|
||||
data_template:
|
||||
title: '{{state_attr('binary_sensor.meteoalarm', 'headline')}}'
|
||||
title: "{{state_attr('binary_sensor.meteoalarm', 'headline')}}"
|
||||
message: "{{state_attr('binary_sensor.meteoalarm', 'description')}} is effective on {{state_attr('binary_sensor.meteoalarm', 'effective')}}"
|
||||
```
|
||||
{% endraw %}
|
||||
|
@ -128,12 +128,12 @@ modbus:
|
||||
- type: tcp
|
||||
host: IP_ADDRESS_1
|
||||
port: 2020
|
||||
hub: hub1
|
||||
name: hub1
|
||||
|
||||
- type: tcp
|
||||
host: IP_ADDRESS_2
|
||||
port: 501
|
||||
hub: hub2
|
||||
name: hub2
|
||||
```
|
||||
|
||||
### {% linkable_title Services %}
|
||||
@ -147,7 +147,7 @@ modbus:
|
||||
|
||||
| Attribute | Description |
|
||||
| --------- | ----------- |
|
||||
| hub | Hub name (defaults to 'default' when omitted) |
|
||||
| name | 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]` |
|
||||
|
@ -43,21 +43,45 @@ $ curl -X GET "http://[Netdata_Instance]:19999/api/v1/data?chart=[data_group]&po
|
||||
- `dimension_names`: Names shown in the frontend.
|
||||
- `dimension_ids`: Names to use for `element`.
|
||||
|
||||
Alternatively you can browse to the built in Netdata API in your browser `http://[Netdata_Instance]:19999/api/v1/allmetrics?format=json` and search for the `data_group` identified in the Netdata frontend. In the example JSON below the data group is "system.load".
|
||||
|
||||
```json
|
||||
"system.load": {
|
||||
"name":"system.load",
|
||||
"context":"system.load",
|
||||
"units":"load",
|
||||
"last_updated": 1558446920,
|
||||
"dimensions": {
|
||||
"load1": {
|
||||
"name": "load1",
|
||||
"value": 0.1250000
|
||||
},
|
||||
"load5": {
|
||||
"name": "load5",
|
||||
"value": 0.1290000
|
||||
},
|
||||
"load15": {
|
||||
"name": "load15",
|
||||
"value": 0.1430000
|
||||
}
|
||||
}
|
||||
},
|
||||
```
|
||||
|
||||
Once the `data_group` "system.load" and the `element` "load15" have been identified from the JSON it can be configured in your configuration.yaml like the example below.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
To add this platform to your installation, add the following to your `configuration.yaml` file:
|
||||
Add the following to your `configuration.yaml`.
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: netdata
|
||||
resources:
|
||||
resources:
|
||||
load:
|
||||
data_group: system.load
|
||||
element: load15
|
||||
cpu:
|
||||
data_group: system.cpu
|
||||
element: system
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
@ -105,3 +129,22 @@ resources:
|
||||
type: boolean
|
||||
default: false
|
||||
{% endconfiguration %}
|
||||
|
||||
### {% linkable_title Full Example %}
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: netdata
|
||||
host: '192.168.1.2'
|
||||
port: '19999'
|
||||
name: SomeHostName
|
||||
resources:
|
||||
system_load:
|
||||
data_group: system.load
|
||||
element: load15
|
||||
core0_freq:
|
||||
data_group: 'cpu.cpufreq'
|
||||
element: 'cpu0'
|
||||
icon: mdi:chip
|
||||
```
|
||||
|
@ -92,7 +92,7 @@ An example of how the Nmap scanner can be customized:
|
||||
|
||||
### {% linkable_title Linux capabilities %}
|
||||
|
||||
On Linux systems you can extend the functionality of Nmap, without having to run it as root, by using *Linux capabilities*. Be sure to specify the full path to wherever you installed Nmap:
|
||||
On Linux systems (such as Hass.io) you can extend the functionality of Nmap, without having to run it as root, by using *Linux capabilities*. Be sure to specify the full path to wherever you installed Nmap:
|
||||
|
||||
```bash
|
||||
$ sudo setcap cap_net_raw,cap_net_admin,cap_net_bind_service+eip /usr/bin/nmap
|
||||
|
@ -7,6 +7,10 @@ sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: home-assistant.png
|
||||
ha_category:
|
||||
- Notifications
|
||||
ha_qa_scale: internal
|
||||
ha_release: 0.7
|
||||
---
|
||||
|
||||
@ -14,19 +18,7 @@ The `notify` component makes it possible to send notifications to a wide variety
|
||||
|
||||
If you want to send notifications to the Home Assistant Web Interface you may use the [Persistent Notification Component](/components/persistent_notification/).
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
notify:
|
||||
- platform: pushbullet
|
||||
name: NOTIFY_NAME
|
||||
api_key: YOUR_API_KEY
|
||||
```
|
||||
|
||||
The **name** parameter is optional but needed if you want to use multiple platforms. The platform will be exposed as service `notify.<name>`. The name will default to `notify` if not supplied.
|
||||
|
||||
### {% linkable_title Service %}
|
||||
## {% linkable_title Service %}
|
||||
|
||||
Once loaded, the `notify` platform will expose a service that can be called to send notifications.
|
||||
|
||||
|
@ -24,17 +24,9 @@ By default the integration will listen for incoming messages from OwnTracks via
|
||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/UieAQ8sC6GY" frameborder="0" allowfullscreen></iframe>
|
||||
</div>
|
||||
|
||||
### {% linkable_title Configuring the component %}
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
1. Open the Home Assistant frontend
|
||||
1. Open Settings -> integrations
|
||||
1. If you see an Owntracks component under 'Configured', delete it.
|
||||
- Click on it.
|
||||
- Click on the trashcan icon in the upper right corner.
|
||||
1. Now, look for Owntracks in 'Setup new integration' and click on CONFIGURE.
|
||||
1. The login credentials and configuration for owntracks will be presented to you.
|
||||
in a popup window. You will need these in the configuration for the app as mentioned below.
|
||||
1. Save these credentials somewhere, as there is no way to get it back at a later point in time if it is lost, besides repeating step 1-5
|
||||
To configure OwnTracks, you must set it up via the integrations panel in the configuration screen. This will give you the webhook URL to use during mobile device configuration (below).
|
||||
|
||||
### {% linkable_title Configuring the app - Android %}
|
||||
|
||||
@ -43,7 +35,7 @@ By default the integration will listen for incoming messages from OwnTracks via
|
||||
In the OwnTracks app, open sidebar and click on preferences, then on connection. Change the following settings:
|
||||
|
||||
- Mode: Private HTTP
|
||||
- Host: `<URL given to you when setting up the integration above>`
|
||||
- Host: `<URL given to you when setting up the integration>`
|
||||
- Identification:
|
||||
- Username: `<Username>`
|
||||
- Password: Can be left blank.
|
||||
@ -167,19 +159,3 @@ By default, any Owntracks user connected to Home Assistant can export their wayp
|
||||
|
||||
1. The configuration variable `waypoints` can be set to `false` which will disable importing waypoints for all users.
|
||||
2. The configuration variable `waypoint_whitelist` can contain a list of users who are allowed to import waypoints.
|
||||
|
||||
## {% linkable_title Using Owntracks with other device trackers %}
|
||||
|
||||
Owntracks can also be used with other 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 Owntracks 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 app configuration. More details about this config can found in [device tracker](/components/device_tracker/).
|
||||
|
||||
An example showing the inclusion of the `mac` field for multiple component tracking. The `mac` field will need to be added to the `owntracks` device and will enable tracking by all components 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: true
|
||||
hide_if_away: false
|
||||
```
|
||||
|
@ -52,6 +52,10 @@ If the home assistant server is behind your firewall with only the http(s) port
|
||||
|
||||
Another way of securing the port is to set `host` to localhost and have a secured SSH TCP tunnel with a client certificate for access from the outside internet.
|
||||
|
||||
### {% linkable_title Memory Use %}
|
||||
|
||||
There have been reports of continually increasing memory use while the debugger is running, although this doesn't seem to appear on all systems. Only configure the debugger on a persistent server when it's actually required.
|
||||
|
||||
### {% linkable_title Waiting at startup %}
|
||||
|
||||
If you want to debug something in the boot-up sequence, configure the component to wait for a connection first:
|
||||
|
@ -23,6 +23,10 @@ There is currently support for the following device types within Home Assistant:
|
||||
- [Sensor](#sensor)
|
||||
- [Notifications](#notifications)
|
||||
|
||||
<p class='note'>
|
||||
The free tier is [limited](https://docs.pushbullet.com/#push-limit) to 500 pushes per month.
|
||||
</p>
|
||||
|
||||
### {% linkable_title Sensor %}
|
||||
|
||||
The `pushbullet` sensor platform reads messages from [Pushbullet](https://www.pushbullet.com/), a free service to send information between your phones, browsers, and friends. This sensor platform provides sensors that show the properties of the latest received Pushbullet notification mirror.
|
||||
@ -83,7 +87,7 @@ All properties will be displayed as attributes. The properties array are just fo
|
||||
|
||||
## {% linkable_title Notifications %}
|
||||
|
||||
The `pushbullet` notification platform sends messages to [Pushbullet](https://www.pushbullet.com/), a free service to send information between your phones, browsers, and friends.
|
||||
The `pushbullet` notification platform sends messages to [Pushbullet](https://www.pushbullet.com/), a free service to send information between your phones, browsers, and friends. The free tier is [limited](https://docs.pushbullet.com/#push-limit) to 500 pushes per month.
|
||||
|
||||
To enable Pushbullet notifications in your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
@ -191,4 +195,4 @@ action:
|
||||
|
||||
<p class='note'>
|
||||
Don't forget to [whitelist external directories](/docs/configuration/basic/), so Home Assistant has access to them.
|
||||
</p>
|
||||
</p>
|
||||
|
@ -106,11 +106,11 @@ friendly_name:
|
||||
required: false
|
||||
type: string
|
||||
trigger_time:
|
||||
description: The default duration to sprinkle the zone.
|
||||
description: The default duration to sprinkle the zone in minutes.
|
||||
required: true
|
||||
type: integer
|
||||
scan_interval:
|
||||
description: How fast to refresh the switch.
|
||||
description: How fast to refresh the switch in minutes.
|
||||
required: false
|
||||
type: integer
|
||||
{% endconfiguration %}
|
||||
|
@ -78,7 +78,7 @@ i2c_hats:
|
||||
default: false
|
||||
type: boolean
|
||||
device_class:
|
||||
description: See device classes in [binary_sensor component](/components/binary_sensor/).
|
||||
description: Sets the [class of the device](/components/binary_sensor/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
default: "None"
|
||||
type: string
|
||||
|
@ -16,7 +16,7 @@ ha_release: 0.94
|
||||
ha_iot_class: Local Push
|
||||
---
|
||||
|
||||
The `rpi_gpio` component is the base for all related GPIO platforms in Home Assistant. There is no setup needed for the component itself, for the platforms please check their corresponding pages.
|
||||
The `rpi_gpio` component is the base for all related GPIO platforms in Home Assistant. There is no setup needed for the component itself, for the platforms please check their corresponding sections.
|
||||
|
||||
## {% linkable_title Binary Sensor %}
|
||||
|
||||
@ -28,21 +28,15 @@ To use your Remote Raspberry Pi's GPIO in your installation, add the following t
|
||||
# Example configuration.yaml entry
|
||||
binary_sensor:
|
||||
- platform: remote_rpi_gpio
|
||||
address: <address of remote pi>
|
||||
host: IP_ADDRESS_OF_REMOTE_PI
|
||||
ports:
|
||||
11: PIR Office
|
||||
12: PIR Bedroom
|
||||
|
||||
switch:
|
||||
- platform: remote_rpi_gpio
|
||||
address: <address of remote pi>
|
||||
ports:
|
||||
4: Garage Relay
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
address:
|
||||
description: IP Address of remote Raspberry Pi
|
||||
host:
|
||||
description: IP Address of remote Raspberry Pi.
|
||||
required: true
|
||||
type: string
|
||||
ports:
|
||||
@ -81,15 +75,15 @@ To use your Remote Raspberry Pi's GPIO in your installation, add the following t
|
||||
# Example configuration.yaml entry
|
||||
switch:
|
||||
- platform: remote_rpi_gpio
|
||||
address: 192.168.0.123
|
||||
host: IP_ADDRESS_OF_REMOTE_PI
|
||||
ports:
|
||||
11: Fan Office
|
||||
12: Light Desk
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
address:
|
||||
description: IP Address of remote Raspberry Pi
|
||||
host:
|
||||
description: IP Address of remote Raspberry Pi.
|
||||
required: true
|
||||
type: string
|
||||
ports:
|
||||
@ -114,14 +108,14 @@ For more details about the GPIO layout, visit the Wikipedia [article](https://en
|
||||
Note that a pin managed by HASS is expected to be exclusive to HASS.
|
||||
</p>
|
||||
|
||||
A common question is what does Port refer to, this number is the actual GPIO #, not the pin #.
|
||||
A common question is what does port refer to, this number is the actual GPIO #, not the pin #.
|
||||
For example, if you have a relay connected to pin 11 its GPIO # is 17.
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
switch:
|
||||
- platform: remote_rpi_gpio
|
||||
address: 192.168.0.123
|
||||
host: 192.168.0.123
|
||||
ports:
|
||||
17: Speaker Relay
|
||||
```
|
||||
|
@ -55,9 +55,7 @@ name:
|
||||
type: string
|
||||
default: REST Sensor
|
||||
device_class:
|
||||
description: >
|
||||
The [type/class](/components/sensor/) of
|
||||
the sensor to set the icon in the frontend.
|
||||
description: Sets the [class of the device](/components/sensor/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: string
|
||||
value_template:
|
||||
|
@ -7,12 +7,16 @@ sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: home-assistant.png
|
||||
ha_category:
|
||||
- Sensor
|
||||
ha_qa_scale: internal
|
||||
ha_release: 0.7
|
||||
---
|
||||
|
||||
Sensors are gathering information about states and conditions.
|
||||
|
||||
Home Assistant currently supports a wide range of sensors. They are able to display information which are provides by Home Assistant directly, are gathered from web services, and, of course, physical devices. Please check the sidebar for a full list of supported sensor platforms.
|
||||
Home Assistant currently supports a wide range of sensors. They are able to display information which are provides by Home Assistant directly, are gathered from web services, and, of course, physical devices.
|
||||
|
||||
## {% linkable_title Device Class %}
|
||||
|
||||
|
@ -35,7 +35,7 @@ The queue is not snapshotted and must be left untouched until the restore. Using
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | The speakers to snapshot.
|
||||
| `with_group` | yes | Should we also snapshot the group layout and the state of other speakers in the group.
|
||||
| `with_group` | yes | Should we also snapshot the group layout and the state of other speakers in the group, defaults to true.
|
||||
|
||||
|
||||
### {% linkable_title Service `sonos.restore` %}
|
||||
@ -53,7 +53,7 @@ A cloud queue cannot be restarted. This includes queues started from within Spot
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | String or list of `entity_id`s that should have their snapshot restored.
|
||||
| `with_group` | yes | Should we also restore the group layout and the state of other speakers in the group.
|
||||
| `with_group` | yes | Should we also restore the group layout and the state of other speakers in the group, defaults to true.
|
||||
|
||||
### {% linkable_title Service `sonos.join` %}
|
||||
|
||||
|
33
source/_components/ssdp.markdown
Normal file
33
source/_components/ssdp.markdown
Normal file
@ -0,0 +1,33 @@
|
||||
---
|
||||
layout: page
|
||||
title: "SSDP - Simple Service Discovery Protocol"
|
||||
description: "Discover integrations on the network using the SSDP protocol."
|
||||
date: 2019-06-02 18:50
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
ha_category:
|
||||
- Network
|
||||
ha_release: 0.94
|
||||
---
|
||||
|
||||
The `ssdp` "Simple Service Discovery Protocol" integration will scan the network for supported devices and services. Discovered integrations will show up in the discovered section on the integrations page in the config panel.
|
||||
|
||||
Integrations can opt-in to be found by adding [an SSDP section](https://developers.home-assistant.io/docs/en/next/creating_integration_manifest.html#ssdp) to their manifest.json.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
To integrate this into Home Assistant, add the following section to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
ssdp:
|
||||
```
|
||||
|
||||
## {% linkable_title Discovered Integrations %}
|
||||
|
||||
The following integrations are automatically discovered by the SSDP integration:
|
||||
|
||||
- Deconz
|
||||
- Philips Hue
|
@ -7,6 +7,10 @@ sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: home-assistant.png
|
||||
ha_category:
|
||||
- Switch
|
||||
ha_qa_scale: internal
|
||||
ha_release: 0.7
|
||||
---
|
||||
|
||||
|
@ -54,9 +54,7 @@ sensors:
|
||||
required: false
|
||||
type: string
|
||||
device_class:
|
||||
description: >
|
||||
The [type/class](/components/binary_sensor/#device-class) of
|
||||
the sensor to set the icon in the frontend.
|
||||
description: Sets the [class of the device](/components/binary_sensor/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: string
|
||||
friendly_name:
|
||||
|
@ -184,3 +184,23 @@ utility_meter:
|
||||
source: sensor.gas_consumption
|
||||
cycle: monthly
|
||||
```
|
||||
|
||||
Additionally, you can add template sensors to compute daily and monthly total usage.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
sensor:
|
||||
- platform: template
|
||||
sensors:
|
||||
daily_power:
|
||||
friendly_name: Daily Power
|
||||
icon: mdi:counter
|
||||
unit_of_measurement: kWh
|
||||
value_template: {{ states('sensor.daily_power_offpeak')|float + states('sensor.daily_power_peak')|float }}
|
||||
monthly_power:
|
||||
friendly_name: Monthly Power
|
||||
icon: mdi:counter
|
||||
unit_of_measurement: kWh
|
||||
value_template: {{ states('sensor.monthly_power_offpeak')|float + states('sensor.monthly_power_peak')|float }}
|
||||
```
|
||||
{% endraw %}
|
||||
|
@ -250,7 +250,7 @@ The information output is:
|
||||
|
||||
To fetch the token follow these instructions depending on your mobile phone platform.
|
||||
|
||||
1. Configure the robot with the Mi-Home app.
|
||||
1. Configure the robot with [Mi Home version 5.0.30](https://www.apkmirror.com/apk/xiaomi-inc/mihome/mihome-5-0-30-release/).
|
||||
2. Download and extract the [MiToolKit.zip](https://github.com/ultrara1n/MiToolkit/releases).
|
||||
3. Enable developer mode and USB debugging on the Android phone and plug it into the computer.
|
||||
4. Change the MiToolKit language to English if you need to.
|
||||
@ -278,7 +278,7 @@ source /srv/homeassistant/bin/activate
|
||||
|
||||
To fetch the token follow these instructions depending on your mobile phone platform.
|
||||
|
||||
1. Configure the robot with the Mi-Home app.
|
||||
1. Configure the robot with [Mi Home version 5.0.30](https://www.apkmirror.com/apk/xiaomi-inc/mihome/mihome-5-0-30-release/).
|
||||
2. Enable developer mode, USB debugging and plug the Android phone into the computer.
|
||||
3. Get ADB by running `apt-get install android-tools-adb` or `apt-get install adb`.
|
||||
4. `adb devices` should list your device. Consult the ADB manual if necessary.
|
||||
@ -313,7 +313,7 @@ source /srv/homeassistant/bin/activate
|
||||
|
||||
To fetch the token follow these instructions depending on your mobile phone platform.
|
||||
|
||||
1. Configure the robot with the Mi-Home app.
|
||||
1. Configure the robot with [Mi Home version 5.0.30](https://www.apkmirror.com/apk/xiaomi-inc/mihome/mihome-5-0-30-release/).
|
||||
2. Enable developer mode, USB debugging and root permission only for ADB on the Android phone and plug it into the computer.
|
||||
3. Get ADB (e.g, using `apt-get install android-tools-adb`).
|
||||
4. The command `adb devices` should list your device.
|
||||
@ -326,7 +326,7 @@ To fetch the token follow these instructions depending on your mobile phone plat
|
||||
|
||||
### {% linkable_title iOS %}
|
||||
|
||||
1. Configure the robot with the Mi-Home app.
|
||||
1. Configure the robot with the Mi Home app.
|
||||
2. Using iTunes, create an unencrypted backup of your iPhone.
|
||||
3. Install [iBackup Viewer](https://www.imactools.com/iphonebackupviewer/), open it, and open your backup.
|
||||
4. Open the "Raw Data" module.
|
||||
@ -351,7 +351,7 @@ To fetch the token follow these instructions depending on your mobile phone plat
|
||||
|
||||
1. Configure the robot with the Mi-Home app.
|
||||
2. Install [BlueStacks](https://www.bluestacks.com).
|
||||
3. Set up the Mi-Home app in BlueStacks and login to synchronize devices.
|
||||
3. Set up [Mi Home version 5.0.30](https://www.apkmirror.com/apk/xiaomi-inc/mihome/mihome-5-0-30-release/) in BlueStacks and login to synchronize devices.
|
||||
4. Use [BlueStacks Tweaker](https://forum.xda-developers.com/general/general/bluestacks-tweaker-2-tool-modifing-t3622681) to access the filesystem and retrieve the token.
|
||||
|
||||
### {% linkable_title Selecting token manually (Windows and Android) %}
|
||||
@ -361,10 +361,10 @@ The following instruction explained an alternative method, in case the MiToolKit
|
||||
Software Required:
|
||||
|
||||
- Android ADB is contained in [Android SDK](https://developer.android.com/studio/releases/platform-tools)
|
||||
- [Mi-Home version 5.0.30](https://www.apkmirror.com/apk/xiaomi-inc/mihome/mihome-5-0-30-release/)
|
||||
- [Mi Home version 5.0.30](https://www.apkmirror.com/apk/xiaomi-inc/mihome/mihome-5-0-30-release/)
|
||||
- [Android Backup Extractor](https://sourceforge.net/projects/adbextractor/)
|
||||
- [SQLite Browser](https://sqlitebrowser.org/)
|
||||
1. Install an old Version of MiHome (e.g. Mi-Home version 5.0.30) on your Android-Device
|
||||
1. Install an old Version of MiHome (e.g. Mi Home version 5.0.30) on your Android-Device
|
||||
2. Open MiHome, log-in and add your devices
|
||||
3. Enable USB-Debugging on your Android
|
||||
4. Create a backup from your MiHome App, by using adb
|
||||
|
@ -68,7 +68,7 @@ devices:
|
||||
required: false
|
||||
type: string
|
||||
device_class:
|
||||
description: "The [type or class of the sensor](/components/binary_sensor/) to set the icon in the frontend."
|
||||
description: Sets the [class of the device](/components/binary_sensor/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: device_class
|
||||
off_delay:
|
||||
|
@ -14,7 +14,7 @@ ha_release: 0.94
|
||||
---
|
||||
|
||||
The `watson_tts` text-to-speech platform that works with [IBM Watson Cloud](https://www.ibm.com/watson/services/text-to-speech/) to create the spoken output.
|
||||
Polly is a paid service via IBM Cloud but there is a decent [free tier](https://www.ibm.com/cloud/watson-text-to-speech/pricing) which offers 10000 free characters every month.
|
||||
Watson is a paid service via IBM Cloud but there is a decent [free tier](https://www.ibm.com/cloud/watson-text-to-speech/pricing) which offers 10000 free characters every month.
|
||||
|
||||
## {% linkable_title Setup %}
|
||||
|
||||
|
@ -7,53 +7,21 @@ sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: avahi.png
|
||||
ha_category:
|
||||
- Network
|
||||
ha_qa_scale: internal
|
||||
ha_release: 0.18
|
||||
---
|
||||
|
||||
The `zeroconf` integration exposes your Home Assistant to the local network using [Zeroconf](https://en.wikipedia.org/wiki/Zero-configuration_networking). It can also discover and automatically configure devices on your network. Zeroconf is also sometimes known as Bonjour, Rendezvous, and Avahi.
|
||||
The `zeroconf` integration will scan the network for supported devices and services. Discovered integrations will show up in the discovered section on the integrations page in the config panel. It will also make Home Assistant discoverable for other services in the network. Zeroconf is also sometimes known as Bonjour, Rendezvous, and Avahi.
|
||||
|
||||
Integrations can opt-in to be found by adding either [a Zeroconf section](https://developers.home-assistant.io/docs/en/next/creating_integration_manifest.html#zeroconf) or [a HomeKit section](https://developers.home-assistant.io/docs/en/next/creating_integration_manifest.html#homekit) to their manifest.json.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
To integrate this into Home Assistant, add the following section to your `configuration.yaml` file:
|
||||
To have Home Assistant scan for integrations using zeroconf and HomeKit, add the following section to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
zeroconf:
|
||||
```
|
||||
|
||||
### {% linkable_title Discoverable services %}
|
||||
|
||||
Currently the `zeroconf` integration can detect:
|
||||
|
||||
* [Axis Communications security devices](/components/axis/)
|
||||
* [ESPHome](/components/esphome/)
|
||||
* [HomeKit](/components/homekit_controller/)
|
||||
* [IKEA Trådfri (Tradfri)](/components/tradfri/)
|
||||
|
||||
### {% linkable_title Discovering Home Assistant %}
|
||||
|
||||
The registration will include meta-data about the Home Assistant instance, including a base URL that can be used to access Home Assistant, the currently running Home Assistant version, and whether an API password is needed to access the instance. The examples below show two ways to retrieve the details for testing.
|
||||
|
||||
```bash
|
||||
$ avahi-browse -alr
|
||||
+ eth0 IPv4 Home _home-assistant._tcp local
|
||||
= eth0 IPv4 Home _home-assistant._tcp local
|
||||
hostname = [Home._home-assistant._tcp.local]
|
||||
address = [192.168.0.70]
|
||||
port = [8123]
|
||||
txt = ["base_url=http://192.168.0.70:8123" "requires_api_password=true" "version=0.41.0"]
|
||||
```
|
||||
|
||||
```bash
|
||||
$ avahi-discover
|
||||
Browsing domain 'local' on -1.-1 ...
|
||||
Browsing for services of type '_home-assistant._tcp' in domain 'local' on 4.0 ...
|
||||
Found service 'Home' of type '_home-assistant._tcp' in domain 'local' on 4.0.
|
||||
Service data for service 'Home' of type '_home-assistant._tcp' in domain 'local' on 4.0:
|
||||
Host Home._home-assistant._tcp.local (192.168.0.70), port 8123, TXT data:
|
||||
['requires_api_password=true', 'base_url=http://192.168.0.70:8123', 'version=0.41.0']
|
||||
```
|
||||
|
@ -104,3 +104,15 @@ enable_quirks:
|
||||
To add new devices to the network, call the `permit` service on the `zha` domain. Do this by clicking the Service icon in Developer tools and typing `zha.permit` in the **Service** dropdown box. Next, follow the device instructions for adding, scanning or factory reset.
|
||||
|
||||
In case you want to add Philips Hue bulbs that have previously been added to another bridge, have a look at: [https://github.com/vanviegen/hue-thief/](https://github.com/vanviegen/hue-thief/)
|
||||
|
||||
## {% linkable_title Troubleshooting %}
|
||||
|
||||
### {% linkable_title ZHA Start up issue with Home-Assistant Docker/Hass.io installs on linux hosts %}
|
||||
|
||||
On Linux hosts ZHA can fail to start during HA startup or restarts because the zigbee USB device is being claimed by the host's modemmanager service. To fix this disable the modemmanger on the host system.
|
||||
|
||||
To remove modemmanager from an Debian/Ubuntu host run this command:
|
||||
|
||||
```bash
|
||||
sudo apt-get purge modemmanager
|
||||
```
|
||||
|
@ -15,10 +15,10 @@ This is a [React](https://facebook.github.io/react/) implementation of [TodoMVC]
|
||||
- It uses React to render the data.
|
||||
- It hooks into Home Assistant JS which means updates pushed from the server are instantly rendered.
|
||||
- It accesses properties made available from Polymer.
|
||||
- It uses the user configuration for the component in the `configuration.yaml` file for rendering.
|
||||
- It uses the user configuration for the integration in the `configuration.yaml` file for rendering.
|
||||
- It allows toggling the sidebar.
|
||||
|
||||
Download the source [here](https://github.com/home-assistant/example-custom-config/blob/master/panels/react.html). Copy the file to `<config dir>/panels/` (you might have to create the directory if it doesn't exist).
|
||||
[Download the source for React Starter Kit here](https://github.com/home-assistant/custom-panel-starter-kit-react). Copy the file to `<config dir>/panels/` (you might have to create the directory if it doesn't exist).
|
||||
|
||||
Create an entry for the panel in your `configuration.yaml` file to enable it.
|
||||
|
||||
|
@ -48,7 +48,7 @@ automation:
|
||||
service: notify.pushbullet
|
||||
data_template:
|
||||
title: 'New Home Assistant Release'
|
||||
target: 'YOUR_TARGET_HERE' #See Pushbullet component for usage
|
||||
target: 'YOUR_TARGET_HERE' #See Pushbullet integration for usage
|
||||
message: "Home Assistant {% raw %} {{ states.updater.updater.state }} {% endraw %} is now available."
|
||||
```
|
||||
|
||||
|
@ -10,7 +10,7 @@ footer: true
|
||||
ha_category: Automation in Python Examples
|
||||
---
|
||||
|
||||
Example component to target an `entity_id` to:
|
||||
Example integration to target an `entity_id` to:
|
||||
|
||||
- turn it on at 7AM in the morning
|
||||
- turn it on if anyone comes home and it is off
|
||||
@ -57,7 +57,7 @@ from homeassistant.helpers.event import (async_track_state_change,
|
||||
# The domain of your component. Should be equal to the name of your component.
|
||||
DOMAIN = "example"
|
||||
|
||||
# List of component names (string) your component depends upon.
|
||||
# List of integration names (string) your integration depends upon.
|
||||
# We depend on group because group will be loaded after all the components that
|
||||
# initialize devices have been setup.
|
||||
DEPENDENCIES = ['group', 'device_tracker', 'light']
|
||||
|
@ -24,7 +24,7 @@ import homeassistant.loader as loader
|
||||
# The domain of your component. Should be equal to the name of your component.
|
||||
DOMAIN = 'hello_mqtt'
|
||||
|
||||
# List of component names (string) your component depends upon.
|
||||
# List of integration names (string) your integration depends upon.
|
||||
DEPENDENCIES = ['mqtt']
|
||||
|
||||
|
||||
@ -63,7 +63,7 @@ def setup(hass, config):
|
||||
return True
|
||||
```
|
||||
|
||||
Load the component by adding the following to your `configuration.yaml`. When your component is loaded, a new entity should popup and there should be a new service available to call.
|
||||
Load the integration by adding the following to your `configuration.yaml`. When your integration is loaded, a new entity should popup and there should be a new service available to call.
|
||||
|
||||
```yaml
|
||||
# configuration.yaml entry
|
||||
|
@ -10,9 +10,9 @@ footer: true
|
||||
ha_category: Automation in Python Examples
|
||||
---
|
||||
|
||||
This example component will detect intruders. It does so by checking if lights are being turned on while there is no one at home. When this happens it will turn the lights red, flash them for 30 seconds and send a message via [the notify component](/components/notify/). It will also flash a specific light when a known person comes home.
|
||||
This example integration will detect intruders. It does so by checking if lights are being turned on while there is no one at home. When this happens it will turn the lights red, flash them for 30 seconds and send a message via [the notify component](/components/notify/). It will also flash a specific light when a known person comes home.
|
||||
|
||||
This component depends on the components [device_tracker](/components/device_tracker/) and [light](/components/light/) being setup.
|
||||
This integration depends on the integrations [device_tracker](/components/device_tracker/) and [light](/components/light/) being setup.
|
||||
|
||||
To set it up, add the following lines to your `configuration.yaml` file:
|
||||
|
||||
|
@ -12,7 +12,7 @@ ha_category: Automation Examples
|
||||
|
||||
### {% linkable_title iOS Devices %}
|
||||
|
||||
If you have a device running iOS (iPhone, iPad, etc), The [iCloud](/components/device_tracker.icloud/) component is gathering various details about your device including the battery level. To display it in the Frontend use a [template sensor](/components/sensor.template/). You can also use the `battery` [sensor device class](/components/sensor/#device-class) to dynamically change the icon with the battery level.
|
||||
If you have a device running iOS (iPhone, iPad, etc), The [iCloud](/components/device_tracker.icloud/) integration is gathering various details about your device including the battery level. To display it in the Frontend use a [template sensor](/components/sensor.template/). You can also use the `battery` [sensor device class](/components/sensor/#device-class) to dynamically change the icon with the battery level.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
|
@ -73,7 +73,7 @@ If you see this, you need to add an [`api_password`](/components/http/#api_passw
|
||||
|
||||
### {% linkable_title Bearer token informational messages %}
|
||||
|
||||
If you see the following, then this is a message for component developers, to tell them they need to update how they authenticate to Home Assistant. As an end user you don't need to do anything:
|
||||
If you see the following, then this is a message for integration developers, to tell them they need to update how they authenticate to Home Assistant. As an end user you don't need to do anything:
|
||||
|
||||
```txt
|
||||
INFO (MainThread) [homeassistant.components.http.auth] You need to use a bearer token to access /blah/blah from 192.0.2.4
|
||||
|
@ -75,15 +75,17 @@ Add Notify MFA to your `configuration.yaml` file like this:
|
||||
homeassistant:
|
||||
auth_mfa_modules:
|
||||
- type: notify
|
||||
include:
|
||||
- notify_entity
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
exclude:
|
||||
description: The list of notifying services you want to exclude.
|
||||
description: The list of notifying service entities you want to exclude.
|
||||
required: false
|
||||
type: list
|
||||
include:
|
||||
description: The list of notifying services you want to include.
|
||||
description: The list of notifying service entities you want to include.
|
||||
required: false
|
||||
type: list
|
||||
message:
|
||||
|
@ -49,14 +49,14 @@ Actions are all about calling services. To explore the available services open t
|
||||
|
||||
### {% linkable_title Automation initial state %}
|
||||
|
||||
When you create a new automation, it will be disabled (and therefore won't trigger) unless you explicitly add `initial_state: true` to it or turn it on manually via UI/another automation/developer tools.
|
||||
When you create a new automation, it will be enabled unless you explicitly add `initial_state: false` to it or turn it off manually via UI/another automation/developer tools. In case automations need to be always enabled or disabled when Home Assistant starts, then you can set the `initial_state` in your automations. Otherwise, the previous state will be restored.
|
||||
|
||||
In case automations need to be enabled or disabled upon Home Assistant restart, then you have to set the `initial_state` in your automations. Otherwise, the previous state will be restored. Please note that if for some reason Home Assistant cannot restore the previous state, e.g., because of an interrupted or failed startup, it will result in the automation being disabled on the next Home Assistant startup.
|
||||
Please note that if for some reason Home Assistant cannot restore the previous state, it will result in the automation being enabled.
|
||||
|
||||
```text
|
||||
automation:
|
||||
- alias: Automation Name
|
||||
initial_state: true
|
||||
initial_state: false
|
||||
trigger:
|
||||
...
|
||||
```
|
||||
|
@ -52,7 +52,7 @@ config:
|
||||
|
||||
The automation editor reads and writes to the file `automations.yaml` in the root of your [configuration](/docs/configuration/) folder.
|
||||
Currently, both the name of this file and its location are fixed.
|
||||
Make sure that you have set up the automation component to read from it:
|
||||
Make sure that you have set up the automation integration to read from it:
|
||||
|
||||
```yaml
|
||||
# Configuration.yaml example
|
||||
@ -103,6 +103,6 @@ For example, the below automation will be triggered when the sun goes from below
|
||||
```
|
||||
|
||||
<p class='note'>
|
||||
Any comments in the YAML file will be lost when you update an automation via the editor.
|
||||
Any comments in the YAML file will be lost and templates will be reformatted when you update an automation via the editor.
|
||||
</p>
|
||||
|
||||
|
@ -16,7 +16,7 @@ Triggers are what starts the processing of an automation rule. It is possible to
|
||||
|
||||
Triggers when an event is being processed. Events are the raw building blocks of Home Assistant. You can match events on just the event name or also require specific event data to be present.
|
||||
|
||||
Events can be fired by components or via the API. There is no limitation to the types. A list of built-in events can be found [here](/docs/configuration/events/).
|
||||
Events can be fired by integrations or via the API. There is no limitation to the types. A list of built-in events can be found [here](/docs/configuration/events/).
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
@ -130,9 +130,17 @@ automation:
|
||||
|
||||
### {% linkable_title Sun trigger %}
|
||||
|
||||
Triggers when the sun is setting or rising. An optional time offset can be given to have it trigger a set time before or after the sun event (i.e. 45 minutes before sunset, when dusk is setting in).
|
||||
#### {% linkable_title Sunset / Sunrise trigger %}
|
||||
|
||||
Sunrise as a trigger may need special attention as explained in time triggers below. This is due to the date changing at midnight and sunrise is at an earlier time on the following day.
|
||||
Triggers when the sun is setting or rising, i.e. when the sun elevation reaches 0°.
|
||||
|
||||
An optional time offset can be given to have it trigger a set time before or after the sun event (e.g. 45 minutes before sunset).
|
||||
|
||||
<p class='note'>
|
||||
Since the duration of twilight is different throughout the year, it is recommended to use [sun elevation triggers][sun_elevation_trigger] instead of `sunset` or `sunrise` with a time offset to trigger automations during dusk or dawn.
|
||||
</p>
|
||||
|
||||
[sun_elevation_trigger]: /docs/automation/trigger/#sun-elevation-trigger
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
@ -140,11 +148,13 @@ automation:
|
||||
platform: sun
|
||||
# Possible values: sunset, sunrise
|
||||
event: sunset
|
||||
# Optional time offset. This example is 45 minutes.
|
||||
# Optional time offset. This example will trigger 45 minutes before sunrise.
|
||||
offset: '-00:45:00'
|
||||
```
|
||||
|
||||
Sometimes you may want more granular control over an automation based on the elevation of the sun. This can be used to layer automations to occur as the sun lowers on the horizon or even after it is below the horizon. This is also useful when the "sunset" event is not dark enough outside and you would like the automation to run later at a precise solar angle instead of the time offset such as turning on exterior lighting. For most things, a general number like -4 degrees is suitable and is used in this example:
|
||||
#### {% linkable_title Sun elevation trigger %}
|
||||
|
||||
Sometimes you may want more granular control over an automation than simply sunset or sunrise and specify an exact elevation of the sun. This can be used to layer automations to occur as the sun lowers on the horizon or even after it is below the horizon. This is also useful when the "sunset" event is not dark enough outside and you would like the automation to run later at a precise solar angle instead of the time offset such as turning on exterior lighting. For most things intended to trigger during dusk or dawn, a number between 0° and -6° is suitable; -4° is used in this example:
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
@ -162,11 +172,15 @@ automation:
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
If you want to get more precise, start with the US Naval Observatory [tool](http://aa.usno.navy.mil/data/docs/AltAz.php) that will help you estimate what the solar angle will be at any specific time. Then from this, you can select from the defined twilight numbers. Although the actual amount of light depends on weather, topography and land cover, they are defined as:
|
||||
If you want to get more precise, start with the US Naval Observatory [tool](http://aa.usno.navy.mil/data/docs/AltAz.php) which will help you estimate what the solar elevation will be at any specific time. Then from this, you can select from the defined twilight numbers.
|
||||
|
||||
- Civil twilight: Solar angle > -6°
|
||||
- Nautical twilight: Solar angle > -12°
|
||||
- Astronomical twilight: Solar angle > -18°
|
||||
Although the actual amount of light depends on weather, topography and land cover, they are defined as:
|
||||
|
||||
- Civil twilight: 0° > Solar angle > -6°
|
||||
|
||||
This is what is meant by twilight for the average person: Under clear weather conditions, civil twilight approximates the limit at which solar illumination suffices for the human eye to clearly distinguish terrestrial objects. Enough illumination renders artificial sources unnecessary for most outdoor activities.
|
||||
- Nautical twilight: 6° > Solar angle > -12°
|
||||
- Astronomical twilight: 12° > Solar angle > -18°
|
||||
|
||||
A very thorough explanation of this is available in the Wikipedia article about the [Twilight](https://en.wikipedia.org/wiki/Twilight).
|
||||
|
||||
|
@ -19,7 +19,7 @@ INFO [homeassistant.components.automation] Initialized rule Rainy Day
|
||||
INFO [homeassistant.components.automation] Initialized rule Rain is over
|
||||
```
|
||||
|
||||
The Logbook component will show a line entry when an automation is triggered. You can look at the previous entry to determine which trigger in the rule triggered the event.
|
||||
The Logbook integration will show a line entry when an automation is triggered. You can look at the previous entry to determine which trigger in the rule triggered the event.
|
||||
|
||||

|
||||
|
||||
|
@ -14,7 +14,7 @@ Home Assistant can run as a daemon within init.d with the script below.
|
||||
|
||||
### {% linkable_title 1. Copy script %}
|
||||
|
||||
Copy either the daemon script or the Python environment scrip at the end of this page to `/etc/init.d/hass-daemon` depending on your installation.
|
||||
Copy either the daemon script or the Python environment script at the end of this page to `/etc/init.d/hass-daemon` depending on your installation.
|
||||
|
||||
After that, set the script to be executable:
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Updater"
|
||||
description: "Details what the updater component is reporting about your Home Assistant instance."
|
||||
description: "Details what the updater integration is reporting about your Home Assistant instance."
|
||||
date: 2016-10-22 08:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
@ -12,7 +12,7 @@ redirect_from: /details/updater/
|
||||
|
||||
Starting with 0.31 the [updater component](/components/updater/) sends an optional report about Home Assistant instance.
|
||||
|
||||
If you want to opt-in to include component information, add `include_used_components` to your config. This will allow the Home Assistant developers to focus development efforts on the most popular components.
|
||||
If you want to opt-in to include integration information, add `include_used_components` to your config. This will allow the Home Assistant developers to focus development efforts on the most popular components.
|
||||
|
||||
```yaml
|
||||
updater:
|
||||
|
@ -25,7 +25,7 @@ The location of the folder differs between operating systems:
|
||||
|
||||
If you want to use a different folder for configuration, use the config command line parameter: `hass --config path/to/config`.
|
||||
|
||||
Inside your configuration folder is the file `configuration.yaml`. This is the main file that contains components to be loaded with their configurations. Throughout the documentation you will find snippets that you can add to your configuration file to enable functionality.
|
||||
Inside your configuration folder is the file `configuration.yaml`. This is the main file that contains integrations to be loaded with their configurations. Throughout the documentation you will find snippets that you can add to your configuration file to enable functionality.
|
||||
|
||||
If you run into trouble while configuring Home Assistant, have a look at the [configuration troubleshooting page](/getting-started/troubleshooting-configuration/) and at the [configuration.yaml examples](/cookbook/#example-configurationyaml).
|
||||
|
||||
|
@ -58,7 +58,7 @@ entity_picture:
|
||||
required: false
|
||||
type: string
|
||||
icon:
|
||||
description: Any icon from [MaterialDesignIcons.com](http://MaterialDesignIcons.com) ([Cheatsheet](https://cdn.materialdesignicons.com/3.5.95/)). Prefix name with `mdi:`, ie `mdi:home`.
|
||||
description: "Any icon from [MaterialDesignIcons.com](http://MaterialDesignIcons.com) ([Cheatsheet](https://cdn.materialdesignicons.com/3.5.95/)). Prefix name with `mdi:`, ie `mdi:home`. Note: Newer icons may not yet be available in the current Home Assistant release. You can check when an icon was added to MaterialDesignIcons.com at [MDI History](https://materialdesignicons.com/history)."
|
||||
required: false
|
||||
type: string
|
||||
assumed_state:
|
||||
|
@ -10,12 +10,12 @@ footer: true
|
||||
redirect_from: /topics/events/
|
||||
---
|
||||
|
||||
The core of Home Assistant is the event bus. The event bus allows any component to fire or listen for events. It is the core of everything. For example, any state change will be announced on the event bus as a `state_changed` event containing the previous and the new state of an entity.
|
||||
The core of Home Assistant is the event bus. The event bus allows any integration to fire or listen for events. It is the core of everything. For example, any state change will be announced on the event bus as a `state_changed` event containing the previous and the new state of an entity.
|
||||
|
||||
Home Assistant contains a few built-in events that are used to coordinate between various components.
|
||||
|
||||
### {% linkable_title Event `homeassistant_start` %}
|
||||
Event `homeassistant_start` is fired when all components from the configuration have been initialized. This is the event that will start the timer firing off `time_changed` events.
|
||||
Event `homeassistant_start` is fired when all integrations from the configuration have been initialized. This is the event that will start the timer firing off `time_changed` events.
|
||||
|
||||
<p class='note warning'>
|
||||
Starting 0.42, it is no longer possible to listen for event `homeassistant_start`. Use the 'homeassistant' [platform](/docs/automation/trigger) instead.
|
||||
@ -84,8 +84,8 @@ Field | Description
|
||||
|
||||
|
||||
### {% linkable_title Event `component_loaded` %}
|
||||
Event `component_loaded` is fired when a new component has been loaded and initialized.
|
||||
Event `component_loaded` is fired when a new integration has been loaded and initialized.
|
||||
|
||||
Field | Description
|
||||
----- | -----------
|
||||
`component` | Domain of the component that has just been initialized. Example: `light`.
|
||||
`component` | Domain of the integration that has just been initialized. Example: `light`.
|
||||
|
@ -10,7 +10,7 @@ footer: true
|
||||
redirect_from: /topics/packages/
|
||||
---
|
||||
|
||||
Packages in Home Assistant provide a way to bundle different component's configuration together. We already learned about the two configuration styles (specifying platforms entries together or individually) on the [adding devices](/docs/configuration/devices/) page. Both of these configuration methods require you to create the component key in the main `configuration.yaml` file. With packages we have a way to include different components, or different configuration parts using any of the `!include` directives introduced in [splitting the configuration](/docs/configuration/splitting_configuration).
|
||||
Packages in Home Assistant provide a way to bundle different component's configuration together. We already learned about the two configuration styles (specifying platforms entries together or individually) on the [adding devices](/docs/configuration/devices/) page. Both of these configuration methods require you to create the integration key in the main `configuration.yaml` file. With packages we have a way to include different components, or different configuration parts using any of the `!include` directives introduced in [splitting the configuration](/docs/configuration/splitting_configuration).
|
||||
|
||||
<p class='note tip'>
|
||||
Note that if you use packages for your configuration, the configuration reloading buttons in the configuration panel will not reload your packages.
|
||||
@ -26,7 +26,7 @@ homeassistant:
|
||||
...package configuration here...
|
||||
```
|
||||
|
||||
The package configuration can include: `switch`, `light`, `automation`, `groups`, or most other Home Assistant components including hardware platforms.
|
||||
The package configuration can include: `switch`, `light`, `automation`, `groups`, or most other Home Assistant integrations including hardware platforms.
|
||||
|
||||
It can be specified inline or in a separate YAML file using `!include`.
|
||||
|
||||
@ -67,7 +67,7 @@ light:
|
||||
|
||||
There are some rules for packages that will be merged:
|
||||
|
||||
1. Platform based components (`light`, `switch`, etc) can always be merged.
|
||||
1. Platform based integrations (`light`, `switch`, etc) can always be merged.
|
||||
2. Components where entities are identified by a key that will represent the entity_id (`{key: config}`) need to have unique 'keys' between packages and the main configuration file.
|
||||
|
||||
For example if we have the following in the main config. You are not allowed to re-use "my_input" again for `input_boolean` in a package:
|
||||
@ -76,10 +76,10 @@ There are some rules for packages that will be merged:
|
||||
input_boolean:
|
||||
my_input:
|
||||
```
|
||||
3. Any component that is not a platform [2], or dictionaries with Entity ID keys [3] can only be merged if its keys, except those for lists, are solely defined once.
|
||||
3. Any integration that is not a platform [2], or dictionaries with Entity ID keys [3] can only be merged if its keys, except those for lists, are solely defined once.
|
||||
|
||||
<p class='note tip'>
|
||||
Components inside packages can only specify platform entries using configuration style 1, where all the platforms are grouped under the component name.
|
||||
Components inside packages can only specify platform entries using configuration style 1, where all the platforms are grouped under the integration name.
|
||||
</p>
|
||||
|
||||
### {% linkable_title Create a packages folder %}
|
||||
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Entity component platform options"
|
||||
description: "Shows how to customize polling interval for any component via configuration.yaml."
|
||||
title: "Entity integration platform options"
|
||||
description: "Shows how to customize polling interval for any integration via configuration.yaml."
|
||||
date: 2016-02-12 23:17 -0800
|
||||
sidebar: true
|
||||
comments: false
|
||||
@ -12,7 +12,7 @@ redirect_from: /topics/platform_options/
|
||||
|
||||
<p class='note info'>These options are being phased out and are only available for single platform integrations.</p>
|
||||
|
||||
Some components or platforms (those that are based on the [entity](https://github.com/home-assistant/home-assistant/blob/dev/homeassistant/helpers/entity.py) class) allows various extra options to be set.
|
||||
Some integrations or platforms (those that are based on the [entity](https://github.com/home-assistant/home-assistant/blob/dev/homeassistant/helpers/entity.py) class) allows various extra options to be set.
|
||||
|
||||
### {% linkable_title Entity namespace %}
|
||||
|
||||
|
@ -19,7 +19,7 @@ Here's the summary of what you *must* do to secure your Home Assistant system:
|
||||
- Configure [secrets](/docs/configuration/secrets/) (but do remember to back them up)
|
||||
- Regularly keep the system up to date
|
||||
|
||||
If you only want to use components supported by [Home Assistant cloud](/cloud/) then you don't need to enable remote access. This is obviously the most secure option, but does mean that you're relying on a cloud service for that functionality.
|
||||
If you only want to use integrations supported by [Home Assistant cloud](/cloud/) then you don't need to enable remote access. This is obviously the most secure option, but does mean that you're relying on a cloud service for that functionality.
|
||||
|
||||
- For remote access to the UI, use a [VPN](http://www.pivpn.io/), [Tor](/docs/ecosystem/tor/) or an [SSH tunnel](/blog/2017/11/02/secure-shell-tunnel/)
|
||||
- For remote access for components, use a [TLS/SSL](/docs/ecosystem/certificates/lets_encrypt/) certificate
|
||||
@ -45,7 +45,7 @@ If you only want remote access for access to the web UI then we advise that you
|
||||
- [Tor](/docs/ecosystem/tor/), which also avoids the need for port forwarding
|
||||
- An [SSH tunnel](/blog/2017/11/02/secure-shell-tunnel/) to connect to your frontend
|
||||
|
||||
### {% linkable_title Remote access for components %}
|
||||
### {% linkable_title Remote access for integrations %}
|
||||
|
||||
For remote access for a component, for example, a device tracker, you have to enable access to the API by:
|
||||
|
||||
|
@ -38,7 +38,7 @@ Note that each line after `homeassistant:` is indented two (2) spaces. Since the
|
||||
|
||||
`!include filename.yaml` is the statement that tells Home Assistant to insert the contents of `filename.yaml` at that point. This is how we are going to break a monolithic and hard to read file (when it gets big) into more manageable chunks.
|
||||
|
||||
Now before we start splitting out the different components, let's look at the other components (in our example) that will stay in the base file:
|
||||
Now before we start splitting out the different components, let's look at the other integrations (in our example) that will stay in the base file:
|
||||
|
||||
```yaml
|
||||
history:
|
||||
@ -62,9 +62,9 @@ zwave:
|
||||
mqtt:
|
||||
broker: 127.0.0.1
|
||||
```
|
||||
As with the core snippet, indentation makes a difference. The component headers (`mqtt:`) should be fully left aligned (aka no indent), and the parameters (`broker:`) should be indented two (2) spaces.
|
||||
As with the core snippet, indentation makes a difference. The integration headers (`mqtt:`) should be fully left aligned (aka no indent), and the parameters (`broker:`) should be indented two (2) spaces.
|
||||
|
||||
While some of these components can technically be moved to a separate file they are so small or "one off's" where splitting them off is superfluous. Also, you'll notice the # symbol (hash/pound). This represents a "comment" as far as the commands are interpreted. Put another way, any line prefixed with a `#` will be ignored. This makes breaking up files for human readability really convenient, not to mention turning off features while leaving the entry intact.
|
||||
While some of these integrations can technically be moved to a separate file they are so small or "one off's" where splitting them off is superfluous. Also, you'll notice the # symbol (hash/pound). This represents a "comment" as far as the commands are interpreted. Put another way, any line prefixed with a `#` will be ignored. This makes breaking up files for human readability really convenient, not to mention turning off features while leaving the entry intact.
|
||||
|
||||
Now, lets assume that a blank file has been created in the Home Assistant configuration directory for each of the following:
|
||||
|
||||
@ -77,7 +77,7 @@ device_tracker.yaml
|
||||
customize.yaml
|
||||
```
|
||||
|
||||
`automation.yaml` will hold all the automation component details. `zones.yaml` will hold the zone component details and so forth. These files can be called anything but giving them names that match their function will make things easier to keep track of.
|
||||
`automation.yaml` will hold all the automation integration details. `zones.yaml` will hold the zone integration details and so forth. These files can be called anything but giving them names that match their function will make things easier to keep track of.
|
||||
|
||||
Inside the base configuration file add the following entries:
|
||||
|
||||
@ -89,9 +89,9 @@ switch: !include switch.yaml
|
||||
device_tracker: !include device_tracker.yaml
|
||||
```
|
||||
|
||||
Note that there can only be one `!include:` for each component so chaining them isn't going to work. If that sounds like Greek, don't worry about it.
|
||||
Note that there can only be one `!include:` for each integration so chaining them isn't going to work. If that sounds like Greek, don't worry about it.
|
||||
|
||||
Alright, so we've got the single components and the include statements in the base file, what goes in those extra files?
|
||||
Alright, so we've got the single integrations and the include statements in the base file, what goes in those extra files?
|
||||
|
||||
Let's look at the `device_tracker.yaml` file from our example:
|
||||
|
||||
|
@ -23,11 +23,11 @@ Field | Description
|
||||
`state.domain` | Domain of the entity. Example: `light`.
|
||||
`state.object_id` | Object ID of entity. Example: `kitchen`.
|
||||
`state.name` | Name of the entity. Based on `friendly_name` attribute with fall back to object ID. Example: `Kitchen Ceiling`.
|
||||
`state.last_updated` | Time the state was written to the state machine. Note that writing the exact same state including attributes will not result in this field being updated. Example: `2017-10-28 08:13:36.715874+00:00`.
|
||||
`state.last_changed` | Time the state changed. This is not updated when there are only updated attributes. Example: `2017-10-28 08:13:36.715874+00:00`.
|
||||
`state.last_updated` | Time the state was written to the state machine in UTC time. Note that writing the exact same state including attributes will not result in this field being updated. Example: `2017-10-28 08:13:36.715874+00:00`.
|
||||
`state.last_changed` | Time the state changed in the state machine in UTC time. This is not updated when there are only updated attributes. Example: `2017-10-28 08:13:36.715874+00:00`.
|
||||
`state.attributes` | A dictionary with extra attributes related to the current state.
|
||||
|
||||
The attributes of an entity are optional. There are a few attributes that are used by Home Assistant for representing the entity in a specific way. Each component will also have its own attributes to represent extra state data about the entity. For example, the light component has attributes for the current brightness and color of the light. When an attribute is not available, Home Assistant will not write it to the state.
|
||||
The attributes of an entity are optional. There are a few attributes that are used by Home Assistant for representing the entity in a specific way. Each integration will also have its own attributes to represent extra state data about the entity. For example, the light integration has attributes for the current brightness and color of the light. When an attribute is not available, Home Assistant will not write it to the state.
|
||||
|
||||
When using templates, attributes will be available by their name. For example `state.attributes.assumed_state`.
|
||||
|
||||
|
@ -232,9 +232,9 @@ Some of these functions can also be used in a [filter](http://jinja.pocoo.org/do
|
||||
|
||||
## {% linkable_title Processing incoming data %}
|
||||
|
||||
The other part of templating is processing incoming data. It allows you to modify incoming data and extract only the data you care about. This will only work for platforms and components that mention support for this in their documentation.
|
||||
The other part of templating is processing incoming data. It allows you to modify incoming data and extract only the data you care about. This will only work for platforms and integrations that mention support for this in their documentation.
|
||||
|
||||
It depends per component or platform, but it is common to be able to define a template using the `value_template` configuration key. When a new value arrives, your template will be rendered while having access to the following values on top of the usual Home Assistant extensions:
|
||||
It depends per integration or platform, but it is common to be able to define a template using the `value_template` configuration key. When a new value arrives, your template will be rendered while having access to the following values on top of the usual Home Assistant extensions:
|
||||
|
||||
| Variable | Description |
|
||||
|--------------|------------------------------------|
|
||||
|
@ -10,15 +10,15 @@ footer: true
|
||||
redirect_from: /getting-started/troubleshooting-configuration/
|
||||
---
|
||||
|
||||
It can happen that you run into trouble while configuring Home Assistant. Perhaps a component is not showing up or is acting strangely. This page will discuss a few of the most common problems.
|
||||
It can happen that you run into trouble while configuring Home Assistant. Perhaps a integration is not showing up or is acting strangely. This page will discuss a few of the most common problems.
|
||||
|
||||
Before we dive into common issues, make sure you know where your configuration directory is. Home Assistant will print out the configuration directory it is using when starting up.
|
||||
|
||||
Whenever a component or configuration option results in a warning, it will be stored in `home-assistant.log` in the configuration directory. This file is reset on start of Home Assistant.
|
||||
Whenever a integration or configuration option results in a warning, it will be stored in `home-assistant.log` in the configuration directory. This file is reset on start of Home Assistant.
|
||||
|
||||
### {% linkable_title My component does not show up %}
|
||||
### {% linkable_title My integration does not show up %}
|
||||
|
||||
When a component does not show up, many different things can be the case. Before you try any of these steps, make sure to look at the `home-assistant.log` file and see if there are any errors related to your component you are trying to set up.
|
||||
When a integration does not show up, many different things can be the case. Before you try any of these steps, make sure to look at the `home-assistant.log` file and see if there are any errors related to your integration you are trying to set up.
|
||||
|
||||
If you have incorrect entries in your configuration files you can use the [`check_config`](/docs/tools/check_config/) script to assist in identifying them: `hass --script check_config`. If you need to provide the path for your configuration you can do this using the `-c` argument like this: `hass --script check_config -c /path/to/your/config/dir`.
|
||||
|
||||
@ -40,21 +40,21 @@ sensor:
|
||||
...
|
||||
```
|
||||
|
||||
Another common problem is that a required configuration setting is missing. If this is the case, the component will report this to `home-assistant.log`. You can have a look at [the various component pages](/components/) for instructions on how to setup the components.
|
||||
Another common problem is that a required configuration setting is missing. If this is the case, the integration will report this to `home-assistant.log`. You can have a look at [the various integration pages](/components/) for instructions on how to setup the components.
|
||||
|
||||
See the [logger](/components/logger/) component for instructions on how to define the level of logging you require for specific modules.
|
||||
See the [logger](/components/logger/) integration for instructions on how to define the level of logging you require for specific modules.
|
||||
|
||||
If you find any errors or want to expand the documentation, please [let us know](https://github.com/home-assistant/home-assistant.io/issues).
|
||||
|
||||
#### {% linkable_title Problems with dependencies %}
|
||||
|
||||
Almost all components have external dependencies to communicate with your devices and services. Sometimes Home Assistant is unable to install the necessary dependencies. If this is the case, it should show up in `home-assistant.log`.
|
||||
Almost all integrations have external dependencies to communicate with your devices and services. Sometimes Home Assistant is unable to install the necessary dependencies. If this is the case, it should show up in `home-assistant.log`.
|
||||
|
||||
The first step is trying to restart Home Assistant and see if the problem persists. If it does, look at the log to see what the error is. If you can't figure it out, please [report it](https://github.com/home-assistant/home-assistant/issues) so we can investigate what is going on.
|
||||
|
||||
#### {% linkable_title Problems with components %}
|
||||
#### {% linkable_title Problems with integrations %}
|
||||
|
||||
It can happen that some components either do not work right away or stop working after Home Assistant has been running for a while. If this happens to you, please [report it](https://github.com/home-assistant/home-assistant/issues) so that we can have a look.
|
||||
It can happen that some integrations either do not work right away or stop working after Home Assistant has been running for a while. If this happens to you, please [report it](https://github.com/home-assistant/home-assistant/issues) so that we can have a look.
|
||||
|
||||
#### {% linkable_title Multiple files %}
|
||||
|
||||
|
@ -12,7 +12,7 @@ redirect_from: /getting-started/yaml/
|
||||
|
||||
Home Assistant uses the [YAML](http://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 component that you want to use in Home Assistant, you add code in your `configuration.yaml` file to specify its settings.
|
||||
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](/components/notify) with the [pushbullet platform](/components/notify.pushbullet).
|
||||
|
||||
|
||||
@ -40,7 +40,7 @@ Please pay attention on not storing private data (passwords, API keys, etc.) dir
|
||||
|
||||
Text following a `#` are comments and are ignored by the system.
|
||||
|
||||
The next example shows an [input_select](/components/input_select) component that uses a block collection for the options values.
|
||||
The next example shows an [input_select](/components/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.
|
||||
|
||||
```yaml
|
||||
|
@ -282,7 +282,7 @@ In most cases, the attribute `state` has the most important value in it, e.g., f
|
||||
get_state(entity = None, attribute = None)
|
||||
```
|
||||
|
||||
`get_state()` is used to query the state of any component within Home Assistant. State updates are continuously tracked so this call runs locally and does not require AppDaemon to call back to Home Assistant and as such is very efficient.
|
||||
`get_state()` is used to query the state of any integration within Home Assistant. State updates are continuously tracked so this call runs locally and does not require AppDaemon to call back to Home Assistant and as such is very efficient.
|
||||
|
||||
#### {% linkable_title Returns %}
|
||||
|
||||
@ -788,7 +788,7 @@ Function to be invoked when the requested state change occurs. It must conform t
|
||||
|
||||
##### {% linkable_title time %}
|
||||
|
||||
A Python `time` object that specifies when the callback will occur, the hour component of the time object is ignored. If the time specified is in the past, the callback will occur the next hour at the specified time. If time is not supplied, the callback will start an hour from the time that `run_hourly()` was executed.
|
||||
A Python `time` object that specifies when the callback will occur, the hour integration of the time object is ignored. If the time specified is in the past, the callback will occur the next hour at the specified time. If time is not supplied, the callback will start an hour from the time that `run_hourly()` was executed.
|
||||
|
||||
##### {% linkable_title \*\*kwargs %}
|
||||
|
||||
@ -1348,7 +1348,7 @@ self.notify("", "Switching mode to Evening")
|
||||
|
||||
### {% linkable_title About Events %}
|
||||
|
||||
Events are a fundamental part of how Home Assistant works under the covers. HA has an event bus that all components can read and write to, enabling components to inform other components when important events take place. We have already seen how state changes can be propagated to AppDaemon - a state change however is merely an example of an event within Home Assistant. There are several other event types, among them are:
|
||||
Events are a fundamental part of how Home Assistant works under the covers. HA has an event bus that all integrations can read and write to, enabling integrations to inform other integrations when important events take place. We have already seen how state changes can be propagated to AppDaemon - a state change however is merely an example of an event within Home Assistant. There are several other event types, among them are:
|
||||
|
||||
- `homeassistant_start`
|
||||
- `homeassistant_stop`
|
||||
@ -1490,7 +1490,7 @@ service, kwargs = self.info_listen_event(handle)
|
||||
|
||||
### {% linkable_title fire_event() %}
|
||||
|
||||
Fire an event on the Home Assistant bus, for other components to hear.
|
||||
Fire an event on the Home Assistant bus, for other integrations to hear.
|
||||
|
||||
#### {% linkable_title Synopsis %}
|
||||
|
||||
@ -1536,7 +1536,7 @@ A dictionary containing any additional information associated with the event.
|
||||
|
||||
### {% linkable_title Use of Events for Signaling between Home Assistant and AppDaemon %}
|
||||
|
||||
Home Assistant allows for the creation of custom events and existing components can send and receive them. This provides a useful mechanism for signaling back and forth between Home Assistant and AppDaemon. For instance, if you would like to create a UI Element to fire off some code in Home Assistant, all that is necessary is to create a script to fire a custom event, then subscribe to that event in AppDaemon. The script would look something like this:
|
||||
Home Assistant allows for the creation of custom events and existing integrations can send and receive them. This provides a useful mechanism for signaling back and forth between Home Assistant and AppDaemon. For instance, if you would like to create a UI Element to fire off some code in Home Assistant, all that is necessary is to create a script to fire a custom event, then subscribe to that event in AppDaemon. The script would look something like this:
|
||||
|
||||
```yaml
|
||||
alias: Day
|
||||
|
@ -10,4 +10,4 @@ footer: true
|
||||
redirect_from: /ecosystem/appdaemon/tutorial/
|
||||
---
|
||||
|
||||
Since `AppDaemon` under the covers uses the exact same APIs as the frontend UI, you typically see it react at about the same time to a given event. Calling back to Home Assistant is also pretty fast especially if they are running on the same machine. In action, observed latency above the built in automation component is usually sub-second.
|
||||
Since `AppDaemon` under the covers uses the exact same APIs as the frontend UI, you typically see it react at about the same time to a given event. Calling back to Home Assistant is also pretty fast especially if they are running on the same machine. In action, observed latency above the built in automation integration is usually sub-second.
|
||||
|
@ -341,7 +341,7 @@ http:
|
||||
base_url: examplehome.duckdns.org
|
||||
```
|
||||
|
||||
You may wish to set up other options for the [http](/components/http/) component at this point, these extra options are beyond the scope of this guide.
|
||||
You may wish to set up other options for the [http](/components/http/) integration at this point, these extra options are beyond the scope of this guide.
|
||||
|
||||
Save the changes to configuration.yaml. Restart Home Assistant.
|
||||
|
||||
@ -429,7 +429,7 @@ sensor:
|
||||
|
||||
Save the configuration.yaml. Restart Home Assistant.
|
||||
|
||||
On your default_view you should now see a sensor badge containing your number of days until expiry. If you've been following this guide from the start and have not taken any breaks in between, this should be 89 or 90. The sensor will update every 3 hours. You can place this reading on a card using groups, or hide it using customize. These topics are outside of the scope of this guide, but information can be found on their respective components pages: [Group](/components/group/) and [Customize](/docs/configuration/customizing-devices/)
|
||||
On your default_view you should now see a sensor badge containing your number of days until expiry. If you've been following this guide from the start and have not taken any breaks in between, this should be 89 or 90. The sensor will update every 3 hours. You can place this reading on a card using groups, or hide it using customize. These topics are outside of the scope of this guide, but information can be found on their respective integrations pages: [Group](/components/group/) and [Customize](/docs/configuration/customizing-devices/)
|
||||
|
||||
Got your sensor up and running and where you want it? Top drawer! Nearly there, now move on to the final steps to ensure that you're never without a secure connection in the future.
|
||||
|
||||
|
@ -27,9 +27,9 @@ The app is available on the iOS App Store in every country that Apple supports.
|
||||
* Home Assistant 0.42.4 or higher for push notification support.
|
||||
* SSL is strongly recommended. Self-signed SSL certificates will not work due to Apple's limitations.
|
||||
|
||||
The `ios` component is the companion component for the Home Assistant iOS app. While not required, adding the `ios` component to your setup will greatly enhance the iOS app with new notification, location and sensor functions not possible with a standalone app.
|
||||
The `ios` integration is the companion integration for the Home Assistant iOS app. While not required, adding the `ios` integration to your setup will greatly enhance the iOS app with new notification, location and sensor functions not possible with a standalone app.
|
||||
|
||||
Loading the `ios` component will also load the [`device_tracker`](/components/device_tracker), [`zeroconf`](/components/zeroconf) and [`notify`](/components/notify) platforms.
|
||||
Loading the `ios` integration will also load the [`device_tracker`](/components/device_tracker), [`zeroconf`](/components/zeroconf) and [`notify`](/components/notify) platforms.
|
||||
|
||||
The Home Assistant for iOS app supports the new authentication system introduced in Home Assistant 0.77.
|
||||
|
||||
@ -37,18 +37,18 @@ The Home Assistant for iOS app supports the new authentication system introduced
|
||||
|
||||
### {% linkable_title Automated Setup %}
|
||||
|
||||
The `ios` component will automatically be loaded under the following circumstances:
|
||||
The `ios` integration will automatically be loaded under the following circumstances:
|
||||
|
||||
1. The [`discovery`](/components/discovery) component is enabled.
|
||||
1. The [`discovery`](/components/discovery) integration is enabled.
|
||||
2. You have just installed the app and are at the getting started screen.
|
||||
|
||||
Automated discovery and component loading only happens at first install of the app. You may need to wait a few minutes for the iOS component to load as the `discovery` component only scans the network every 5 minutes.
|
||||
Automated discovery and integration loading only happens at first install of the app. You may need to wait a few minutes for the iOS integration to load as the `discovery` integration only scans the network every 5 minutes.
|
||||
|
||||
After the first automated setup you need to add `ios:` to your configuration so that the component loads by default even after restarting Home Assistant.
|
||||
After the first automated setup you need to add `ios:` to your configuration so that the integration loads by default even after restarting Home Assistant.
|
||||
|
||||
### {% linkable_title Manual Setup %}
|
||||
|
||||
You may also manually load the `ios` component by adding the following to your configuration:
|
||||
You may also manually load the `ios` integration by adding the following to your configuration:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
|
@ -12,8 +12,8 @@ redirect_from: /ecosystem/ios/notifications/
|
||||
|
||||
The `ios` notify platform enables sending push notifications to the Home Assistant iOS app.
|
||||
|
||||
The 'ios' component will automatically load the notify service.
|
||||
The service component can be called using `service: notify.ios_<your_device_ID>`.
|
||||
The 'ios' integration will automatically load the notify service.
|
||||
The service integration can be called using `service: notify.ios_<your_device_ID>`.
|
||||
Your device ID can be found in the `ios.conf` file in your configuration folder. The file is compressed JSON. You can view it easier by copying the file contents and pasting them into [JSONLint](http://jsonlint.com).
|
||||
|
||||
In this example, the device ID is `robbiet480_7plus`, so the notify service to use is `notify.ios_robbiet480_7plus`:
|
||||
|
@ -145,7 +145,7 @@ server {
|
||||
proxy_buffering off;
|
||||
|
||||
location / {
|
||||
proxy_pass http://localhost:8123;
|
||||
proxy_pass http://127.0.0.1:8123;
|
||||
proxy_set_header Host $host;
|
||||
proxy_redirect http:// https://;
|
||||
proxy_http_version 1.1;
|
||||
|
@ -45,7 +45,7 @@ NUC i7/i9 | Pure power, you should not have *any* performance issues
|
||||
|
||||
## {% linkable_title Recommended %}
|
||||
|
||||
These install options are fully supported by Home Assistant's documentation. For example, if a component requires that you install something to make it work on one of these methods then the component page will document the steps required.
|
||||
These install options are fully supported by Home Assistant's documentation. For example, if a integration requires that you install something to make it work on one of these methods then the integration page will document the steps required.
|
||||
|
||||
**Method**|**You have**|**Recommended for**
|
||||
:-----|:-----|:-----
|
||||
@ -55,16 +55,16 @@ These install options are fully supported by Home Assistant's documentation. For
|
||||
|
||||
## {% linkable_title Alternative installs %}
|
||||
|
||||
If you use these install methods, we assume that you know how to manage and administer the operating system you're using. Due to the range of platforms on which these install methods can be used, component documentation may only tell you what you have to install, not how to install it.
|
||||
If you use these install methods, we assume that you know how to manage and administer the operating system you're using. Due to the range of platforms on which these install methods can be used, integration documentation may only tell you what you have to install, not how to install it.
|
||||
|
||||
**Method**|**You have**|**Recommended for**
|
||||
:-----|:-----|:-----
|
||||
[venv<BR>(as another user)](/docs/installation/raspberry-pi/)|Any Linux, Python 3.5.3 or later|Those familiar with their operating system
|
||||
[venv<BR>(as your user)](/docs/installation/virtualenv/)|Any Python 3.5.3 or later|Developers
|
||||
[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
|
||||
|
||||
## {% linkable_title Community provided guides %}
|
||||
|
||||
These guides are provided as-is. Some of these install methods are more limited than the methods above. Some components may not work due to limitations of the platform or because required Python packages aren't available for that platform.
|
||||
These guides are provided as-is. Some of these install methods are more limited than the methods above. Some integrations may not work due to limitations of the platform or because required Python packages aren't available for that platform.
|
||||
|
||||
<div class="text-center hass-option-cards" markdown="0">
|
||||
<a class='option-card' href='/docs/installation/armbian/'>
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user