Merge remote-tracking branch 'origin/current' into next

This commit is contained in:
Paulus Schoutsen 2018-02-25 16:49:29 -08:00
commit d282343710
51 changed files with 378 additions and 171 deletions

View File

@ -57,7 +57,7 @@ Use the following configuration in Home Assistant to use it:
```yaml
homematic:
interfaces:
BidCoS-RF:
rf:
host: core-homematic
port: 2001
```

View File

@ -58,7 +58,7 @@ The following configuration variables from the base manual alarm platform are av
- **pending_time** (*Optional*): State specific setting for **pending_time** (all states except **disarmed**)
- **trigger_time** (*Optional*): State specific setting for **trigger_time** (all states except **triggered**)
See the documentation for the [manual alarm platform](/component/alarm_control_panel.manual/) for a description.
See the documentation for the [manual alarm platform](/components/alarm_control_panel.manual/) for a description.
Additionally, the following MQTT configuration variables are also available:

View File

@ -375,7 +375,7 @@ which accepts and returns messages conforming to the
[Smart Home v3 payload](https://developer.amazon.com/docs/smarthome/smart-home-skill-api-message-reference.html).
You must then create an Amazon developer account with an Alexa skill and Lambda
function to integrate this endpoint. See
[Haaska](https://github.com/auchter/haaska) for an example.
[Haaska](https://github.com/mike-grant/haaska) for an example.
[amazon-dev-console]: https://developer.amazon.com
[flash-briefing-api]: https://developer.amazon.com/alexa-skills-kit/flash-briefing

View File

@ -28,6 +28,7 @@ Generate a Client ID and Client Secret on [Google Developers Console](https://co
1. Click 'Create credentials' -> OAuth client ID.
1. Set the Application type to 'Other' and give this credential set a name then click Create.
1. Save the client ID and secret as you will need to put these in your configuration.yaml file.
1. Click on "Library", search for "Google Calendar API" and enable it.
### {% linkable_title Basic Setup %}

View File

@ -61,16 +61,16 @@ vertical_flip:
default: 0
type: int
timelapse:
description: Takes a picture every millisecond.
description: Takes a picture every this many milliseconds (thousands of a second) - the default means one picture a second.
required: false
default: 1000
type: int
file_path:
description: Save the picture in a custom file path.
required: false
default: The camera components folder.
default: A temporary file is used.
type: string
{% endconfiguration %}
The given **file_path** must be an existing file because the camera platform setup make a writeable check on it.
The given **file_path** must be an existing file because the camera platform setup performs a writeable check on it. Also, keep in mind that the path should be [whitelisted](/docs/configuration/basic/).

View File

@ -13,27 +13,7 @@ ha_category: Voice
ha_iot_class: "Cloud Push"
---
<p class='note'>The Home Assistant Cloud is currently in open beta and will become part of the upcoming Community Support Package. [Learn more](/blog/2017/12/17/introducing-home-assistant-cloud/)</p>
The Home Assistant Cloud allows you to quickly integrate your local Home Assistant with various cloud services like Amazon Alexa.
The following integrations are currently available:
- [Amazon Alexa (Amazon Echo)](/components/cloud.alexa/)
<!-- - [Google Assistant (Google Home)](/components/cloud.google_assistant/) -->
### {% linkable_title How does it work? %}
The Home Assistant Cloud has been designed with security in mind. When you activate the Cloud component, your instance will create a secure connection to the Home Assistant Cloud. There is no need for any further configuration or to expose your instance to the internet.
Integrations like Alexa will deliver messages to our cloud which we will forward to your local instance for processing. We just forward the response back to Alexa. This means that we do not have to store the state of your house in our cloud, were just the messenger!
You can find a list of frequently asked questions (and their answers) in [this blog post](/blog/2017/12/17/introducing-home-assistant-cloud/#faq).
### {% linkable_title Enabling the cloud %}
The Home Assistant Cloud is enabled by default. If not, add this to your configuration:
The Home Assistant Cloud allows you to quickly integrate your local Home Assistant with various cloud services like Amazon Alexa. [Learn more.](/cloud)
```yaml
# Example configuration.yaml entry to enable the cloud component

View File

@ -19,7 +19,7 @@ To add a counter to your installation, add the following to your `configuration.
```yaml
# Example configuration.yaml entry
counter:
counter:
my_custom_counter:
initial: 30
step: 1
```

View File

@ -12,10 +12,6 @@ ha_category: Cover
ha_release: 0.59
---
To use your tahoma covers in your installation, add the following to your `configuration.yaml` file:
The `tahoma` cover platform lets you control covers added to your Tahoma Box in Home Assistant.
```yaml
# Example configuration.yml entry
cover:
platform: tahoma
```
Covers will be added automatically. Please refer to the [component](/components/tahoma/) configuration on how to setup Tahoma.

View File

@ -56,7 +56,7 @@ Right after enabling, the app will take you to the **Log to custom URL** setting
The relevant endpoint is: `/api/gpslogger`
```text
http://[IP address Home Assistant]:[Port]/api/gpslogger?
https://[IP address Home Assistant]:[Port]/api/gpslogger?
latitude=%LAT&longitude=%LON&device=%SER&accuracy=%ACC
&battery=%BATT&speed=%SPD&direction=%DIR
&altitude=%ALT&provider=%PROV&activity=%ACT
@ -65,8 +65,8 @@ http://[IP address Home Assistant]:[Port]/api/gpslogger?
Add the above URL after you modified it with your settings into the **URL** field. Remove the line breaks as they are only there to make the URL readable here.
- It's HIGHLY recommended to use SSL/TLS.
- Use the domain that Home Assistant is available on the internet or the public IP address. Can be a local IP address if you are using a VPN setup.
- Only remove `[Port]` if your Home Assistant instance is using port 80. Otherwise set it to 8123.
- Use the domain that Home Assistant is available on the internet or the public IP address. This can be a local IP address if you are using an always on VPN from your mobile device to your home network.
- Only remove `[Port]` if your Home Assistant instance is using port 443. Otherwise set it to the port you're using.
- For Home Assistant only the above URL, as written, will work - do not add or remove any parameters.
- Make sure to include your [API password](/components/http/) if you have configured a password. Add `&api_password=[Your password]` to the end of the URL.
- You can change the name of your device name by replacing `&device=%SER` with `&device=[Devicename]`.

View File

@ -15,10 +15,6 @@ ha_release: 0.55
OwnTracks is a free and open source application that allows you to track your location in Home Assistant. This is a platform that supports OwnTracks via their HTTP publishing method.
<p class='note'>
The Android app for OwnTracks is no longer developed or supported. Consider [GPS Logger](/components/device_tracker.gpslogger/) as an alternative.
</p>
To integrate Owntracks tracking via HTTP in Home Assistant, add the following section to your `configuration.yaml` file:
```yaml

View File

@ -29,6 +29,10 @@ A physical Hue Bridge is required for Philips Hue lights to function - this virt
It is recommended to assign a static IP address to the computer running Home Assistant. This is because the Amazon Echo discovers devices by IP addresses, and if the IP changes, the Echo won't be able to control it. This is easiest done from your router, see your router's manual for details.
</p>
<p class='note'>
Both Google Home and Alexa use the device they were initially set up with for communication with emulated_hue. In other words: if you remove/replace this device you will also break emulated_hue.
</p>
### {% linkable_title Configuration %}
To enable the emulated Hue bridge, add one of the following configs to your `configuration.yaml` file:

View File

@ -136,8 +136,8 @@ If you're not using Linux, you can use sites such as [this one](https://www.brow
### {% linkable_title Setup %}
1. Download the [gactions CLI](https://developers.google.com/actions/tools/gactions-cli) to be used later. You can download and run this anywhere and on any machine. Just remember where you put it for later and don't forget to run `chmod +x gactions` to make it executable on Mac or Linux.
2. Create a new file named `project.json` (in the same directory you downloaded `gactions` to) and replace the `[YOUR HOME ASSISTANT URL]` below with the URL you use to access Home Assistant.
Note: This must be an HTTPS URL to work.
2. Create a new file named `project.json` (in the same directory you downloaded `gactions` to) and replace the `[YOUR HOME ASSISTANT URL:PORT]` below with the URL you use to access Home Assistant.
Note: This must be an HTTPS URL to work. Don't forget to include the port number if you're not using port 443.
```json
{
@ -153,7 +153,7 @@ If you're not using Linux, you can use sites such as [this one](https://www.brow
"automation":
{
"name": "automation",
"url": "https://[YOUR HOME ASSISTANT URL]/api/google_assistant"
"url": "https://[YOUR HOME ASSISTANT URL:PORT]/api/google_assistant"
}
}
}
@ -195,7 +195,7 @@ The request_sync service requires that the initial sync from Google includes the
The request_sync service may fail with a 404 if the project_id of the Homegraph API differs from the project_id of the Actions SDK found in the preferences of your project on [developer console](https://console.actions.google.com). Resolve this by:
1. Removing your project from the [developer console](https://console.actions.google.com).
2. Add a new project to the [cloud console](https://console.cloud.google.com). Here you get a new project_id.
2. Add a new project to the [cloud console](https://console.cloud.google.com). Here you get a new `project_id`.
3. Enable Homegraph API to the new project.
4. Generate a new API key.
5. Again, create a new project in the [developer console](https://console.actions.google.com/). Described above. But at the step 'Build under the Actions SDK box' choose your newly created project. By this, they share the same project_id.
5. Again, create a new project in the [developer console](https://console.actions.google.com/). Described above. But at the step 'Build under the Actions SDK box' choose your newly created project. By this, they share the same `project_id`.

View File

@ -31,32 +31,24 @@ If you are using [Hass.io](/hassio/) then just move forward to the configuration
#### {% linkable_title Symlinking into virtual environment %}
Create a symlink to the `cec` installation. Keep in mind different installation methods will result in different locations of cec.
Create a symlink to the `cec` installation including the _cec.so file. Keep in mind different installation methods will result in different locations of cec.
```bash
$ ln -s /path/to/your/installation/of/cec /path/to/your/venv/lib/python3.4/site-packages
$ ln -s /path/to/your/installation/of/cec /path/to/your/venv/lib/python*/site-packages
$ ln -s /path/to/your/installation/of/_cec.so /path/to/your/venv/lib/python*/site-packages
```
##### {% linkable_title Symlinking examples: %}
For the default virtual environment of a [HASSbian Image for Raspberry Pi](/getting-started/installation-raspberry-pi-image/) the command would be as follows.
```bash
$ ln -s /usr/local/lib/python3.4/dist-packages/cec /srv/homeassistant/lib/python3.4/site-packages
$ ln -s /usr/local/lib/python*/dist-packages/cec /srv/homeassistant/lib/python*/site-packages
$ ln -s /usr/local/lib/python*/dist-packages/_cec.so /srv/homeassistant/lib/python*/site-packages
```
For the default virtual environment of a [Raspberry Pi All-In-One installation](/getting-started/installation-raspberry-pi-all-in-one/) the command would be as follows.
```bash
$ ln -s /usr/local/lib/python3.4/site-packages/cec /srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages
```
For the default virtual environment of a [Manual installation](/getting-started/installation-raspberry-pi/) the command would be as follows.
```bash
$ ln -s /usr/local/lib/python3.4/site-packages/cec /srv/hass/hass_venv/lib/python3.4/site-packages
```
<p class='note'>If after symlinking and adding `hdmi_cec:` to your configuration you are getting the following error in your logs,
`* failed to open vchiq instance` you will also need to add the user account Home Assistant runs under, to the `video` group. To add the Home Assistant user account to the `video` group, run the following command. `$ usermod -a -G video <hass_user_account>`
</p>

View File

@ -65,7 +65,7 @@ input_datetime:
A datetime input entity's state exports several attributes that can be useful in automations and templates.
| Attribute | Description |
| --------- | ----------- |
| ----- | ----- |
| `has_time` | `true` if this entity has a time.
| `has_date` | `true` if this entity has a date.
| `year`<br>`month`<br>`day` | The year, month and day of the date.<br>(only available if `has_date: true`)
@ -75,3 +75,47 @@ A datetime input entity's state exports several attributes that can be useful in
### {% linkable_title Restore State %}
This component supports the `restore_state` function which restores the state after Home Assistant has started to the value it has been before Home Assistant stopped. To use this feature please make sure that the [`recorder`](/components/recorder/) component is enabled and your entity does not have a value set for `initial`. Additional information can be found in the [Restore state](/components/recorder/#restore-state) section of the [`recorder`](/components/recorder/) component documentation.
### {% linkable_title Services %}
This component provides a service to modify the state of the `input_datetime`.
| Service | Data | Description |
| ----- | ----- | ----- |
| `set_datetime` | `time` | This can be used to dynamically set the time.
| `set_datetime` | `date` | This can be used to dynamically set the date.
## {% linkable_title Automation Examples %}
The following example shows the usage of the `input_datetime` as a trigger in an automation (note that you will need a [time sensor](/components/sensor.time_date/) elsewhere in your configuration):
{% raw %}
```yaml
# Example configuration.yaml entry
# Turns on bedroom light at the time specified.
automation:
trigger:
platform: template
   value_template: "{{ states('sensor.time') == (states.input_datetime.bedroom_alarm_clock_time.attributes.timestamp | int | timestamp_custom('%H:%M', False)) }}"
 action:
service: light.turn_on
entity_id: light.bedroom
```
{% endraw %}
To dynamically set the `input_datetime` you can call `input_datetime.set_datetime`. The following example can be used in an automation rule:
```yaml
# Example configuration.yaml entry
# Sets input_datetime to '05:30' when an input_boolean is turned on.
automation:
trigger:
platform: state
entity_id: input_boolean.example
to: 'on'
action:
service: input_datetime.set_datetime
entity_id: input_datetime.bedroom_alarm_clock_time
data:
time: '05:30:00'
```

View File

@ -143,7 +143,7 @@ white_value_state_topic:
description: The MQTT topic subscribed to receive white value updates.
required: false
type: string
white_value_value_template:
white_value_template:
description: "Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract the white value."
required: false
type: string

View File

@ -54,6 +54,7 @@ Currently known supported models:
- D6300SF
- U6000 (port must be set to 8001)
- U6300 (port must be set to 8001, and `pip3 install websocket-client` must be executed)
- K5579 (port must be set to 8001, On/Off, Forward/Backward, Volume control, but no Play button)
- K6500AF (port must be set to 8001)
- KS8005 (port must be set to 8001, and `pip3 install websocket-client` must be executed)
- KU6290 (port must be set to 8001)

View File

@ -60,3 +60,7 @@ You need to add the `homeassistant` user to the `audio` group:
```bash
sudo usermod -a -G audio homeassistant
```
##### {% linkable_title VLC currently not supported with Hass.io %}
According to the forum topic ["How to add VLC into my Hassio"](http://community.home-assistant.io/t/how-to-add-vlc-into-my-hassio/23000/5), it is not possible to install packages like VLC on Hass.io.

View File

@ -8,7 +8,7 @@ comments: false
sharing: true
footer: true
logo: hunter-douglas-powerview.png
ha_category: Cover
ha_category: Scene
ha_release: 0.15
---

View File

@ -17,8 +17,8 @@ The `lifx_cloud` scene platform allows you to activate the scenes that LIFX smar
```yaml
# Example configuration.yaml entry
scene:
platform: lifx_cloud
token: YOUR_LIFX_TOKEN
- platform: lifx_cloud
token: YOUR_LIFX_TOKEN
```
Configuration variables:

View File

@ -14,7 +14,7 @@ ha_release: 0.32
---
The `random` sensor platform is creating random sensor values (integers) out of a given range. This can be useful if you want to test automation rules. It generates a new value every time it is polled.
The `random` sensor platform is creating random sensor values (integers) out of a given range. Returned values form a [discrete uniform distribution](https://en.wikipedia.org/wiki/Discrete_uniform_distribution), meaning that each integer value in the range configured is equally likely to be drawn. This can be useful if you want to test automation rules. It generates a new value every time it is polled.
To enable the random sensor, add the following lines to your `configuration.yaml`:

View File

@ -8,14 +8,10 @@ comments: false
sharing: true
footer: true
logo: tahoma.png
ha_category: Cover
ha_category: Sensor
ha_release: 0.59
---
To use your tahoma sensors in your installation, add the following to your `configuration.yaml` file:
The `tahoma` sensor platform lets you see sensors added to your Tahoma Box in Home Assistant.
```yaml
# Example configuration.yml entry
sensor:
platform: tahoma
```
Sensors will be added automatically. Please refer to the [component](/components/tahoma/) configuration on how to setup Tahoma.

View File

@ -27,55 +27,63 @@ Snips takes voice or text as input and produces *intents* as output, which are e
### {% linkable_title Installation %}
The Snips Voice Platform is installed as a Docker image on Raspberry Pi with the following command:
```bash
(pi) $ curl https://install.snips.ai -sSf | sh
```
Snips can also be installed on a Debian/Ubuntu machine as well:
The Snips platform can be installed via the Snips APT/Debian repository. If you prefer to install the platform using the Docker distribution, check out our [Docker Installation Guide](https://github.com/snipsco/snips-platform-documentation/wiki/6.--Miscellaneous#using-docker).
```bash
$ sudo apt-get update
$ sudo apt-get install -y dirmngr
$ sudo bash -c 'echo "deb https://debian.snips.ai/$(lsb_release -cs) stable main" > /etc/apt/sources.list.d/snips.list'
$ sudo apt-key adv --keyserver pgp.mit.edu --recv-keys F727C778CCB0A455
$ sudo bash -c 'echo "deb https://raspbian.snips.ai/$(lsb_release -cs) stable main" > /etc/apt/sources.list.d/snips.list'
$ sudo apt-key adv --keyserver pgp.mit.edu --recv-keys D4F50CDCA10A2849
$ sudo apt-get update
$ sudo apt-get install -y snips-platform-voice
```
Note: if the keyserver pgp.mit.edu is down try to use another one in the 4th line , like pgp.surfnet.nl:
```bash
sudo apt-key adv --keyserver pgp.surfnet.nl --recv-keys D4F50CDCA10A2849
```
### {% linkable_title Creating an assistant %}
<div class='videoWrapper'>
<iframe src="https://player.vimeo.com/video/223255884" width="700" height="380" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>
</div>
Snips assistants are created via the [Snips Console](https://console.snips.ai). Once trained, the assistant should be downloaded and copied to the Raspberry Pi:
Head over to the [Snips Console](https://console.snips.ai) to create your assistant. Launch the training and download by clicking on the "Download Assistant" button.
The next step is to get the assistant to work on your device. Unzip and copy the assistant folder that you downloaded from the web console to the path. Assuming your downloaded assistant folder is on your desktop, just run:
```bash
$ scp assistantproj_XXX.zip pi@pi_hostname:/home/pi/assistant.zip
$ scp -r ~/Desktop/assistant pi@<raspi_hostname.local_or_IP>:/home/pi/.
```
and installed locally via the `snips-install-assistant` helper script:
Now ssh into your Raspberry Pi:
```bash
(pi) $ sudo snips-install-assistant assistant.zip
$ ssh pi@<raspi_hostname.local_or_IP>
```
By default, this command is `ssh pi@raspberrypi.local`, if you are using the default Raspberry Pi hostname.
Then, move the assistant to the right folder:
```bash
(pi) $ sudo mv /home/pi/assistant /usr/share/snips/assistant
```
Note: if you already have an assistant installed and wish to replace it, start by removing the previous one, and then move the new one in its place:
```bash
(pi) $ sudo rm -r /usr/share/snips/assistant
(pi) $ sudo mv /home/pi/assistant /usr/share/snips/assistant
```
### {% linkable_title Running Snips %}
Make sure that a microphone is plugged to the Raspberry Pi. If you are having trouble setting up audio, we have written a guide on [Raspberry Pi Audio Configuration](https://github.com/snipsco/snips-platform-documentation/wiki/1.-Setup-the-Snips-Voice-Platform-on-your-Raspberry-Pi#configuring-the-audio).
Start the Snips Voice Platform using the `snips` command:
Raspberry Pi:
```bash
(pi) $ snips
```
Debian/Ubuntu:
Start the Snips Voice Platform by starting the `snips-*` services:
```bash
$ sudo systemctl start "snips-*"
@ -89,32 +97,17 @@ followed by a command, e.g.
> Set the lights to green in the living room
We should see the transcribed phrase in the logs, as well as a properly parsed intent. The intent is published on MQTT, on the `hermes/intent/<slotName>` topic. The Snips Home Assistant component subscribes to this topic, and handles the intent according to the rules defined in `configuration.yaml`, as explained below.
As the Snips Platform parses this query into an intent, it will be published on MQTT, on the `hermes/intent/<intentName>` topic. The Snips Home Assistant component subscribes to this topic, and handles the intent according to the rules defined in `configuration.yaml`, as explained below.
#### {% linkable_title Optional: specifying an external MQTT broker %}
By default, Snips runs its own MQTT broker. But we can also tell Snips to use an external broker by specifying this when launching Snips. In this case, instead of running the `snips` command above (which assumes we are using the internal MQTT broker), we use the full launch command with explicitly specified parameters (replace `MQTT_BROKER_IP` and `MQTT_BROKER_PORT` with appropriate values):
Raspberry Pi:
```sh
$ docker run -t --rm --name snips --log-driver none \
-v /home/pi/.asoundrc:/root/.asoundrc \
-v /opt/snips/config:/opt/snips/config \
--privileged -v /dev/snd:/dev/snd snipsdocker/platform \
--mqtt MQTT_BROKER_IP:MQTT_BROKER_PORT
```
Debian/Ubuntu:
Edit the `/etc/snips.toml` file. See snips documentation for more information on configuring this
For more details on launch options, check the documentation on [Snips Platform Commands](https://github.com/snipsco/snips-platform-documentation/wiki/6.--Learn-more:-Platform-Commands#using-a-custom-mqtt-bus).
By default, Snips runs its own MQTT broker. But we can also tell Snips to use an external broker by specifying this when launching Snips. In this case, we need to specify this in the `/etc/snips.toml` configuration file. For more information on configuring this, see the [Using an external MQTT broker](https://github.com/snipsco/snips-platform-documentation/wiki/6.--Miscellaneous#using-external-mqtt-broker) article.
## {% linkable_title Home Assistant configuration %}
### {% linkable_title Specifying the MQTT broker %}
Messages between Snips and Home Assistant are passed via MQTT. We must tell Home Assistant which [MQTT broker](/docs/mqtt/) to use by adding the following entry to the `configuration.yaml` file:
Messages between Snips and Home Assistant are passed via MQTT. We can either point Snips to the MQTT broker used by Home Assistant, as explained above, or tell Home Assistant which [MQTT broker](/docs/mqtt/) to use by adding the following entry to the `configuration.yaml` file:
```yaml
mqtt:
@ -122,7 +115,7 @@ mqtt:
port: MQTT_BROKER_PORT
```
As explained above, Snips by default runs an MQTT broker on port 9898. So if we wish to use this broker, the entry will look as follows:
By default, Snips runs an MQTT broker on port 9898. So if we wish to use this broker, and if Snips and Home Assistant run on the same device, the entry will look as follows:
```yaml
mqtt:
@ -130,11 +123,11 @@ mqtt:
port: 9898
```
Alternatively, MQTT can be configured to bridge messages between servers if using a custom MQTT broker such as `mosquitto`.
Alternatively, MQTT can be configured to bridge messages between servers if using a custom MQTT broker such as [mosquitto](https://mosquitto.org/).
### {% linkable_title Triggering actions %}
In Home Assistant, we trigger actions based on intents produced by Snips using the [`intent_script`](/components/intent_script) component. For instance, the following block handles `ActivateLightColors` intents (included in the Snips IoT intent bundle) to change light colors:
In Home Assistant, we trigger actions based on intents produced by Snips using the [`intent_script`](/components/intent_script) component. For instance, the following block handles a `ActivateLightColor` intent to change light colors:
{% raw %}
```yaml
@ -150,9 +143,11 @@ intent_script:
```
{% endraw %}
The variables that can be used in the template are of the form 'slotName = value'.
In the `data_template` block, we have access to special variables, corresponding to the slot names for the intent. In the present case, the `ActivateLightColor` has two slots, `objectLocation` and `objectColor`.
Snips intents that utilize builtin slot types will contain extended information along with the value and can be exposed using this format:
### {% linkable_title Special slots %}
In the above example, the slots are plain strings. However, when more complex types are used, such as dates or time ranges, they will be transformed to rich Python objects, for example:
{% raw %}
```yaml

View File

@ -23,7 +23,7 @@ Supported devices (tested):
Supported Firmwares (tested):
- FRITZ!OS: 06.80 / FRITZ!DECT: 03.83
- FRITZ!OS: 06.60 / FRITZ!DECT: 03.83
- FRITZ!OS: 06.98-51288 (Beta) / FRITZ!DECT: 03.87
To use your AVM FRITZ!DECT switch(es) in your installation, add the following to your `configuration.yaml` file:
@ -41,6 +41,7 @@ Configuration variables:
- **password** (*Required*): The password for your Fritz!Box.
- **host** (*Optional*): The IP address/hostname of your Fritz!Box. Defaults to `fritz.box`.
It is recommened to create a dedicated user for Home Assistant and only allow access to "Smart Home".
<p class='note warning'>
If this component throws an error when starting home-assistant you should check if all actors are plugged in and connected to the FritzBox. Inactive actors that are not deleted from FritzBox configuration might lead to errors.

View File

@ -174,7 +174,7 @@ To fetch the token follow these instructions depending on your mobile phone plat
2. Enable developer mode, USB debugging and plug the Android phone into the computer.
3. Get ADB e.g. `apt-get install android-tools-adb` or `apt-get install adb`
4. `adb devices` should list your device. Consult ADB manual if necessary.
5. Issue a backup command via adb: `adb backup -noapk com.xiaomi.smarthome -f backup.ab` (set a password if prompted on your phone)
5. Issue a backup command via adb: `adb backup -noapk com.xiaomi.smarthome -f backup.ab` (set a password if prompted on your phone). Some devices may required single quotes in the command `adb backup '-noapk com.xiaomi.smarthome -f backup.ab'`
6. Download the 'ADB Backup Extractor' from [here](https://sourceforge.net/projects/adbextractor/files/latest/download)
7. Extract the data from the backup: `java -jar Android\ Backup\ Utilities/Android\ Backup\ Extractor/android-backup-extractor-20171005-bin/abe.jar unpack backup.ab unpacked.tar` (enter the password, if prompted)
8. Untar the unpacked data: `tar -xvf unpacked.tar`

View File

@ -11,6 +11,8 @@ footer: true
When launched for the first time, Home Assistant will write a default configuration file enabling the web interface and device discovery. It can take up to a minute for your devices to be discovered and appear in the user interface.
The web interface can be found at `http://ip.ad.dre.ss:8123/` - for example if your Home Assistant system has the IP address `192.168.0.40` then you'll find the web interface as `http://192.168.0.40:8123/`.
The location of the folder differs between operating systems:
| OS | Path |

View File

@ -0,0 +1,54 @@
---
layout: page
title: "Entity Registry"
description: "The entity registry contains."
date: 2016-04-20 06:00
sidebar: true
comments: false
sharing: true
footer: true
---
<p class='note'>
This is a new and experimental feature of Home Assistant.
</p>
Starting with version 0.63, Home Assistant keeps a registry of known entities.
The entity registry makes sure that entities get unique identifiers and allow
customizing the identifiers and names of these entities.
As this is still a very new part of Home Assistant, changes will require a
restart of Home Assistant to take affect. A config user interface will be added
in a future version.
<p class='note'>
An entity needs to have a unique ID to be registered in the entity registry.
Not all integrations currently provide a unique id for their entities.
</p>
The entity registry is stored in `<config>/entity_registry.yaml`. As a user,
you are unable to add entries, only update them. Here is an example file:
```
climate.downstairs_virtual:
platform: nest
unique_id: EPoMyWkpNyoYu3pGlmGxabcdefghijkl
name: Downstairs thermostat
light.study_ceiling:
platform: hue
unique_id: f0:fe:6b:00:14:00:00:00-00
disabled_by: user
```
As a user, you can change the `entity_id` and add the `name` and `disabled_by`
value to each entry.
- The value of `name` will override the name of the entity as given by the
integration.
_Added in Home Assistant 0.64._
- The key `disabled_by` can either be `hass` or `user`. This functionality
is even more experimental than the whole entity registry itself and might
cause integrations to fail and might be removed in the future.
_Added in Home Assistant 0.64._

View File

@ -43,12 +43,13 @@ script:
msg_who_is_home:
sequence:
- service: notify.notify
message: >
{% raw %}{% if is_state('device_tracker.paulus', 'home') %}
Ha, Paulus is home!
{% else %}
Paulus is at {{ states('device_tracker.paulus') }}.
{% endif %}{% endraw %}
data_template:
message: >
{% raw %}{% if is_state('device_tracker.paulus', 'home') %}
Ha, Paulus is home!
{% else %}
Paulus is at {{ states('device_tracker.paulus') }}.
{% endif %}{% endraw %}
```
[Jinja2](http://jinja.pocoo.org/) supports a wide variety of operations:

View File

@ -113,7 +113,7 @@ static routers=192.168.0.1 <---- Your router's IP address
static domain_name_servers=192.168.0.1 <---- Your router's IP address
```
It is important to note that the first three bits of your static IP address and your router's IP address should be the same, eg:
It is important to note that the first three bytes of your static IP address and your router's IP address should be the same, eg:
```text
Router: 192.168.0.1
@ -538,13 +538,13 @@ In your `configuration.yaml` add the following automation, adding your preferred
automation:
- alias: 'SSL expiry notification'
trigger:
platform: numeric_state
entity_id: sensor.ssl_cert_expiry
below: 21
action:
service: notify.[your_notification_preference]
data:
message: 'Warning - SSL certificate expires in 21 days and has not been automatically renewed'
platform: numeric_state
entity_id: sensor.ssl_cert_expiry
below: 21
action:
service: notify.[your_notification_preference]
data:
message: 'Warning - SSL certificate expires in 21 days and has not been automatically renewed'
```
If you receive this warning notification, follow the steps for a manual update from step 8. Any error messages received at that point can be googled and resolved. If the manual update goes without a hitch there may be something wrong with your chosen method for automatic updates, and you can start troubleshooting from there.

View File

@ -12,7 +12,7 @@ redirect_from: /cookbook/tls_self_signed_certificate/
If your Home Assistant instance is only accessible from your local network you can still protect the communication between your browsers and the frontend with SSL/TLS.
[Let's encrypt]({{site_root}}/blog/2015/12/13/setup-encryption-using-lets-encrypt/) will only work if you have a DNS entry and remote access is allowed.
The solution is to use a self-signed certificate. As you most likely don't have a certification authority (CA) your browser will conplain about the security. If you have a CA then this will not be an issue.
The solution is to use a self-signed certificate. As you most likely don't have a certification authority (CA) your browser will complain about the security. If you have a CA then this will not be an issue.
To create a certificate locally, you need the [OpenSSL](https://www.openssl.org/) command-line tool.

View File

@ -14,7 +14,7 @@ redirect_from: /getting-started/updating/
The upgrade process differs depending on the installation you have, so please review the documentation that is specific to your install [Hass.io](/hassio/), [HASSbian](/docs/hassbian/common-tasks/#update-home-assistant), [Vagrant](/docs/installation/vagrant/), or [Virtualenv](/docs/installation/virtualenv/#upgrading-home-assistant).
</p>
View what's new in the latest version and potential impacts on your system [here](https://github.com/home-assistant/home-assistant/releases).
Check what's new in the latest version and potentially impacts your system in [Home Assistant release notes](https://github.com/home-assistant/home-assistant/releases). It is good practice to review these release notes and pay close attention to the **Breaking Changes** that are listed there. If you haven't done an update for a while, you should also check previous release notes as they can also contain relevant **Breaking Changes**. **Breaking Changes** may require configuration updates for your components. If you missed this and Home Assistant refuses to start, check `<config-dir>/home-assistant.log` for details about broken components.
The default way to update Home Assistant to the latest release, when available, is:

View File

@ -99,14 +99,14 @@ tls_insecure:
type: boolean
tls_version:
required: false
description: "TLS/SSL protocol version to use. Available options are: `auto`, `1.0`, `1.1`, `1.2`. Defaults to `auto`."
description: "TLS/SSL protocol version to use. Available options are: `'auto'`, `'1.0'`, `'1.1'`, `'1.2'`. Make sure to put quotes around the value. Defaults to `'auto'`."
type: string
{% endconfiguration %}
<p class='note warning'>
There is an issue with the Mosquitto package included in Ubuntu 14.04 LTS. Specify `protocol: 3.1` in your MQTT configuration to work around this issue.
If you get this error `AttributeError: module 'ssl' has no attribute 'PROTOCOL_TLS'` then you need to set `tls_version: 1.2`.
If you get this error `AttributeError: module 'ssl' has no attribute 'PROTOCOL_TLS'` then you need to set `tls_version: '1.2'`.
</p>
<p class='note'>

View File

@ -43,6 +43,10 @@ Here is where you [include and exclude](/docs/z-wave/adding/) Z-Wave devices fro
* **Test Node** sends no_op test messages to the node. This could in theory bring back a dead node.
<p class='note warning'>
Since 0.63 and the new experimental [entity registry](https://home-assistant.io/docs/configuration/entity-registry/) **Rename Node** no longer changes the entity id for anything other than the `zwave.` entity for the node (it does change, the default *friendly_name* and *old_entity_id* and *new_entity_id* attributes for all the entities). See [this issue](https://github.com/home-assistant/home-assistant/issues/12430).
</p>
<p class='note'>
Battery powered devices need to be awake before you can use the Z-Wave control panel to update their settings. How to wake your device is device specific, and some devices will stay awake for only a couple of seconds. Please refer to the manual of your device for more details.
</p>
@ -130,6 +134,20 @@ If your node has user codes, you can set and delete them. The format is raw hex
Some non compliant device like tag readers, have implemented to use raw hex code.
Please refer to a hex ascii table to set your code. Example: http://www.asciitable.com/
Here is a small Python program than will take numbers on the command line and print the correct sequence for compliant devices:
```python
#! /usr/bin/python3
import sys
translations = {}
for x in range(0, 10):
translations["%s" % x] = "\\x3%s" % x
for c in sys.argv[1]:
print(translations[c], end='')
```
## {% linkable_title OZW Log %}

View File

@ -27,7 +27,7 @@ You need to have a [supported Z-Wave USB stick or module](https://github.com/Ope
| ZWave.me UZB1 | &#10003; | | |
<p class='note'>
If you're using Hass.io, it's recommended to use a USB stick, not a module. Passing a module through Docker is more complicated than passing a USB stick through.
If you're using Hass.io or running HASS in a Docker container, it's recommended to use a USB stick, not a module. Passing a module through Docker is more complicated than passing a USB stick through.
</p>
## {% linkable_title Stick Alternatives %}

View File

@ -53,7 +53,7 @@ usb_path:
type: string
default: /zwaveusbstick
network_key:
description: The 16-byte network key in the form `"0x01, 0x02..."` used in order to connect securely to compatible devices.
description: The 16-byte network key in the form `"0x01, 0x02..."` used in order to connect securely to compatible devices. It is recommended that a network key is configured as security enabled devices may not function correctly if they are not added securely.
required: false
type: string
default: None
@ -82,7 +82,7 @@ new_entity_ids:
required: false
type: boolean
default: True
device_config:
device_config / device_config_domain / device_config_glob:
description: This attribute contains node-specific override values. (For releases prior to 0.39 this variable is called **customize**) See [Customizing devices and services](/docs/configuration/customizing-devices/) for the format.
required: false
type: string, list

View File

@ -14,3 +14,4 @@ Home Assistant is a Python program, in simple words. It can be run various opera
[Hass.io](/hassio/) is a combination of Home Assistant and tools which allows one to run it easily on a Raspberry Pi and other platforms without setting up an operating system first. Hass.io is an all-in one-solution and has a management user interface that can be used from the Home Assistant frontend. This interface is not present in a standalone setup of Home Assistant.
Be aware that add-ons are only available in Hass.io, due to the way Hass.io is installed.

View File

@ -0,0 +1,14 @@
<section class="aside-module grid__item one-whole lap-one-half">
<h1 class="title delta">About Home Assistant</h1>
<ul class="divided">
<li>
The Home Assistant Cloud is a cloud-based service provided to supporters of the Home Assistant project.
</li>
<li>
{% active_link /cloud/ Introduction %}
</li>
<li>
{% active_link /cloud/ Amazon Alexa %}
</li>
</ul>
</div>

View File

@ -3,7 +3,7 @@
<h1 class="title delta">Topics</h1>
<ul class='divided sidebar-menu'>
<li>
<b>{% active_link /faq/ FAQ %}</b> |
<b>{% active_link /faq/ FAQ %}</b> |
<b>{% active_link /docs/glossary/ Glossary %}</b>
</li>
<li>
@ -23,6 +23,7 @@
<li>{% active_link /docs/configuration/yaml/ YAML %}</li>
<li>{% active_link /docs/configuration/basic/ Basic information %}</li>
<li>{% active_link /docs/configuration/devices/ Setting up devices %}</li>
<li>{% active_link /docs/configuration/entity-registry/ Entity Registry %}</li>
<li>{% active_link /docs/configuration/customizing-devices/ Customizing entities %}</li>
<li>{% active_link /docs/configuration/troubleshooting/ Troubleshooting %}</li>
<li>{% active_link /docs/configuration/securing/ Security Check Points %}</li>

View File

@ -14,6 +14,8 @@
{% include asides/faq_navigation.html | compact_newlines %}
{% elsif url_parts[1] == 'hassio' or url_parts[1] == 'addons' %}
{% include asides/hassio_navigation.html | compact_newlines %}
{% elsif url_parts[1] == 'cloud' %}
{% include asides/cloud_navigation.html | compact_newlines %}
{% else %}
{% include asides/about.html %}

View File

@ -10,6 +10,11 @@ comments: true
categories: Technology
---
**Update February 16, 2018**:
Home Assistant 0.64 will be the last release to support Python 3.4. Starting with release 0.65, Home Assistant will require a minimum version of Python 3.5.3.
---
Starting with our next release, 0.55, we will deprecate Python 3.4 support. The current plan is to remove support for Python 3.4 at the beginning of 2018.
Python 3.5 was released on September 13th, 2015. It has since then become the default Python installation on the stable releases of Debian, Ubuntu, Raspbian and Hassbian. Our other own operating system, Hass.io, is more advanced and is already running the greatly improved Python 3.6.
@ -17,7 +22,7 @@ Python 3.5 was released on September 13th, 2015. It has since then become the de
The jump to Python 3.5 as a minimum version is driven by the Home Assistant core, which is based on asyncio. Starting with Python 3.5, asyncio got improved support in the language with dedicated keywords `async` and `await`. As this is the proper way of doing async in Python, we're seeing a move by async libraries to either only support the new syntax from the beginning or dropping support for the Python 3.4 approach. Not moving along means an increased maintenance burden as we cannot use the latest releases of our libraries. Next to that it will prevent our users from being able to leverage the bug fixes and performance improvements that come with Python 3.5.
#### Hass.io
If you're running Hass.io, you don't have to do anything. Your system will always stay up to date.
If you're running Hass.io, you don't have to do anything. Your system will always stay up to date.
#### Hassbian
If you're running Hassbian it's recommended that you make a backup of your configuration files and restore them on a fresh install. Upgrading an existing installation isn't recommended.

View File

@ -48,7 +48,7 @@ See the [Cloud component configuration](/components/cloud/) to learn how to filt
## {% linkable_title FAQ %}
_Last updated: December 26, 2017_
_Last updated: February 22, 2018_
#### {% linkable_title I thought the Home Assistant crew didn't like the cloud? %}
@ -85,7 +85,7 @@ We have a lot of ideas! We are not going to make any promises but here are some
#### {% linkable_title What countries are supported at launch? %}
Only US is currently supported. The reason for this limitation is that we need to do extra steps and certifications for each country's Alexa skill. This is in progress but the timeline depends on Amazon.
As of February 2018, we are live in all countries that have Alexa except for Japan (which is under certification).
#### {% linkable_title How is the connection made to the cloud? %}

View File

@ -59,6 +59,16 @@ We're planning a lot of cool stuff around the entity registry. Stay tuned!
- Introduce zone_id to identify player+zone ([@sdague] - [#12382]) ([media_player.yamaha docs])
- Downgrade limitlessled to 1.0.8 ([@amelchio] - [#12403]) ([light.limitlessled docs])
## {% linkable_title Release 0.63.3 - February 17 %}
- python-miio version bumped. (Closes: #12389, Closes: #12298) ([@syssi] - [#12392]) ([fan.xiaomi_miio docs]) ([light.xiaomi_miio docs]) ([remote.xiaomi_miio docs]) ([switch.xiaomi_miio docs]) ([vacuum.xiaomi_miio docs])
- Fixed 3 small issues in isy994 component ([@OverloadUT] - [#12421]) ([isy994 docs])
- Reduce the load on met.no servers, yr.no sensor ([@danielhiversen] - [#12435]) ([sensor.yr docs])
- Fix for contentRating error ([@ryanm101] - [#12445]) ([media_player.plex docs])
- Fix light template to return brightness as int ([@andrey-git] - [#12447]) ([light.template docs])
- Optimize recorder purge ([@amelchio] - [#12448])
- [SQL Sensor] always close session ([@dgomes] - [#12452]) ([sensor.sql docs])
## {% linkable_title If you need help... %}
...don't hesitate to use our very active [forums](https://community.home-assistant.io/) or join us for a little [chat](https://discord.gg/c5DvZ4e). The release notes have comments enabled but it's preferred if you use the former communication channels. Thanks.
@ -654,3 +664,27 @@ Experiencing issues introduced by this release? Please report them in our [issue
[sensor.eddystone_temperature docs]: https://home-assistant.io/components/sensor.eddystone_temperature/
[sensor.mercedesme docs]: https://home-assistant.io/components/sensor.mercedesme/
[sensor.wunderground docs]: https://home-assistant.io/components/sensor.wunderground/
[#12392]: https://github.com/home-assistant/home-assistant/pull/12392
[#12421]: https://github.com/home-assistant/home-assistant/pull/12421
[#12435]: https://github.com/home-assistant/home-assistant/pull/12435
[#12445]: https://github.com/home-assistant/home-assistant/pull/12445
[#12447]: https://github.com/home-assistant/home-assistant/pull/12447
[#12448]: https://github.com/home-assistant/home-assistant/pull/12448
[#12452]: https://github.com/home-assistant/home-assistant/pull/12452
[@OverloadUT]: https://github.com/OverloadUT
[@amelchio]: https://github.com/amelchio
[@andrey-git]: https://github.com/andrey-git
[@danielhiversen]: https://github.com/danielhiversen
[@dgomes]: https://github.com/dgomes
[@ryanm101]: https://github.com/ryanm101
[@syssi]: https://github.com/syssi
[fan.xiaomi_miio docs]: https://home-assistant.io/components/fan.xiaomi_miio/
[isy994 docs]: https://home-assistant.io/components/isy994/
[light.template docs]: https://home-assistant.io/components/light.template/
[light.xiaomi_miio docs]: https://home-assistant.io/components/light.xiaomi_miio/
[media_player.plex docs]: https://home-assistant.io/components/media_player.plex/
[remote.xiaomi_miio docs]: https://home-assistant.io/components/remote.xiaomi_miio/
[sensor.sql docs]: https://home-assistant.io/components/sensor.sql/
[sensor.yr docs]: https://home-assistant.io/components/sensor.yr/
[switch.xiaomi_miio docs]: https://home-assistant.io/components/switch.xiaomi_miio/
[vacuum.xiaomi_miio docs]: https://home-assistant.io/components/vacuum.xiaomi_miio/

View File

@ -0,0 +1,19 @@
---
layout: post
title: "Cloud Update"
description: "Alexa skill now live in Germany, UK, Canada, Australia and India."
date: 2018-02-19 01:00:00
date_formatted: "February 19, 2018"
author: Paulus Schoutsen
author_twitter: balloob
comments: true
categories: Cloud
---
We're happy to announce that the Home Assistant skill is now available in Canada, UK, Germany, India and Australia! Check it out in the [Amazon Alexa Skill store][alexa skill].
In the meanwhile, we have also been working on the Google Assistant integration. We passed the first verification and are now working with Google to do the final verification. Stay tuned!
In less than 2 weeks the open beta is about to expire. We're still working on setting up the company and payment system so we can start accepting payments. Until we do, Home Assistant Cloud will remain free.
[alexa skill]: https://alexa.amazon.com/spa/index.html#skills/dp/B0772J1QKB/?ref=skill_dsk_skb_sr_2

View File

@ -16,6 +16,10 @@ regenerate: false
Check the Hass.io forums for <a href='https://community.home-assistant.io/tags/hassio-repository'>add-on repositories managed by the community</a>.
</p>
<p class='note'>
Add-ons are only available if you've used the Hass.io installer. If you installed Home Assistant using any other method then you cannot use add-ons (but you can achieve the same result manually).
</p>
{% assign addons = site.addons | sort: 'title' %}
<h3>{% linkable_title Featured add-ons %}</h3>

View File

@ -7,10 +7,7 @@ sidebar: true
comments: false
sharing: true
footer: true
logo: home-assistant.png
ha_release: "0.60"
ha_category: Cloud
ha_iot_class: "Cloud Push"
redirect_from: /components/cloud.alexa/
---
The Alexa integration allows users to control the entities via the [Home Assistant Smart Home skill for Alexa][alexa skill]. This means that you can say things like "Alexa, turn on the kitchen light" to control your local Home Assistant.
@ -21,8 +18,6 @@ To use this integration, you need to have:
- An Alexa enabled device like the Amazon Echo
- Activated the [Home Assistant Smart Home skill for Alexa][alexa skill]
<p class='note warning'>Only Amazon US is currently supported. Other regions are being certified.</p>
You can use `configuration.yaml` to configure the entities that are being shown to Alexa and how they are exposed.
```yaml
@ -45,7 +40,7 @@ cloud:
display_categories: LIGHT
```
{% configuration %}
{% configuration cloud %}
alexa:
description: Configuration options for the Amazon Alexa integration.
required: false

View File

@ -7,10 +7,6 @@ sidebar: true
comments: false
sharing: true
footer: true
logo: home-assistant.png
ha_release: 0.61
ha_category: Cloud
ha_iot_class: "Cloud Push"
published: false
---
@ -45,7 +41,7 @@ cloud:
type: 'action.devices.types.LIGHT'
```
{% configuration %}
{% configuration cloud %}
google_actions:
description: Configuration options for the Google Assistant integration.
required: false

View File

@ -0,0 +1,47 @@
---
layout: page
title: "Home Assistant Cloud"
description: "Enable the Home Assistant Cloud integration."
date: 2017-11-17 20:00
sidebar: true
comments: false
sharing: true
footer: true
logo: home-assistant.png
ha_release: "0.60"
ha_category: Voice
ha_iot_class: "Cloud Push"
---
<p class='note'>The Home Assistant Cloud is currently free and will become part of the upcoming Community Support Package. [Learn more](/blog/2017/12/17/introducing-home-assistant-cloud/)</p>
The Home Assistant Cloud allows you to quickly integrate your local Home Assistant with various cloud services like Amazon Alexa.
The following integrations are currently available:
- [Amazon Alexa (Amazon Echo)](/cloud/alexa/)
<!-- - [Google Assistant (Google Home)](/cloud/google_assistant/) -->
### {% linkable_title How does it work? %}
The Home Assistant Cloud has been designed with security in mind. When you activate the Cloud component, your instance will create a secure connection to the Home Assistant Cloud. There is no need for any further configuration or to expose your instance to the internet.
Integrations like Alexa will deliver messages to our cloud which we will forward to your local instance for processing. We just forward the response back to Alexa. This means that we do not have to store the state of your house in our cloud, were just the messenger!
You can find a list of frequently asked questions (and their answers) in [this blog post](/blog/2017/12/17/introducing-home-assistant-cloud/#faq).
### {% linkable_title Enabling the cloud %}
The Home Assistant Cloud is enabled by default. If not, add this to your configuration:
```yaml
# Example configuration.yaml entry to enable the cloud component
cloud:
```
Once activated, go to the configuration panel in Home Assistant and create an account and log in. If you are not seeing the **Configuration** panel, make sure you have the following option enabled in your configuration.yaml` file.
```yaml
config:
```

File diff suppressed because one or more lines are too long

View File

@ -85,7 +85,7 @@ $ git remote add upstream https://github.com/home-assistant/home-assistant.git
### {% linkable_title Setting up virtual environment %}
To isolate your environment from the rest of the system, set up a [`venv`](https://docs.python.org/3.4/library/venv.html). Within the `home-assistant` directory, create and activate your virtual environment.
To isolate your environment from the rest of the system, set up a [`venv`](https://docs.python.org/3/library/venv.html). Within the `home-assistant` directory, create and activate your virtual environment.
```bash
$ python3 -m venv .

View File

@ -10,23 +10,26 @@ footer: true
redirect_from: /hassio/addon_config/
---
There are different ways to communication between add-ons inside Home Assistant.
There are different ways for communication between add-ons inside Hass.io.
## {% linkable_title Network %}
We use an internal network. That allow to speak with every add-on or from Home Assistant to add-on by name or alias. Only the add-ons which runs on the host network are a bit limited. They can speak with all internal add-ons over their name but all other add-on can't address the add-on in question with its name. But using an alias work well. Thus the name/alias is used to communicate inside Hass.io. The name have the following format `{REPO}-{SLUG}`, e.g. `local-xy` or `3283fh-myaddon`.
We use an internal network that allows to communicate with every add-on, even to/from Home Assistant, by using his name or alias. Only the add-ons which run on the host network are a bit limited. These can talk with all internal add-ons by their name but all other add-on can't address these add-on by name - using an alias works for both!
Use `hassio` to speak with the internal API.
Name/alias are used for communication inside Hass.io.
The name is generated using the following format: `{REPO}_{SLUG}`, e.g. `local_xy` or `3283fh_myaddon`. In this example, `{SLUG}` is defined in an add-ons `config.json`. If an add-on is installed locally, `{REPO}` will be `local`. If the add-on is installed from a Github repository, `{REPO}` is a hashed identifier generated from the GitHub repository's URL (ex: https://github.com/xy/my_hassio_addons). See [here](https://github.com/home-assistant/hassio/blob/587047f9d648b8491dc8eef17dc6777f81938bfd/hassio/addons/utils.py#L17) to understand how this identifier is generated. Note that this identifier is required in certain service calls that use the [Hass.io add-on API](hassio-addon-api). You can view the repository identifiers for all currently installed add-ons via a GET request to the hassio API `addons` endpoint.
Use `hassio` for communication with the internal API.
## {% linkable_title Home Assistant %}
An add-on can speak to the [Home Assistant API][hass-api] with our internal proxy. That makes it very easy to communicate with the API without knowing the password, port or any other information of the Home Assistant instance. Use this URL: `http://hassio/homeassistant/api` and internal communication is redirected to the right place. The next stept is to add `homeassistant_api: true` to `config.json` and read the environment variable `HASSIO_TOKEN` and use this as Home-Assistant password.
An add-on can talk to the [Home Assistant API][hass-api] using the internal proxy. That makes it very easy to communicate with the API without knowing the password, port or any other information of the Home Assistant instance. Use this URL: `http://hassio/homeassistant/api` and internal communication is redirected to the right place. The next stept is to add `homeassistant_api: true` to `config.json` and read the environment variable `HASSIO_TOKEN` and use this as Home-Assistant password.
We have also a proxy for [Websocket Home Assistant API][hass-websocket]. It work like the API proxy above and use `HASSIO_TOKEN` as password. Use this URL: `http://hassio/homeassistant/websocket`.
There is also a proxy for the [Home Assistant Websocket API][hass-websocket]. It works like the API proxy above and requires `HASSIO_TOKEN` as password. Use this URL: `http://hassio/homeassistant/websocket`.
It is also possible to speak direct to the Home Assistant instance which is named `homeassistant` over our internal network. But you need to know the configuration that is used by the running instance.
It is also possible to talk direct to the Home Assistant instance which is named `homeassistant` over the internal network. But you need to know the configuration that is used by the running instance.
We have severals services for Hass.io inside Home Assistant to execute tasks. To send data over STDIN to an add-on use the simply `hassio.addon_stdin` service.
We have severals services for Hass.io inside Home Assistant to run tasks. To send data over STDIN to an add-on use the `hassio.addon_stdin` service.
## {% linkable_title Hass.io API %}
@ -35,3 +38,4 @@ To enables calls to the [Hass.io API][hassio-api], add `hassio_api: true` to `co
[hass-api]: https://home-assistant.io/developers/rest_api/
[hass-websocket]: https://home-assistant.io/developers/websocket_api/
[hassio-api]: https://github.com/home-assistant/hassio/blob/master/API.md
[hassio-addon-api]: https://github.com/home-assistant/hassio/blob/dev/API.md#restful-for-api-addons

View File

@ -11,7 +11,7 @@ footer: true
The goal of this getting started guide is to install [Hass.io](/hassio/) on a Raspberry Pi 3. Hass.io is our own all in one solution that turns your Raspberry Pi into the ultimate home automation hub.
Follow this guide if you want to easily get started with Home Assistant, or if you have no or little Linux experience. For advanced users or if you have no Raspberry Pi at hand, check our [alternative installation methods](/docs/installation/).
Follow this guide if you want to easily get started with Home Assistant, or if you have no or little Linux experience. For advanced users or if you have no Raspberry Pi at hand, check our [alternative installation methods](/docs/installation/). The [FAQ](/faq/#home-assistant-vs-hassio) explains more about the differences.
### {% linkable_title Hardware requirements %}

View File

@ -38,7 +38,7 @@ description: Open-source home automation platform running on Python 3. Track and
Use Alexa to control Home Assistant.
<div class='links'>
<a href='/components/cloud/'>LEARN MORE</a>
<a href='/cloud/'>LEARN MORE</a>
</div>
</div>