diff --git a/_config.yml b/_config.yml index d91423a1787..f7727a097ab 100644 --- a/_config.yml +++ b/_config.yml @@ -132,9 +132,9 @@ social: # Home Assistant release details current_major_version: 0 current_minor_version: 38 -current_patch_version: 0 -date_released: 2017-02-11 +current_patch_version: 3 +date_released: 2017-02-15 # Either # or the anchor link to latest release notes in the blog post. # Must be prefixed with a # and have double quotes around it. -patch_version_notes: "#" +patch_version_notes: "#release-0383---february-15" diff --git a/source/_components/apiai.markdown b/source/_components/apiai.markdown index 7216ad35d4f..34772e5923b 100644 --- a/source/_components/apiai.markdown +++ b/source/_components/apiai.markdown @@ -9,17 +9,18 @@ sharing: true footer: true logo: apiai.png ha_category: Voice -featured: true -ha_release: 0.37 +featured: false +ha_release: 0.38 --- -This component is designed to be used with the "webhook" integration in api.ai. When a conversation ends with an user, api.ai sends an action and parameters to the webhook. +This component is designed to be used with the "webhook" integration in [api.ai][apiai-web]. When a conversation ends with an user, api.ai sends an action and parameters to the webhook. -Api.ai requires a public endpoint (HTTPS recommended), so your Home Assistant should be exposed to Internet. Api.ai will return fall back answers if your server do not answer, or takes too long (more than 5 seconds). +api.ai requires a public endpoint (HTTPS recommended), so your Home Assistant should be exposed to Internet. api.ai will return fallback answers if your server do not answer, or takes too long (more than 5 seconds). -Api.ai could be integrated with many popular messaging, virtual assistant and IoT platforms, eg.: Google Assistant (Google Actions), Skype, Messenger. [See here](https://docs.api.ai/docs/integrations) the complete list. +api.ai could be integrated with many popular messaging, virtual assistant and IoT platforms, eg.: Google Assistant (Google Actions), Skype, Messenger. [See here](https://docs.api.ai/docs/integrations) the complete list. Using Api.ai will be easy to create conversations like: + > User: Which is the temperature at home? > > Bot: The temperature is 34 degrees @@ -35,6 +36,7 @@ Using Api.ai will be easy to create conversations like: To use this integration you should define a conversation (intent) in Api.ai, configure Home Assistant with the speech to return and, optionally, the action to execute. ### {% linkable_title Configuring your api.ai account %} + - [Login][apiai-web] with your Google account. - Click on "Create Agent" - Select name, language (if you are planning to use it with Google Actions check [here](https://support.google.com/assistant/answer/7108196?hl=en) supported languages) and time zone @@ -55,6 +57,7 @@ Take a look to "Integrations", in the left menu, to configure third parties. ### {% linkable_title Configuring Home Assistant %} + Out of the box, the component will do nothing. You have to teach it about all intents you want it to answer to. The way it works is that the answer for each intent is based on [templates] that you define. Each template will have access to the existing states via the `states` variable but will also have access to all variables defined in the intent. You can use [templates] for setting `speech`. @@ -129,6 +132,7 @@ apiai: {%- endif -%} data_template: entity_id: "switch.light_{{ Room | replace(' ', '_') }}" +{% endraw %} ``` [apiai-web]: https://api.ai/ diff --git a/source/_components/binary_sensor.iss.markdown b/source/_components/binary_sensor.iss.markdown index 545e4ecb5c6..8385023fdcd 100644 --- a/source/_components/binary_sensor.iss.markdown +++ b/source/_components/binary_sensor.iss.markdown @@ -28,6 +28,11 @@ Configuration variables: - **show_on_map** (*Optional*): Option to show the position of the ISS on the map. Defaults to `False`. +
+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. +
+ + ### {% linkable_title Show position on map with camera platform %} The [generic camera platform](/components/camera.mjpeg/) offers the possibility to show the location of the ISS on Google Maps. diff --git a/source/_components/binary_sensor.wink.markdown b/source/_components/binary_sensor.wink.markdown index 10e5833a4b2..c7101054e6a 100644 --- a/source/_components/binary_sensor.wink.markdown +++ b/source/_components/binary_sensor.wink.markdown @@ -31,6 +31,7 @@ The requirement is that you have setup [Wink](/components/wink/). - Wink Relay buttons and presense detection - Wink spotter loudness and vibration (No Wink hub required) - Wink hub devices connection status. This includes any paired hubs like Hue, Wink v1, Wink v2, Wink Relay... +- Dropcam sensorsThe above devices are confimed to work, but others may work as well. diff --git a/source/_components/climate.wink.markdown b/source/_components/climate.wink.markdown index ae5634031f7..5f666b5d259 100644 --- a/source/_components/climate.wink.markdown +++ b/source/_components/climate.wink.markdown @@ -27,6 +27,7 @@ The requirement is that you have setup [Wink](/components/wink/). - Carrier (Unconfirmed) - Honeywell (No wink hub required) - Generic Z-Wave +- Quirky Aros window AC unit
The above devices are confimed to work, but others may work as well.
diff --git a/source/_components/device_tracker.owntracks.markdown b/source/_components/device_tracker.owntracks.markdown
index e8562f8b307..f7fc9192a8a 100644
--- a/source/_components/device_tracker.owntracks.markdown
+++ b/source/_components/device_tracker.owntracks.markdown
@@ -31,6 +31,7 @@ Configuration variables:
- **max_gps_accuracy** (*Optional*): Sometimes Owntracks can report GPS location with a very low accuracy (few kilometers). That can trigger false zoning in your Home Assistant installation. With the parameter, you can filter these GPS reports. The number has to be in meter. For example, if you put 200 only GPS report with an accuracy under 200 will be take in account.
- **waypoints** (*Optional*): Owntracks users can define [waypoints](http://owntracks.org/booklet/features/waypoints/) (a.k.a regions) which are similar in spirit to Home Assistant zones. If this configuration variable is `True`, the Owntracks users who are in `waypoint_whitelist` can export waypoints from the device and Home Assistant will import them as zone definitions. Defaults to `True`.
- **waypoint_whitelist** (*Optional*): A list of user names (as defined for [Owntracks](/components/device_tracker.owntracks/)) who can export their waypoints from Owntracks to Home Assistant. Defaults to all users who are connected to Home Assistant via Owntracks.
+- **secret** (*Optional*): [Payload encryption key](http://owntracks.org/booklet/features/encrypt/). This is usable when communicating with a third-party untrusted server or a public server (where anybody can subscribe to any topic). By default the payload is assumed to be unecrypted (although the comunication between Home Assistant and the server might still be encrypted). This feature requires the `libsodium` library to be present.
A full sample configuration for the `owntracks` platform is shown below:
diff --git a/source/_components/lock.nuki.markdown b/source/_components/lock.nuki.markdown
index f24c9e0a6aa..9c00f1c665b 100644
--- a/source/_components/lock.nuki.markdown
+++ b/source/_components/lock.nuki.markdown
@@ -14,7 +14,7 @@ ha_release: 0.38
ha_iot_class: "Local Polling"
---
-The `nuki` platform allows you to control [Nuki Smart Locks](https://nuki.io/en/smart-lock/) via either a [sofware bridge](https://play.google.com/store/apps/details?id=io.nuki.bridge) or a [physical bridge](https://nuki.io/en/bridge/).
+The `nuki` platform allows you to control [Nuki Smart Locks](https://nuki.io/en/smart-lock/) via either a [software bridge](https://play.google.com/store/apps/details?id=io.nuki.bridge) or a [physical bridge](https://nuki.io/en/bridge/).
To add a Nuki bridge to your installation, you need to enable developper mode on your bridge and define a port and an access token. This can be achieved using the [Android app](https://play.google.com/store/apps/details?id=io.nuki). Please note that the API token should be 6-20 characters long, even though the app allows you to set a longer one.
Then add the following to your `configuration.yaml` file:
diff --git a/source/_components/logbook.markdown b/source/_components/logbook.markdown
index bd3d2743755..609e9f5bbe4 100644
--- a/source/_components/logbook.markdown
+++ b/source/_components/logbook.markdown
@@ -11,7 +11,7 @@ logo: logbook.png
ha_category: "History"
---
-
The above devices are confimed to work, but others may work as well.
diff --git a/source/_components/sensor.wunderground.markdown b/source/_components/sensor.wunderground.markdown
index e1d439e2693..138dbd0166e 100644
--- a/source/_components/sensor.wunderground.markdown
+++ b/source/_components/sensor.wunderground.markdown
@@ -114,5 +114,8 @@ Configuration variables:
All the conditions listed above will be updated each 5 minutes with exception of `alerts` that will be updated each 15 minutes by default.
-Additional details about the API are available [here](https://www.wunderground.com/weather/api/d/docs).
+
+Note: While the platform is called “wunderground” the sensors will show up in Home Assistant as “PWS” (eg: sensor.pws_weather).
+ The logbook component provides a different perspective on the history of your house by showing all the changes that happened to your house in reverse chronological order. [See the demo for a live example](/demo/).
+
The logbook component provides a different perspective on the history of your house by showing all the changes that happened to your house in reverse chronological order. [See the demo for a live example](/demo/). It depends on the `recorder` component for storing the data. This means that if the [`recorder`](/components/recorder/) component is set up to use e.g. MySQL or PostgreSQL as data store, the `logbook` component does not use the default SQLite database to store data.
To enable the logbook in your installation, add the following to your `configuration.yaml` file:
@@ -55,7 +55,7 @@ logbook:
- media_player
```
-You can also use the `include` list and filter out some entities or domains with an `exclude` list. Usually this makes sense if you define domains on the include side and filter out some specific entities.
+You can also use the `include` list and filter out some entities or domains with an `exclude` list. Usually this makes sense if you define domains on the include side and filter out some specific entities.
```yaml
# Example of combining include and exclude configurations
diff --git a/source/_components/media_player.apple_tv.markdown b/source/_components/media_player.apple_tv.markdown
index e9707203e10..9b49da82a6c 100644
--- a/source/_components/media_player.apple_tv.markdown
+++ b/source/_components/media_player.apple_tv.markdown
@@ -36,7 +36,7 @@ Configuration variables:
- **login_id** (*Required*): An identifier used to login to the device, see below
- **name** (*Optional*): The name of the device used in the frontend
-In order to connect to the device you need a *login id*. The easiest way to obtain this identifier is to use the application ``atvremote``. It should be available in the same environment as you installed Home-Assistant. Just run it like this to scan for all devices (try again if a device is missing):
+In order to connect to the device you need a *login id*. The easiest way to obtain this identifier is to use the application ``atvremote``. It should be available in the same environment as you installed Home-Assistant. To install this utility, run ``pip3 install --upgrade pyatv``. The run atvremote scan for all devices (try again if a device is missing):
```bash
$ atvremote scan
diff --git a/source/_components/notify.telegram.markdown b/source/_components/notify.telegram.markdown
index 26a771c1c26..6145e24ee0f 100644
--- a/source/_components/notify.telegram.markdown
+++ b/source/_components/notify.telegram.markdown
@@ -20,7 +20,9 @@ The requirements are:
- You need a [Telegram bot](https://core.telegram.org/bots). Please follow those [instructions](https://core.telegram.org/bots#6-botfather) to create one and get the token for your bot. Keep in mind that bots are not allowed to contact users. You need to make the first contact with your user. Meaning that you need to send a message to the bot from your user.
- The `chat_id` of an user.
-The quickest way to retrieve your `chat_id` is visiting [https://api.telegram.org/botYOUR_API_TOKEN/getUpdates](https://api.telegram.org/botYOUR_API_TOKEN/getUpdates) or to use `$ curl -X GET https://api.telegram.org/botYOUR_API_TOKEN/getUpdates`. Replace `YOUR_API_TOKEN` with your actual token.
+To retrieve your `chat_id`, contact any of the Telegram bots created for this purpose (@myidbot, @get_id_bot)
+
+The quickest way to retrieve your `chat_id` is visiting [https://api.telegram.org/botYOUR_API_TOKEN/getUpdates](https://api.telegram.org/botYOUR_API_TOKEN/getUpdates) or to use `$ curl -X GET https:/api.telegram.org/botYOUR_API_TOKEN/getUpdates`. Replace `YOUR_API_TOKEN` with your actual token.
The result set will include your chat ID as `id` in the `from` section:
diff --git a/source/_components/recorder.markdown b/source/_components/recorder.markdown
index 7a23bfee0b5..14385cba0f1 100644
--- a/source/_components/recorder.markdown
+++ b/source/_components/recorder.markdown
@@ -90,8 +90,10 @@ If you only want to hide events from e.g. your history, take a look at the [`his
| Database engine | `db_url` |
| :---------------|:---------------------------------------------------------|
| SQLite | `sqlite:///PATH/TO/DB_NAME` |
-| MySQL | `mysql+pymysql://SERVER_IP/DB_NAME` |
-| MySQL | `mysql+pymysql://user:password@SERVER_IP/DB_NAME` |
+| MySQL | `mysql://SERVER_IP/DB_NAME` |
+| MySQL | `mysql://user:password@SERVER_IP/DB_NAME` |
+| MySQL (pymysql) | `mysql+pymysql://SERVER_IP/DB_NAME` |
+| MySQL (pymysql) | `mysql+pymysql://user:password@SERVER_IP/DB_NAME` |
| PostgreSQL | `postgresql://SERVER_IP/DB_NAME` |
| PostgreSQL | `postgresql://scott:tiger@SERVER_IP/DB_NAME` |
@@ -99,22 +101,22 @@ If you only want to hide events from e.g. your history, take a look at the [`his
Not all Python bindings for the chosen database engine can be installed directly. This section contains additional details which should help you to get it working.
-### {% linkable_title MYSQL %}
+### {% linkable_title MySQL %}
-For MySQL you may have to install a few dependencies:
+For MySQL you may have to install a few dependencies. You can choose between `pymysql` and `mysqlclient`:
```bash
$ sudo apt-get install libmysqlclient-dev
-$ pip3 install pymysql
+$ pip3 install mysqlclient
```
If you are in a virtual environment, don't forget to activate it before installing the pymysql package.
```bash
pi@homeassistant:~ $ sudo -i
-root@homeassistant:~# su homeassistant
+root@homeassistant:~# su homeassistant
homeassistant@homeassistant:/root$ cd /srv/homeassistant/homeassistant_venv/
homeassistant@homeassistant:/srv/homeassistant/homeassistant_venv$ source bin/activate
-(homeassistant_venv) homeassistant@homeassistant:/srv/homeassistant/homeassistant_venv$ pip3 install pymysql
+(homeassistant_venv) homeassistant@homeassistant:/srv/homeassistant/homeassistant_venv$ pip3 install mysqlclient
```
### {% linkable_title PostgreSQL %}
diff --git a/source/_components/sensor.bloomsky.markdown b/source/_components/sensor.bloomsky.markdown
index d085060f349..a975a0300cb 100644
--- a/source/_components/sensor.bloomsky.markdown
+++ b/source/_components/sensor.bloomsky.markdown
@@ -25,11 +25,9 @@ sensor:
monitored_conditions:
- Temperature
- Humidity
- - Rain
- Pressure
- UVIndex
- Luminance
- - Night
- Voltage
```
@@ -38,9 +36,10 @@ Configuration variables:
- **monitored_conditions** array (*Required*): The sensors that you wish to monitor on all of your devices. Select from these options:
- Humidity
- Luminance
- - Night
- Pressure
- - Rain
- Temperature
- UVIndex
- Voltage
+
+
+More conditions are available using the [BloomSky binary sensor](/components/binary_sensor.bloomsky) component.
diff --git a/source/_components/sensor.darksky.markdown b/source/_components/sensor.darksky.markdown
index 153c29cb12f..42f4c040c99 100644
--- a/source/_components/sensor.darksky.markdown
+++ b/source/_components/sensor.darksky.markdown
@@ -32,34 +32,13 @@ sensor:
- summary
- icon
- nearest_storm_distance
- - nearest_storm_bearing
- - precip_type
- - precip_intensity
- - precip_probability
- - temperature
- - apparent_temperature
- - dew_point
- - wind_speed
- - wind_bearing
- - cloud_cover
- - humidity
- - pressure
- - visibility
- - ozone
- - minutely_summary
- - hourly_summary
- - daily_summary
- - temperature_max
- - temperature_min
- - apparent_temperature_max
- - apparent_temperature_min
- - precip_intensity_max
```
Configuration variables:
- **api_key** (*Required*): Your API key.
- **name** (*Optional*): Additional name for the sensors. Default to platform name.
+- **forecast** array (*Optional*): List of days in the 7 day forecast you would like to receive data on, starting with tomorrow as day 1. Any `monitored_condition` with a daily forecast by DarkSky will generate a sensor tagged with `_
+A great place to find popular configurations is on this [GitHub search](https://github.com/search?q=topic%3Ahome-assistant-config&type=Repositories) for repositories with the `home-assistant-config` topic. +
+ {% assign cookbook = site.cookbook | sort: 'title' %} {% assign categories = cookbook | map: 'ha_category' | uniq | sort %} diff --git a/source/developers/api.markdown b/source/developers/api.markdown new file mode 100644 index 00000000000..7bf8bbdc620 --- /dev/null +++ b/source/developers/api.markdown @@ -0,0 +1,18 @@ +--- +layout: page +title: "API" +description: "Home Assistant API" +date: 2017-02-15 07:00 +sidebar: true +comments: false +sharing: true +footer: true +--- + +Home Assistant prvides various APIs. For detail please refer to [Home Assistant API](https://dev-docs.home-assistant.io/en/dev/) documentation. + + * [Websocket API](/developers/websocket_api/) + * [RESTful API](/developers/rest_api/) + * [Python API](/developers/python_api/) + * [Server-sent events](/developers/server_sent_events/) + diff --git a/source/developers/cla_sign.html b/source/developers/cla_sign.html index 38e98f55b18..e6b7b2b9a9d 100644 --- a/source/developers/cla_sign.html +++ b/source/developers/cla_sign.html @@ -418,15 +418,21 @@ footer: true }); } + function qs(key) { + key = key.replace(/[*+?^$.\[\]{}()|\\\/]/g, "\\$&"); // escape RegEx meta chars + var match = location.search.match(new RegExp("[?&]"+key+"=([^&]+)(&|$)")); + return match && decodeURIComponent(match[1].replace(/\+/g, " ")); + } + $(document).ready(function(){ populateCountries("country", "region"); var spinner = new Spinner().spin(document.getElementById('spinner')); - var codeCheck = window.location.href.match(/\?code=(.*)/); + var codeCheck = qs('code'); if (codeCheck && codeCheck.length > 0) { $.ajax({ type: "POST", url: "https://cla.home-assistant.io/github/exchange", - data: JSON.stringify({"code": codeCheck[1]}), + data: JSON.stringify({"code": codeCheck}), contentType: "application/json", }).done(function(data){ var uri = window.location.toString(); diff --git a/source/developers/website.markdown b/source/developers/website.markdown index b407ff48e0f..4650540a8d4 100644 --- a/source/developers/website.markdown +++ b/source/developers/website.markdown @@ -36,6 +36,10 @@ Then you can work on the documentation:It could be necessary that you run `rake generate` prior to `rake preview` for the very first preview.
++Site generated by `rake` is only available locally. If you are developing on a headless machine use port forwarding: +`ssh -L 4000:localhost:4000 user_on_headless_machine@ip_of_headless_machine` +
### {% linkable_title Create a page %} diff --git a/source/developers/websocket_api.markdown b/source/developers/websocket_api.markdown index 785b907b9fe..0331e2c6bbc 100644 --- a/source/developers/websocket_api.markdown +++ b/source/developers/websocket_api.markdown @@ -297,7 +297,7 @@ This will get a dump of the current services in Home Assistant. ```json { "id": 19, - "type": "get_config" + "type": "get_services" } ``` diff --git a/source/getting-started/automation-action.markdown b/source/getting-started/automation-action.markdown index cea9bc896c8..485e3514f42 100644 --- a/source/getting-started/automation-action.markdown +++ b/source/getting-started/automation-action.markdown @@ -48,7 +48,6 @@ automation 2: message: Oh wow you really missed something great. ``` - Conditions can also be part of an action. You can combine multiple service calls and conditions in a single action, and they will be processed in the order you put them in. If the result of a condition is false, the action will stop there so any service calls after that condition will not be executed. ```yaml @@ -70,4 +69,4 @@ automation: value_template: '{% raw %}{{ states.sensor.sensorluz_7_0.state < 10 }}{% endraw %}' - service: scene.turn_on entity_id: scene.DespiertaDespacho -``` +``` \ No newline at end of file diff --git a/source/getting-started/autostart-systemd.markdown b/source/getting-started/autostart-systemd.markdown index 93f744ea1ea..c9a94abbbcc 100644 --- a/source/getting-started/autostart-systemd.markdown +++ b/source/getting-started/autostart-systemd.markdown @@ -35,7 +35,7 @@ WantedBy=multi-user.target EOF' ``` -If you've setup Home Assistant in `virtualenv` following our [manual installation guide](https://home-assistant.io/getting-started/installation-raspberry-pi/), the following template should work for you. +If you've setup Home Assistant in `virtualenv` following our [python installation guide](https://home-assistant.io/getting-started/installation-virtualenv/) or [manual installation guide for raspberry pi](https://home-assistant.io/getting-started/installation-raspberry-pi/), the following template should work for you. ``` [Unit] @@ -46,9 +46,9 @@ After=network.target Type=simple User=homeassistant #make sure the virtualenv python binary is used -Environment=VIRTUAL_ENV="/srv/homeassistant/homeassistant_venv" +Environment=VIRTUAL_ENV="/srv/homeassistant" Environment=PATH="$VIRTUAL_ENV/bin:$PATH" -ExecStart=/srv/homeassistant/homeassistant_venv/bin/hass -c "/home/homeassistant/.homeassistant" +ExecStart=/srv/homeassistant/bin/hass -c "/home/homeassistant/.homeassistant" [Install] WantedBy=multi-user.target diff --git a/source/getting-started/customizing-devices.markdown b/source/getting-started/customizing-devices.markdown index 5094c388ee5..1c98f8d4a12 100644 --- a/source/getting-started/customizing-devices.markdown +++ b/source/getting-started/customizing-devices.markdown @@ -11,31 +11,26 @@ footer: true By default, all of your devices will be visible and have a default icon determined by their domain. You can customize the look and feel of your front page by altering some of these parameters. This can be done by overriding attributes of specific entities. -This format works for version 0.37+. For pre-0.37 use [Older format](https://home-assistant.io/getting-started/customizing-devices/#older-format) - -`customize` consists of a list of attribute customization blocks - ```yaml -# Example configuration.yaml entry homeassistant: name: Home unit_system: metric # etc customize: - # Only the 'entity_id' is required. All other options are optional. - - entity_id: sensor.living_room_motion + # Add an entry for each entity that you want to overwrite. + sensor.living_room_motion: hidden: true - - entity_id: thermostat.family_roomfamily_room + thermostat.family_room: entity_picture: https://example.com/images/nest.jpg friendly_name: Nest - - entity_id: switch.wemo_switch_1 + switch.wemo_switch_1: friendly_name: Toaster entity_picture: /local/toaster.jpg - - entity_id: switch.wemo_switch_2 + switch.wemo_switch_2: friendly_name: Kitchen kettle icon: mdi:kettle - - entity_id: switch.rfxtrx_switch + switch.rfxtrx_switch: assumed_state: false ``` @@ -57,62 +52,9 @@ Device class is currently supported by the following platforms: * [Binary Sensor](/components/binary_sensor/) * [Cover](/components/cover/) -### {% linkable_title Advanced example %} - -You can also specify attributes for all devices in a domain, use wildcards, use several entity IDs as a list or comma separated list. - -```yaml -homeassistant: - customize: - - entity_id: sensor - icon: mdi:kettle # Give all sensor the kettle icon - - entity_id: light.family* - hidden: true # Hide all lights that have an ID starting with 'family' - - entity_id: switch.wemo_switch_1,switch.wemo_switch_2,switch.wemo_switch_3 - entity_picture: /local/toaster.jpg # Set picture on multiple devices -``` - -Either `entity_id` must be present in each customization block. - -### {% linkable_title Older format %} - -In the previous version of customize format the keys were the IDs: -```yaml -homeassistant: - name: Home - unit_system: metric - # etc - - customize: - # Only the 'entity_id' is required. All other options are optional. - sensor.living_room_motion: - hidden: true - thermostat.family_roomfamily_room: - entity_picture: https://example.com/images/nest.jpg - friendly_name: Nest - switch.wemo_switch_1: - friendly_name: Toaster - entity_picture: /local/toaster.jpg - switch.wemo_switch_2: - friendly_name: Kitchen kettle - icon: mdi:kettle - - entity_id: switch.rfxtrx_switch: - assumed_state: false -``` -This format doesn't support comma-separated IDs, wildcards or domain matching. - -The formats can't be mixed -```yaml - # NOT A VALID CONFIGURATION - customize: - sensor.living_room_motion: - hidden: true - - entity_id: thermostat.family_roomfamily_room - friendly_name: Nest -``` ### {% linkable_title Reloading customize %} - + Home Assistant offers a service to reload the core configuration while Home Assistant is running called `homeassistant/reload_core_config`. This allows you to change your customize section and see it being applied without having to restart Home Assistant. To call this service, go to thediff --git a/source/getting-started/installation-docker.markdown b/source/getting-started/installation-docker.markdown index b60c51c92f5..d1c5221b7e6 100644 --- a/source/getting-started/installation-docker.markdown +++ b/source/getting-started/installation-docker.markdown @@ -18,9 +18,9 @@ $ docker run -d --name="home-assistant" -v /path/to/your/config:/config -v /etc/ This will launch Home Assistant and serve the web interface from port 8123 on your Docker host.
-When using boot2docker on OS X you are unable to map the local time to your Docker container. Replace `-v /etc/localtime:/etc/localtime:ro` with `-e "TZ=America/Los_Angeles"` (replacing America/Los_Angeles with [your timezone](http://en.wikipedia.org/wiki/List_of_tz_database_time_zones)) +When using boot2docker on macOS you are unable to map the local time to your Docker container. Replace `-v /etc/localtime:/etc/localtime:ro` with `-e "TZ=America/Los_Angeles"` (replacing America/Los_Angeles with [your timezone](http://en.wikipedia.org/wiki/List_of_tz_database_time_zones)) -Additionally, if your expectation is that you will be able to browse directly to `http://localhost:8123` on your OS X host, then you will also need to replace the `--net=host` switch with `-p 8123:8123`. This is currently the only way to forward ports on to your actual host(OS X) machine instead of the virtual machine inside xhyve. More detail on this can be found in [the docker forums](https://forums.docker.com/t/should-docker-run-net-host-work/14215/10). +Additionally, if your expectation is that you will be able to browse directly to `http://localhost:8123` on your macOS host, then you will also need to replace the `--net=host` switch with `-p 8123:8123`. This is currently the only way to forward ports on to your actual host (macOS) machine instead of the virtual machine inside `xhyve`. More detail on this can be found in [the docker forums](https://forums.docker.com/t/should-docker-run-net-host-work/14215/10).
If you change the config you have to restart the server. diff --git a/source/getting-started/installation-raspberry-pi.markdown b/source/getting-started/installation-raspberry-pi.markdown index e4e7c76f426..5c58622a791 100644 --- a/source/getting-started/installation-raspberry-pi.markdown +++ b/source/getting-started/installation-raspberry-pi.markdown @@ -12,7 +12,7 @@ footer: true This installation of Home Assistant requires the Raspberry Pi to run [Raspbian Lite](https://www.raspberrypi.org/downloads/raspbian/). The installation will be installed in a [Virtual Environment](/getting-started/installation-virtualenv) with minimal overhead. Instructions assume this is a new installation of Raspbian Lite. -Connect to the Raspberry Pi over ssh. Default password is `raspberry`. +Connect to the Raspberry Pi over ssh. Default password is `raspberry`. You will need to enable ssh access. The raspberry pi website has instructions [here](https://www.raspberrypi.org/documentation/remote-access/ssh/). ```bash $ ssh pi@ipadress @@ -51,17 +51,17 @@ Next up is to create and change to a virtual environment for Home Assistant. Thi ```bash $ sudo su -s /bin/bash homeassistant $ cd /srv/homeassistant -$ python3 -m venv homeassistant_venv -$ source /srv/homeassistant/homeassistant_venv/bin/activate +$ python3 -m venv . +$ source bin/activate ``` Once you have activated the virtual environment you will notice the prompt change and then you can install Home Assistant. ```bash -(homeassistant_venv) homeassistant@raspberrypi:/srv/homeassistant $ pip3 install homeassistant +(homeassistant) homeassistant@raspberrypi:/srv/homeassistant $ pip3 install homeassistant ``` Start Home Assistant for the first time. This will complete the installation, create the `.homeasssistant` configuration directory in the `/home/homeassistant` directory and install any basic dependencies. ```bash -(homeassistant_venv) $ hass +(homeassistant) $ hass ``` You can now reach your installation on your raspberry pi over the web interface on [http://ipaddress:8123](http://ipaddress:8123). diff --git a/source/getting-started/installation-virtualenv.markdown b/source/getting-started/installation-virtualenv.markdown index c8596abe41e..6bedb686379 100644 --- a/source/getting-started/installation-virtualenv.markdown +++ b/source/getting-started/installation-virtualenv.markdown @@ -44,7 +44,7 @@ This can be anywhere you want. As example we put it in `/srv`. You also need to ```bash $ sudo mkdir /srv/homeassistant -$ sudo chown homeassistant /srv/homeassistant +$ sudo chown homeassistant:homeassistant /srv/homeassistant ``` ### {% linkable_title Step 3: Become the new user %} @@ -103,7 +103,7 @@ Upgrading Home Assistant is simple, just repeat steps 3, 5 and 6. 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. -### {% linkable_title Installing python-openzwave %} +### {% linkable_title Installing python-openzwave in a virtualenv %} If you want to use Z-Wave devices, you will need to install `python-openzwave` in your virtualenv. This requires a small tweak to the instructions in [the Z-Wave Getting Started documentation](/getting-started/z-wave/) diff --git a/source/getting-started/updating.markdown b/source/getting-started/updating.markdown index 2f865889f02..a9bf836b894 100644 --- a/source/getting-started/updating.markdown +++ b/source/getting-started/updating.markdown @@ -9,7 +9,9 @@ sharing: true footer: true --- -The upgrade process differed depending on the installtion you have, review the documentaion specific to your install [HASSbian](/getting-started/installation-raspberry-pi-image/#update-home-assistant-on-hassbian), [Raspberry Pi All-In-One Installer](/getting-started/installation-raspberry-pi-all-in-one/#upgrading), [Vagrant](/getting-started/installation-vagrant/), or [Virtualenv](/getting-started/installation-virtualenv/#upgrading-home-assistant). ++The upgrade process differs depending on the installation you have, so please review the documentation that is specific to your install [HASSbian](/getting-started/hassbian-common-tasks/#update-home-assistant), [Raspberry Pi All-In-One Installer](/getting-started/installation-raspberry-pi-all-in-one/#upgrading), [Vagrant](/getting-started/installation-vagrant/), or [Virtualenv](/getting-started/installation-virtualenv/#upgrading-home-assistant). +
The default way to update Home Assistant to the latest release, when available, is: diff --git a/source/getting-started/yaml.markdown b/source/getting-started/yaml.markdown index b8eebda211f..7a5fb2cb7db 100644 --- a/source/getting-started/yaml.markdown +++ b/source/getting-started/yaml.markdown @@ -32,7 +32,7 @@ Getting the right indentation can be tricky if you're not using an editor with a You can use [YAMLLint](http://www.yamllint.com/) to check if your YAML-syntax is correct before loading it into Home Assistant which will save you some time. *Please pay attention on not putting in private data, as it is a 3rd-party website not maintained by Home Assistant.* -Lines that start with **#** are comments and are ignored by the system. +Text following a **#** are comments and are ignored by the system. The next example shows an [input_select](/components/input_select) component that uses a block collection for the options values. The other properties (like name) are specified using mappings. Note that the second line just has `threat:` with no value on the same line. Here threat is the name of the input_select and the values for it are everything nested below it. diff --git a/source/getting-started/z-wave.markdown b/source/getting-started/z-wave.markdown index 1e02d9d8f31..bd59ff1ee4a 100644 --- a/source/getting-started/z-wave.markdown +++ b/source/getting-started/z-wave.markdown @@ -13,6 +13,10 @@ footer: true There is currently support for climate, covers, lights, locks, sensors, switches and thermostats. All will be picked up automatically after configuring this platform. +### {% linkable_title Installation in Virtualenv (python-OpenZWace) %} + +If you installed Home Assistant using a virtual environment then please read the instructions on [Installing python-OpenZWave in a virtualenv](https://home-assistant.io/getting-started/installation-virtualenv/#installing-python-openzwave-in-a-virtualenv). + ### {% linkable_title Installation %} To allow Home Assistant to talk to your Z-Wave USB stick you will have to compile the OpenZWave library and install the related [python-OpenZWave package](https://github.com/OpenZWave/python-openzwave). This can be done as follows. _(Note: The Home Assistant docker image and the All In One installer have support for Z-Wave already built-in!)_ @@ -58,7 +62,7 @@ With this installation, your `config_path` needed below will resemble: If you followed along with setting up a virtual environment, your path will be: ```bash -/srv/hass/python-openzwave/openzwave/config +/srv/homeassistant/python-openzwave/openzwave/config ``` diff --git a/source/images/blog/2017-02-workshop/social.png b/source/images/blog/2017-02-workshop/social.png new file mode 100644 index 00000000000..71baff1a6ae Binary files /dev/null and b/source/images/blog/2017-02-workshop/social.png differ