Merge remote-tracking branch 'origin/current' into next
This commit is contained in:
commit
5ab2ca280b
47 changed files with 469 additions and 157 deletions
5
Gemfile
5
Gemfile
|
@ -1,5 +1,7 @@
|
|||
source "https://rubygems.org"
|
||||
|
||||
ruby "> 2.3.0"
|
||||
|
||||
group :development do
|
||||
gem 'rake', '~> 10.0'
|
||||
gem 'jekyll', '~> 3.0'
|
||||
|
@ -7,6 +9,9 @@ group :development do
|
|||
gem 'sass-globbing', '~> 1.0'
|
||||
gem 'stringex', '~> 1.4'
|
||||
gem 'pry'
|
||||
|
||||
# See https://github.com/home-assistant/home-assistant.github.io/pull/3904
|
||||
gem 'rb-inotify', '< 0.9.9'
|
||||
end
|
||||
|
||||
group :jekyll_plugins do
|
||||
|
|
|
@ -73,8 +73,8 @@ GEM
|
|||
rack
|
||||
rake (10.5.0)
|
||||
rb-fsevent (0.10.2)
|
||||
rb-inotify (0.9.10)
|
||||
ffi (>= 0.5.0, < 2)
|
||||
rb-inotify (0.9.8)
|
||||
ffi (>= 0.5.0)
|
||||
redcarpet (3.4.0)
|
||||
rouge (1.11.1)
|
||||
safe_yaml (1.0.4)
|
||||
|
@ -104,6 +104,7 @@ DEPENDENCIES
|
|||
octopress-include-tag
|
||||
pry
|
||||
rake (~> 10.0)
|
||||
rb-inotify (< 0.9.9)
|
||||
sass-globbing (~> 1.0)
|
||||
sinatra (~> 1.4.2)
|
||||
stringex (~> 1.4)
|
||||
|
|
|
@ -140,11 +140,11 @@ social:
|
|||
# Home Assistant release details
|
||||
current_major_version: 0
|
||||
current_minor_version: 57
|
||||
current_patch_version: 2
|
||||
current_patch_version: 3
|
||||
date_released: 2017-11-11
|
||||
|
||||
# Either # or the anchor link to latest release notes in the blog post.
|
||||
# Must be prefixed with a # and have double quotes around it.
|
||||
# Major release:
|
||||
patch_version_notes: "#release-0573--november-11"
|
||||
patch_version_notes: "#release-0573---november-11"
|
||||
# Minor release (Example #release-0431---april-25):
|
||||
|
|
|
@ -46,7 +46,9 @@ Screenshot of the HASS Configurator.
|
|||
"ssl": false,
|
||||
"allowed_networks": ["192.168.0.0/16"],
|
||||
"banned_ips": ["8.8.8.8"],
|
||||
"ignore_pattern": ["__pycache__"]
|
||||
"banlimit": 0,
|
||||
"ignore_pattern": ["__pycache__"],
|
||||
"dirsfirst": false,
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -55,7 +57,9 @@ Screenshot of the HASS Configurator.
|
|||
- **ssl** (*Optional*): Enable or Disable SSL for the editor.
|
||||
- **allowed_networks** (*Optional*): Limit access to the configurator by adding allowed IP addresses / networks to the list.
|
||||
- **banned_ips** (*Optional*): List of statically banned IP addresses.
|
||||
- **banlimit** (*Optional*): Ban access from IPs after `banlimit` failed login attempts. The default value `0` disables this feature. Restart the add-on to clear the list of banned IP addresses.
|
||||
- **ignore_pattern** (*Optional*): Files and folders to ignore in the UI.
|
||||
- **dirsfirst** (*Optional*): List directories before files in the filebrowser.
|
||||
|
||||
### {% linkable_title Embedding into Home-Assistant %}
|
||||
|
||||
|
|
|
@ -34,15 +34,15 @@ Set up a [mariadb](https://mariadb.org/) SQL server. It supports multiple databa
|
|||
|
||||
Configuration variables:
|
||||
|
||||
- **databases** (*Require*): Listen of databases.
|
||||
- **logins** (*Require*): Listen of logindata they will create or update.
|
||||
- **username** (*Require*): Username for login.
|
||||
- **host** (*Require*): Host for login, if you need a login with multibe hosts, use '%'.
|
||||
- **password** (*Require*): Password for login.
|
||||
- **rights** (*Require*): Listen of rights to be handle.
|
||||
- **username** (*Require*): Username for grant rights.
|
||||
- **databases** (*Require*): List of databases.
|
||||
- **logins** (*Require*): List of SQL accounts to create or update.
|
||||
- **username** (*Require*): Username for account.
|
||||
- **host** (*Require*): Host for account. If you need an account on multiple hosts, use '%'.
|
||||
- **password** (*Require*): Password for account.
|
||||
- **rights** (*Require*): List of rights to be granted.
|
||||
- **username** (*Require*): Username for granted rights.
|
||||
- **host** (*Require*): Host is a part of username like above.
|
||||
- **database** (*Require*): Database name to grant this user rights to.
|
||||
- **database** (*Require*): Database name on which to grant user rights.
|
||||
- **grant** (*Require*): SQL grant part for access too.
|
||||
|
||||
## {% linkable_title Home Assistant configuration %}
|
||||
|
|
|
@ -26,7 +26,10 @@ binary_sensor:
|
|||
- 'coreos-512mb-nyc3-01'
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **droplets** (*Required*): List of droplets you want to control.
|
||||
{% configuration %}
|
||||
droplets:
|
||||
description: List of droplets you want to monitor.
|
||||
required: true
|
||||
type: list
|
||||
{% endconfiguration %}
|
||||
|
||||
|
|
|
@ -25,9 +25,13 @@ binary_sensor:
|
|||
- platform: iss
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **show_on_map** (*Optional*): Option to show the position of the ISS on the map. Defaults to `False`.
|
||||
{% configuration %}
|
||||
show_on_map:
|
||||
description: Option to show the position of the ISS on the map.
|
||||
required: optionsl
|
||||
default: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
<p class='note warning'>
|
||||
If you set `show_on_map` `True` then the location attributes are named `latitude` and `longitude`. The default name of the location attributes is `lat` and `long` to avoid showing them on the map.
|
||||
|
|
|
@ -25,10 +25,10 @@ binary_sensor:
|
|||
```
|
||||
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Name to use in the frontend.
|
||||
required: false
|
||||
type: string
|
||||
name:
|
||||
description: Name to use in the frontend.
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
See the [entity component options](/docs/configuration/platform_options/) to control how often the main component polls the random binary sensor. The default is 30 seconds.
|
||||
|
|
|
@ -19,7 +19,7 @@ A lot WiFi access points and WiFi routers support the Simple Network Management
|
|||
This device tracker needs SNMP to be enabled on the router. It could be that you need to install the SNMP support manually.
|
||||
</p>
|
||||
|
||||
OID examples:
|
||||
The following OID examples pull the current MAC Address table from a router. This reflects all recent devices seen on the network. However, since devices are not removed until they time out, this is less effective for [device tracker component page](/components/device_tracker/) than desirable. It is recommended to use [Ping](/components/device_tracker.ping/) or [NMAP](/components/device_tracker.nmap_tracker/) instead.
|
||||
|
||||
| Brand | Device/Firmware | OID |
|
||||
|---|---|---|---|
|
||||
|
|
|
@ -26,6 +26,10 @@ digital_ocean:
|
|||
access_token: YOUR_API_KEY
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
{% configuration %}
|
||||
access_token:
|
||||
description: Your Digital Ocean API access token.
|
||||
required: true
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
- **access_token** (*Required*): Your Digital Ocean API access token.
|
||||
|
|
|
@ -13,7 +13,7 @@ ha_release: 0.57
|
|||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
The `linode` component allows you to access the information about your [Linode](https://www.linode.com) systems from Home Assistant.
|
||||
The `linode` component allows you to access the information about your [Linode](https://linode.com) systems from Home Assistant.
|
||||
|
||||
Obtain your oAuth2 Access Token from Linode account.
|
||||
* <http://cloud.linode.com>
|
||||
|
|
|
@ -26,9 +26,15 @@ To allow Home Assistant to talk to your IR receiver, you need to first make sure
|
|||
$ sudo apt-get install lirc liblircclient-dev
|
||||
```
|
||||
|
||||
|
||||
<p class='note'>
|
||||
If you are configuring on a Raspberry Pi, there are excellent instructions with GPIO schematics and driver configurations [here](http://alexba.in/blog/2013/01/06/setting-up-lirc-on-the-raspberrypi/). Consider following these.
|
||||
If you are configuring on a Raspberry Pi, there are excellent instructions with GPIO schematics and driver configurations [here](http://alexba.in/blog/2013/01/06/setting-up-lirc-on-the-raspberrypi/). Take notice, the instructions in this blog are valid for Raspian Jesse where lirc 0.9.0 was included in the debian package. In Raspian Stretch lirc 0.9.4 is included in the Debian package.
|
||||
The configuration is slightly different :
|
||||
|
||||
- The `hardware.conf` file is not supported, obsoleted by a new `lirc_options.conf` file and systemd unit definitions.
|
||||
- The former single `lirc` service is replaced with the three systemd services `lircd.service`, `lircmd.service` and `irexec.service`. There is no counterpart to the 0.9.0 `lirc` service which covered all of these. Using a separate transmitter device requires yet another service.
|
||||
- 0.9.4 defaults to using systemd for controlling the services. This is not just start/stop functionality, systemd is used to implement new features and to address shortcomings in 0.9.0. However, traditional systemV scripts are also installed and could be used although this is less tested and not really documented.
|
||||
|
||||
For more infomation have a look at `/usr/share/doc/lirc/README.Debian.gz` where the update process is explained when you have updated from jessie to stretch.
|
||||
</p>
|
||||
|
||||
### {% linkable_title Configuring LIRC %}
|
||||
|
|
|
@ -57,6 +57,7 @@ Currently known supported models:
|
|||
- KS8005 (port must be set to 8001, and `pip3 install websocket-client` must be executed)
|
||||
- KS7502 (port must be set to 8001, and `pip3 install websocket-client` must be executed, turn on doesn't work, turn off works fine)
|
||||
- K5600AK (partially supported, turn on works but state is not updated)
|
||||
- UE65KS8005 (port must be set to 8001, On/Off, Forward/Backward, Volume are OK, but no Play button)
|
||||
|
||||
Currently tested but not working models:
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@ ha_release: 0.31
|
|||
|
||||
The `telstra` notification platform allows you to deliver Home Assistant notifications to Australian phone numbers over the [Telstra SMS API](https://dev.telstra.com/content/sms-api-0).
|
||||
|
||||
To enable the Telstra notifications in your installation, you must first create an account and API app over at [dev.telstra.com](https://dev.telstra.com/). The free tier allows for 1000 notifications to be sent per month.
|
||||
To enable the Telstra notifications in your installation, you must first create an account and API app over at [dev.telstra.com](https://dev.telstra.com/). The free tier allows for a maximum of 1000 free messages.
|
||||
|
||||
After your API app is approved, add the following to your `configuration.yaml` file:
|
||||
|
||||
|
|
|
@ -27,29 +27,58 @@ sensor:
|
|||
- trade_volume_btc
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **currency** (*Optional*): The currency to exchange to, eg. CHF, USD, EUR, etc. Default is USD.
|
||||
- **display_options** array (*Required*): Options to display in the frontend.
|
||||
- **exchangerate**: Exchange rate of 1 BTC
|
||||
- **trade_volume_btc**: Trade volume
|
||||
- **miners_revenue_usd**: Miners revenue
|
||||
- **btc_mined**: BTC mined
|
||||
- **trade_volume_usd**: Trade volume in USD
|
||||
- **difficulty**: Difficulty
|
||||
- **minutes_between_blocks**: Time between blocks in minutes
|
||||
- **number_of_transactions**: Number of transactions
|
||||
- **hash_rate**: Hash rate in PH/s
|
||||
- **timestamp**: Timestamp
|
||||
- **mined_blocks**: Minded Blocks
|
||||
- **blocks_size**: Block size
|
||||
- **total_fees_btc**: Total fees in BTC
|
||||
- **total_btc_sent**: Total sent in BTC
|
||||
- **estimated_btc_sent**: Estimated sent in BTC
|
||||
- **total_btc**: Total of BTC
|
||||
- **total_blocks**: Total Blocks
|
||||
- **next_retarget**: Next retarget
|
||||
- **estimated_transaction_volume_usd**: Estimated transaction volume in BTC
|
||||
- **miners_revenue_btc**: Miners revenue in BTC
|
||||
- **market_price_usd**: Market price in USD
|
||||
{% configuration %}
|
||||
currency:
|
||||
description: The currency to exchange to, eg. CHF, USD, EUR, etc.
|
||||
required: false
|
||||
type: string
|
||||
default: USD
|
||||
display_options:
|
||||
description: Options to display in the frontend.
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
exchangerate:
|
||||
description: Exchange rate of 1 BTC
|
||||
trade_volume_btc:
|
||||
description: Trade volume
|
||||
miners_revenue_usd:
|
||||
description: Miners revenue
|
||||
btc_mined:
|
||||
description: BTC mined
|
||||
trade_volume_usd:
|
||||
description: Trade volume in USD
|
||||
difficulty:
|
||||
description: Difficulty
|
||||
minutes_between_blocks:
|
||||
description: Time between blocks in minutes
|
||||
number_of_transactions:
|
||||
description: Number of transactions
|
||||
hash_rate:
|
||||
description: Hash rate in PH/s
|
||||
timestamp:
|
||||
description: Timestamp
|
||||
mined_blocks:
|
||||
description: Minded Blocks
|
||||
blocks_size:
|
||||
description: Block size
|
||||
total_fees_btc:
|
||||
description: Total fees in BTC
|
||||
total_btc_sent:
|
||||
description: Total sent in BTC
|
||||
estimated_btc_sent:
|
||||
description: Estimated sent in BTC
|
||||
total_btc:
|
||||
description: Total of BTC
|
||||
total_blocks:
|
||||
description: Total Blocks
|
||||
next_retarget:
|
||||
description: Next retarget
|
||||
estimated_transaction_volume_usd:
|
||||
description: Estimated transaction volume in BTC
|
||||
miners_revenue_btc:
|
||||
description: Miners revenue in BTC
|
||||
market_price_usd:
|
||||
description: Market price in USD
|
||||
{% endconfiguration %}
|
||||
|
||||
|
|
|
@ -27,7 +27,10 @@ sensor:
|
|||
- '183J5pXWqYYsxZ7inTVw9tEpejDXyMFroe'
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **addresses** (*Required*): List of bitcoin wallet addresses to watch.
|
||||
{% configuration %}
|
||||
addresses:
|
||||
description: List of bitcoin wallet addresses to watch.
|
||||
required: true
|
||||
type: string, list
|
||||
{% endconfiguration %}
|
||||
|
||||
|
|
|
@ -24,7 +24,18 @@ sensor:
|
|||
- platform: coinmarketcap
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
{% configuration %}
|
||||
currency:
|
||||
description: The cryptocurrency to use.
|
||||
required: false
|
||||
type: string, list
|
||||
default: Bitcoin
|
||||
display_currency:
|
||||
description: The currency to display.
|
||||
required: false
|
||||
type: string, list
|
||||
default: USD
|
||||
{% endconfiguration %}
|
||||
|
||||
All supported currencies can be found [here](https://coinmarketcap.com/api/).
|
||||
|
||||
- **currency** (*Optional*): The cryptocurrency to use, eg. `bitcoin`, `litecoin`, `steem`, etc. Default is `bitcoin`.
|
||||
- **display_currency** (*Optional*): The currency to display, eg. `USD`, `EUR`, `GBP`, etc. Default is `USD`. All supported currencies can be found [here](https://coinmarketcap.com/api/).
|
||||
|
|
|
@ -31,8 +31,20 @@ sensor:
|
|||
- INR
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
{% configuration %}
|
||||
api_key:
|
||||
description: "The API Key from [Currencylayer](https://currencylayer.com/)."
|
||||
required: true
|
||||
type: string
|
||||
quote:
|
||||
description: The symbol(s) of the quote or target currencies.
|
||||
required: false
|
||||
type: string, list
|
||||
default: Exchange rate
|
||||
base:
|
||||
description: The symbol of the base currency.
|
||||
required: false
|
||||
type: string
|
||||
default: USD
|
||||
{% endconfiguration %}
|
||||
|
||||
- **api_key** (*Required*): API Key from [Currencylayer](https://currencylayer.com/).
|
||||
- **base** (*Optional*): The symbol of the base currency. Defaults to USD.
|
||||
- **quote** (*Required*): The symbol(s) of the quote or target currencies.
|
||||
|
|
|
@ -25,7 +25,15 @@ sensor:
|
|||
address: '0xfB6916095ca1df60bB79Ce92cE3Ea74c37c5d359'
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
{% configuration %}
|
||||
address:
|
||||
description: Ethereum wallet address to watch.
|
||||
required: true
|
||||
type: string
|
||||
name:
|
||||
description: The name of the sensor used in the frontend.
|
||||
required: false
|
||||
type: string
|
||||
default: Ethereum Balance
|
||||
{% endconfiguration %}
|
||||
|
||||
- **address** (*Required*): Ethereum wallet address to watch.
|
||||
- **name** (*Optional*): The name of the sensor used in the frontend.
|
||||
|
|
|
@ -27,9 +27,19 @@ sensor:
|
|||
target: CHF
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **target** (*Required*): The symbol of the target currency.
|
||||
- **name** (*Optional*): Name to use in the frontend.
|
||||
- **base** (*Optional*): The symbol of the base currency. Default to USD
|
||||
|
||||
{% configuration %}
|
||||
target:
|
||||
description: The symbol of the target currency.
|
||||
required: true
|
||||
type: string
|
||||
name:
|
||||
description: Name to use in the frontend.
|
||||
required: false
|
||||
type: string
|
||||
default: Exchange rate
|
||||
base:
|
||||
description: The symbol of the base currency.
|
||||
required: false
|
||||
type: string
|
||||
default: USD
|
||||
{% endconfiguration %}
|
||||
|
|
|
@ -28,9 +28,24 @@ sensor:
|
|||
quote: EUR
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
{% configuration %}
|
||||
name:
|
||||
description: The name of the sensor.
|
||||
required: false
|
||||
type: string
|
||||
default: Exchange Rate Sensor
|
||||
api_key:
|
||||
description: "The API Key for [Open Exchange Rates](https://openexchangerates.org)."
|
||||
required: true
|
||||
type: string
|
||||
quote:
|
||||
description: The symbol of the quote or target currency.
|
||||
required: true
|
||||
type: string
|
||||
base:
|
||||
description: The symbol of the base currency.
|
||||
required: false
|
||||
type: string
|
||||
default: USD
|
||||
{% endconfiguration %}
|
||||
|
||||
- **api_key** (*Required*): API Key for [Open Exchange Rates](https://openexchangerates.org).
|
||||
- **quote** (*Required*): The symbol of the quote or target currency.
|
||||
- **name** (*Optional*): Name to use in the frontend.
|
||||
- **base** (*Optional*): The symbol of the base currency. Defaults to USD.
|
||||
|
|
|
@ -24,12 +24,27 @@ sensor:
|
|||
- platform: random
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (*Optional*): Name of the sensor to use in the frontend. Defaults to `Random Sensor`.
|
||||
- **minimum** (*Optional*): Lower limit for the values. Defaults to `0`.
|
||||
- **maximum** (*Optional*): Upper limit for the values. Defaults to `20`.
|
||||
- **unit_of_measurement** (*Optional*): Defines the units of measurement of the sensor, if any.
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Name to use in the frontend.
|
||||
required: false
|
||||
type: string
|
||||
default: Random Sensor
|
||||
minimum:
|
||||
description: Lower limit for the values.
|
||||
required: false
|
||||
type: string
|
||||
default: 0
|
||||
maximum:
|
||||
description: Upper limit for the values.
|
||||
required: false
|
||||
type: int
|
||||
default: 20
|
||||
unit_of_measurement:
|
||||
description: Defines the units of measurement of the sensor, if any.
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
See the [entity component options][entity-docs] to control how often the main component polls the random sensor. The default is 30 seconds.
|
||||
|
||||
|
|
|
@ -25,7 +25,15 @@ sensor:
|
|||
address: 'r3kmLJN5D28dHuH8vZNUZpMC43pEHpaocV'
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
{% configuration %}
|
||||
address:
|
||||
description: Ripple wallet address to watch.
|
||||
required: true
|
||||
type: string
|
||||
name:
|
||||
description: Name for the sensor to use in the frontend.
|
||||
required: false
|
||||
type: string
|
||||
default: Ripple Balance
|
||||
{% endconfiguration %}
|
||||
|
||||
- **address** (*Required*): Ripple wallet address to watch
|
||||
- **name** (*Optional*): Name for the sensor to use in the frontend.
|
||||
|
|
|
@ -24,10 +24,18 @@ sensor:
|
|||
- platform: yahoo_finance
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (*Optional*): The name of the sensor. If not specified, it defaults to *Yahoo Stock*.
|
||||
- **symbols** array (*Optional*): List of stock market symbols for given companies. If not specified, it defaults to *Yahoo (YHOO)*.
|
||||
{% configuration %}
|
||||
name:
|
||||
description: The name of the sensor.
|
||||
required: false
|
||||
type: string
|
||||
default: Yahoo Stock
|
||||
symbols:
|
||||
description: List of stock market symbols for given companies.
|
||||
required: false
|
||||
type: string, list
|
||||
default: YHOO
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Examples %}
|
||||
|
||||
|
|
|
@ -26,7 +26,10 @@ switch:
|
|||
- 'coreos-512mb-nyc3-01'
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **droplets** (*Required*): List of droplets you want to control.
|
||||
{% configuration %}
|
||||
droplets:
|
||||
description: List of droplets you want to control.
|
||||
required: true
|
||||
type: list
|
||||
{% endconfiguration %}
|
||||
|
||||
|
|
|
@ -16,9 +16,9 @@ The `flux` switch platform will change the temperature of your lights similar to
|
|||
|
||||
The component will update your lights based on the time of day. It will only affect lights that are turned on and listed in the flux configuration.
|
||||
|
||||
During the day (in between `start time` and `sunset time`), it will fade the lights from the `start_colortemp` to the `sunset_colortemp`. After sunset (between `sunset_time` and `stop_time`), the lights will fade from the `sunset_colortemp` to the `stop_colortemp`. If the lights are still on after the `stop_time` it will continue to change the light to the `stop_colortemp` until the light is turned off. The fade effect is created by updating the lights every 30 seconds with a 30 second transition time.
|
||||
During the day (in between `start time` and `sunset time`), it will fade the lights from the `start_colortemp` to the `sunset_colortemp`. After sunset (between `sunset_time` and `stop_time`), the lights will fade from the `sunset_colortemp` to the `stop_colortemp`. If the lights are still on after the `stop_time` it will continue to change the light to the `stop_colortemp` until the light is turned off. The fade effect is created by updating the lights every periodically.
|
||||
|
||||
If you don't wish to have flux update on 30 second intervals, you can leave the switch turned off and use automation rules that call the service `switch.<name>_update` whenever you want the lights updated, where `<name>` equals the `name:` property in the switch configuration.
|
||||
If you want to update at variable intervals, you can leave the switch turned off and use automation rules that call the service `switch.<name>_update` whenever you want the lights updated, where `<name>` equals the `name:` property in the switch configuration.
|
||||
|
||||
To use the Flux switch in your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
|
@ -43,6 +43,8 @@ Configuration variables:
|
|||
- **brightness** (*Optional*): The brightness of the lights. Calculated with `RGB_to_xy` by default.
|
||||
- **disable_brightness_adjust** (*Optional*): If true, brightness will not be adjusted besides color temperature. Defaults to False.
|
||||
- **mode** (*Optional*): Select how color temperature is passed to lights. Valid values are `xy`, `mired` and `rgb`. Defaults to `xy`.
|
||||
- **transition** (*Optional*): Transition time for the light changes (high values may not be supported by all light models). Defaults to 30.
|
||||
- **interval** (*Optional*): Frequency at which the lights should be updated. Defaults to 30.
|
||||
|
||||
Full example:
|
||||
|
||||
|
@ -62,5 +64,7 @@ switch:
|
|||
brightness: 200
|
||||
disable_brightness_adjust: True
|
||||
mode: xy
|
||||
transition: 30
|
||||
interval: 60
|
||||
```
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ footer: true
|
|||
|
||||
The `vacuum` component enables the ability to control home cleaning robots within Home Assistant.
|
||||
|
||||
To use this component in your installation, add a `vacuum` platform to your `configuration.yaml` file, like the [Xiaomi](/components/vacuum.xiaomi/).
|
||||
To use this component in your installation, add a `vacuum` platform to your `configuration.yaml` file, like the [Xiaomi](/components/vacuum.xiaomi_miio/).
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
|
|
|
@ -45,4 +45,4 @@ Configuration variables:
|
|||
- **mouse** (*Optional*): Set to 1 to show mouse detectors, 0 to disable. Default 1.
|
||||
- **door_window** (*Optional*): Set to 1 to show door and window sensors, 0 to disable. Default 1.
|
||||
- **code_digits** (*Optional*): Number of digits in PIN code. Default 4.
|
||||
|
||||
- **giid** (*Optional*): The GIID of your installation (If you have more then one alarm system).
|
||||
|
|
|
@ -22,10 +22,17 @@ weather:
|
|||
- platform: bom
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (*Optional*): The name you would like to give to the weather station.
|
||||
- **station** (*Optional*): The station ID string; defaults to the closest station. See the [`sensor.bom` docs](/components/sensor.bom/) for details on how to find the ID of a station.
|
||||
{% configuration %}
|
||||
name:
|
||||
description: The name you would like to give to the weather station.
|
||||
required: optional
|
||||
type: string
|
||||
station:
|
||||
description: "The station ID string. See the [`sensor.bom` docs](/components/sensor.bom/) for details on how to find the ID of a station."
|
||||
required: optional
|
||||
default: The closest station
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
<p class='note'>
|
||||
This platform is an alternative to the [`bom`](/components/sensor.bom/) sensor.
|
||||
|
|
12
source/_cookbook/configuration_yaml_by_mf_social
Normal file
12
source/_cookbook/configuration_yaml_by_mf_social
Normal file
|
@ -0,0 +1,12 @@
|
|||
+---
|
||||
+layout: page
|
||||
+title: "Configuration.yaml by mf_social"
|
||||
+description: ""
|
||||
+date: 2017-11-15 13:08 -0700
|
||||
+sidebar: true
|
||||
+comments: false
|
||||
+sharing: true
|
||||
+footer: true
|
||||
+ha_category: Example configuration.yaml
|
||||
+ha_external_link: https://github.com/mf-social/Home-Assistant
|
||||
+---
|
|
@ -62,6 +62,8 @@ automation old:
|
|||
|
||||
If you want to migrate your old automations to use the editor, you'll have to copy them to `automations.yaml`. Make sure that `automations.yaml` remains a list! For each automation that you copy over you'll have to add an `id`. This can be any string as long as it's unique.
|
||||
|
||||
For example, the below automation will be triggered when the sun goes from below the horizon to above the horizon. Then, if the temperature is between 17 and 25 degrees, a light will be turned on.
|
||||
|
||||
```yaml
|
||||
# Example automations.yaml entry
|
||||
- id: my_unique_id # <-- Required for editor to work.
|
||||
|
|
|
@ -63,7 +63,7 @@ homeassistant:
|
|||
| `homebridge_hidden` | Set to `true` to hide the entity from `HomeBridge`.
|
||||
| `emulated_hue_hidden` | Set to `true` to hide the entity from `emulated_hue`.
|
||||
| `entity_picture` | Url to use as picture for entity.
|
||||
| `icon` | Any icon from [MaterialDesignIcons.com](http://MaterialDesignIcons.com). Prefix name with `mdi:`, ie `mdi:home`.
|
||||
| `icon` | Any icon from [MaterialDesignIcons.com](http://MaterialDesignIcons.com) ([Cheatsheet](https://materialdesignicons.com/cheatsheet)). Prefix name with `mdi:`, ie `mdi:home`.
|
||||
| `assumed_state` | For switches with an assumed state two buttons are shown (turn off, turn on) instead of a switch. By setting `assumed_state` to `false` you will get the default switch icon.
|
||||
| `device_class` | Sets the class of the device, changing the device state and icon that is displayed on the UI (see below).
|
||||
| `initial_state` | Sets the initial state for automations. `on` or `off`.
|
||||
|
|
|
@ -15,6 +15,11 @@ redirect_from: /ecosystem/hass-configurator/
|
|||
Since there currently is no nice way to edit the yaml-files Home Assistant is using through the frontend, here is a small webapp that hopefully makes the configuration easier. It is a customized and embedded [Ace editor](https://ace.c9.io/), which has syntax highlighting for yaml, the format used for Home Assistants configuration files. There is an integrated file browser to select whatever file you want to edit. When you're done with editing the file, click the save-button and it will replace the original.
|
||||
Essentially this is a browser-based alternative to modifying your configuration through SSH, Windows + SMB, Github etc..
|
||||
|
||||
<p class='img'>
|
||||
<img src='/images/hassio/screenshots/addon-hass-configurator.png'>
|
||||
Screenshot of the HASS Configurator.
|
||||
</p>
|
||||
|
||||
### {% linkable_title Feature list %}
|
||||
|
||||
- Web-Based editor to modify your files
|
||||
|
@ -64,6 +69,10 @@ Limit access to the configurator by adding allowed IP addresses / networks to th
|
|||
List of statically banned IP addresses, e.g. `BANNED_IPS = ["1.1.1.1", "2.2.2.2"]`
|
||||
#### BANLIMIT (integer)
|
||||
Ban IPs after `n` failed login attempts. Restart the service to reset banning. The default of `0` disables this feature. `CREDENTIALS` has to be set for this to work.
|
||||
#### IGNORE_PATTERN (list)
|
||||
Files and folders to ignore in the UI, e.g. `IGNORE_PATTERN = [".*", "*.log", "__pycache__"]`.
|
||||
#### DIRSFIRST (bool)
|
||||
If set to `True`, directories will be displayed at the top of the filebrowser.
|
||||
#### GIT (bool)
|
||||
Set this variable to `True` to enable Git integration. This feature requires [GitPython](https://gitpython.readthedocs.io)
|
||||
to be installed on the system that is running the configurator. For technical reasons this feature can not be enabled with the static settings file.
|
||||
|
|
|
@ -10,6 +10,10 @@ footer: true
|
|||
redirect_from: /getting-started/installation/
|
||||
---
|
||||
|
||||
<p class='note'>
|
||||
Beginners should check our [Getting started guide](/getting-started/) first. This is for users that require advanced installations.
|
||||
</p>
|
||||
|
||||
Home Assistant provides multiple ways to be installed. A requirement is that you have [Python](https://www.python.org/downloads/) installed. For Windows, we require at least **Python 3.5** and for other operating systems at least **Python 3.4.2**.
|
||||
|
||||
<div class="text-center hass-option-cards" markdown="0">
|
||||
|
|
|
@ -72,6 +72,10 @@ Remark: to restart your Home Assistant within Synology NAS, you just have to do
|
|||
* Go to the Docker-app and move to "Container"-section
|
||||
* Right-click on it and select "Action"->"Restart".
|
||||
|
||||
<p class='note'>
|
||||
If you want to use a USB Bluetooth adapter or Z-Wave USB Stick with Home Assistant on Synology Docker these instructions do not correctly configure the container to access the USB devices. To configure these devices on your Synology Docker Home Assistant you can follow the instructions provided [here](https://philhawthorne.com/installing-home-assistant-io-on-a-synology-diskstation-nas/) by Phil Hawthorne.
|
||||
</p>
|
||||
|
||||
### {% linkable_title Restart %}
|
||||
|
||||
This will launch Home Assistant and serve the web interface from port 8123 on your Docker host.
|
||||
|
|
|
@ -22,7 +22,7 @@ Running these commands will:
|
|||
- Install Home Assistant
|
||||
- Launch Home Assistant and serve the web interface on [http://localhost:8123](http://localhost:8123)
|
||||
|
||||
If you're running a Linux-based platform, we suggest you follow the [VirtualEnv instructions](/docs/installation/virtualenv/) to avoid using `root`.
|
||||
If you're running a Linux-based platform, we suggest you follow the instructions for a [virtual environment](/docs/installation/virtualenv/) to avoid using `root`.
|
||||
|
||||
Video tutorials of this process for various operating systems are available here:
|
||||
|
||||
|
@ -30,3 +30,4 @@ Video tutorials of this process for various operating systems are available here
|
|||
- [macOS](https://www.youtube.com/watch?v=hej6ipN86ls)
|
||||
- [Ubuntu 14.04](https://www.youtube.com/watch?v=SXaAG1lGNH0)
|
||||
|
||||
Keep in mind that the used operating systems and the shown software releases may be outdated.
|
||||
|
|
|
@ -14,7 +14,7 @@ It can happen that you run into trouble while installing Home Assistant. This pa
|
|||
|
||||
|
||||
#### {% linkable_title pip3: command not found %}
|
||||
This utility should have been installed as part of the Python 3.4 installation. Check if Python 3.4 is installed by running `python3 --version`. If it is not installed, [download it here](https://www.python.org/getit/).
|
||||
This utility should have been installed as part of the Python installation. Check if Python is installed by running `python3 --version`. If it is not installed, [download it here](https://www.python.org/getit/).
|
||||
|
||||
If you are able to successfully run `python3 --version` but not `pip3`, install Home Assistant by running the following command instead:
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
---
|
||||
layout: page
|
||||
title: "Installation in virtualenv"
|
||||
description: "Instructions how to install Home Assistant in a virtual environment."
|
||||
title: "Installation in Python virtual environment"
|
||||
description: "How to install Home Assistant in a Python virtual environment."
|
||||
date: 2016-4-16 16:40
|
||||
sidebar: true
|
||||
comments: false
|
||||
|
@ -9,12 +9,19 @@ sharing: true
|
|||
footer: true
|
||||
redirect_from: /getting-started/installation-virtualenv/
|
||||
---
|
||||
<p class='note'>
|
||||
Beginners should check our [getting started guide](/getting-started/) first.
|
||||
</p>
|
||||
|
||||
There are several reasons why it makes sense to run Home Assistant in a virtual environment. A [virtualenv](https://virtualenv.pypa.io/en/latest/) encapsulates all aspect of a Python environment within a single directory tree. That means the Python packages you install for Home Assistant won't interact with the rest of your system and vice-versa. It means a random upgrade for some other program on your computer won't break Home Assistant, and it means you don't need to install Python packages as root.
|
||||
|
||||
Virtualenvs are pretty easy to setup. This example will walk through one method of setting one up (there are certainly others). We'll be using Debian in this example (as many Home Assistant users are running Raspbian on a Raspberry Pi), but all of the Python related steps should be the same on just about any platform.
|
||||
Virtualenvs are pretty easy to setup. We'll be using Debian in this example (as many Home Assistant users are running Raspbian on a Raspberry Pi), but all of the Python related steps should be the same on just about any platform.
|
||||
|
||||
### {% linkable_title Step 0: Install some dependencies %}
|
||||
### {% linkable_title Basic guide %}
|
||||
|
||||
The basic guide is for testing Home Assistant. Also check the advanced guide for instances used in production.
|
||||
|
||||
## {% linkable_title Step 1: Install dependencies %}
|
||||
|
||||
```bash
|
||||
$ sudo apt-get update
|
||||
|
@ -23,33 +30,54 @@ $ sudo apt-get install python3-pip python3-dev
|
|||
$ sudo pip3 install --upgrade virtualenv
|
||||
```
|
||||
|
||||
### {% linkable_title Step 1: Create a Home Assistant user & group %}
|
||||
## {% linkable_title Step 2: Setup virtualenv %}
|
||||
|
||||
This step is optional, but it's a good idea to give services like Home Assistant their own user. It gives you more granular control over permissions, and reduces the exposure to the rest of your system in the event there is a security related bug in Home Assistant. This is a reasonably Linux oriented step, and will look different on other operating systems (or even other Linux distributions).
|
||||
```bash
|
||||
$ python3 -m venv $HOME/homeassistant
|
||||
```
|
||||
|
||||
## {% linkable_title Step 3: Install or update Home Assistant %}
|
||||
|
||||
```bash
|
||||
$ source $HOME/homeassistant/bin/activate
|
||||
(homeassistant)$ pip3 install --upgrade homeassistant
|
||||
```
|
||||
|
||||
## {% linkable_title Step 4: Run Home Assistant %}
|
||||
|
||||
```bash
|
||||
$ $HOME/homeassistant/bin/hass
|
||||
```
|
||||
|
||||
### {% linkable_title Advanced guide %}
|
||||
## {% linkable_title Separate user & group for Home Assistant (Basic guide step 2) %}
|
||||
|
||||
It's a good idea to give services like Home Assistant their own user. It gives you more granular control over permissions, and reduces the exposure to the rest of your system in the event there is a security related bug in Home Assistant. This is a reasonably Linux oriented step, and will look different on other operating systems (or even other Linux distributions).
|
||||
|
||||
```bash
|
||||
$ sudo adduser --system homeassistant
|
||||
$ sudo addgroup homeassistant
|
||||
```
|
||||
|
||||
Home Assistant stores its configuration in `$HOME/.homeassistant` by default, so in this case, it would be in `/home/homeassistant/.homeassistant`
|
||||
Home Assistant stores its configuration in `$HOME/.homeassistant` by default, so in this case, it would be in `/home/homeassistant/.homeassistant`.
|
||||
|
||||
If you plan to use a Z-Wave controller, you will need to add this user to the `dialout` group
|
||||
If you plan to use a Z-Wave controller, you will need to add this user to the `dialout` group:
|
||||
|
||||
```bash
|
||||
$ sudo usermod -G dialout -a homeassistant
|
||||
```
|
||||
|
||||
### {% linkable_title Step 2: Create a directory for Home Assistant %}
|
||||
## {% linkable_title Custom installation directory for Home Assistant (Basic guide step 2) %}
|
||||
|
||||
This can be anywhere you want. We chose to put it in `/srv`. You also need to change the ownership of the directory to the user you created above (if you created one).
|
||||
This can be anywhere you want. We chose to put it in `/srv`. You also need to change the ownership of the directory to the user you created above.
|
||||
|
||||
```bash
|
||||
$ sudo mkdir /srv/homeassistant
|
||||
$ sudo chown homeassistant:homeassistant /srv/homeassistant
|
||||
$ python3 -m venv /srv/homeassistant
|
||||
```
|
||||
|
||||
### {% linkable_title Step 3: Become the new user %}
|
||||
## {% linkable_title Install or update Home Assistant %}
|
||||
|
||||
This is obviously only necessary if you created a `homeassistant` user, but if you did, be sure to switch to that user whenever you install things in your virtualenv, otherwise you'll end up with mucked up permissions.
|
||||
|
||||
|
@ -59,37 +87,14 @@ $ sudo su -s /bin/bash homeassistant
|
|||
|
||||
The `su` command means 'switch' user. We use the '-s' flag because the `homeassistant` user is a system user and doesn't have a default shell by default (to prevent attackers from being able to log in as that user).
|
||||
|
||||
### {% linkable_title Step 4: Set up the virtualenv %}
|
||||
|
||||
All this step does is stick a Python environment in the directory we're using. That's it. It's just a directory. There's nothing special about it, and it is entirely self-contained.
|
||||
|
||||
It will include a `bin` directory, which will contain all the executables used in the virtualenv (including Home Assistant itself). It also includes a script called `activate` which we will use to activate the virtualenv.
|
||||
|
||||
```bash
|
||||
$ virtualenv -p python3 /srv/homeassistant
|
||||
```
|
||||
|
||||
### {% linkable_title Step 5: Activate the virtualenv %}
|
||||
|
||||
```bash
|
||||
$ source /srv/homeassistant/bin/activate
|
||||
```
|
||||
|
||||
After that, your prompt should include `(homeassistant)`.
|
||||
|
||||
### {% linkable_title Step 6: Install Home Assistant %}
|
||||
|
||||
Once your virtualenv has been activated, you don't need to `sudo` any of your `pip` commands. `pip` will be installing things in the virtualenv, which the `homeassistant` user has permission to modify.
|
||||
|
||||
```bash
|
||||
(homeassistant)$ pip3 install --upgrade homeassistant
|
||||
```
|
||||
|
||||
And that's it... you now have Home Assistant installed, and you can be sure that every bit of it is contained in `/srv/homeassistant`.
|
||||
## {% linkable_title Run Home Assistant (Basic guide step 4) %}
|
||||
|
||||
### {% linkable_title Finally... Run Home Assistant %}
|
||||
|
||||
There are two ways to launch Home Assistant. If you are **in** the virtualenv, you can just run `hass` and it will work as normal. If the virtualenv is not activated, you just use the `hass` executable in the `bin` directory mentioned earlier. There is one caveat... Because Home Assistant stores its configuration in the user's home directory, we need to be the user `homeassistant` user or specify the configuration with `-c`.
|
||||
There are two ways to launch Home Assistant. If you are **in** the virtualenv, you can just run `hass` and it will work as normal. If the virtualenv is not activated, you just use the `hass` executable in the `bin` directory mentioned earlier. There is one caveat... Because Home Assistant stores its configuration in the user's home directory, we need to be the user `homeassistant` or specify the configuration with `-c`.
|
||||
|
||||
```bash
|
||||
$ sudo -u homeassistant -H /srv/homeassistant/bin/hass
|
||||
|
@ -97,10 +102,6 @@ $ sudo -u homeassistant -H /srv/homeassistant/bin/hass
|
|||
|
||||
The `-H` flag is important. It sets the `$HOME` environment variable to `/home/homeassistant` so `hass` can find its configuration.
|
||||
|
||||
### {% linkable_title Upgrading Home Assistant %}
|
||||
|
||||
Upgrading Home Assistant is simple, just repeat steps 3, 5 and 6.
|
||||
|
||||
### {% linkable_title Starting Home Assistant on boot %}
|
||||
## {% linkable_title Starting Home Assistant on boot %}
|
||||
|
||||
The [autostart instructions](/getting-started/autostart/) will work just fine, just be sure to replace `/usr/bin/hass` with `/srv/homeassistant/bin/hass` and specify the `homeassistant` user where appropriate.
|
||||
|
|
|
@ -16,6 +16,7 @@ To add (include) a non-secure Z-Wave [device](/docs/z-wave/devices/) to your sys
|
|||
1. Go to the [Z-Wave control panel](/docs/z-wave/control-panel/) in the Home Assistant frontend
|
||||
2. Click the **Add Node** button in the *Z-Wave Network Management* card - this will place the controller in inclusion mode
|
||||
3. Activate your device to be included by following the instructions provided with the device
|
||||
4. With the device in its final location, run a *Heal*
|
||||
|
||||
Don't use this for [secure devices](https://home-assistant.io/docs/z-wave/adding/#adding-secure-devices), since this is likely to limit the features the device supports.
|
||||
|
||||
|
@ -56,3 +57,4 @@ To remove (exclude) a Z-Wave device from your system:
|
|||
1. Go to the Z-Wave control panel in the Home Assistant frontend
|
||||
2. Click the **Remove Node** button in the *Z-Wave Network Management* card - this will place the controller in exclusion mode
|
||||
3. Activate your device to be excluded by following the instructions provided with the device
|
||||
4. With the device in its final location, run a *Heal*
|
||||
|
|
|
@ -47,12 +47,20 @@ $ echo -e -n "\x01\x08\x00\xF2\x51\x01\x01\x05\x01\x50" > /dev/serial/by-id/usb-
|
|||
|
||||
### {% linkable_title Razberry Board %}
|
||||
|
||||
You need to disable the on-board Bluetooth since the board requires the use of the hardware UART (and there's only one on the Pi3). You do this by adding the following to the end of `/boot/config.txt`, then rebooting:
|
||||
You need to disable the on-board Bluetooth since the board requires the use of the hardware UART (and there's only one on the Pi3). You do this by adding the following to the end of `/boot/config.txt`:
|
||||
|
||||
```
|
||||
dtoverlay=pi3-disable-bt
|
||||
```
|
||||
|
||||
Then disable the Bluetooth modem service:
|
||||
|
||||
```bash
|
||||
$ sudo systemctl disable hciuart
|
||||
```
|
||||
|
||||
Finally, reboot to make those changes active.
|
||||
|
||||
### {% linkable_title Aeon Minimote %}
|
||||
|
||||
Here's a handy configuration for the Aeon Labs Minimote that defines all possible button presses. Put it into `automation.yaml`.
|
||||
|
|
102
source/_posts/2017-11-12-tor.markdown
Normal file
102
source/_posts/2017-11-12-tor.markdown
Normal file
|
@ -0,0 +1,102 @@
|
|||
---
|
||||
layout: post
|
||||
title: "Secure remote access to Home Assistant using Tor"
|
||||
description: "Using Tor with Home Assistant and Hass.io."
|
||||
date: 2017-11-12 10:00:00 +0200
|
||||
date_formatted: "November 12, 2017"
|
||||
author: Franck Nijhof & Fabian Affolter
|
||||
author_twitter: frenck
|
||||
comments: true
|
||||
categories: How-To
|
||||
og_image: /images/blog/2017-11-tor/social.png
|
||||
---
|
||||
|
||||
Routers and gateways provided by broadband internet providers are very often limited regarding features and configuration possibilities. Most of these limitations affect the opportunities that allow users to set up port-forwarding, DMZ, and DHCP reservations since the suppliers figured that average user does not want (or should not) deal with these. Making your Home Assistant instance available remotely (and securely), in this case, becomes more difficult. Are you one of those unlucky ones?
|
||||
|
||||
There are a couple of options available to achieve a remote (and secure) accessible Home Assistant instance. However, almost all of them require you to: open one or more ports on your router, expose a public IP address, and require you to reserve a fixed IP in your DHCP server (or set up a static IP address). Examples of these are:
|
||||
|
||||
- Combination of [DuckDNS](/components/duckdns/) (or similar), [Let's Encrypt](/docs/ecosystem/certificates/lets_encrypt/) (SSL), DHCP reservation, and forwarding a port to your device running Home Assistant.
|
||||
- Setup a VPN, which often requires more hardware and software. Additionally, it also requires port-forwarding, DHCP reservation and most likely [DuckDNS](/components/duckdns/) (or similar).
|
||||
- [SSH tunnel-ing](/blog/2017/11/02/secure-shell-tunnel/). Which still requires port-forwarding, DHCP reservation and most likely (yeah, you've guessed it) [DuckDNS](/components/duckdns/) (or similar).
|
||||
|
||||
There is, however, another option available that most people do not realize: [Tor](https://www.torproject.org). [Tor](https://www.torproject.org) offers a capability that they refer to as [Tor's Hidden Services](https://www.torproject.org/docs/hidden-services.html.en), which allows you to securely access your Home Assistant installation *without* the need for all these things. No need to forward and open ports, no need to expose your public IP, no DNS entry, no need for SSL certificates, and you do not have to assign a fixed IP to the device running your Home Assistant.
|
||||
|
||||
The most amazing part? It is super easy to set up!
|
||||
|
||||
<!--more-->
|
||||
|
||||
## {% linkable_title Setting up Tor %}
|
||||
|
||||
Our [documentation](/docs/ecosystem/tor/) provides an detailled guide about seting up a [Tor's Hidden Service](https://www.torproject.org/docs/hidden-services.html.en). The setup is straight-forward:
|
||||
|
||||
1. Install Tor. On a Debian-based system: `$ sudo apt-get install tor`. On Fedora: `$ sudo dnf install tor`
|
||||
2. Modify Tor's main configuration file `/etc/tor/torrc` to include the following lines:
|
||||
|
||||
```bash
|
||||
############### This section is just for location-hidden services ###
|
||||
|
||||
## Once you have configured a hidden service, you can look at the
|
||||
## contents of the file ".../hidden_service/hostname" for the address
|
||||
## to tell people.
|
||||
...
|
||||
HiddenServiceDir /var/lib/tor/homeassistant/
|
||||
HiddenServicePort 80 127.0.0.1:8123
|
||||
...
|
||||
```
|
||||
3. Restart Tor: `$ sudo systemctl restart tor`
|
||||
4. The Tor-generated hostname file contains the hostname you need to access your installation.
|
||||
|
||||
```bash
|
||||
$ sudo cat /var/lib/tor/homeassistant/hostname
|
||||
abcdef1234567890.onion
|
||||
```
|
||||
|
||||
## {% linkable_title Tor add-on for Hass.io %}
|
||||
|
||||
[Franck Nijhof (@frenck)](https://github.com/frenck) created the [Tor add-on](https://github.com/hassio-addons/addon-tor) for [Hass.io](/hassio/). This add-on makes the installation and the setup extremely simple. Go to the **Hass.io** panel, then to the **Store**, copy `https://github.com/hassio-addons/repository` into the text box of **Add-On Repositories** and save it.
|
||||
|
||||
A new entry **Tor** will show-up in the list of add-ons. Click on it to install it. The configuration is done in **Options**. Please refer to the [Configuration documentation](https://github.com/hassio-addons/addon-tor#configuration) for further details. A possible configuration could look like the sample below (which is the default configuration).
|
||||
|
||||
```json
|
||||
{
|
||||
"log_level": "info",
|
||||
"socks": false,
|
||||
"hidden_services": true,
|
||||
"stealth": false,
|
||||
"client_names": [],
|
||||
"ports": [
|
||||
"8123:80"
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
When you are done, press **Save** and then **Start**. In the **Logs** section, you can see what the add-on is doing. Watch out for an entry like the one below, which will tell you your hostname on the Tor network.
|
||||
|
||||
```bash
|
||||
INFO: -----------------------------------------------------------
|
||||
INFO: Your Home Assistant instance is available on Tor!
|
||||
INFO: Address: abcdef1234567890.onion
|
||||
INFO: -----------------------------------------------------------
|
||||
```
|
||||
|
||||
Don't worry if you missed it, restarting the add-on will display it again. The details are also stored and available in the `/ssl/tor/hidden_service/hostname` file.
|
||||
|
||||
## {% linkable_title Tor clients %}
|
||||
|
||||
To access you Home Assistant via the Tor Hidden Service, you will need a Tor client. There are multiple clients, for different devices and platforms, available. The [Tor Browser](https://www.torproject.org/projects/torbrowser.html.en) is by far the simplest option, which is available for Windows, MacOS & Linux.
|
||||
|
||||
Simply download and install the [Tor Browser](https://www.torproject.org/projects/torbrowser.html.en), start it, and enter the "dot onion" address you've gained from the earlier steps (`abcdef1234567890.onion` in this case). Voila!
|
||||
|
||||
Some other clients:
|
||||
|
||||
- [Orbot](https://guardianproject.info/apps/orbot/) for Android
|
||||
- [Orfox](https://play.google.com/store/apps/details?id=info.guardianproject.orfox&hl=nl) for Android
|
||||
- [Onion Browser](https://mike.tig.as/onionbrowser/) for iOS
|
||||
|
||||
## {% linkable_title Cranking up security %}
|
||||
|
||||
The setup described in this blog post is easy and relatively secure, but anyone who knows your `.onion` address can still connect to your Home Assistant instance (Remember to use passwords!). With all of the [discussion](https://blog.torproject.org/quick-simple-guide-tor-and-internet-things-so-far) about putting your IoT on the Tor Network, maybe you want to add an extra layer of defense, especially if you’re going to be the only one that uses it. Tor offers an additional layer of security, called "Hidden Service Authentication", usually referred to as "Stealth"-mode.
|
||||
|
||||
This "Stealth"-mode adds an extra layer of security to your Hidden Service by only responding to a client that passes a unique secret cookie as it connects. Obviously, this requires additional configuration on the Tor client applications.
|
||||
|
||||
Additional information can be found in the [Tor documentation](/docs/ecosystem/tor/) and the [Tor add-on repository](https://github.com/hassio-addons/addon-tor), including how to setup the "Stealth"-mode. The Tor Project itself provides details about a variaty of topics in their [documentation](https://www.torproject.org/docs/documentation.html.en).
|
|
@ -20,7 +20,7 @@ For larger changes, we suggest that you clone the website repository. This way,
|
|||
|
||||
To test your changes locally, you need to install **Ruby** and its dependencies (gems):
|
||||
|
||||
- [Install Ruby](https://www.ruby-lang.org/en/documentation/installation/) if you don't have it already.
|
||||
- [Install Ruby](https://www.ruby-lang.org/en/documentation/installation/) if you don't have it already. Ruby version 2.3.0 or higher is required.
|
||||
- Install `bundler`, a dependency manager for Ruby: `$ gem install bundler`
|
||||
- In your home-assistant.github.io root directory, run `$ bundle` to install the gems you need.
|
||||
|
||||
|
|
|
@ -24,6 +24,8 @@ The translation of the Home Assistant frontend is still a work in progress. More
|
|||
2. Stick to [Material Design guidelines](https://material.io/guidelines/style/writing.html).
|
||||
3. Don't translate or change proper nouns like `Home Assistant`, `Hass.io` or `Hue`.
|
||||
4. For a region specific translation, keys that will be the same as the base translation should be filled with `[VOID]`. These will be replaced during our translation build process.
|
||||
5. Translations under the `state_badge` keys will be used for the notification badge display. These translations should be short enough to fit in the badge label without overflowing. This can be tested in the Home Assistant UI either by editing the label text with your browsers development tools, or by using the States <img src='/images/screenshots/developer-tool-states-icon.png' alt='' class="no-shadow" height="38" /> developer tool in the Home Assistant UI. In the UI, enter a new entity ID (`device_tracker.test`), and enter the text you want to test in state.
|
||||
6. If text will be duplicated across different translation keys, make use of the Lokalise key reference feature where possible. The base translation provides examples of this underneath the `states` translations. Please see the [Lokalise key referencing](https://docs.lokalise.co/article/KO5SZWLLsy-key-referencing) documentation for more details.
|
||||
|
||||
## {% linkable_title Adding a new language %}
|
||||
If your language is not listed you can request it at [GitHub](https://github.com/home-assistant/home-assistant-polymer/issues/new). Please provide both the English name and the native name for your language. For example:
|
||||
|
|
|
@ -29,8 +29,8 @@ Connect your websocket implementation to `ws://localhost:8123/api/websocket`.
|
|||
3. Send `auth_ok` message
|
||||
4. Authentication phase ends.
|
||||
5. Command phase starts.
|
||||
a. Client can send commands.
|
||||
b. Server can send results of previous commands.
|
||||
1. Client can send commands.
|
||||
2. Server can send results of previous commands.
|
||||
6. Client or server disconnects session.
|
||||
|
||||
During the command phase, the client attaches a unique identifier to each message. The server will add this identifier to each message so that the client can link each message to it's origin.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
---
|
||||
layout: page
|
||||
title: "Installing Home Assistant"
|
||||
description: "Instructions to get started using Home Assistant."
|
||||
title: "Install Home Assistant"
|
||||
description: "Getting started: How to install Home Assistant."
|
||||
date: 2016-09-26 21:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
|
@ -9,16 +9,20 @@ sharing: true
|
|||
footer: true
|
||||
---
|
||||
|
||||
You will need to install Home Assistant before we can get started. You can install Home Assistant on your computer, or you can turn a Raspberry Pi into a dedicated Home Assistant hub.
|
||||
First you will need to install Home Assistant before we can get started:
|
||||
|
||||
We have developed **Hass.io** to turn your device into a dedicated Home Assistant hub controlled by a nice webinterface.
|
||||
For Raspberry Pi and Intel NUC we offer configured images. Flash the image, setup WiFi (if required) and everything else can be done inside the Hass.io webinterface. Great, isn't it?
|
||||
|
||||
Also Home Assistant runs on any other device that supports **Python 3**.
|
||||
<div class="text-center hass-option-cards" markdown="0">
|
||||
<a class='option-card' href='/hassio/'>
|
||||
<a class='option-card' href='/hassio/installation/'>
|
||||
<div class='img-container'>
|
||||
<img src='/images/supported_brands/home-assistant.png' />
|
||||
</div>
|
||||
<div class='title'>Install Hass.io on your Raspberry Pi 3</div>
|
||||
<div class='title'>Install Home Assistant using Hass.io</div>
|
||||
</a>
|
||||
<a class='option-card' href='/docs/installation/python/'>
|
||||
<a class='option-card' href='/docs/installation/virtualenv/'>
|
||||
<div class='img-container'>
|
||||
<img src='/images/supported_brands/python.svg' />
|
||||
</div>
|
||||
|
|
BIN
source/images/blog/2017-11-tor/social.png
Normal file
BIN
source/images/blog/2017-11-tor/social.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 101 KiB |
BIN
source/images/supported_brands/tor.png
Normal file
BIN
source/images/supported_brands/tor.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 79 KiB |
Loading…
Add table
Add a link
Reference in a new issue