mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-19 15:26:59 +00:00
Merge branch 'current' into next
This commit is contained in:
commit
57ffe8e6c5
23
.github/workflows/test.yml
vendored
23
.github/workflows/test.yml
vendored
@ -26,6 +26,29 @@ jobs:
|
||||
CI: true
|
||||
- name: Run remark lint
|
||||
run: npm run markdown:lint
|
||||
textlint:
|
||||
name: Lint Text
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check out files from GitHub
|
||||
uses: actions/checkout@v2
|
||||
- name: Setting up Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v1
|
||||
with:
|
||||
node-version: 12.x
|
||||
- name: Setup NPM cache
|
||||
uses: actions/cache@v1
|
||||
with:
|
||||
path: ~/.npm
|
||||
key: npm-${{ hashFiles('**/package-lock.json') }}
|
||||
restore-keys: |
|
||||
npm-
|
||||
- name: Install dependencies
|
||||
run: npm install
|
||||
env:
|
||||
CI: true
|
||||
- name: Run textlint
|
||||
run: npm run textlint
|
||||
build:
|
||||
name: Jekyll build
|
||||
runs-on: ubuntu-latest
|
||||
|
256
.textlintrc.json
Normal file
256
.textlintrc.json
Normal file
@ -0,0 +1,256 @@
|
||||
{
|
||||
"filters": {},
|
||||
"rules": {
|
||||
"common-misspellings": {
|
||||
"ignore": ["Proove", "Alot"]
|
||||
},
|
||||
"terminology": {
|
||||
"defaultTerms": false,
|
||||
"skip": ["Blockquote"],
|
||||
"terms": [
|
||||
" API ",
|
||||
"2FA",
|
||||
"ABB Solar PV",
|
||||
"ABB",
|
||||
"Abode",
|
||||
"Acer",
|
||||
"Actiontec",
|
||||
"AdGuard Home",
|
||||
"AdGuard",
|
||||
"ADS",
|
||||
"Aeotec",
|
||||
"AfterShip",
|
||||
"Airly",
|
||||
"AirVisual",
|
||||
"Aladdin Connect",
|
||||
"Alarm.com",
|
||||
"AlarmDecoder",
|
||||
"Alexa",
|
||||
"Almond",
|
||||
"Alpha Vantage",
|
||||
"Amazon Alexa",
|
||||
"Amazon Polly",
|
||||
"Amazon Web Services",
|
||||
"Amazon",
|
||||
"Ambiclimate",
|
||||
"Ambient Weather Station",
|
||||
"Amcrest",
|
||||
"Ampio Smart Smog System",
|
||||
"Android IP Webcam",
|
||||
"Android",
|
||||
"Ankuoo REC Switch",
|
||||
"Ankuoo",
|
||||
"Antifurto365",
|
||||
"Apache Kafka",
|
||||
"Apache",
|
||||
"APC Smart UPS",
|
||||
"apcupsd",
|
||||
"APNS",
|
||||
"Apple iCloud",
|
||||
"Apple TV",
|
||||
"AppleScript",
|
||||
"Apprise",
|
||||
"AquaLogic",
|
||||
"aREST",
|
||||
"Arlo",
|
||||
"Aruba",
|
||||
"Arube ClearPass",
|
||||
"ASUS",
|
||||
"ASUS",
|
||||
"ASUSWRT",
|
||||
"ATEN",
|
||||
"Atome",
|
||||
"August",
|
||||
"Avi-on",
|
||||
"AVM FRITZ!Box",
|
||||
"AWS",
|
||||
"Axis",
|
||||
"Beckhoff",
|
||||
"Bravia",
|
||||
"BSSID",
|
||||
"Cisco IOS",
|
||||
"Dark Sky",
|
||||
"Debian",
|
||||
"deCONZ",
|
||||
"DNS",
|
||||
"Docker Hub",
|
||||
"Docker",
|
||||
"ecobee",
|
||||
"Elgato Key Light",
|
||||
"Elgato",
|
||||
"Emoncms",
|
||||
"Entur",
|
||||
"ESPHome",
|
||||
"Everspring",
|
||||
"FFmpeg",
|
||||
"Fibaro",
|
||||
"FreeNAS",
|
||||
"FRITZ!Box",
|
||||
"GitHub",
|
||||
"Google Assistant",
|
||||
"Google Home",
|
||||
"Google Wifi",
|
||||
"Google",
|
||||
"GraphiQL",
|
||||
"GraphQL",
|
||||
"Home Assistant Companion",
|
||||
"Home Assistant Core",
|
||||
"Home Assistant Operating System",
|
||||
"Home Assistant OS",
|
||||
"Home Assistant Supervised",
|
||||
"Home Assistant Supervisor",
|
||||
"Home Assistant",
|
||||
"HomeKit",
|
||||
"Honeywell",
|
||||
"HTTP",
|
||||
"HTTPS",
|
||||
"iCloud",
|
||||
"IFTTT",
|
||||
"IKEA",
|
||||
"IntesisHome",
|
||||
"iOS",
|
||||
"IoT",
|
||||
"IP",
|
||||
"ISY994",
|
||||
"iTunes",
|
||||
"JSON",
|
||||
"Kafka",
|
||||
"KEF",
|
||||
"LED",
|
||||
"Let's Encrypt",
|
||||
"Life360",
|
||||
"LinkedIn",
|
||||
"Linky",
|
||||
"Linux",
|
||||
"Lovelace",
|
||||
"MacBook",
|
||||
"macOS",
|
||||
"Markdown",
|
||||
"Microsoft",
|
||||
"MikroTik",
|
||||
"MIME",
|
||||
"MJPEG",
|
||||
"MQTT",
|
||||
"NAS",
|
||||
"Network Information Server",
|
||||
"NGINX",
|
||||
"NodeMCU",
|
||||
"Norway",
|
||||
"OpenWrt",
|
||||
"PayPal",
|
||||
"PDU",
|
||||
"Philips",
|
||||
"PlayStation",
|
||||
"Plex Media Server",
|
||||
"Plex",
|
||||
"PTZ",
|
||||
"REST API",
|
||||
"RFXtrx",
|
||||
"RouterOS",
|
||||
"RTSP",
|
||||
"Samung",
|
||||
"Sentry",
|
||||
"Signal Messenger",
|
||||
"SkyBell",
|
||||
"Slack",
|
||||
"SleepIQ",
|
||||
"SmartThings",
|
||||
"SMS",
|
||||
"Sonos",
|
||||
"Sony",
|
||||
"Spotify",
|
||||
"SQL",
|
||||
"SSID",
|
||||
"SSL",
|
||||
"StarLine",
|
||||
"Stookalert",
|
||||
"StreamLabs",
|
||||
"STT",
|
||||
"Sure Petcare",
|
||||
"SwitchBot",
|
||||
"Synology",
|
||||
"Tahoma",
|
||||
"TCP/IP",
|
||||
"Tesla",
|
||||
"TMB",
|
||||
"Todoist",
|
||||
"Toon",
|
||||
"TTS",
|
||||
"Tuya",
|
||||
"TV",
|
||||
"Twilio",
|
||||
"TwinCAT",
|
||||
"Twitch",
|
||||
"Twitter",
|
||||
"UART",
|
||||
"Ubiquiti",
|
||||
"Ubuntu",
|
||||
"UI",
|
||||
"UniFi",
|
||||
"unRAID",
|
||||
"UPS",
|
||||
"URL",
|
||||
"Velbus",
|
||||
"Velux",
|
||||
"Venstar",
|
||||
"Vera",
|
||||
"Verisure",
|
||||
"VersaSense",
|
||||
"ViCare",
|
||||
"Viessmann",
|
||||
"VIVOTEK",
|
||||
"Vizio",
|
||||
"Vultr",
|
||||
"Wink",
|
||||
"WLED",
|
||||
"Wunderlist",
|
||||
"WWLLN",
|
||||
"Xiaomi",
|
||||
"Yamaha MusicCast",
|
||||
"Yamaha",
|
||||
"YAML",
|
||||
"Yandex",
|
||||
"Yeelight",
|
||||
"YouTube",
|
||||
"Z-Wave",
|
||||
"ZHA",
|
||||
"Zigbee",
|
||||
"Ziggo Mediabox XL",
|
||||
"Ziggo",
|
||||
"ZoneMinder",
|
||||
[" HA ", "Home Assistant"],
|
||||
["\\(s\\)he", "they"],
|
||||
["2 ?steps? authentication", "two-step authentication"],
|
||||
["Alarm ?dot ?com", "Alarm.com"],
|
||||
["an URL", "a URL"],
|
||||
["API['’]?s", "APIs"],
|
||||
["backwards compatible", "backward compatible"],
|
||||
["client ?side", "client-side"],
|
||||
["colour", "color"],
|
||||
["DarkSky", "Dark Sky"],
|
||||
["end ?to ?end", "end-to-end"],
|
||||
["FRITZ!? ?Box", "FRITZ!Box"],
|
||||
["hass", "Home Assistant"],
|
||||
["he or she", "they"],
|
||||
["he/she", "they"],
|
||||
["Home-?Ass?s?iss?tt?ant", "Home Assistant"],
|
||||
["ISY ?994", "ISY994"],
|
||||
["Mac ?OS", "macOS"],
|
||||
["OS ?X", "macOS"],
|
||||
["repo\\b", "repository"],
|
||||
["config\\b", "configuration"],
|
||||
["Sky Bell", "SkyBell"],
|
||||
["Sleep IQ", "SleepIQ"],
|
||||
["Twill?o", "Twilio"],
|
||||
["analyse", "analyze"],
|
||||
["recognise", "recognize"],
|
||||
["travelled", "traveled"],
|
||||
["licence", "license"],
|
||||
["behaviour", "behavior"],
|
||||
["two ?steps? authentication", "two-step authentication"],
|
||||
["URL['’]?s", "URLs"],
|
||||
["ZWave", "Z-Wave"]
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
1509
package-lock.json
generated
1509
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -9,9 +9,14 @@
|
||||
"remark-lint": "^6.0.5",
|
||||
"remark-lint-fenced-code-flag": "^1.0.3",
|
||||
"remark-lint-no-shell-dollars": "^1.0.3",
|
||||
"remark-stringify": "^7.0.3"
|
||||
"remark-stringify": "^7.0.3",
|
||||
"textlint": "^11.6.3",
|
||||
"textlint-rule-common-misspellings": "^1.0.1",
|
||||
"textlint-rule-terminology": "^2.1.1"
|
||||
},
|
||||
"scripts": {
|
||||
"markdown:lint": "remark --quiet --frail ."
|
||||
"markdown:lint": "remark --quiet --frail .",
|
||||
"textlint:all": "textlint source",
|
||||
"textlint": "textlint source/_cookbook source/_docs source/_faq source/_integrations source/_lovelace source/cloud source/getting-started source/hassio source/lovelace"
|
||||
}
|
||||
}
|
||||
|
@ -4,7 +4,7 @@ description: "Automation examples that trigger lights in the morning."
|
||||
ha_category: Automation Examples
|
||||
---
|
||||
|
||||
#### Create an input_boolean in your configuration.yaml
|
||||
#### Create an input_boolean
|
||||
|
||||
```yaml
|
||||
input_boolean:
|
||||
|
@ -160,5 +160,5 @@ Fail2ban should now be configured and running, if an IP address is banned you wi
|
||||
|
||||
If you want to read more about `fail2ban`, some links are below:
|
||||
|
||||
- [fail2ban Split config](http://www.fail2ban.org/wiki/index.php/FEATURE_Split_config)
|
||||
- [fail2ban Split configuration](http://www.fail2ban.org/wiki/index.php/FEATURE_Split_config)
|
||||
- [How To Protect SSH with Fail2Ban on Ubuntu 14.04](https://www.digitalocean.com/community/tutorials/how-to-protect-ssh-with-fail2ban-on-ubuntu-14-04)
|
||||
|
@ -7,7 +7,7 @@ redirect_from:
|
||||
/integrations/ifttt.manything/
|
||||
---
|
||||
|
||||
[Manything](https://manything.com) is a smart app that turns your Android device, iPhone, iPod, or iPad into a WiFi camera for monitoring your home, your pets, anything! Comes with live streaming, motion activated alerts, cloud video recording, and more.
|
||||
[Manything](https://manything.com) is a smart app that turns your Android device, iPhone, iPod, or iPad into a Wi-Fi camera for monitoring your home, your pets, anything! Comes with live streaming, motion activated alerts, cloud video recording, and more.
|
||||
|
||||
To get manything support, HA will use IFTTT's [Webhooks Service](https://ifttt.com/maker_webhooks) and the [ManyThing Service](https://ifttt.com/manything). Use the [IFTTT Setup instructions](/integrations/ifttt/) to activate the IFTTT Platform.
|
||||
|
||||
|
@ -40,7 +40,7 @@ $ docker run -ti -p 1884:1883 \
|
||||
--name mosquitto-ext -d toke/mosquitto
|
||||
```
|
||||
|
||||
Here are the config files:
|
||||
Here are the configuration files:
|
||||
|
||||
`/volume1/data/mosquitto-int/config/mosquitto.conf`
|
||||
|
||||
|
@ -4,7 +4,8 @@ description: "Basic example how to track the battery level of your mobile device
|
||||
ha_category: Automation Examples
|
||||
---
|
||||
|
||||
### Android and iOS Devices
|
||||
## Android and iOS Devices
|
||||
|
||||
The [Home Assistant Companion Apps](https://companion.home-assistant.io/) for iOS and Android pass the current battery level to Home Assistant with every location update. The default name of the sensor used is `sensor.battery_level`.
|
||||
|
||||
### iOS Devices
|
||||
@ -12,6 +13,7 @@ The [Home Assistant Companion Apps](https://companion.home-assistant.io/) for iO
|
||||
If you have a device running iOS (iPhone, iPad, etc), The [iCloud](/integrations/icloud) integration is gathering various details about your device including the battery level. To display it in the Frontend use a [template sensor](/integrations/template). You can also use the `battery` [sensor device class](/integrations/sensor/#device-class) to dynamically change the icon with the battery level.
|
||||
|
||||
{% raw %}
|
||||
|
||||
```yaml
|
||||
sensor:
|
||||
- platform: template
|
||||
@ -27,13 +29,15 @@ sensor:
|
||||
{%- endif %}
|
||||
device_class: battery
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
||||
### Android Devices
|
||||
|
||||
On your Android device, once the official [Home Assistant companion app](https://companion.home-assistant.io/) is installed and connected to your Home Assistance instance, you will be able to display the battery level in the frontend by adding a [template sensor](/integrations/template) to your configuration YAML file. You can also use the battery [sensor device class](/integrations/sensor/#device-class) to dynamically change the icon with the battery level.
|
||||
On your Android device, once the official [Home Assistant Companion app](https://companion.home-assistant.io/) is installed and connected to your Home Assistance instance, you will be able to display the battery level in the frontend by adding a [template sensor](/integrations/template) to your configuration YAML file. You can also use the battery [sensor device class](/integrations/sensor/#device-class) to dynamically change the icon with the battery level.
|
||||
|
||||
{% raw %}
|
||||
|
||||
```yaml
|
||||
sensor:
|
||||
- platform: template
|
||||
@ -49,6 +53,7 @@ sensor:
|
||||
{%- endif %}
|
||||
device_class: battery
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
||||
Replace 'device_tracker.xxxxx' with your phone name as shown under Configuration/Devices Device Info/Entities, for example: 'device_tracker.mi_a1'
|
||||
@ -59,6 +64,7 @@ If you have configured Owntracks to send reports via MQTT you can use the receiv
|
||||
Replace username with your MQTT username (for the embedded MQTT it's simply homeassistant), and deviceid with the set Device ID in Owntracks.
|
||||
|
||||
{% raw %}
|
||||
|
||||
```yaml
|
||||
sensor:
|
||||
- platform: mqtt
|
||||
@ -68,6 +74,7 @@ sensor:
|
||||
value_template: '{{ value_json.batt }}'
|
||||
device_class: battery
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
||||
#### HTTP
|
||||
@ -76,6 +83,7 @@ If you have configured Owntracks to send reports to your Home Assistant instance
|
||||
Replace `deviceid` with the set Device ID in Owntracks.
|
||||
|
||||
{% raw %}
|
||||
|
||||
```yaml
|
||||
sensor:
|
||||
- platform: template
|
||||
@ -84,4 +92,5 @@ sensor:
|
||||
value_template: "{{ state_attr('device_tracker.deviceid', 'battery_level') }}"
|
||||
unit_of_measurement: '%'
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
@ -54,13 +54,13 @@ Before beginning make sure that you have the following:
|
||||
|
||||
```
|
||||
|
||||
- **host** (*Optional*): The IP address to listen on for client requests. This defaults to all IP addresses on the server. To listen only locally, choose `127.0.0.1`
|
||||
- **port** (*Optional*): The port to listen on for client requests. Defaults to 12345.
|
||||
- **password** (*Required*): A password shared between client and server. Use only alpha-numeric characters and spaces
|
||||
- **mbox\_path** (*Required*): The path to the storage location of mailbox files. This is typically `/var/spool/asterisk/voicemail/default/<mailbox>/`
|
||||
- **cache\_file** (*Required*): A fully-qualified path to a file that can be written by the server containing transcriptions of voicemails. Example: `/var/spool/asterisk/transcription.cache`
|
||||
- **google\_key** (*Required*): Your 40 characters Google API key.
|
||||
- **cdr** (*Optional*): Where to find CDR data. Supports various SQL databases as well as a file log. Configuring the CDR will enable the `asterisk_cdr` platfom.
|
||||
- `host` (*Optional*): The IP address to listen on for client requests. This defaults to all IP addresses on the server. To listen only locally, choose `127.0.0.1`
|
||||
- `port` (*Optional*): The port to listen on for client requests. Defaults to 12345.
|
||||
- `password` (*Required*): A password shared between client and server. Use only alpha-numeric characters and spaces
|
||||
- `mbox_path` (*Required*): The path to the storage location of mailbox files. This is typically `/var/spool/asterisk/voicemail/default/<mailbox>/`
|
||||
- `cache_file` (*Required*): A fully-qualified path to a file that can be written by the server containing transcriptions of voicemails. Example: `/var/spool/asterisk/transcription.cache`
|
||||
- `google_key` (*Required*): Your 40 characters Google API key.
|
||||
- `cdr` (*Optional*): Where to find CDR data. Supports various SQL databases as well as a file log. Configuring the CDR will enable the `asterisk_cdr` platform.
|
||||
|
||||
Once complete, ensure this file is only accessible by the Asterisk user:
|
||||
|
||||
@ -68,6 +68,7 @@ Before beginning make sure that you have the following:
|
||||
sudo chown asterisk:asterisk /etc/asterisk/asterisk_mbox.ini
|
||||
sudo chmod 600 /etc/asterisk/asterisk_mbox.ini
|
||||
```
|
||||
|
||||
4. Interactively start the server to verify it is functioning
|
||||
|
||||
```bash
|
||||
|
@ -86,11 +86,11 @@ While you should hopefully be storing your passwords in a password manager, if y
|
||||
|
||||
When you start Home Assistant next, you'll be required to set up authentication again.
|
||||
|
||||
### Error: invalid client id or redirect url
|
||||
### Error: invalid client id or redirect URL
|
||||
|
||||
<img src='/images/docs/authentication/error-invalid-client-id.png' alt='Screenshot of Error: invalid client id or redirect url'>
|
||||
|
||||
You have to use a domain name, not IP address, to remote access Home Assistant otherwise you will get **Error: invalid client id or redirect url** error on the login form. However, you can use the IP address to access Home Assistant in your home network.
|
||||
You have to use a domain name, not IP address, to remote access Home Assistant otherwise you will get `Error: invalid client id or redirect url` error on the login form. However, you can use the IP address to access Home Assistant in your home network.
|
||||
|
||||
This is because we only allow an IP address as a client ID when your IP address is an internal network address (e.g., `192.168.0.1`) or loopback address (e.g., `127.0.0.1`).
|
||||
|
||||
|
@ -33,7 +33,7 @@ homeassistant:
|
||||
- type: totp
|
||||
```
|
||||
|
||||
If no `auth_mfa_modules` config section is defined in `configuration.yaml` a TOTP module named "Authenticator app" will be autoloaded.
|
||||
If no `auth_mfa_modules` configuration section is defined in `configuration.yaml` a TOTP module named "Authenticator app" will be autoloaded.
|
||||
|
||||
You will need an authenticator app on your phone. We recommend either [Google Authenticator](https://support.google.com/accounts/answer/1066447) or [Authy](https://authy.com/). Both are available for iOS or Android.
|
||||
|
||||
|
@ -84,7 +84,7 @@ Knowing how to access the [state object](/docs/configuration/state_object/) of a
|
||||
|
||||
The following tables show the available trigger data per platform.
|
||||
|
||||
### event
|
||||
### Event
|
||||
|
||||
| Template variable | Data |
|
||||
| ---- | ---- |
|
||||
@ -92,7 +92,7 @@ The following tables show the available trigger data per platform.
|
||||
| `trigger.event` | Event object that matched.
|
||||
| `trigger.event.data` | Optional data
|
||||
|
||||
### mqtt
|
||||
### MQTT
|
||||
|
||||
| Template variable | Data |
|
||||
| ---- | ---- |
|
||||
@ -102,7 +102,7 @@ The following tables show the available trigger data per platform.
|
||||
| `trigger.payload_json` | Dictonary of the JSON parsed payload.
|
||||
| `trigger.qos` | QOS of payload.
|
||||
|
||||
### numeric_state
|
||||
### Numeric State
|
||||
|
||||
| Template variable | Data |
|
||||
| ---- | ---- |
|
||||
@ -114,7 +114,7 @@ The following tables show the available trigger data per platform.
|
||||
| `trigger.to_state` | The new [state object] that triggered trigger.
|
||||
| `trigger.for` | Timedelta object how long state has met above/below criteria, if any.
|
||||
|
||||
### state
|
||||
### State
|
||||
|
||||
| Template variable | Data |
|
||||
| ---- | ---- |
|
||||
@ -124,7 +124,7 @@ The following tables show the available trigger data per platform.
|
||||
| `trigger.to_state` | The new [state object] that triggered trigger.
|
||||
| `trigger.for` | Timedelta object how long state has been to state, if any.
|
||||
|
||||
### sun
|
||||
### Sun
|
||||
|
||||
| Template variable | Data |
|
||||
| ---- | ---- |
|
||||
@ -132,7 +132,7 @@ The following tables show the available trigger data per platform.
|
||||
| `trigger.event` | The event that just happened: `sunset` or `sunrise`.
|
||||
| `trigger.offset` | Timedelta object with offset to the event, if any.
|
||||
|
||||
### template
|
||||
### Template
|
||||
|
||||
| Template variable | Data |
|
||||
| ---- | ---- |
|
||||
@ -142,21 +142,21 @@ The following tables show the available trigger data per platform.
|
||||
| `trigger.to_state` | New [state object] of entity that caused template to change.
|
||||
| `trigger.for` | Timedelta object how long state has been to state, if any.
|
||||
|
||||
### time
|
||||
### Time
|
||||
|
||||
| Template variable | Data |
|
||||
| ---- | ---- |
|
||||
| `trigger.platform` | Hardcoded: `time`
|
||||
| `trigger.now` | DateTime object that triggered the time trigger.
|
||||
|
||||
### time pattern
|
||||
### Time Pattern
|
||||
|
||||
| Template variable | Data |
|
||||
| ---- | ---- |
|
||||
| `trigger.platform` | Hardcoded: `time_pattern`
|
||||
| `trigger.now` | DateTime object that triggered the time_pattern trigger.
|
||||
|
||||
### webhook
|
||||
### Webhook
|
||||
|
||||
| Template variable | Data |
|
||||
| ---- | ---- |
|
||||
@ -165,7 +165,7 @@ The following tables show the available trigger data per platform.
|
||||
| `trigger.json` | The JSON data of the request (if it had a JSON content type).
|
||||
| `trigger.data` | The form data of the request (if it had a form data content type).
|
||||
|
||||
### zone
|
||||
### Zone
|
||||
|
||||
| Template variable | Data |
|
||||
| ---- | ---- |
|
||||
|
@ -28,7 +28,7 @@ Please note that if you click on **Trigger** of an automation in the frontend, *
|
||||
All this makes that Trigger feature pretty limited and nearly useless for debugging purposes so you need to find another way.
|
||||
Make sure you check and adapt to your circumstances appropriate examples from Automation Trigger, Conditions and Actions.
|
||||
|
||||
It is also useful to go to **Configuration** -> **Server Control** and click on **Check Config** button in Configuration validation section to make sure there are no syntax errors before restarting Home Assistant. In order for **Check Config** to be visible, you must enable **Advanced Mode** on your user profile.
|
||||
It is also useful to go to **Configuration** -> **Server Control** and click on **Check Configuration** button in Configuration validation section to make sure there are no syntax errors before restarting Home Assistant. In order for **Check configuration** to be visible, you must enable **Advanced Mode** on your user profile.
|
||||
|
||||
If your automation uses templates in any part, you can do the following to make sure it works as expected:
|
||||
|
||||
|
@ -6,7 +6,7 @@ redirect_from: /getting-started/autostart-synology/
|
||||
|
||||
To get Home Assistant to automatically start when you boot your Synology NAS:
|
||||
|
||||
SSH into your synology & login as admin or root
|
||||
SSH into your Synology & login as admin or root
|
||||
|
||||
```bash
|
||||
$ cd /volume1/homeassistant
|
||||
@ -32,13 +32,13 @@ exec /bin/sh /volume1/homeassistant/hass-daemon start
|
||||
Register the autostart
|
||||
|
||||
```bash
|
||||
$ ln -s homeassistant.conf /etc/init/homeassistant.conf
|
||||
ln -s homeassistant.conf /etc/init/homeassistant.conf
|
||||
```
|
||||
|
||||
Make the relevant files executable:
|
||||
|
||||
```bash
|
||||
$ chmod -r 777 /etc/init/homeassistant.conf
|
||||
chmod -r 777 /etc/init/homeassistant.conf
|
||||
```
|
||||
|
||||
That's it - reboot your NAS and Home Assistant should automatically start
|
||||
|
@ -3,10 +3,10 @@ title: "Autostart using Upstart"
|
||||
description: "Instructions on how to setup Home Assistant to launch on boot using Upstart."
|
||||
---
|
||||
|
||||
Many linux distributions use the Upstart system (or similar) for managing daemons. Typically, systems based on Debian 7 or previous use Upstart. This includes Ubuntu releases before 15.04. If you are unsure if your system is using Upstart, you may check with the following command:
|
||||
Many Linux distributions use the Upstart system (or similar) for managing daemons. Typically, systems based on Debian 7 or previous use Upstart. This includes Ubuntu releases before 15.04. If you are unsure if your system is using Upstart, you may check with the following command:
|
||||
|
||||
```bash
|
||||
$ ps -p 1 -o comm=
|
||||
ps -p 1 -o comm=
|
||||
```
|
||||
|
||||
If the preceding command returns the string `init`, you are likely using Upstart.
|
||||
|
@ -6,7 +6,7 @@ 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 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).
|
||||
|
||||
Packages are configured under the core `homeassistant/packages` in the configuration and take the format of a package name (no spaces, all lower case) followed by a dictionary with the package config. For example, package `pack_1` would be created as:
|
||||
Packages are configured under the core `homeassistant/packages` in the configuration and take the format of a package name (no spaces, all lower case) followed by a dictionary with the package configuration. For example, package `pack_1` would be created as:
|
||||
|
||||
```yaml
|
||||
homeassistant:
|
||||
@ -60,7 +60,7 @@ There are some rules for packages that will 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:
|
||||
For example if we have the following in the main configuration. You are not allowed to re-use "my_input" again for `input_boolean` in a package:
|
||||
|
||||
```yaml
|
||||
input_boolean:
|
||||
|
@ -4,9 +4,9 @@ description: "Storing secrets outside of your configuration.yaml."
|
||||
redirect_from: /topics/secrets/
|
||||
---
|
||||
|
||||
The `configuration.yaml` file is a plain-text file, thus it is readable by anyone who has access to the file. The file contains passwords and API tokens which need to be redacted if you want to share your configuration. By using `!secret` you can remove any private information from your configuration files. This separation can also help you to keep easier track of your passwords and API keys, as they are all stored at one place and no longer spread across the `configuration.yaml` file or even multiple yaml files if you [split up your configuration](/docs/configuration/splitting_configuration/).
|
||||
The `configuration.yaml` file is a plain-text file, thus it is readable by anyone who has access to the file. The file contains passwords and API tokens which need to be redacted if you want to share your configuration. By using `!secret` you can remove any private information from your configuration files. This separation can also help you to keep easier track of your passwords and API keys, as they are all stored at one place and no longer spread across the `configuration.yaml` file or even multiple YAML files if you [split up your configuration](/docs/configuration/splitting_configuration/).
|
||||
|
||||
### Using secrets.yaml
|
||||
### Using `secrets.yaml`
|
||||
|
||||
The workflow for moving private information to `secrets.yaml` is very similar to the [splitting of the configuration](/docs/configuration/splitting_configuration/). Create a `secrets.yaml` file in your Home Assistant [configuration directory](/docs/configuration/).
|
||||
|
||||
|
@ -21,7 +21,7 @@ If you want secure remote access, the easiest option is to use [Home Assistant c
|
||||
|
||||
As well as the above we advise that you consider the following to improve security:
|
||||
|
||||
- For systems that use SSH set `PermitRootLogin no` in your sshd config (usually `/etc/ssh/sshd_config`) and to use SSH keys for authentication instead of passwords. This is particularly important if you enable remote access to your SSH services.
|
||||
- For systems that use SSH set `PermitRootLogin no` in your sshd configuration (usually `/etc/ssh/sshd_config`) and to use SSH keys for authentication instead of passwords. This is particularly important if you enable remote access to your SSH services.
|
||||
- Lock down the host following good practice guidance, for example:
|
||||
* [Securing Debian Manual](https://www.debian.org/doc/manuals/securing-debian-howto/index.en.html) (this also applies to Raspbian)
|
||||
* [Red Hat Enterprise Linux 7 Security Guide](https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/pdf/Security_Guide/Red_Hat_Enterprise_Linux-7-Security_Guide-en-US.pdf), [CIS Red Hat Enterprise Linux 7 Benchmark](https://benchmarks.cisecurity.org/tools2/linux/CIS_Red_Hat_Enterprise_Linux_7_Benchmark_v1.0.0.pdf)
|
||||
|
@ -4,7 +4,7 @@ description: "Splitting the configuration.yaml into several files."
|
||||
redirect_from: /topics/splitting_configuration/
|
||||
---
|
||||
|
||||
So you've been using Home Assistant for a while now and your configuration.yaml file brings people to tears or you simply want to start off with the distributed approach, here's how to "split the configuration.yaml" into more manageable (read: humanly readable) pieces.
|
||||
So you've been using Home Assistant for a while now and your `configuration.yaml` file brings people to tears or you simply want to start off with the distributed approach, here's how to split the `configuration.yaml` into more manageable (read: humanly readable) pieces.
|
||||
|
||||
First off, several community members have sanitized (read: without API keys/passwords etc) versions of their configurations available for viewing, you can see a list of them [here](/cookbook/#example-configurationyaml).
|
||||
|
||||
@ -154,8 +154,8 @@ If you have issues checkout `home-assistant.log` in the configuration directory
|
||||
If you have many configuration files, the `check_config` script allows you to see how Home Assistant interprets them:
|
||||
|
||||
- Listing all loaded files: `hass --script check_config --files`
|
||||
- Viewing a component's config: `hass --script check_config --info light`
|
||||
- Or all components' config: `hass --script check_config --info all`
|
||||
- Viewing a component's configuration: `hass --script check_config --info light`
|
||||
- Or all components' configuration: `hass --script check_config --info all`
|
||||
|
||||
You can get help from the command line using: `hass --script check_config --help`
|
||||
|
||||
|
@ -11,7 +11,7 @@ This is an advanced feature of Home Assistant. You'll need a basic understanding
|
||||
|
||||
Templating is a powerful feature that allows you to control information going into and out of the system. It is used for:
|
||||
|
||||
- Formatting outgoing messages in, for example, the [notify](/integrations/notify/) platforms and [alexa](/integrations/alexa/) component.
|
||||
- Formatting outgoing messages in, for example, the [notify](/integrations/notify/) platforms and [Alexa](/integrations/alexa/) component.
|
||||
- Process incoming data from sources that provide raw data, like [MQTT](/integrations/mqtt/), [`rest` sensor](/integrations/rest/) or the [`command_line` sensor](/integrations/sensor.command_line/).
|
||||
- [Automation Templating](/docs/automation/templating/).
|
||||
|
||||
@ -186,7 +186,7 @@ Note: [UNIX timestamp](https://en.wikipedia.org/wiki/Unix_time) is the number of
|
||||
|
||||
### To/From JSON
|
||||
|
||||
The `to_json` filter serializes an object to a JSON string. In some cases, it may be necessary to format a JSON string for use with a webhook, as a parameter for command line utilities or any number of other applications. This can be complicated in a template, especially when dealing with escaping special characters. Using the `to_json` filter, this is handled automatically.
|
||||
The `to_json` filter serializes an object to a JSON string. In some cases, it may be necessary to format a JSON string for use with a webhook, as a parameter for command-line utilities or any number of other applications. This can be complicated in a template, especially when dealing with escaping special characters. Using the `to_json` filter, this is handled automatically.
|
||||
|
||||
The `from_json` filter operates similarly, but in the other direction, de-serializing a JSON string back into an object.
|
||||
|
||||
|
@ -24,7 +24,7 @@ One of the most common problems with Home Assistant is an invalid `configuration
|
||||
- On Hass.io you can use the [`hassio` command](/hassio/commandline/#home-assistant): `hassio homeassistant check`.
|
||||
- On Docker you can use `docker exec home-assistant python -m homeassistant --script check_config --config /config` - where `home-assistant` is the name of the container.
|
||||
- The configuration files, including `configuration.yaml` must be UTF-8 encoded. If you see error like `'utf-8' codec can't decode byte`, edit the offending configuration and re-save it as UTF-8.
|
||||
- You can verify your configuration's yaml structure using [this online YAML parser](http://yaml-online-parser.appspot.com/) or [YAML Lint](http://www.yamllint.com/).
|
||||
- You can verify your configuration's YAML structure using [this online YAML parser](http://yaml-online-parser.appspot.com/) or [YAML Lint](http://www.yamllint.com/).
|
||||
- To learn more about the quirks of YAML, read [YAML IDIOSYNCRASIES](https://docs.saltstack.com/en/latest/topics/troubleshooting/yaml_idiosyncrasies.html) by SaltStack (the examples there are specific to SaltStack, but do explain YAML issues well).
|
||||
|
||||
`configuration.yaml` does not allow multiple sections to have the same name. If you want to load multiple platforms for one component, you can append a [number or string](/getting-started/devices/#style-2-list-each-device-separately) to the name or nest them using [this style](/getting-started/devices/#style-1-collect-every-entity-under-the-parent):
|
||||
|
@ -12,7 +12,7 @@ AppDaemon is not meant to replace Home Assistant Automations and Scripts, rather
|
||||
|
||||
- New paradigm - Some problems require a procedural and/or iterative approach, and `AppDaemon` Apps are a much more natural fit for this. Recent enhancements to Home Assistant scripts and templates have made huge strides, but for the most complex scenarios, Apps can do things that automations can't.
|
||||
- Ease of use - AppDaemon's API is full of helper functions that make programming as easy and natural as possible. The functions and their operation are as "Pythonic" as possible; experienced Python programmers should feel right at home.
|
||||
- Reuse - write a piece of code once and instantiate it as an App as many times as you need with different parameters; e.g., a motion light program that you can use in five different places around your home. The code stays the same, you just dynamically add new instances of it in the config file.
|
||||
- Reuse - write a piece of code once and instantiate it as an App as many times as you need with different parameters; e.g., a motion light program that you can use in five different places around your home. The code stays the same, you just dynamically add new instances of it in the configuration file.
|
||||
- Dynamic - AppDaemon has been designed from the start to enable the user to make changes without requiring a restart of Home Assistant, thanks to its loose coupling. However, it is better than that - the user can make changes to code and AppDaemon will automatically reload the code, figure out which Apps were using it, and restart them to use the new code without the need to restart `AppDaemon` itself. It is also possible to change parameters for an individual or multiple Apps and have them picked up dynamically. For a final trick, removing or adding Apps is also picked up dynamically. Testing cycles become a lot more efficient as a result.
|
||||
- Complex logic - Python's If/Else constructs are clearer and easier to code for arbitrarily complex nested logic.
|
||||
- Durable variables and state - Variables can be kept between events to keep track of things like the number of times a motion sensor has been activated, or how long it has been since a door opened.
|
||||
|
@ -18,7 +18,7 @@ class MotionLights(appapi.AppDaemon):
|
||||
"""Motion lights implementation."""
|
||||
```
|
||||
|
||||
When configured as an app in the config file (more on that later) the lifecycle of the App begins. It will be instantiated as an object by AppDaemon, and immediately, it will have a call made to its `initialize()` function - this function must appear as part of every app:
|
||||
When configured as an app in the configuration file (more on that later) the lifecycle of the App begins. It will be instantiated as an object by AppDaemon, and immediately, it will have a call made to its `initialize()` function - this function must appear as part of every app:
|
||||
|
||||
```python
|
||||
def initialize(self):
|
||||
@ -1936,7 +1936,7 @@ get_app(self, name)
|
||||
|
||||
##### name
|
||||
|
||||
Name of the app required. This is the name specified in header section of the config file, not the module or class.
|
||||
Name of the app required. This is the name specified in header section of the configuration file, not the module or class.
|
||||
|
||||
#### Returns
|
||||
|
||||
@ -2035,19 +2035,19 @@ self.error("Some Critical string", level="CRITICAL")
|
||||
|
||||
Sharing information between different Apps is very simple if required. Each app gets access to a global dictionary stored in a class attribute called `self.global_vars`. Any App can add or read any key as required. This operation is not however threadsafe so some car is needed.
|
||||
|
||||
In addition, Apps have access to the entire configuration if required, meaning they can access AppDaemon configuration items as well as parameters from other Apps. To use this, there is a class attribute called `self.config`. It contains a `ConfigParser` object, which is similar in operation to a `Dictionary`. To access any apps parameters, simply reference the ConfigParser object using the Apps name (form the config file) as the first key, and the parameter required as the second, for instance:
|
||||
In addition, Apps have access to the entire configuration if required, meaning they can access AppDaemon configuration items as well as parameters from other Apps. To use this, there is a class attribute called `self.config`. It contains a `ConfigParser` object, which is similar in operation to a `Dictionary`. To access any apps parameters, simply reference the ConfigParser object using the Apps name (form the configuration file) as the first key, and the parameter required as the second, for instance:
|
||||
|
||||
```python
|
||||
other_apps_arg = self.config["some_app"]["some_parameter"]
|
||||
```
|
||||
|
||||
To get AppDaemon's config parameters, use the key "AppDaemon", e.g.:
|
||||
To get AppDaemon's configuration parameters, use the key "AppDaemon", e.g.:
|
||||
|
||||
```python
|
||||
app_timezone = self.config["AppDaemon"]["time_zone"]
|
||||
```
|
||||
|
||||
And finally, it is also possible to use the AppDaemon as a global area for sharing parameters across Apps. Simply add the required parameters to the AppDaemon section of your config:
|
||||
And finally, it is also possible to use the AppDaemon as a global area for sharing parameters across Apps. Simply add the required parameters to the AppDaemon section of your configuration:
|
||||
|
||||
```ini
|
||||
[AppDaemon]
|
||||
|
@ -8,7 +8,7 @@ As configured, `AppDaemon` comes with a single HelloWorld App that will send a g
|
||||
|
||||
## Docker
|
||||
|
||||
Assuming you have set the config up as described above for Docker, you can run it with the command:
|
||||
Assuming you have set the configuration up as described above for Docker, you can run it with the command:
|
||||
|
||||
```bash
|
||||
$ docker run -d -v <Path to Config>/conf:/conf --name appdaemon acockburn/appdaemon:latest
|
||||
|
@ -23,7 +23,7 @@ So why `AppDaemon`? AppDaemon is not meant to replace Home Assistant Automations
|
||||
|
||||
- New paradigm - some problems require a procedural and/or iterative approach, and `AppDaemon` Apps are a much more natural fit for this. Recent enhancements to Home Assistant scripts and templates have made huge strides, but for the most complex scenarios, Apps can do things that Automations can't
|
||||
- Ease of use - AppDaemon's API is full of helper functions that make programming as easy and natural as possible. The functions and their operation are as "Pythonic" as possible, experienced Python programmers should feel right at home.
|
||||
- Reuse - write a piece of code once and instantiate it as an app as many times as you need with different parameters e.g., a motion light program that you can use in 5 different places around your home. The code stays the same, you just dynamically add new instances of it in the config file
|
||||
- Reuse - write a piece of code once and instantiate it as an app as many times as you need with different parameters e.g., a motion light program that you can use in 5 different places around your home. The code stays the same, you just dynamically add new instances of it in the configuration file
|
||||
- Dynamic - AppDaemon has been designed from the start to enable the user to make changes without requiring a restart of Home Assistant, thanks to its loose coupling. However, it is better than that - the user can make changes to code and AppDaemon will automatically reload the code, figure out which Apps were using it and restart them to use the new code with out the need to restart `AppDaemon` itself. It is also possible to change parameters for an individual or multiple apps and have them picked up dynamically, and for a final trick, removing or adding apps is also picked up dynamically. Testing cycles become a lot more efficient as a result.
|
||||
- Complex logic - Python's If/Else constructs are clearer and easier to code for arbitrarily complex nested logic
|
||||
- Durable variables and state - variables can be kept between events to keep track of things like the number of times a motion sensor has been activated, or how long it has been since a door opened
|
||||
|
@ -7,7 +7,7 @@ redirect_from: /ecosystem/appdaemon/updating/
|
||||
To update AppDaemon after I have released new code, just run the following command to update your copy:
|
||||
|
||||
```bash
|
||||
$ sudo pip3 install --upgrade appdaemon
|
||||
sudo pip3 install --upgrade appdaemon
|
||||
```
|
||||
|
||||
If you are using docker, rerun the steps to grab the latest docker image.
|
||||
If you are using Docker, rerun the steps to grab the latest Docker image.
|
||||
|
@ -198,7 +198,7 @@ duckdns:
|
||||
|
||||
The access token is available on your DuckDNS page. Restart Home Assistant after the change.
|
||||
|
||||
What you have now done is set up DuckDNS so that whenever you type examplehome.duckdns.org in to your browser it will convert that to your router's external IP address. Your external IP address will always be up to date because Homeassistant will update DuckDNS every time it changes.
|
||||
What you have now done is set up DuckDNS so that whenever you type examplehome.duckdns.org in to your browser it will convert that to your router's external IP address. Your external IP address will always be up to date because Home Assistant will update DuckDNS every time it changes.
|
||||
|
||||
Now type your new URL in to your address bar on your browser with port 8123 on the end:
|
||||
|
||||
|
@ -86,11 +86,11 @@ Forward ports 443 and (optionally) 80 to your server on your router.
|
||||
Do not forward port 8123, HAProxy takes care of securing the connection with HTTPS on 443.
|
||||
If 8123 is forwarded then it will not be secured.
|
||||
|
||||
Replace 443 with whatever port you chose to bind to in the config if different.
|
||||
Replace 443 with whatever port you chose to bind to in the configuration if different.
|
||||
|
||||
### Configure Home Assistant HTTP Component
|
||||
|
||||
In your `configuration.yaml` file, edit the [http component](/integrations/http/).
|
||||
In your `configuration.yaml` file, edit the [HTTP component](/integrations/http/).
|
||||
|
||||
```text
|
||||
http:
|
||||
|
@ -10,8 +10,7 @@ Using NGINX as a proxy for Home Assistant allows you to serve Home Assistant sec
|
||||
|
||||
Chances are, you have a dynamic IP address (your ISP changes your address periodically). If this is true, you can use a Dynamic DNS service to obtain a domain and set it up to update with you IP. If you purchase your own domain name, you will be able to easily get a trusted SSL certificate later.
|
||||
|
||||
|
||||
### 2 Install nginx on your server
|
||||
### 2 Install NGINX on your server
|
||||
|
||||
This will vary depending on your OS. Check out Google for this. After installing, ensure that NGINX is not running.
|
||||
|
||||
@ -24,7 +23,8 @@ You will at least need nginx >= 1.3.13, as WebSocket support is required for the
|
||||
There are two ways of obtaining an SSL certificate.
|
||||
|
||||
#### Using Let's Encrypt
|
||||
If you purchased your own domain, you can use https://letsencrypt.org/ to obtain a free, publicly trusted SSL certificate. This will allow you to work with services like IFTTT. Download and install per the instructions online and get a certificate using the following command.
|
||||
|
||||
If you purchased your own domain, you can use <https://letsencrypt.org> to obtain a free, publicly trusted SSL certificate. This will allow you to work with services like IFTTT. Download and install per the instructions online and get a certificate using the following command.
|
||||
|
||||
```bash
|
||||
$ sudo ./letsencrypt-auto certonly --standalone -d example.com -d www.example.com
|
||||
@ -53,7 +53,7 @@ cd /etc/nginx/ssl
|
||||
sudo openssl dhparam -out dhparams.pem 2048
|
||||
```
|
||||
|
||||
### 5. Install configuration file in nginx.
|
||||
### 5. Install configuration file in NGINX
|
||||
|
||||
Create a new file `/etc/nginx/sites-available/hass` and copy the configuration file at the bottom of the page into it.
|
||||
|
||||
@ -63,7 +63,7 @@ Some Linux distributions (including CentOS and Fedora) will not have the `/etc/n
|
||||
|
||||
</div>
|
||||
|
||||
### 6. Enable the Home Assistant configuration.
|
||||
### 6. Enable the Home Assistant configuration
|
||||
|
||||
```bash
|
||||
cd /etc/nginx/sites-enabled
|
||||
@ -71,11 +71,11 @@ sudo unlink default
|
||||
sudo ln ../sites-available/hass default
|
||||
```
|
||||
|
||||
### 7. Start NGINX.
|
||||
### 7. Start NGINX
|
||||
|
||||
Double check this configuration to ensure all settings are correct and start nginx.
|
||||
Double check this configuration to ensure all settings are correct and start NGINX.
|
||||
|
||||
### 8. Port forwarding.
|
||||
### 8. Port forwarding
|
||||
|
||||
Forward ports 443 and 80 to your server on your router. Do not forward port 8123.
|
||||
|
||||
@ -97,7 +97,7 @@ http:
|
||||
trusted_proxies: <NGINX IP address here, or 127.0.0.1 if hosted on the same machine>
|
||||
```
|
||||
|
||||
### NGINX Config
|
||||
### NGINX configuration
|
||||
|
||||
```nginx
|
||||
map $http_upgrade $connection_upgrade {
|
||||
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
title: "Database"
|
||||
description: "Accessing the Home-Assistant database from a Jupyter notebook."
|
||||
description: "Accessing the Home Assistant database from a Jupyter notebook."
|
||||
redirect_from: /ecosystem/notebooks/database/
|
||||
---
|
||||
|
||||
You can directly access the Home-Assistant database from Jupyter notebooks. The [Database example](https://nbviewer.jupyter.org/github/home-assistant/home-assistant-notebooks/blob/master/other/database-examples.ipynb) shows you how you can work with stored database values.
|
||||
You can directly access the Home Assistant database from Jupyter notebooks. The [Database example](https://nbviewer.jupyter.org/github/home-assistant/home-assistant-notebooks/blob/master/other/database-examples.ipynb) shows you how you can work with stored database values.
|
||||
|
@ -80,7 +80,7 @@ For Tor Browser on Windows, Mac or Linux, you can find the torrc file here: `<to
|
||||
|
||||
Once you have added the entry, restart the browser, and then browse to the "dot onion" site address to connect to your Home Assistant instance.
|
||||
|
||||
For [Orbot: Tor on Android](https://guardianproject.info/apps/orbot), add it in **Orbot** -> **Menu** -> **Settings** to the "Torrc Custom Config" entry. Restart Orbot, and then use the [Orfox browser app](https://guardianproject.info/apps/orfox/), and browse to the "dot onion" site name to access your Home Assistant instance. You can also use Orbot's VPN mode, to enable Tor access from any application on your device, such as Tasker or Owntracks.
|
||||
For [Orbot: Tor on Android](https://guardianproject.info/apps/orbot), add it in **Orbot** -> **Menu** -> **Settings** to the "Torrc Custom Configuration" entry. Restart Orbot, and then use the [Orfox browser app](https://guardianproject.info/apps/orfox/), and browse to the "dot onion" site name to access your Home Assistant instance. You can also use Orbot's VPN mode, to enable Tor access from any application on your device, such as Tasker or Owntracks.
|
||||
|
||||
On iOS, we have not fully tested this yet, but you should be able to add custom torrc entries on [Onion Browser](https://mike.tig.as/onionbrowser/), Red Onion or TOBY browsers, all available in the iTunes App Store.
|
||||
|
||||
|
@ -6,9 +6,9 @@ redirect_from: /getting-started/mobile/
|
||||
|
||||
Home Assistant has [a companion app for both Android and iOS](/docs/ecosystem/ios/).
|
||||
|
||||
As an alternative to the iOS and Android companion apps, you can add the Home Assistant "web app" to your homescreen as if it was native (Home Assistant leverages the W3C [manifest.json](https://w3c.github.io/manifest/) support).
|
||||
As an alternative to the iOS and Android companion apps, you can add the Home Assistant "web app" to your homescreen as if it was native (Home Assistant leverages the W3C [`manifest.json`](https://w3c.github.io/manifest/) support).
|
||||
|
||||
### Android
|
||||
## Android
|
||||
|
||||
1. Open Chrome
|
||||
2. Navigate to your Home Assistant instance
|
||||
@ -20,7 +20,7 @@ As an alternative to the iOS and Android companion apps, you can add the Home As
|
||||
<img src='/images/screenshots/android-homescreen-guide.gif' />
|
||||
</p>
|
||||
|
||||
### iOS
|
||||
## iOS
|
||||
|
||||
1. Open Safari
|
||||
2. Navigate to your Home Assistant instance
|
||||
|
@ -13,6 +13,7 @@ sudo apt-get install python3-dev python3-pip
|
||||
```
|
||||
|
||||
Now that you installed python, there are two ways to install Home Assistant:
|
||||
|
||||
1. It is recommended to install Home Assistant in a virtual environment to avoid using `root`, using the [VirtualEnv instructions](/docs/installation/virtualenv/)
|
||||
2. Alternatively, you can install Home Assistant for the user you created when first booting Armbian:
|
||||
|
||||
@ -25,6 +26,4 @@ Running these commands will:
|
||||
|
||||
- Install Home Assistant
|
||||
- Launch Home Assistant and serve the web interface on `http://localhost:8123`
|
||||
- the configuration files will be created in /home/{user}/.homeassistant
|
||||
|
||||
|
||||
- The configuration files will be created in `/home/{user}/.homeassistant`
|
||||
|
@ -30,7 +30,7 @@ docker run --init -d --name="home-assistant" -e "TZ=America/New_York" -v /home/p
|
||||
|
||||
When using `docker-ce` (or `boot2docker`) on macOS, you are unable to map the local timezone to your Docker container ([Docker issue](https://github.com/docker/for-mac/issues/44)). Instead of `-v /etc/localtime:/etc/localtime:ro`, just pass in the timezone environment variable when you launch the container, e.g, `-e "TZ=America/Los_Angeles"`. Replace "America/Los_Angeles" with [your timezone](http://en.wikipedia.org/wiki/List_of_tz_database_time_zones).
|
||||
|
||||
If you wish to browse directly to `http://localhost:8123` from your macOS host, meaning forward ports directly to the container, replace the `--net=host` switch with `-p 8123:8123`. More detail can be found in [the docker forums](https://forums.docker.com/t/should-docker-run-net-host-work/14215/10).
|
||||
If you wish to browse directly to `http://localhost:8123` from your macOS host, meaning forward ports directly to the container, replace the `--net=host` switch with `-p 8123:8123`. More detail can be found in [the Docker forums](https://forums.docker.com/t/should-docker-run-net-host-work/14215/10).
|
||||
|
||||
```bash
|
||||
docker run --init -d --name="home-assistant" -e "TZ=America/Los_Angeles" -v /PATH_TO_YOUR_CONFIG:/config -p 8123:8123 homeassistant/home-assistant:stable
|
||||
@ -42,7 +42,7 @@ Alternatively, `docker-compose` works with any recent release of `docker-ce` on
|
||||
|
||||
Docker containers are completely isolated from its Windows host system. So when you delete a container, all the changes you made to that container are also removed. If you want to have configuration files or other assets remain persistent, try mounting Windows folders on containers.
|
||||
|
||||
Before proceeding, make sure you have shared out a drive for docker to mount to. This will allow the saving of config files to persist on the local machine rather than in the docker container (which may be destroyed when upgraded).
|
||||
Before proceeding, make sure you have shared out a drive for Docker to mount to. This will allow the saving of configuration files to persist on the local machine rather than in the Docker container (which may be destroyed when upgraded).
|
||||
|
||||
<https://docs.docker.com/docker-for-windows/#shared-drives>
|
||||
<https://docs.docker.com/docker-for-windows/troubleshoot/#verify-domain-user-has-permissions-for-shared-drives-volumes>
|
||||
@ -64,11 +64,11 @@ netsh interface portproxy add v4tov4 listenaddress=192.168.1.10 listenport=8123
|
||||
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=8123 connectaddress=10.0.50.2 connectport=8123
|
||||
```
|
||||
|
||||
This will let you access your Home Assistant portal from `http://localhost:8123`, and if you forward port 8123 on your router to your machine IP, the traffic will be forwarded on through to the docker container.
|
||||
This will let you access your Home Assistant portal from `http://localhost:8123`, and if you forward port 8123 on your router to your machine IP, the traffic will be forwarded on through to the Docker container.
|
||||
|
||||
### Synology NAS
|
||||
|
||||
As Synology within DSM now supports Docker (with a neat UI), you can simply install Home Assistant using docker without the need for command-line. For details about the package (including compatibility-information, if your NAS is supported), see <https://www.synology.com/en-us/dsm/packages/Docker>
|
||||
As Synology within DSM now supports Docker (with a neat UI), you can simply install Home Assistant using Docker without the need for command-line. For details about the package (including compatibility-information, if your NAS is supported), see <https://www.synology.com/en-us/dsm/packages/Docker>
|
||||
|
||||
The steps would be:
|
||||
|
||||
@ -117,7 +117,7 @@ Remark: to update your Home Assistant on your Docker within Synology NAS, you ju
|
||||
- Wait until the system-message/-notification comes up, that the download is finished (there is no progress bar)
|
||||
- Move to "Container"-section
|
||||
- Stop your container if it's running
|
||||
- Right-click on it and select "Action"->"Clear". You won't lose any data, as all files are stored in your config-directory
|
||||
- Right-click on it and select "Action"->"Clear". You won't lose any data, as all files are stored in your configuration-directory
|
||||
- Start the container again - it will then boot up with the new Home Assistant image
|
||||
|
||||
Remark: to restart your Home Assistant within Synology NAS, you just have to do the following:
|
||||
@ -131,13 +131,13 @@ If you want to use a USB Bluetooth adapter or Z-Wave USB Stick with Home Assista
|
||||
|
||||
### QNAP NAS
|
||||
|
||||
As QNAP within QTS now supports Docker (with a neat UI), you can simply install Home Assistant using docker without the need for command-line. For details about the package (including compatibility-information, if your NAS is supported), see <https://www.qnap.com/solution/container_station/en/index.php>
|
||||
As QNAP within QTS now supports Docker (with a neat UI), you can simply install Home Assistant using Docker without the need for command-line. For details about the package (including compatibility-information, if your NAS is supported), see <https://www.qnap.com/solution/container_station/en/index.php>
|
||||
|
||||
The steps would be:
|
||||
|
||||
- Install "Container Station" package on your Qnap NAS
|
||||
- Launch Container Station and move to "Create Container"-section
|
||||
- Search image "homeassistant/home-assistant" with Docker hub and click on "Install"
|
||||
- Search image "homeassistant/home-assistant" with Docker Hub and click on "Install"
|
||||
Make attention to CPU architecture of your NAS. For ARM CPU types the correct image is "homeassistant/armhf-homeassistant"
|
||||
- Choose "latest" version and click next
|
||||
- Choose a container-name you want (e.g., "homeassistant")
|
||||
@ -156,7 +156,7 @@ If you want to use a USB Bluetooth adapter or Z-Wave USB stick with Home Assista
|
||||
#### Z-Wave
|
||||
|
||||
- Connect to your NAS over SSH
|
||||
- Load cdc-acm kernel module(when nas restart need to run this command)
|
||||
- Load cdc-acm kernel module(when NAS restart need to run this command)
|
||||
`insmod /usr/local/modules/cdc-acm.ko`
|
||||
- Find USB devices attached. Type command:
|
||||
`ls /dev/tty*`
|
||||
@ -165,7 +165,7 @@ If you want to use a USB Bluetooth adapter or Z-Wave USB stick with Home Assista
|
||||
- Run Docker command:
|
||||
`docker run --init --name home-assistant --net=host --privileged -itd -v /share/CACHEDEV1_DATA/Public/homeassistant/config:/config -e variable=TZ -e value=Europe/London --device /dev/ttyACM0 homeassistant/home-assistant:stable`
|
||||
|
||||
`-v` is your config path
|
||||
`-v` is your configuration path
|
||||
`-e` is set timezone
|
||||
|
||||
- Edit `configuration.yaml`
|
||||
@ -183,7 +183,7 @@ That will tell Home Assistant where to look for our Z-Wave radio.
|
||||
- Run Docker command:
|
||||
`docker run --init --name home-assistant --net=host --privileged -itd -v /share/CACHEDEV1_DATA/Public/homeassistant/config:/config -e variable=TZ -e value=Europe/London -v /dev/bus/usb:/dev/bus/usb -v /var/run/dbus:/var/run/dbus homeassistant/home-assistant:stable`
|
||||
|
||||
First `-v` is your config path
|
||||
First `-v` is your configuration path
|
||||
`-e` is set timezone
|
||||
|
||||
- Edit the `configuration.yaml` file
|
||||
@ -202,7 +202,7 @@ If you change the configuration you have to restart the server. To do that you h
|
||||
|
||||
## Docker Compose
|
||||
|
||||
As the docker command becomes more complex, switching to `docker-compose` can be preferable and support automatically restarting on failure or system restart. Create a `docker-compose.yml` file:
|
||||
As the Docker command becomes more complex, switching to `docker-compose` can be preferable and support automatically restarting on failure or system restart. Create a `docker-compose.yml` file:
|
||||
|
||||
```yaml
|
||||
version: '3'
|
||||
@ -232,7 +232,7 @@ docker-compose restart
|
||||
|
||||
## Exposing Devices
|
||||
|
||||
In order to use Z-Wave, Zigbee or other integrations that require access to devices, you need to map the appropriate device into the container. Ensure the user that is running the container has the correct privileges to access the `/dev/tty*` file, then add the device mapping to your docker command:
|
||||
In order to use Z-Wave, Zigbee or other integrations that require access to devices, you need to map the appropriate device into the container. Ensure the user that is running the container has the correct privileges to access the `/dev/tty*` file, then add the device mapping to your Docker command:
|
||||
|
||||
```bash
|
||||
$ docker run --init -d --name="home-assistant" -v /PATH_TO_YOUR_CONFIG:/config \
|
||||
|
@ -292,7 +292,7 @@ This should output the following
|
||||
/dev/cuau0 /dev/cuaU0
|
||||
```
|
||||
|
||||
Add the Z-Wave config to your `configuration.yaml` and restart Home Assistant
|
||||
Add the Z-Wave configuration to your `configuration.yaml` and restart Home Assistant
|
||||
|
||||
```bash
|
||||
vi /home/homeassistant/.homeassistant/configuration.yaml
|
||||
|
@ -23,7 +23,6 @@ The main benefit from this method is that you can assign Home Assistant its own
|
||||
|
||||
Option 2 is described below.
|
||||
|
||||
|
||||
The following configuration has been tested on Synology 413j running DSM 6.0-7321 Update 1.
|
||||
|
||||
Running these commands will:
|
||||
@ -34,9 +33,9 @@ Running these commands will:
|
||||
Using the Synology webadmin:
|
||||
|
||||
- Install python3 using the Synology Package Center
|
||||
- Create homeassistant user and add to the "users" group
|
||||
- Create a `homeassistant` user and add to the "users" group
|
||||
|
||||
SSH onto your synology & login as admin or root
|
||||
SSH onto your Synology & login as admin or root
|
||||
|
||||
- Log in with your own administrator account
|
||||
- Switch to root using:
|
||||
@ -45,7 +44,6 @@ SSH onto your synology & login as admin or root
|
||||
$ sudo -i
|
||||
```
|
||||
|
||||
|
||||
Check the path to python3 (assumed to be /volume1/@appstore/py3k/usr/local/bin)
|
||||
|
||||
```bash
|
||||
@ -58,13 +56,13 @@ Install PIP (Python's package management system)
|
||||
# ./python3 -m ensurepip
|
||||
```
|
||||
|
||||
Use PIP to install Homeassistant package 0.64.3
|
||||
Use PIP to install the Home Assistant package 0.64.3
|
||||
|
||||
```bash
|
||||
# ./python3 -m pip install homeassistant==0.64.3
|
||||
```
|
||||
|
||||
Create homeassistant config directory & switch to it
|
||||
Create a Home Assistant configuration directory & switch to it
|
||||
|
||||
```bash
|
||||
# mkdir /volume1/homeassistant
|
||||
@ -72,6 +70,7 @@ Create homeassistant config directory & switch to it
|
||||
# chmod 755 /volume1/homeassistant
|
||||
# cd /volume1/homeassistant
|
||||
```
|
||||
|
||||
Hint: alternatively you can also create a "Shared Folder" via Synology WebUI (e.g., via "File Station") - this has the advantage that the folder is visible via "File Station".
|
||||
|
||||
Create hass-daemon file using the following code (edit the variables in uppercase if necessary)
|
||||
@ -188,7 +187,7 @@ Create links to python folders to make things easier in the future:
|
||||
# ln -s /volume1/@appstore/py3k/usr/local/lib/python3.5/site-packages/homeassistant homeassistant
|
||||
```
|
||||
|
||||
Set the owner and permissions on your config folder
|
||||
Set the owner and permissions on your configuration folder
|
||||
|
||||
```bash
|
||||
# chown -R homeassistant:users /volume1/homeassistant
|
||||
@ -214,7 +213,7 @@ Update your firewall (if it is turned on the Synology device):
|
||||
- Click on OK again
|
||||
|
||||
|
||||
Copy your configuration.yaml file into the config folder
|
||||
Copy your `configuration.yaml` file into the configuration folder
|
||||
That's it... you're all set to go
|
||||
|
||||
Here are some useful commands:
|
||||
|
@ -143,12 +143,12 @@ If you experience an error message like `Failed to connect due to exception: [SS
|
||||
Home Assistant contains an embedded MQTT broker called [HBMQTT](https://pypi.python.org/pypi/hbmqtt). If you don't have an MQTT broker, you can configure this one to be used. If configured, Home Assistant will automatically connect to it.
|
||||
|
||||
| Setting | Value |
|
||||
| -------------- | ----- |
|
||||
| -------------- | ---------------------------------- |
|
||||
| Host | localhost |
|
||||
| Port | 1883 |
|
||||
| Protocol | 3.1.1 |
|
||||
| User | homeassistant |
|
||||
| Password | _password set under mqtt settings_ |
|
||||
| User | `homeassistant` |
|
||||
| Password | _password set under MQTT settings_ |
|
||||
| Websocket port | 8080 |
|
||||
|
||||
```yaml
|
||||
|
@ -50,7 +50,7 @@ retain: true
|
||||
|
||||
### Service `mqtt.dump`
|
||||
|
||||
Listen to the specified topic matcher and dumps all received messages within a specific duration into the file `mqtt_dump.txt` in your config folder. This is useful when debugging a problem.
|
||||
Listen to the specified topic matcher and dumps all received messages within a specific duration into the file `mqtt_dump.txt` in your configuration folder. This is useful when debugging a problem.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
|
@ -6,7 +6,7 @@ redirect_from: /getting-started/scripts-service-calls/
|
||||
|
||||
Various integrations allow calling services when a certain event occurs. The most common one is calling a service when an automation trigger happens. But a service can also be called from a script or via the Amazon Echo.
|
||||
|
||||
The configuration options to call a config are the same between all integrations and are described on this page.
|
||||
The configuration options to call a configuration are the same between all integrations and are described on this page.
|
||||
|
||||
Examples on this page will be given as part of an automation integration configuration but different approaches can be used for other integrations too.
|
||||
|
||||
@ -94,7 +94,7 @@ There are four `homeassistant` services that aren't tied to any single domain, t
|
||||
* `homeassistant.turn_on` - Turns on an entity (that supports being turned on), for example an `automation`, `switch`, etc
|
||||
* `homeassistant.turn_off` - Turns off an entity (that supports being turned off), for example an `automation`, `switch`, etc
|
||||
* `homeassistant.toggle` - Turns off an entity that is on, or turns on an entity that is off (that supports being turned on and off)
|
||||
* `homeassistant.update_entity` - Request the update of an entity, rather than waiting for the next scheduled update, for example [google travel time] sensor, a [template sensor], or a [light]
|
||||
* `homeassistant.update_entity` - Request the update of an entity, rather than waiting for the next scheduled update, for example [Google travel time] sensor, a [template sensor], or a [light]
|
||||
|
||||
Complete service details and examples can be found on the [Home Assistant integration][homeassistant-integration-services] page.
|
||||
|
||||
|
@ -20,6 +20,7 @@ Screenshot of Home Assistant's Developer Tools.
|
||||
| Info | Details about Home Assistant |
|
||||
|
||||
## What can I do with Developer Tools?
|
||||
|
||||
The Developer Tools is meant for **all** (not just for the developers) to quickly try out things - like calling services, update states, raising events, and publish messages in mqtt…etc.). It is also a necessary tool for those who write custom automations and scripts by hand. The following describes each of the section in detail.
|
||||
|
||||
## Services
|
||||
@ -88,7 +89,7 @@ For more information about jinja2, visit [jinja2 documentation](http://jinja.poc
|
||||
|
||||
## MQTT
|
||||
|
||||
This section is only visible if the MQTT integration is configured. To configure MQTT, add `mqtt:` to the `configuration.yaml` file. For more information, refer to the [mqtt](/integrations/mqtt/) component.
|
||||
This section is only visible if the MQTT integration is configured. To configure MQTT, add `mqtt:` to the `configuration.yaml` file. For more information, refer to the [MQTT](/integrations/mqtt/) integration.
|
||||
|
||||
Even though MQTT in general provides deeper functionality, the developer tools section of MQTT is limited to publishing messages to a given topic. It supports templates for the payload. To publish a message, simply specify the topic name and the payload and click “PUBLISH” button.
|
||||
|
||||
|
@ -26,7 +26,7 @@ When you add a device, it may initially appear without a specific entity ID (e.g
|
||||
|
||||
Security Z-Wave devices require a network key. Some devices only expose their full capabilities when included this way. You should always read the manual for your device to find out the recommended inclusion method. Note, secure devices that had been connected to another hub/network in the past may have a "theft protection" feature which requires to first exclude the device successfully from the previous hub using the previous hub/Software setup before it can be enrolled in a new hub/network.
|
||||
|
||||
A valid network key will be a 16 byte value, defined in the zwave section of your configuration, such as the following example:
|
||||
A valid network key will be a 16 byte value, defined in the Z-Wave section of your configuration, such as the following example:
|
||||
|
||||
```yaml
|
||||
zwave:
|
||||
|
@ -26,7 +26,7 @@ Here is where you [include and exclude](/docs/z-wave/adding/) Z-Wave devices fro
|
||||
* **Stop Network** stops the Z-Wave network
|
||||
* **Soft Reset** tells the controller to do a "soft reset." This is not supposed to lose any data, but different controllers can behave differently to a "soft reset" command, and may cause the Z-Wave network to hang.
|
||||
* **Test Network** tells the controller to send no-op commands to each node and measure the time for a response. In theory, this can also bring back nodes which have been marked "presumed dead".
|
||||
* **Save Config** Saves the current cache of the network to zwcfg_[home_id].xml
|
||||
* **Save Configuration** Saves the current cache of the network to zwcfg_[home_id].xml
|
||||
|
||||
## Z-Wave Node Management
|
||||
|
||||
@ -108,7 +108,7 @@ Some Z-Wave devices may associate themselves with the broadcast node (node 255).
|
||||
|
||||
That would remove the broadcast group from association group 1 of the device with node_id 3.
|
||||
|
||||
### Node config options
|
||||
### Node configuration options
|
||||
|
||||
You can set the *wakeup* interval (in seconds) of the device, this is shown for all devices that can be battery powered, even if they are currently mains powered. The wakeup interval only applies when those devices are battery powered.
|
||||
|
||||
@ -116,7 +116,7 @@ You can set the *wakeup* interval (in seconds) of the device, this is shown for
|
||||
The wakeup interval has no impact on the device's ability to report sensor changes. This is purely for how often the Z-Wave chip will check in with the controller. That activity consumes a lot of battery power compared to reporting sensor changes and if you reduce it you'll be reducing the battery life of your device.
|
||||
</div>
|
||||
|
||||
Underneath that you can select any supported configuration parameter to see the current setting. You can then change this and select **Set Config Parameter** to updated it. Battery powered devices will be updated the next time they wake.
|
||||
Underneath that you can select any supported configuration parameter to see the current setting. You can then change this and select **Set Configuration Parameter** to updated it. Battery powered devices will be updated the next time they wake.
|
||||
|
||||
### Node protection
|
||||
|
||||
|
@ -17,7 +17,7 @@ You can set the settings of the Z-Wave device through the Z-Wave control panel.
|
||||
|
||||
These devices require a network key to be set for the Z-Wave network before they are paired, using the **Add Node Secure** option.
|
||||
|
||||
Home Assistant stores logs from Z-Wave in `OZW_log.txt` in the Home Assistant config directory, when you pair a secure device you should see communication from the node with lines starting with `info: NONCES` in `OZW_log.txt` when the device is paired successfully with a secure connection.
|
||||
Home Assistant stores logs from Z-Wave in `OZW_log.txt` in the Home Assistant configuration directory, when you pair a secure device you should see communication from the node with lines starting with `info: NONCES` in `OZW_log.txt` when the device is paired successfully with a secure connection.
|
||||
|
||||
### Specific Devices
|
||||
|
||||
@ -457,7 +457,7 @@ Press circle and plus simultaneously to wake up the device.
|
||||
|
||||
<!-- from https://products.z-wavealliance.org/products/2817 -->
|
||||
|
||||
Once you've added the NanoMote to your z-wave network, you'll need to update your zwcfg_\*.xml file with the below xml data. Stop Home Assistant and open your zwcfg_\*.xml file (located in your config folder). Find the NanoMote device section and then its corresponding `CommandClass` section with id="91". Replace the entire CommandClass section with the below xml data. Save the file and restart Home Assistant.
|
||||
Once you've added the NanoMote to your Z-Wave network, you'll need to update your zwcfg_\*.xml file with the below xml data. Stop Home Assistant and open your zwcfg_\*.xml file (located in your configuration folder). Find the NanoMote device section and then its corresponding `CommandClass` section with id="91". Replace the entire CommandClass section with the below xml data. Save the file and restart Home Assistant.
|
||||
|
||||
```xml
|
||||
<CommandClass id="91" name="COMMAND_CLASS_CENTRAL_SCENE" version="1" request_flags="4" innif="true" scenecount="0">
|
||||
|
@ -20,7 +20,7 @@ The *entity* is an individual integration of the node. It may be a sensor that y
|
||||
|
||||
## Z-Wave, Plus, Security 2
|
||||
|
||||
There have been 2 extensions to the Z-Wave protocol. Using these requires that your controller supports these extensions, but devices are backwards compatible.
|
||||
There have been 2 extensions to the Z-Wave protocol. Using these requires that your controller supports these extensions, but devices are backward compatible.
|
||||
|
||||
### Z-Wave Plus
|
||||
|
||||
|
@ -181,7 +181,7 @@ Or, if there is no result, try to find detailed USB connection info with:
|
||||
dmesg | grep USB
|
||||
```
|
||||
|
||||
If Home Assistant (`hass`) runs with another user (e.g., *homeassistant*) you need to give access to the stick with:
|
||||
If Home Assistant (`hass`) runs with another user (e.g., `homeassistant`) you need to give access to the stick with:
|
||||
|
||||
```bash
|
||||
sudo usermod -aG dialout homeassistant
|
||||
|
@ -44,7 +44,7 @@ api_key:
|
||||
|
||||
## Service `add_tracking`
|
||||
|
||||
You can use the service `aftership.add_tracking` to add trackings to Aftership.
|
||||
You can use the service `aftership.add_tracking` to add trackings to AfterShip.
|
||||
|
||||
| Service data attribute | Required | Type | Description |
|
||||
| ---------------------- | -------- | -------- | ----------- |
|
||||
@ -54,7 +54,7 @@ api_key:
|
||||
|
||||
## Service `remove_tracking`
|
||||
|
||||
You can use the service `aftership.remove_tracking` to remove trackings from Aftership.
|
||||
You can use the service `aftership.remove_tracking` to remove trackings from AfterShip.
|
||||
|
||||
| Service data attribute | Required | Type | Description |
|
||||
| ---------------------- | -------- | -------- | ----------- |
|
||||
|
@ -14,7 +14,7 @@ The `airvisual` sensor platform queries the [AirVisual](https://airvisual.com/)
|
||||
|
||||
This platform requires an AirVisual API key, which can be obtained [here](https://airvisual.com/api). Note that the platform was designed using the "Community" package; the "Startup" and "Enterprise" package keys should continue to function, but actual results may vary (or not work at all).
|
||||
|
||||
The Community API key is valid for 12 months after which it will expire. You must then go back to the Airvisual website, delete your old key, create a new one following the same steps and update your configuration with the new key.
|
||||
The Community API key is valid for 12 months after which it will expire. You must then go back to the AirVisual website, delete your old key, create a new one following the same steps and update your configuration with the new key.
|
||||
|
||||
<div class='note warning'>
|
||||
|
||||
|
@ -87,7 +87,7 @@ For this system to operate correctly, the following IFTTT applets have to be set
|
||||
* **IF** Webhook event `YOUR_ARM_HOME_EVENT` is called, **THEN** set the alarm system to armed home.
|
||||
* **IF** Webhook event `YOUR_ARM_NIGHT_EVENT` is called, **THEN** set the alarm system to armed away.
|
||||
* **IF** Webhook event `YOUR_DISARM_EVENT` is called, **THEN** set the alarm system to armed night.
|
||||
* **IF** the alarm system was disarmed, **THEN** perform a Webhook `POST` web request to url `https://HASS_URL/api/services/ifttt/push_alarm_state?api_password=API_PASSWORD` with content type `application/json` and body `{"entity_id": "alarm_control_panel.DEVICE_NAME", "state": "disarmed"}`.
|
||||
* **IF** the alarm system state changed to armed home, **THEN** perform a Webhook `POST` web request to url `https://HASS_URL/api/services/ifttt/push_alarm_state?api_password=API_PASSWORD` with content type `application/json` and body `{"entity_id": "alarm_control_panel.DEVICE_NAME", "state": "armed_home"}`.
|
||||
* **IF** the alarm system state changed to armed away, **THEN** perform a Webhook `POST` web request to url `https://HASS_URL/api/services/ifttt/push_alarm_state?api_password=API_PASSWORD` with content type `application/json` and body `{"entity_id": "alarm_control_panel.DEVICE_NAME", "state": "armed_away"}`.
|
||||
* **IF** the alarm system state changed to armed night, **THEN** perform a Webhook `POST` web request to url `https://HASS_URL/api/services/ifttt/push_alarm_state?api_password=API_PASSWORD` with content type `application/json` and body `{"entity_id": "alarm_control_panel.DEVICE_NAME", "state": "armed_night"}`.
|
||||
* **IF** the alarm system was disarmed, **THEN** perform a Webhook `POST` web request to URL `https://HASS_URL/api/services/ifttt/push_alarm_state?api_password=API_PASSWORD` with content type `application/json` and body `{"entity_id": "alarm_control_panel.DEVICE_NAME", "state": "disarmed"}`.
|
||||
* **IF** the alarm system state changed to armed home, **THEN** perform a Webhook `POST` web request to URL `https://HASS_URL/api/services/ifttt/push_alarm_state?api_password=API_PASSWORD` with content type `application/json` and body `{"entity_id": "alarm_control_panel.DEVICE_NAME", "state": "armed_home"}`.
|
||||
* **IF** the alarm system state changed to armed away, **THEN** perform a Webhook `POST` web request to URL `https://HASS_URL/api/services/ifttt/push_alarm_state?api_password=API_PASSWORD` with content type `application/json` and body `{"entity_id": "alarm_control_panel.DEVICE_NAME", "state": "armed_away"}`.
|
||||
* **IF** the alarm system state changed to armed night, **THEN** perform a Webhook `POST` web request to URL `https://HASS_URL/api/services/ifttt/push_alarm_state?api_password=API_PASSWORD` with content type `application/json` and body `{"entity_id": "alarm_control_panel.DEVICE_NAME", "state": "armed_night"}`.
|
||||
|
@ -13,7 +13,7 @@ The `template` integrations creates alarm control panels that combine integratio
|
||||
|
||||
There are several powerful ways to use this integration, including grouping existing integrations into a simpler integrations, or adding logic that Home Assistant will execute when accessed.
|
||||
|
||||
For example, if you want to expose a true alarm panel to Google Home, Alexa, or Homekit - but limit its ability to disarm when there's no one home, you can do that using a template.
|
||||
For example, if you want to expose a true alarm panel to Google Home, Alexa, or HomeKit - but limit its ability to disarm when there's no one home, you can do that using a template.
|
||||
|
||||
Another use case could be grouping a series of sensors and services together to represent various "armed" and "disarmed" states and actions.
|
||||
|
||||
|
@ -108,7 +108,7 @@ zones:
|
||||
required: false
|
||||
type: integer
|
||||
relayaddr:
|
||||
description: "Address of the relay or zone expander board to associate with the zone. (ex: 12, 13, 14, or 15). Typically used in cases where a panel will not send bypassed zones such as motion during an armed home state, the Vista 20P is an example of this. Alarmdecoder can emulate a zone expander board and the panel can be programmed to push zone events to this virtual expander. This allows the bypassed zone binary sensors to be utilized. One example is using bypassed motion sensors at night for motion-based automated lights while the system is armed with the motion sensor bypassed."
|
||||
description: "Address of the relay or zone expander board to associate with the zone. (ex: 12, 13, 14, or 15). Typically used in cases where a panel will not send bypassed zones such as motion during an armed home state, the Vista 20P is an example of this. AlarmDecoder can emulate a zone expander board and the panel can be programmed to push zone events to this virtual expander. This allows the bypassed zone binary sensors to be utilized. One example is using bypassed motion sensors at night for motion-based automated lights while the system is armed with the motion sensor bypassed."
|
||||
required: inclusive
|
||||
type: integer
|
||||
relaychan:
|
||||
|
@ -68,7 +68,7 @@ Next you need to create a Lambda function.
|
||||
- Click `Create function`, select `Author from scratch`, then input a `Function name`.
|
||||
- Select *Python 3.6* or *Python 3.7* as `Runtime`.
|
||||
- Select *Use an existing role* as `Execution role`, then select the role you just created from the `Existing role` list.
|
||||
- Click `Create function`, then you can config detail of Lambda function.
|
||||
- Click `Create function`, then you can configuration detail of Lambda function.
|
||||
- Under `Configuration` tab, expand `Designer`, then click `Alexa Skills Kit` in the left part of the panel to add a Alexa Skills Kit trigger to your Lambda function.
|
||||
- Scroll down little bit, you need to input the `Skill ID` from the skill you created in previous step. (You may need to switch back to the Alexa Developer Console to copy the `Skill ID`.)
|
||||
- Click your Lambda Function icon in the middle of the diagram and scroll down, you will see a `Function code` window.
|
||||
@ -211,7 +211,7 @@ Add a sample utterance:
|
||||
ActivateSceneIntent activate {Scene}
|
||||
```
|
||||
|
||||
Then add the intent to your intent_script section in your HA config file:
|
||||
Then add the intent to your `intent_script` section in your HA configuration file:
|
||||
|
||||
```yaml
|
||||
intent_script:
|
||||
@ -259,7 +259,7 @@ Add a sample utterance:
|
||||
RunScriptIntent run {Script}
|
||||
```
|
||||
|
||||
Then add the intent to your intent_script section in your HA config file:
|
||||
Then add the intent to your intent_script section in your HA configuration file:
|
||||
|
||||
```yaml
|
||||
intent_script:
|
||||
|
@ -109,7 +109,7 @@ Next you need create a Lambda function.
|
||||
- Click `Create function`, select `Author from scratch`, then input a `Function name`.
|
||||
- Select *Python 3.6* or *Python 3.7* as `Runtime`.
|
||||
- Make sure select *Use an existing role* as `Execution role`, then select the role you just created from `Existing role` list.
|
||||
- Click `Create function`, then you can config detail of Lambda function.
|
||||
- Click `Create function`, then you can configuration detail of Lambda function.
|
||||
- Under `Configuration` tab, expand `Designer`, then click `Alexa Smart Home` in the left part of the panel to add a Alexa Smart Home trigger to your Lambda function.
|
||||
- Scroll down little bit, you need input the `Skill ID` from the skill you created in previous step. (tips: you may need switch back to Alexa Developer Console to copy the `Skill ID`.
|
||||
- Click your Lambda function icon in the middle of the diagram, scroll down you will see a `Function code` window.
|
||||
|
@ -26,7 +26,7 @@ Almond consists of three parts:
|
||||
|
||||
### Hass.io installation
|
||||
|
||||
To install Almond Server on Hass.io, go to Hass.io App Store, search for Almond and click on Install. Once started, it will initiate a config flow to finish set up in Home Assistant. You can find it on the integrations page in the configuration panel.
|
||||
To install Almond Server on Hass.io, go to Hass.io App Store, search for Almond and click on Install. Once started, it will initiate a configuration flow to finish set up in Home Assistant. You can find it on the integrations page in the configuration panel.
|
||||
|
||||
### Manual installation
|
||||
|
||||
@ -43,7 +43,7 @@ almond:
|
||||
host: http://127.0.0.1:3000
|
||||
```
|
||||
|
||||
The Almond integration does not update config entries yet. If you make a change to configuration.yaml, you will need to remove the config entry and then restart Home Assistant.
|
||||
The Almond integration does not update configuration entries yet. If you make a change to configuration.yaml, you will need to remove the configuration entry and then restart Home Assistant.
|
||||
|
||||
### Almond Web
|
||||
|
||||
|
@ -87,8 +87,8 @@ ffmpeg_arguments:
|
||||
default: -pred 1
|
||||
authentication:
|
||||
description: >
|
||||
Defines which authentication method to use only when **stream_source**
|
||||
is **mjpeg**. Currently, *aiohttp* only support *basic*.
|
||||
Defines which authentication method to use only when `stream_source`
|
||||
is `mjpeg`. Currently, `aiohttp` only support `basic`.
|
||||
required: false
|
||||
type: string
|
||||
default: basic
|
||||
@ -135,12 +135,12 @@ control_light:
|
||||
stream `high` definition video with MJPEG encoding. You may need to use `low`
|
||||
resolution stream or the `snapshot` stream source instead. If the quality seems
|
||||
too poor, lower the `Frame Rate (FPS)` and max out the `Bit Rate` settings in
|
||||
your camera's configuration manager. If you defined the *stream_source* to
|
||||
**mjpeg**, make sure your camera supports *Basic* HTTP authentication.
|
||||
Newer Amcrest firmware may not work, then **rtsp** is recommended instead.
|
||||
your camera's configuration manager. If you defined the `stream_source` to
|
||||
`mjpeg`, make sure your camera supports `Basic` HTTP authentication.
|
||||
Newer Amcrest firmware may not work, then `rtsp` is recommended instead.
|
||||
|
||||
**Note:** If you set the `stream_source` option to `rtsp`,
|
||||
make sure to follow the steps mentioned at [FFMPEG](/integrations/ffmpeg/)
|
||||
make sure to follow the steps mentioned at [FFmpeg](/integrations/ffmpeg/)
|
||||
documentation to install the `ffmpeg`.
|
||||
|
||||
## Services
|
||||
|
@ -164,7 +164,7 @@ android_ip_webcam:
|
||||
|
||||
## Binary Sensor
|
||||
|
||||
The `android_ip_webcam` binary sensor platform lets you observe the motion state of [Android IP webcam](https://play.google.com/store/apps/details?id=com.pas.webcam) sensors through Home Assistant. Devices will be configured automatically.
|
||||
The `android_ip_webcam` binary sensor platform lets you observe the motion state of [Android IP Webcam](https://play.google.com/store/apps/details?id=com.pas.webcam) sensors through Home Assistant. Devices will be configured automatically.
|
||||
|
||||
## Examples
|
||||
|
||||
@ -200,6 +200,6 @@ camera:
|
||||
|
||||
## Sensor
|
||||
|
||||
The `android_ip_webcam` sensor platform lets you observe states of [Android IP webcam](https://play.google.com/store/apps/details?id=com.pas.webcam) sensors through Home Assistant. Devices will be configured automatically.
|
||||
The `android_ip_webcam` sensor platform lets you observe states of [Android IP Webcam](https://play.google.com/store/apps/details?id=com.pas.webcam) sensors through Home Assistant. Devices will be configured automatically.
|
||||
|
||||
You can setup your own sensors by examining the JSON file from the webcam server: `http://IP:8080/sensors.json`
|
||||
|
@ -194,7 +194,7 @@ If the setup for your Android TV or Fire TV device fails, then there is probably
|
||||
|
||||
4. You need to approve the ADB connection; see the note in the [ADB Setup](#adb-setup) section above.
|
||||
|
||||
5. Some Android TV devices (e.g., Philips TVs running Android TV) only accept the initial ADB connection request over their Wi-Fi interface. If you have the TV wired, you need to connect it to WiFi and try the initial connection again. Once the authentication has been granted via Wi-Fi, you can connect to the TV over the wired interface as well.
|
||||
5. Some Android TV devices (e.g., Philips TVs running Android TV) only accept the initial ADB connection request over their Wi-Fi interface. If you have the TV wired, you need to connect it to Wi-Fi and try the initial connection again. Once the authentication has been granted via Wi-Fi, you can connect to the TV over the wired interface as well.
|
||||
|
||||
6. If your device drops off WiFi, breaking the ADB connection and causing the entity to become unavailable in Home Assistant, you could install a wake lock utility (such as [Wakelock](https://github.com/d4rken/wakelock-revamp)) to prevent this from happening. Some users have reported this problem with Xiaomi Mi Box devices.
|
||||
|
||||
|
@ -10,7 +10,7 @@ ha_release: 0.13
|
||||
ha_iot_class: Local Polling
|
||||
---
|
||||
|
||||
[APCUPSd](http://www.apcupsd.org/) status information can be integrated into Home Assistant when the Network Information Server (NIS) [is configured](http://www.apcupsd.org/manual/manual.html#nis-server-client-configuration-using-the-net-driver) on the APC device.
|
||||
[Apcupsd](http://www.apcupsd.org/) status information can be integrated into Home Assistant when the Network Information Server (NIS) [is configured](http://www.apcupsd.org/manual/manual.html#nis-server-client-configuration-using-the-net-driver) on the APC device.
|
||||
|
||||
There is currently support for the following device types within Home Assistant:
|
||||
|
||||
@ -34,12 +34,12 @@ apcupsd:
|
||||
|
||||
{% configuration %}
|
||||
host:
|
||||
description: The hostname/IP address on which the APCUPSd NIS is being served.
|
||||
description: The hostname/IP address on which the apcupsd NIS is being served.
|
||||
required: false
|
||||
type: string
|
||||
default: localhost
|
||||
port:
|
||||
description: The port on which the APCUPSd NIS is listening.
|
||||
description: The port on which the apcupsd NIS is listening.
|
||||
required: false
|
||||
type: integer
|
||||
default: 3551
|
||||
@ -47,13 +47,13 @@ port:
|
||||
|
||||
<div class='note'>
|
||||
|
||||
If you get `ConnectionRefusedError: Connection refused` errors in the Home Assistant logs, ensure the [APCUPSd](http://www.apcupsd.org/) configuration directives used by its Network Information Server is set to permit connections from all addresses [NISIP 0.0.0.0](http://www.apcupsd.org/manual/manual.html#configuration-directives-used-by-the-network-information-server), else non-local addesses will not connect. This includes Hass.io running in Docker, even when hosted on the same machine or a virtual machine.
|
||||
If you get `ConnectionRefusedError: Connection refused` errors in the Home Assistant logs, ensure the [Apcupsd](http://www.apcupsd.org/) configuration directives used by its Network Information Server is set to permit connections from all addresses [NISIP 0.0.0.0](http://www.apcupsd.org/manual/manual.html#configuration-directives-used-by-the-network-information-server), else non-local addesses will not connect. This includes Hass.io running in Docker, even when hosted on the same machine or a virtual machine.
|
||||
|
||||
</div>
|
||||
|
||||
## Binary sensor
|
||||
|
||||
In addition to the [APCUPSd Sensor](#sensor) devices, you may also create a device which is simply "on" when the UPS status is online and "off" at all other times.
|
||||
In addition to the [Apcupsd Sensor](#sensor) devices, you may also create a device which is simply "on" when the UPS status is online and "off" at all other times.
|
||||
|
||||
### Configuration
|
||||
|
||||
|
@ -21,7 +21,7 @@ There is currently support for the following device types within Home Assistant:
|
||||
|
||||
## Binary Sensor
|
||||
|
||||
The `arest` binary sensor platform allows you to get all data from your devices (like Arduinos with an ethernet/wifi connection, the ESP8266, and the Raspberry Pi) running the [aREST](https://arest.io/) RESTful framework.
|
||||
The `arest` binary sensor platform allows you to get all data from your devices (like Arduinos with an ethernet/Wi-Fi connection, the ESP8266, and the Raspberry Pi) running the [aREST](https://arest.io/) RESTful framework.
|
||||
|
||||
To use your aREST binary sensor in your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
@ -72,7 +72,7 @@ This sensor is not suitable for fast state changes because there is a high possi
|
||||
|
||||
## Sensor
|
||||
|
||||
The `arest` sensor platform allows you to get all data from your devices (like Arduinos with a Ethernet/Wifi connection, the ESP8266, and the Raspberry Pi) running the [aREST](https://arest.io/) RESTful framework.
|
||||
The `arest` sensor platform allows you to get all data from your devices (like Arduinos with a Ethernet/Wi-Fi connection, the ESP8266, and the Raspberry Pi) running the [aREST](https://arest.io/) RESTful framework.
|
||||
|
||||
To use your aREST enabled device in your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
@ -175,7 +175,7 @@ The root will give you a JSON response that contains all variables and their cur
|
||||
|
||||
## Switch
|
||||
|
||||
The `arest` switch platform allows you to toggle pins of your devices (like Arduino boards with an Ethernet/Wifi connection, ESP8266 based devices, and the Raspberry Pi) running the [aREST](https://arest.io/) RESTful framework.
|
||||
The `arest` switch platform allows you to toggle pins of your devices (like Arduino boards with an Ethernet/Wi-Fi connection, ESP8266 based devices, and the Raspberry Pi) running the [aREST](https://arest.io/) RESTful framework.
|
||||
|
||||
To use your aREST enabled device with pins in your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
|
@ -152,7 +152,7 @@ ffmpeg_arguments:
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
**Note:** To be able to playback the last capture, it is required to install the `ffmpeg` component. Make sure to follow the steps mentioned at [FFMPEG](/integrations/ffmpeg/) documentation.
|
||||
**Note:** To be able to playback the last capture, it is required to install the `ffmpeg` component. Make sure to follow the steps mentioned at [FFmpeg](/integrations/ffmpeg/) documentation.
|
||||
|
||||
## Sensor
|
||||
|
||||
|
@ -11,7 +11,7 @@ This platform allows you to detect presence by looking at connected devices to a
|
||||
|
||||
Supported devices (tested):
|
||||
|
||||
- ARUBA AP-105
|
||||
- Aruba AP-105
|
||||
|
||||
<div class='note warning'>
|
||||
This device tracker needs telnet to be enabled on the router.
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
title: Asuswrt
|
||||
description: Instructions on how to integrate Asuswrt into Home Assistant.
|
||||
title: ASUSWRT
|
||||
description: Instructions on how to integrate ASUSWRT into Home Assistant.
|
||||
logo: asus.png
|
||||
ha_category:
|
||||
- Hub
|
||||
@ -16,8 +16,8 @@ The `asuswrt` integration is the main integration to connect to a [ASUSWRT](http
|
||||
|
||||
There is currently support for the following device types within Home Assistant:
|
||||
|
||||
- **Presence Detection** - The asuswrt platform offers presence detection by looking at connected devices to a ASUSWRT based router.
|
||||
- **Sensor** - The asuswrt sensor platform allows you to get upload and download data from your ASUSWRT within Home Assistant.
|
||||
- **Presence Detection** - The ASUSWRT platform offers presence detection by looking at connected devices to a ASUSWRT based router.
|
||||
- **Sensor** - The ASUSWRT sensor platform allows you to get upload and download data from your ASUSWRT within Home Assistant.
|
||||
|
||||
## Configuration
|
||||
|
||||
|
@ -7,7 +7,7 @@ ha_release: 0.39
|
||||
logo: noaa.png
|
||||
---
|
||||
|
||||
The `aurora` platform uses the [NOAA aurora forecast](https://www.swpc.noaa.gov/products/aurora-30-minute-forecast) service to let you know if an aurora might be visible at your home location in the next 30 minutes, based off of current solar flare activity.
|
||||
The `aurora` platform uses the [NOAA Aurora Forecast](https://www.swpc.noaa.gov/products/aurora-30-minute-forecast) service to let you know if an aurora might be visible at your home location in the next 30 minutes, based off of current solar flare activity.
|
||||
|
||||
This service gives a number 0-100 representing the current likelihood of visible auroras at your latitude/longitude. By default this sensor is set up to trigger when the reported likelihood for your location is > 75. It updates every 5 minutes.
|
||||
|
||||
|
@ -16,7 +16,7 @@ The `automatic` device tracker platform offers presence detection by retrieving
|
||||
|
||||
To use Automatic with Home Assistant, first you must [create a free development account](https://developer.automatic.com/). Automatic will generate a Client ID and Secret for you to use in your Home Assistant configuration. You will need to update your Event Delivery preferences to ensure Home Assistant can receive updates. On the developer page, under App Settings / Event Delivery, select "Websocket" for Event Delivery Preference. Next, specify the OAuth Redirect URL in the developer page. This should be configured to `<home-assistant-url>/api/automatic/callback`. (Example: `http://hassio.local:8123/api/automatic/callback`) Note that this URL only needs to be accessible from the browser you use to perform the authentication.
|
||||
|
||||
Home Assistant can also take advantage of `scope:current_location` if available. This will allow Home Assistant to receive periodic location updates during a trip. In order to use this functionality, you must request the scope for your application from Automatic. Once `scope:current_location` is available, change `current_location` to `true` in your configuration.yaml.
|
||||
Home Assistant can also take advantage of `scope:current_location` if available. This will allow Home Assistant to receive periodic location updates during a trip. In order to use this functionality, you must request the scope for your application from Automatic. Once `scope:current_location` is available, change `current_location` to `true` in your `configuration.yaml`.
|
||||
|
||||
## Configuration
|
||||
|
||||
|
@ -8,7 +8,7 @@ logo: avi-on.png
|
||||
ha_release: 0.37
|
||||
---
|
||||
|
||||
Support for the Avi-on Bluetooth dimmer switch [Avi-On](https://avi-on.com/).
|
||||
Support for the Avi-on Bluetooth dimmer switch [Avi-on](https://avi-on.com/).
|
||||
|
||||
## Setup
|
||||
|
||||
@ -76,7 +76,7 @@ light:
|
||||
api_key: YOUR_API_KEY
|
||||
```
|
||||
|
||||
For independent control of multiple devices, you must specify each device's ID (integer starting with 1). Each switch's ID can be guessed or detected from the Avi-On API.
|
||||
For independent control of multiple devices, you must specify each device's ID (integer starting with 1). Each switch's ID can be guessed or detected from the Avi-on API.
|
||||
|
||||
```yaml
|
||||
# Manual device configuration.yaml entry
|
||||
|
@ -27,7 +27,7 @@ For configuration go to the `Integrations pane` on your Home Assistant instance.
|
||||
|
||||
## Troubleshooting discovery
|
||||
|
||||
If your device is not discovered. On your camera, go to **System Options** -> **Advanced** -> **Plain Config**. Change the drop-down box to `network` and click `Select Group`. If `Network Interface I0 ZeroConf` contains the `169.x.x.x` IP address, unchecked the box next to `Enabled` for this section and click `Save`.
|
||||
If your device is not discovered. On your camera, go to **System Options** -> **Advanced** -> **Plain Configuration**. Change the drop-down box to `network` and click `Select Group`. If `Network Interface I0 ZeroConf` contains the `169.x.x.x` IP address, unchecked the box next to `Enabled` for this section and click `Save`.
|
||||
|
||||
## Binary Sensor
|
||||
|
||||
|
@ -91,7 +91,7 @@ $ sudo raspi-config
|
||||
|
||||
Select `Interfacing options->I2C` choose `<Yes>` and hit `Enter`, then go to `Finish` and you'll be prompted to reboot.
|
||||
|
||||
Install dependencies for use the `smbus-cffi` module and enable your _homeassistant_ user to join the _i2c_ group:
|
||||
Install dependencies for use the `smbus-cffi` module and enable your `homeassistant` user to join the _i2c_ group:
|
||||
|
||||
```bash
|
||||
# pi user environment: Install i2c dependencies and utilities
|
||||
|
@ -9,17 +9,17 @@ ha_release: 0.48
|
||||
|
||||
The `rfxtrx` platform support binary sensors that
|
||||
communicate in the frequency range of 433.92 MHz.
|
||||
The rfxtrx binary sensor integration provides support for them.
|
||||
The RFXtrx binary sensor integration provides support for them.
|
||||
|
||||
Many cheap sensors available on the web today are based on a particular RF chip
|
||||
called *PT-2262*. Depending on the running firmware on the RFXcom box, some of
|
||||
them may be recognized under the X10 protocol but most of them are recognized
|
||||
under the *Lighting4* protocol. The rfxtrx binary sensor integration provides
|
||||
some special options for them, while other rfxtrx protocols should work too.
|
||||
under the *Lighting4* protocol. The RFXtrx binary sensor integration provides
|
||||
some special options for them, while other RFXtrx protocols should work too.
|
||||
|
||||
## Setting up your devices
|
||||
|
||||
Once you have set up your [rfxtrx hub](/integrations/rfxtrx/), the easiest way
|
||||
Once you have set up your [RFXtrx hub](/integrations/rfxtrx/), the easiest way
|
||||
to find your binary sensors is to add this to your `configuration.yaml`:
|
||||
|
||||
```yaml
|
||||
@ -90,7 +90,7 @@ automatic_add:
|
||||
|
||||
<div class='note warning'>
|
||||
|
||||
This integration and the [rfxtrx switch](/integrations/switch.rfxtrx/) can steal each other's devices when setting the `automatic_add` configuration parameter to `true`.
|
||||
This integration and the [RFXtrx switch](/integrations/switch.rfxtrx/) can steal each other's devices when setting the `automatic_add` configuration parameter to `true`.
|
||||
Set `automatic_add` only when you have some devices to add to your installation, otherwise leave it to `false`.
|
||||
|
||||
</div>
|
||||
@ -186,7 +186,7 @@ devices:
|
||||
command_off: 0x7
|
||||
```
|
||||
|
||||
The *automatic_add* option makes the rfxtrx binary sensor integration calculate
|
||||
The *automatic_add* option makes the RFXtrx binary sensor integration calculate
|
||||
and display the configuration options for you in the Home Assistant logs:
|
||||
|
||||
```text
|
||||
@ -203,7 +203,7 @@ want to configure your new devices and leave it off otherwise.
|
||||
|
||||
### Known working devices
|
||||
|
||||
The following devices are known to work with the rfxtrx binary sensor component.
|
||||
The following devices are known to work with the RFXtrx binary sensor component.
|
||||
There are too many other to list.
|
||||
|
||||
- Motion detectors:
|
||||
|
@ -214,7 +214,7 @@ binary_sensor:
|
||||
This example is determining if anyone is home based on the combination of device
|
||||
tracking and motion sensors. It's extremely useful if you have kids/baby sitter/
|
||||
grand parents who might still be in your house that aren't represented by a
|
||||
trackable device in Home Assistant. This is providing a composite of WiFi based
|
||||
trackable device in Home Assistant. This is providing a composite of Wi-Fi based
|
||||
device tracking and Z-Wave multisensor presence sensors.
|
||||
|
||||
{% raw %}
|
||||
|
@ -203,7 +203,7 @@ Similar to the previous example, this automation will disarm blink when arriving
|
||||
|
||||
### Save Video Locally When Motion Detected
|
||||
|
||||
When motion is detected, you can use the Blink Home-Assistant integration to save the last recorded video locally, rather than relying on Blink's servers to save your data.
|
||||
When motion is detected, you can use the Blink Home Assistant integration to save the last recorded video locally, rather than relying on Blink's servers to save your data.
|
||||
|
||||
Again, this example assumes your camera's name (in the blink app) is `My Camera` and your sync module name is `My Sync Module`. The file will be saved to `/tmp/videos/blink_video_{YYYMMDD_HHmmSS}.mp4` where `{YYYYMMDD_HHmmSS}` will be a timestamp create via the use of [templating](/docs/configuration/templating/).
|
||||
|
||||
|
@ -10,8 +10,7 @@ ha_iot_class: Local Polling
|
||||
|
||||
The `bluesound` platform allows you to control your [Bluesound](https://www.bluesound.com/) HiFi wireless speakers and audio integrations from Home Assistant.
|
||||
|
||||
If you want to automatically discover new devices, just make sure you have discovery: in your configuration.yaml file. To manually add a Bluesound device to your installation, add the following to your configuration.yaml file:
|
||||
|
||||
If you want to automatically discover new devices, just make sure you have discovery: in your `configuration.yaml` file. To manually add a Bluesound device to your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml
|
||||
|
@ -149,7 +149,7 @@ $ sudo raspi-config
|
||||
|
||||
Select `Interfacing options->I2C` choose `<Yes>` and hit `Enter`, then go to `Finish` and you'll be prompted to reboot.
|
||||
|
||||
Install dependencies for use the `smbus-cffi` module and enable your _homeassistant_ user to join the _i2c_ group:
|
||||
Install dependencies for use the `smbus-cffi` module and enable your `homeassistant` user to join the _i2c_ group:
|
||||
|
||||
```bash
|
||||
# pi user environment: Install i2c dependencies and utilities
|
||||
|
@ -195,7 +195,7 @@ $ sudo raspi-config
|
||||
|
||||
Select `Interfacing options->I2C` choose `<Yes>` and hit `Enter`, then go to `Finish` and you'll be prompted to reboot.
|
||||
|
||||
Install dependencies to use the `smbus-cffi` module and add your _homeassistant_ user to the _i2c_ group:
|
||||
Install dependencies to use the `smbus-cffi` module and add your `homeassistant` user to the _i2c_ group:
|
||||
|
||||
```bash
|
||||
# pi user environment: Install I2C dependencies and utilities
|
||||
|
@ -370,7 +370,7 @@ Information about how to install on Windows can be found [here](/integrations/br
|
||||
|
||||
Choose Call Service from the Developer Tools. Choose the service `broadlink.learn` from the list of **Available services:**, write in "Service Data" JSON with 1 field "host":"your_broadlink_IP" and hit **CALL SERVICE**. Press the button on your remote with in 20 seconds. The packet will be printed as a persistent notification in the States page of the web interface.
|
||||
|
||||
Example config for `rm`, `rm2`, `rm_mini`, `rm_pro_phicomm`, `rm2_home_plus`, `rm2_home_plus_gdt`, `rm2_pro_plus`, `rm2_pro_plus2`, `rm2_pro_plus_bl` and `rm_mini_shate` devices:
|
||||
Example configuration for `rm`, `rm2`, `rm_mini`, `rm_pro_phicomm`, `rm2_home_plus`, `rm2_home_plus_gdt`, `rm2_pro_plus`, `rm2_pro_plus2`, `rm2_pro_plus_bl` and `rm_mini_shate` devices:
|
||||
|
||||
```yaml
|
||||
switch:
|
||||
@ -413,7 +413,7 @@ switch:
|
||||
command_off: 'JgAaABweOR4bHhwdHB4dHRw6HhsdHR0dOTocAA0FAAAAAAAAAAAAAAAAAAA='
|
||||
```
|
||||
|
||||
Example config for `sp1`, `sp2`, `honeywell_sp2`, `sp3`, `spmini2` and `spminiplus` devices:
|
||||
Example configuration for `sp1`, `sp2`, `honeywell_sp2`, `sp3`, `spmini2` and `spminiplus` devices:
|
||||
|
||||
```yaml
|
||||
switch:
|
||||
@ -430,7 +430,7 @@ switch:
|
||||
friendly_name: 'Humidifier'
|
||||
```
|
||||
|
||||
Example config for `mp1` device:
|
||||
Example configuration for `mp1` device:
|
||||
|
||||
```yaml
|
||||
switch:
|
||||
@ -565,7 +565,7 @@ First get or learn all the remotes you want to add to Home Assistant in E-Contro
|
||||
[+] Dumping codes to TV.txt
|
||||
```
|
||||
|
||||
6. Now there should be a file with the name of the remote you chose in the same directory ending in `.txt`. Open that up and it will contain the Base64 code required for Home Assistant. To ensure these codes work correctly you may need to add `==` to the end of the code in your config.yaml file (or wherever you have your switches).
|
||||
6. Now there should be a file with the name of the remote you chose in the same directory ending in `.txt`. Open that up and it will contain the Base64 code required for Home Assistant. To ensure these codes work correctly you may need to add `==` to the end of the code in your `configuration.yaml` file (or wherever you have your switches).
|
||||
|
||||
### Using Windows to obtain codes with Broadlink Manager
|
||||
|
||||
|
@ -12,7 +12,7 @@ The `google` calendar platform allows you to connect to your
|
||||
[Google Calendars](https://calendar.google.com) and generate binary sensors.
|
||||
The sensors created can trigger based on any event on the calendar or only for
|
||||
matching events. When you first setup this integration it will generate a new
|
||||
configuration file `google_calendars.yaml` in your config directory that will contain information about
|
||||
configuration file `google_calendars.yaml` in your configuration directory that will contain information about
|
||||
all of the calendars you can see.
|
||||
It also exposes a service to add an event to one of your Google Calendars.
|
||||
|
||||
|
@ -12,7 +12,7 @@ The `ffmpeg` platform allows you to use any video feed as a camera in Home Assis
|
||||
|
||||
## Configuration
|
||||
|
||||
To enable your FFmpeg feed in your installation you must first configure the [ffmpeg integration](/integrations/ffmpeg/), then add the following to your `configuration.yaml` file:
|
||||
To enable your FFmpeg feed in your installation you must first configure the [FFmpeg integration](/integrations/ffmpeg/), then add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
|
@ -10,7 +10,7 @@ ha_iot_class: Local Polling
|
||||
ha_config_flow: true
|
||||
---
|
||||
|
||||
You can enable the Cast integration by going to the Integrations page inside the config panel.
|
||||
You can enable the Cast integration by going to the Integrations page inside the configuration panel.
|
||||
|
||||
## Home Assistant Cast
|
||||
|
||||
|
@ -19,7 +19,7 @@ The `cert_expiry` sensor fetches information from a configured URL and displays
|
||||
There are 2 options in configuring the `cert_expiry` sensor:
|
||||
|
||||
- Via the Home Assistant user interface where it will let you enter a name, host and port for the certificate to check.
|
||||
- Via the Home Assistant configuration.yaml file.
|
||||
- Via the Home Assistant `configuration.yaml` file.
|
||||
|
||||
|
||||
```yaml
|
||||
|
@ -9,7 +9,7 @@ ha_codeowners:
|
||||
- '@fbradyirl'
|
||||
---
|
||||
|
||||
This is a presence detection scanner for [Cisco](https://www.cisco.com/) IOS devices.
|
||||
This is a presence detection scanner for [Cisco IOS](https://www.cisco.com/) devices.
|
||||
|
||||
<div class='note warning'>
|
||||
This device tracker needs SSH to be enabled on the router.
|
||||
|
@ -50,7 +50,7 @@ climate:
|
||||
|
||||
If your device doesn't support setpoint_shift calculations (i.e. if you don't provide a `setpoint_shift_address` value) please set the `min_temp` and `max_temp`
|
||||
attributes of the climate device to avoid issues with exceeding valid temperature values in the frontend. Please do also make sure to add the `target_temperature_address`
|
||||
to the config in this case.:
|
||||
to the configuration in this case.:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
@ -69,7 +69,7 @@ climate:
|
||||
```
|
||||
|
||||
`operation_mode_frost_protection_address` / `operation_mode_night_address` / `operation_mode_comfort_address` are not necessary if `operation_mode_address` is specified.
|
||||
If the actor doesn't support explicit state communication objects the *_state_address can be configured with the same group address as the writeable *_address. The Read-Flag for the *_state_address communication object has to be set in ETS to support initial reading eg. when starting home-assistant.
|
||||
If the actor doesn't support explicit state communication objects the *_state_address can be configured with the same group address as the writeable *_address. The Read-Flag for the *_state_address communication object has to be set in ETS to support initial reading e.g., when starting Home Assistant.
|
||||
|
||||
The following values are valid for the `hvac_mode` attribute:
|
||||
|
||||
|
@ -90,7 +90,7 @@ cloudflare:
|
||||
- EXAMPLE.COM
|
||||
```
|
||||
|
||||
#### The minimum DNS record settings are (if you have set up https already):
|
||||
#### The minimum DNS record settings (if you have set up HTTPS already)
|
||||
|
||||
To redirect from your domain to the IP address of your Home Assistant server set this DNS record:
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Config
|
||||
title: Configuration
|
||||
description: Instructions on how to setup the configuration panel for Home Assistant.
|
||||
logo: home-assistant.png
|
||||
ha_category:
|
||||
@ -53,11 +53,11 @@ This section enables you to organize entities to physical areas of your home.
|
||||
|
||||
### Automation
|
||||
|
||||
This section enables you to create and modify automations from within Home Assistant, without needing to write out the yaml code.
|
||||
This section enables you to create and modify automations from within Home Assistant, without needing to write out the YAML code.
|
||||
|
||||
### Script
|
||||
|
||||
Similar to the automation editor, this section enables you to create and modify scripts from within Home Assistant, without needing to write out the yaml code.
|
||||
Similar to the automation editor, this section enables you to create and modify scripts from within Home Assistant, without needing to write out the YAML code.
|
||||
|
||||
### Z-Wave
|
||||
|
||||
|
@ -54,7 +54,7 @@ covers:
|
||||
required: false
|
||||
type: string
|
||||
value_template:
|
||||
description: if specified, `command_state` will ignore the result code of the command but the template evaluating will indicate the position of the cover. For example, if your `command_state` returns a string "open", using `value_template` as in the example config above will allow you to translate that into the valid state `100`.
|
||||
description: if specified, `command_state` will ignore the result code of the command but the template evaluating will indicate the position of the cover. For example, if your `command_state` returns a string "open", using `value_template` as in the example configuration above will allow you to translate that into the valid state `100`.
|
||||
required: false
|
||||
default: "'{% raw %}{{ value }}{% endraw%}'"
|
||||
type: template
|
||||
|
@ -9,7 +9,7 @@ ha_release: 0.27
|
||||
|
||||
The `rfxtrx` platform supports Siemens/LightwaveRF and RFY roller shutters that communicate in the frequency range of 433.92 MHz.
|
||||
|
||||
First you have to set up your [rfxtrx hub](/integrations/rfxtrx/).
|
||||
First you have to set up your [RFXtrx hub](/integrations/rfxtrx/).
|
||||
|
||||
### Configuration
|
||||
|
||||
@ -23,7 +23,7 @@ cover:
|
||||
automatic_add: true
|
||||
```
|
||||
|
||||
Launch your homeassistant and go the website (e.g `http://localhost:8123`). Push your remote and your device should be added.
|
||||
Launch your Home Assistant and go the website (e.g., `http://localhost:8123`). Push your remote and your device should be added.
|
||||
|
||||
Once added it will show an ID (e.g `0b11000102ef9f210010f70`) and you can verify that it works from the frontend. Then you should update your configuration to:
|
||||
|
||||
|
@ -68,12 +68,12 @@ language:
|
||||
latitude:
|
||||
description: Latitude coordinate to monitor weather of (required if **longitude** is specified).
|
||||
required: false
|
||||
default: coordinates defined in your `configuration.yaml`
|
||||
default: coordinates from the Home Assistant configuration
|
||||
type: float
|
||||
longitude:
|
||||
description: Longitude coordinate to monitor weather of (required if **latitude** is specified).
|
||||
required: false
|
||||
default: coordinates defined in your `configuration.yaml`
|
||||
default: coordinates from the Home Assistant configuration
|
||||
type: float
|
||||
monitored_conditions:
|
||||
description: Conditions to display in the frontend.
|
||||
@ -176,7 +176,7 @@ scan_interval:
|
||||
|
||||
#### Language options
|
||||
|
||||
All language options are described in this table that you can use for the dark sky sensor.
|
||||
All language options are described in this table that you can use for the Dark Sky sensor.
|
||||
|
||||
|Language|Variable Code|
|
||||
|---|---|
|
||||
|
@ -44,7 +44,7 @@ verify_ssl:
|
||||
type: boolean
|
||||
default: true
|
||||
wireless_only:
|
||||
description: Whether to only list devices that are connected directly to the router via WiFi or include those connected via Ethernet or other networked access points as well.
|
||||
description: Whether to only list devices that are connected directly to the router via Wi-Fi or include those connected via Ethernet or other networked access points as well.
|
||||
required: false
|
||||
type: boolean
|
||||
default: true
|
||||
|
@ -45,7 +45,7 @@ See [deCONZ wiki](https://github.com/dresden-elektronik/deconz-rest-plugin/wiki/
|
||||
|
||||
Home Assistant will automatically discover deCONZ presence on your network, if `discovery:` is present in your `configuration.yaml` file.
|
||||
|
||||
If you don't have the API key, you can generate an API key for deCONZ by using the one-click functionality similar to Philips Hue. Go to **Settings** → **Gateway** → **Advanced** → **Authenticate app** in the Phoscon App and then use the deCONZ configurator in Home Assistant frontend to create an API key. When you're done setting up deCONZ it will be stored as a config entry.
|
||||
If you don't have the API key, you can generate an API key for deCONZ by using the one-click functionality similar to Philips Hue. Go to **Settings** → **Gateway** → **Advanced** → **Authenticate app** in the Phoscon App and then use the deCONZ configurator in Home Assistant frontend to create an API key. When you're done setting up deCONZ it will be stored as a configuration entry.
|
||||
|
||||
You can manually add deCONZ by going to the integrations page.
|
||||
|
||||
@ -313,9 +313,9 @@ class RemoteControl(hass.Hass):
|
||||
|
||||
{% endraw %}
|
||||
|
||||
#### Appdaemon Ikea Tradfri remote template
|
||||
#### Appdaemon IKEA Tradfri remote template
|
||||
|
||||
Community app from [Teachingbirds](https://community.home-assistant.io/u/teachingbirds/summary). This app uses an Ikea Tradfri remote to control Sonos speakers with play/pause, volume up and down, next and previous track.
|
||||
Community app from [Teachingbirds](https://community.home-assistant.io/u/teachingbirds/summary). This app uses an IKEA Tradfri remote to control Sonos speakers with play/pause, volume up and down, next and previous track.
|
||||
|
||||
{% raw %}
|
||||
|
||||
@ -444,7 +444,7 @@ The `entity_id` names will be `light.device_name`, where `device_name` is define
|
||||
- Philips Hue Hue White ambiance Milliskin (recessed spotlight) LTW013
|
||||
- Philips Hue LightStrip Plus
|
||||
- Busch Jaeger Zigbee Light Link univ. relai (6711 U) with Zigbee Light Link control element 6735-84
|
||||
- Xiaomi Aqara Smart Led Bulb (white) E27 ZNLDP12LM
|
||||
- Xiaomi Aqara Smart LED Bulb (white) E27 ZNLDP12LM
|
||||
|
||||
## Scene
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
title: Default Config
|
||||
description: The default config integration will initate a default configuration for Home Assistant.
|
||||
title: Default Configuration
|
||||
description: The default configuration integration will initiate a default configuration for Home Assistant.
|
||||
logo: home-assistant.png
|
||||
ha_category:
|
||||
- Other
|
||||
@ -9,21 +9,21 @@ ha_release: 0.88
|
||||
|
||||
This integration is a meta-component and configures a default set of integrations for Home Assistant to load. The integrations that will be loaded are:
|
||||
|
||||
- [automation](/integrations/automation/)
|
||||
- [cloud](/integrations/cloud/)
|
||||
- [config](/integrations/config/)
|
||||
- [frontend](/integrations/frontend/)
|
||||
- [history](/integrations/history/)
|
||||
- [logbook](/integrations/logbook/)
|
||||
- [map](/integrations/map/)
|
||||
- [mobile_app](/integrations/mobile_app/)
|
||||
- [person](/integrations/person/)
|
||||
- [script](/integrations/script/)
|
||||
- [ssdp](/integrations/ssdp/)
|
||||
- [sun](/integrations/sun/)
|
||||
- [system_health](/integrations/system_health/)
|
||||
- [updater](/integrations/updater/)
|
||||
- [zeroconf](/integrations/zeroconf/)
|
||||
- [Automation](/integrations/automation/)
|
||||
- [Home Assistant Cloud](/integrations/cloud/)
|
||||
- [Configuration](/integrations/config/)
|
||||
- [Frontend](/integrations/frontend/)
|
||||
- [History](/integrations/history/)
|
||||
- [Logbook](/integrations/logbook/)
|
||||
- [Map](/integrations/map/)
|
||||
- [Mobile App Support](/integrations/mobile_app/)
|
||||
- [Person](/integrations/person/)
|
||||
- [Scripts](/integrations/script/)
|
||||
- [Simple Service Discovery Protocol (SSDP)](/integrations/ssdp/)
|
||||
- [Sun](/integrations/sun/)
|
||||
- [System Health](/integrations/system_health/)
|
||||
- [Updater](/integrations/updater/)
|
||||
- [Zero-configuration networking (zeroconf)](/integrations/zeroconf/)
|
||||
|
||||
## Configuration
|
||||
|
||||
|
@ -97,7 +97,7 @@ A few notes:
|
||||
|
||||
#### Service `denonavr.get_command`
|
||||
|
||||
Generic commands are supported, in particular, any command supported by the telnet protocol can be sent to `/goform/formiPhoneAppDirect.xml`, e.g., `/goform/formiPhoneAppDirect.xml?VSMONI2` to switch HDMI outputs on supported receivers. IR remote codes can also be sent to this endpoint, e.g. "/goform/formiPhoneAppDirect.xml?RCKSK0410370" as a mute toggle. A comprehensive list of telnet protocol commands is available at https://ca.denon.com/ca/product/hometheater/receivers/avrx4400h?docname=AVR-X6400H_X4400H_X3400H_X2400H_X1400H_S930H_S730H_PROTOCOL_V01.xlsx and a full list of IR codes at http://www.denon-hifi.nl/uk/product/hometheater/avreceivers/avr3313?docname=AVR3313_IR_CODE_V01.pdf
|
||||
Generic commands are supported, in particular, any command supported by the telnet protocol can be sent to `/goform/formiPhoneAppDirect.xml`, e.g., `/goform/formiPhoneAppDirect.xml?VSMONI2` to switch HDMI outputs on supported receivers. IR remote codes can also be sent to this endpoint, e.g. "/goform/formiPhoneAppDirect.xml?RCKSK0410370" as a mute toggle. A comprehensive list of telnet protocol commands is available at <https://ca.denon.com/ca/product/hometheater/receivers/avrx4400h?docname=AVR-X6400H_X4400H_X3400H_X2400H_X1400H_S930H_S730H_PROTOCOL_V01.xlsx> and a full list of IR codes at <http://www.denon-hifi.nl/uk/product/hometheater/avreceivers/avr3313?docname=AVR3313_IR_CODE_V01.pdf>
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ---------------------------------------------------- |
|
||||
|
@ -66,7 +66,7 @@ As of 0.94 `known_devices.yaml` is being phased out and no longer used by all tr
|
||||
|
||||
</div>
|
||||
|
||||
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.
|
||||
Once `device_tracker` is enabled, a file will be created in your configuration dir named `known_devices.yaml`. Edit this file to adjust which devices to be tracked.
|
||||
|
||||
Here's an example configuration for a single device:
|
||||
|
||||
@ -88,7 +88,7 @@ In the example above, `devicename` refers to the detected name of the device. F
|
||||
|----------------|-------------------------------|---------------------------------------------------------------------------------------------------------|
|
||||
| `name` | Host name or "Unnamed Device" | The friendly name of the device. |
|
||||
| `mac` | None | The MAC address of the device. Add this if you are using a network device tracker like Nmap or SNMP. |
|
||||
| `picture` | None | A picture that you can use to easily identify the person or device. You can also save the image file in a folder "www" in the same location (can be obtained from developer tools) where you have your configuration.yaml file and just use `picture: /local/favicon-192x192.png`. The path 'local' is mapped to the 'www' folder you create. |
|
||||
| `picture` | None | A picture that you can use to easily identify the person or device. You can also save the image file in a folder "www" in the same location (can be obtained from developer tools) where you have your `configuration.yaml` file and just use `picture: /local/favicon-192x192.png`. The path 'local' is mapped to the 'www' folder you create. |
|
||||
| `icon` | mdi:account | An icon for this device (use as an alternative to `picture`). |
|
||||
| `gravatar` | None | An email address for the device's owner. If provided, it will override `picture`. |
|
||||
| `track` | [uses platform setting] | If `yes`/`on`/`true` then the device will be tracked. Otherwise its location and state will not update. |
|
||||
|
@ -39,7 +39,7 @@ To get the webhook URL, go to the integrations page in the configuration screen
|
||||
- Select name, language (if you are planning to use Google Actions check their [supported languages](https://support.google.com/assistant/answer/7108196?hl=en)) and time zone
|
||||
- Click "Save"
|
||||
- Now go to "Fulfillment" (in the left menu)
|
||||
- Enable Webhook and set your Dialogflow webhook url as the endpoint, e.g., `https://myhome.duckdns.org/api/webhook/800b4cb4d27d078a8871656a90854a292651b20635685f8ea23ddb7a09e8b417`
|
||||
- Enable Webhook and set your Dialogflow webhook URL as the endpoint, e.g., `https://myhome.duckdns.org/api/webhook/800b4cb4d27d078a8871656a90854a292651b20635685f8ea23ddb7a09e8b417`
|
||||
- Click "Save"
|
||||
- Create a new intent
|
||||
- Below "User says" write one phrase that you, the user, will tell Dialogflow, e.g., `What is the temperature at home?`
|
||||
@ -52,7 +52,7 @@ To get the webhook URL, go to the integrations page in the configuration screen
|
||||
|
||||
<div class='note warning'>
|
||||
|
||||
The V1 api will be deprecated on October 23, 2019. If you are still using the V1 API, it is recommended to change your settings in Dialogflow to use the V2 API. No changes to your intents yaml configuration need to take place after upgrading to the V2 API. Change to the V2 API by clicking on the cog button [here](https://console.dialogflow.com/) and then select the V2 API.
|
||||
The V1 API will be deprecated on October 23, 2019. If you are still using the V1 API, it is recommended to change your settings in Dialogflow to use the V2 API. No changes to your intents YAML configuration need to take place after upgrading to the V2 API. Change to the V2 API by clicking on the cog button [here](https://console.dialogflow.com/) and then select the V2 API.
|
||||
|
||||
</div>
|
||||
|
||||
|
@ -25,7 +25,7 @@ Home Assistant can discover and automatically configure [zeroconf](https://en.wi
|
||||
* [Netgear routers](/integrations/netgear)
|
||||
* [Panasonic Viera](/integrations/panasonic_viera)
|
||||
* [Philips Hue](/integrations/hue)
|
||||
* [Plex media server](/integrations/plex#media-player)
|
||||
* [Plex Media Server](/integrations/plex#media-player)
|
||||
* [Roku media player](/integrations/roku#media-player)
|
||||
* [SABnzbd downloader](/integrations/sabnzbd)
|
||||
* [Samsung SyncThru Printer](/integrations/syncthru)
|
||||
@ -86,7 +86,7 @@ Valid values for ignore are:
|
||||
* `openhome`: Linn / Openhome
|
||||
* `panasonic_viera`: Panasonic Viera
|
||||
* `philips_hue`: Philips Hue
|
||||
* `plex_mediaserver`: Plex media server
|
||||
* `plex_mediaserver`: Plex Media Server
|
||||
* `roku`: Roku media player
|
||||
* `sabnzbd`: SABnzbd downloader
|
||||
* `samsung_printer`: Samsung SyncThru Printer
|
||||
|
@ -42,7 +42,7 @@ name:
|
||||
required: false
|
||||
type: string
|
||||
callback_url_override:
|
||||
description: Override the advertised callback URL. In case the Home Assistant instance is not directly reachable (e.g., running in a docker container without bridged-networking), advertise this callback URL for events.
|
||||
description: Override the advertised callback URL. In case the Home Assistant instance is not directly reachable (e.g., running in a Docker container without bridged-networking), advertise this callback URL for events.
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
@ -11,7 +11,7 @@ The `doods` image processing platform allows you to detect and recognize objects
|
||||
|
||||
## Setup
|
||||
|
||||
You need to have DOODS running somewhere. It's easiest to run as a docker container and deployment is described on docker hub
|
||||
You need to have DOODS running somewhere. It's easiest to run as a Docker container and deployment is described on Docker Hub
|
||||
[DOODS - Docker](https://hub.docker.com/r/snowzach/doods)
|
||||
|
||||
## Configuration
|
||||
@ -178,7 +178,7 @@ image_processing:
|
||||
|
||||
## Optimizing resources
|
||||
|
||||
[Image processing components](/components/image_processing/) process the image from a camera at a fixed period given by the `scan_interval`. This leads to excessive processing if the image on the camera hasn't changed, as the default `scan_interval` is 10 seconds. You can override this by adding to your config `scan_interval: 10000` (setting the interval to 10,000 seconds), and then call the `image_processing.scan` service when you actually want to perform processing.
|
||||
[Image processing components](/components/image_processing/) process the image from a camera at a fixed period given by the `scan_interval`. This leads to excessive processing if the image on the camera hasn't changed, as the default `scan_interval` is 10 seconds. You can override this by adding to your configuration `scan_interval: 10000` (setting the interval to 10,000 seconds), and then call the `image_processing.scan` service when you actually want to perform processing.
|
||||
|
||||
```yaml
|
||||
# Example advanced configuration.yaml entry
|
||||
|
@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Ecobee
|
||||
title: ecobee
|
||||
description: Instructions for how to integrate ecobee thermostats and sensors within Home Assistant.
|
||||
logo: ecobee.png
|
||||
ha_category:
|
||||
@ -48,9 +48,9 @@ To configure the ecobee integration in Home Assistant, you can either use the **
|
||||
1. In the **Configuration** > **Integrations** menu, click **+** and then select `ecobee` from the pop-up menu.
|
||||
2. In the pop-up box, enter the API key you obtained from ecobee.com.
|
||||
3. In the next pop-up box, you will be presented with a unique four-character PIN code which you will need to authorize in the [ecobee consumer portal](https://www.ecobee.com/consumerportal/index.html). You can do this by logging in, selecting **My Apps** from the hamburger menu, clicking **Add Application** on the left, entering the PIN code from Home Assistant, and clicking **Validate** and then **Add Application** in the bottom right.
|
||||
4. After authorizing the App on ecobee.com, return to Home Assistant and hit **Submit**. If the authorization was successful, a config entry will be created and your thermostats and sensors will be available in Home Assistant.
|
||||
4. After authorizing the App on ecobee.com, return to Home Assistant and hit **Submit**. If the authorization was successful, a configuration entry will be created and your thermostats and sensors will be available in Home Assistant.
|
||||
|
||||
### Setup via configuration.yaml
|
||||
### Setup via `configuration.yaml`
|
||||
|
||||
If you prefer to initially set up this integration in [`configuration.yaml`](/docs/configuration/), you may do so by adding your API key (and optional parameters) as follows (however, you must still complete authorization via the **Integrations** menu):
|
||||
|
||||
@ -76,7 +76,7 @@ api_key:
|
||||
|
||||
The first time you (re)run Home Assistant with this integration it will give you a PIN code that you need to authorize in the [ecobee consumer portal](https://www.ecobee.com/consumerportal/index.html). You can do this by clicking **Add Application** in the **My Apps** section in the sidebar.
|
||||
|
||||
The PIN can be found in the Home Assistant portal on the Ecobee card or from the **configurator.ecobee** entity in the States developer tool.
|
||||
The PIN can be found in the Home Assistant portal on the ecobee card or from the `configurator.ecobee` entity in the States developer tool.
|
||||
|
||||
- If you do not have an ecobee card, you may be using groups with `default_view` that don't show the card. To get around this, you can temporarily comment out the `default_view` section or add the `configurator.ecobee` integration to your `default_view` and restart Home Assistant.
|
||||
|
||||
|
@ -23,21 +23,21 @@ sensor:
|
||||
|
||||
## Configuration variables
|
||||
|
||||
- **api_key** (*Required*): The read API key for your Emoncms user.
|
||||
- **url** (*Required*): The base URL of Emoncms, use "https://emoncms.org" for the cloud based version.
|
||||
- **id** (*Required*): Positive integer identifier for the sensor. Must be unique if you specify multiple Emoncms sensors.
|
||||
- **include_only_feed_id** (*Optional*): Positive integer list of Emoncms feed IDs. Only the feeds with feed IDs specified here will be displayed. Can not be specified if `exclude_feed_id` is specified.
|
||||
- **exclude_feed_id** (*Optional*): Positive integer list of Emoncms feed IDs. All the feeds will be displayed as sensors except the ones listed here. Can not be specified if `include_only_feed_id` is specified.
|
||||
- **sensor_names** (*Optional*): Dictionary of names for the sensors created that are created based on feed ID. The dictionary consists of `feedid: name` pairs. Sensors for feeds with their feed ID mentioned here will get the chosen name instead of the default name
|
||||
- **value_template** (*Optional*): Defines a [template](/docs/configuration/templating/#processing-incoming-data) to alter the feed value.
|
||||
- **scan_interval** (*Optional*): Defines the update interval of the sensor in seconds.
|
||||
- **unit_of_measurement** (*Optional*): Defines the unit of measurement of for all the sensors. default is "W".
|
||||
- `api_key` (*Required*): The read API key for your Emoncms user.
|
||||
- `url` (*Required*): The base URL of Emoncms, use <https://emoncms.org> for the cloud based version.
|
||||
- `id` (*Required*): Positive integer identifier for the sensor. Must be unique if you specify multiple Emoncms sensors.
|
||||
- `include_only_feed_id` (*Optional*): Positive integer list of Emoncms feed IDs. Only the feeds with feed IDs specified here will be displayed. Can not be specified if `exclude_feed_id` is specified.
|
||||
- `exclude_feed_id` (*Optional*): Positive integer list of Emoncms feed IDs. All the feeds will be displayed as sensors except the ones listed here. Can not be specified if `include_only_feed_id` is specified.
|
||||
- `sensor_names` (*Optional*): Dictionary of names for the sensors created that are created based on feed ID. The dictionary consists of `feedid: name` pairs. Sensors for feeds with their feed ID mentioned here will get the chosen name instead of the default name
|
||||
- `value_template` (*Optional*): Defines a [template](/docs/configuration/templating/#processing-incoming-data) to alter the feed value.
|
||||
- `scan_interval` (*Optional*): Defines the update interval of the sensor in seconds.
|
||||
- `unit_of_measurement` (*Optional*): Defines the unit of measurement of for all the sensors. default is "W".
|
||||
|
||||
## Default naming scheme
|
||||
|
||||
The names of the sensors created by this integration will use the feed names defined in EmonCMS if available,
|
||||
or the feed ID otherwise, and will be prefixed with "EmonCMS", e.g., "EmonCMS Total Power" or "EmonCMS Feed 5".
|
||||
If the `id` property is anything but `1`, the ID will be shown as well, e.g., "EmonCMS 2 Feed 5".
|
||||
The names of the sensors created by this integration will use the feed names defined in Emoncms if available,
|
||||
or the feed ID otherwise, and will be prefixed with "Emoncms", e.g., "Emoncms Total Power" or "Emoncms Feed 5".
|
||||
If the `id` property is anything but `1`, the ID will be shown as well, e.g., "Emoncms 2 Feed 5".
|
||||
|
||||
If `sensor_names` is used, any feeds with defined names will get those names exactly, with no prefix.
|
||||
|
||||
|
@ -24,11 +24,11 @@ emoncms_history:
|
||||
|
||||
{% configuration %}
|
||||
api_key:
|
||||
description: Your Emoncms write api key
|
||||
description: Your Emoncms write API key
|
||||
required: true
|
||||
type: string
|
||||
url:
|
||||
description: The root URL of your Emoncms installation. (Use https://emoncms.org for the cloud based version)
|
||||
description: The root URL of your Emoncms installation. (Use `https://emoncms.org` for the cloud based version)
|
||||
required: true
|
||||
type: string
|
||||
inputnode:
|
||||
|
@ -10,7 +10,7 @@ ha_config_flow: true
|
||||
---
|
||||
|
||||
This integration integrates an emulated Roku API into Home Assistant,
|
||||
so remotes such as Harmony and Android apps can connect to it through WiFi as if it were a Roku player.
|
||||
so remotes such as Harmony and Android apps can connect to it through Wi-Fi as if it were a Roku player.
|
||||
Home Assistant will see key presses and app launches as Events, which you can use as triggers for automations.
|
||||
Multiple Roku servers may be started if you run out of buttons by specifying multiple server entries.
|
||||
|
||||
@ -135,6 +135,6 @@ Known limitations:
|
||||
* Harmony uses UPnP discovery (UPnP is not needed after pairing), which might not work in Docker. You can:
|
||||
* Change Docker to host networking temporarily, then revert after pairing.
|
||||
* Run the `advertise.py` helper script from the emulated_roku library directly somewhere else and point it to the emulated Roku API.
|
||||
* Harmony cannot launch apps as it uses IR instead of the WiFi API and will not display the custom dummy app list.
|
||||
* Harmony cannot launch apps as it uses IR instead of the Wi-Fi API and will not display the custom dummy app list.
|
||||
* Home control buttons cannot be assigned to emulated Roku on the Harmony Hub Companion remote as they are limited to Hue (and possibly other APIs) within Harmony.
|
||||
* Harmony will not set the name of the added emulated Roku device to the specified `name`.
|
||||
|
@ -107,11 +107,11 @@ sensor:
|
||||
|
||||
[Entur's travel planer](https://en-tur.no) has a map of all stops used in Norway. Use the map to find the stops you're interested in. When you have found one of your stops, click on it.
|
||||
|
||||
Now the web browser should contain an URL with the id in it. Such as this:
|
||||
Now the web browser should contain a URL with the id in it. Such as this:
|
||||
|
||||
`https://en-tur.no/nearby-stop-place-detail?id=NSR:StopPlace:32376`
|
||||
|
||||
The stop id is the content after `id=` parameter in the url. Copy paste this into the configuration.
|
||||
The stop id is the content after `id=` parameter in the URL. Copy paste this into the configuration.
|
||||
|
||||
## FAQ - Troubleshooting
|
||||
|
||||
|
@ -36,8 +36,8 @@ Each platform automatically determines which weather station's data to use. Howe
|
||||
For each platform, the location to use is determined according to the following hierarchy:
|
||||
|
||||
- Location ID specified in platform configuration (optional)
|
||||
- Closest station to latitude/longitude specified in platform configuration (optional
|
||||
- Closest station to latitude/longitude specified in Home Assistant core configuration
|
||||
- Closest station to latitude/longitude specified in platform configuration (optional)
|
||||
- Closest station to latitude/longitude specified in Home Assistant configuration
|
||||
|
||||
## Weather
|
||||
|
||||
|
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