Merge branch 'current' into next

This commit is contained in:
Paulus Schoutsen 2017-06-08 22:25:43 -07:00
commit 70deaf5832
45 changed files with 698 additions and 236 deletions

View File

@ -140,13 +140,13 @@ social:
# Home Assistant release details
current_major_version: 0
current_minor_version: 45
current_minor_version: 46
current_patch_version: 1
date_released: 2017-05-22
date_released: 2017-06-09
# Either # or the anchor link to latest release notes in the blog post.
# Must be prefixed with a # and have double quotes around it.
# Major release:
patch_version_notes: "#release-0451---may-22"
patch_version_notes: "#release-0461---june-9"
# Minor release (Example #release-0431---april-25):
#patch_version_notes: "#release-0451---may-X"

View File

@ -0,0 +1,12 @@
---
layout: page
title: "Bluetooth BCM43xx"
description: "Activate bluetooth for bcm43xx"
date: 2017-04-30 13:28
sidebar: true
comments: false
sharing: true
footer: true
---
Start Bluetooth for BCM43xx chipset on startup. Like Raspberry Pi3

View File

@ -43,16 +43,16 @@ automation:
trigger:
- platform: state
entity_id: sensor.pir1
state: 'active'
to: 'active'
- platform: state
entity_id: sensor.pir2
state: 'active'
to: 'active'
- platform: state
entity_id: sensor.door
state: 'open'
to: 'open'
- platform: state
entity_id: sensor.window
state: 'open'
to: 'open'
condition:
- condition: state
entity_id: alarm_control_panel.ha_alarm

View File

@ -16,8 +16,57 @@ ha_release: "0.45"
Home Assistant will automatically discover their presence on your network.
## {% linkable_title Dependencies %}
```bash
$ sudo apt-get install python3-gi gir1.2-gstreamer-1.0
```
Depending on how you run Home Assistant you might be needed to symlink the `gi` module into your environment.
Hassbian:
```bash
$ ln -s /usr/lib/python3/dist-packages/gi /srv/homeassistant/lib/python3.4/site-packages
```
Raspberry Pi All-In-One Installer:
```bash
$ ln -s /usr/lib/python3/dist-packages/gi /srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages
```
You can also manually configure your devices by adding the following lines to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
axis:
m1065lw:
host: IP ADDRESS
include:
- camera
```
Configuration variables:
- **device** (*Required*): Unique name for the Axis device.
- **host** (*Required*): The IP address to your Axis device.
- **username** (*Optional*): The username to your Axis device. Defaults to `root`.
- **password** (*Optional*): The password to your Axis device. Defaults to `pass`.
- **trigger_time** (*Optional*): Minimum time (in seconds) a sensor should keep its positive value. Defaults to 0.
- **location** (*Optional*): Physical location of your Axis device. Default not set.
- **include** (*Required*): This cannot be empty else there would be no use adding the device at all.
- **camera**: Stream MJPEG video to Home Assistant.
- **motion**: The built-in motion detection in Axis cameras.
- **vmd3**: ACAP Motion Detection app which has better algorithms for motion detection.
- **pir**: PIR sensor that can trigger on motion.
- **sound**: Sound detector.
- **daynight**: Certain cameras have day/night mode if they have built-in IR lights.
- **tampering**: Signals when camera believes that it has been tampered with.
- **input**: Trigger on whatever you have connected to device input port.
A full configuration example could look like this:
```yaml
# Example configuration.yaml entry
axis:
@ -26,46 +75,15 @@ axis:
username: USERNAME
password: PASSWORD
include:
- camera
- motion
- pir
- sound
- daynight
- camera
- motion
- pir
- sound
- daynight
trigger_time: 0
location: köket
```
## {% linkable_title Dependencies %}
```bash
sudo apt-get install python3-gi gir1.2-gstreamer-1.0
```
Depending on how you run Home Assistant you might be needed to symlink the `gi` module into your environment (e.g. in Hassbian):
```bash
ln -s /usr/lib/python3/dist-packages/gi /srv/homeassistant/lib/python3.4/site-packages
```
## {% linkable_title Configuration variables %}
- **device** (*Required*): Unique name
- **host** (*Required*): The IP address to your Axis device.
- **username** (*Optional*): The username to your Axis device. Default 'root'.
- **password** (*Optional*): The password to your Axis device. Default 'pass'.
- **trigger_time** (*Optional*): Minimum time (in seconds) a sensor should keep its positive value. Default 0.
- **location** (*Optional*): Physical location of your Axis device. Default not set.
- **include** (*Required*): This cannot be empty else there would be no use adding the device at all.
- **camera**: Stream MJPEG video to Home Assistant
- **motion**: The Built in motion detection in Axis cameras
- **vmd3**: ACAP Motion Detection app which has better algorithms for motion detection
- **pir**: PIR sensor that can trigger on motion
- **sound**: Sound detector
- **daynight**: Certain cameras have day/night mode if they have built-in IR lights
- **tampering**: signals when camera believes that it has been tampered with
- **input**: trigger on whatever you have connected to device input port
<p class='note'>
Any specific levels for triggers needs to be configured on the device.
</p>

View File

@ -25,7 +25,13 @@ blink:
password: YOUR_PASSWORD
```
Configuration variables:
- **username** (*Required*): Your username to login to Blink.
- **password** (*Required*): Your password to login to Blink.
Once loaded, your front end will have the following components:
* A camera image for each camera in your system.
* A binary_sensor per camera that indicates whether motion detection is enabled.
* A binary_sensor for the system that indicates if the system is armed or disarmed.
@ -33,25 +39,27 @@ Once loaded, your front end will have the following components:
* A sensor per camera that reports battery level.
* A sensor per camera that reports unread notification (ie. detected motion events).
Since the cameras are battery operated, the images are only updated in Home Assistant when the user manually forces a new photo. This image can be updated with the `blink.snap_picture` service followed by a `blink.force_update` service call to force Home Assistant to request an update from Blink's servers. If the `blink.force_update` service is not called, the image will be updated within a 180 second interval, set so that automatic server requests don't overwhelm the Blink API. As a note, all of the camera-specific sensors are only polled when a new image is requested from the camera. This means that relying on any of these sensors to provide timely and accurate data is not recommended.
Since the cameras are battery operated, the images are only updated in Home Assistant when the user manually forces a new photo. This image can be updated with the `snap_picture` service to force Home Assistant to request an update from Blink's servers. As a note, all of the camera-specific sensors are only polled when a new image is requested from the camera. This means that relying on any of these sensors to provide timely and accurate data is not recommended.
Services:
There are three services availiabe for the blink platform:
This services are available for the `blink` component:
- arm_system
- arm_camera
- snap_picture
- force_update
For `blink.arm_system`, the value sent can be either "True" or "False" and will arm and disarm the whole blink system, respectively
Arm system example
For `arm_system`, the value sent can be either `True` or `False` and will arm and disarm the whole Blink system. Arm system example:
```json
{
"device_armed": "True"
}
```
Arm camera follows a similar structure, but each indidivual camera can have motion detection enabled or disabled. Because of this, you also need to supply a name. For example, if I have a camera named "Living Room" and I want to turn off motion detection on that camera, I'd call the `blink.arm_camera` service with the following payload:
Arm camera follows a similar structure, but each indidivual camera can have motion detection enabled or disabled. Because of this, you also need to supply a name. For example, if you have a camera named "Living Room" and you want to turn off motion detection on that camera, you would call the `arm_camera` service with the following payload:
```json
{
"friendly_name": "Living Room",
@ -59,20 +67,14 @@ Arm camera follows a similar structure, but each indidivual camera can have moti
}
```
The `blink.snap_picture` service takes the camera name as the payload and with take a new picture with your camera.
```
The `snap_picture` service takes the camera name as the payload and with take a new picture with your camera.
```json
{
"friendly_name": "Living Room"
}
```
The `blink.force_update` service can simply be called with no payload to force a server update.
Configuration variables:
- **username** (*Required*): Your username to login to Blink
- **password** (*Required*): Your password to login to Blink
<p class='img'>
<img src='{{site_root}}/images/screenshots/blink_example_frontend.png' />
</p>

View File

@ -12,7 +12,7 @@ ha_category: Camera
ha_release: 0.46
---
To get your [Arlo](https://arlo.netgear.com/) sensors working within Home Assistant, please follow the instructions for the general [Arlo component](/components/arlo).
To get your [Arlo](https://arlo.netgear.com/) cameras working within Home Assistant, please follow the instructions for the general [Arlo component](/components/arlo).
This component is not yet able to live stream from your Arlo camera, but it will be able to playback the last video capture.

View File

@ -33,4 +33,5 @@ See the [device tracker component page](/components/device_tracker/) for instruc
Also known to be working with the following devices:
- Irish Virgin Media Super Hub 3.0
- Ziggo Connectbox NL

View File

@ -28,6 +28,8 @@ To enable the emulated Hue bridge, add one of the following configs to your `con
```yaml
# Google Home example configuration.yaml entry
emulated_hue:
type: google_home
listen_port: 80
# Google Home does not work on different ports.
```
@ -111,6 +113,8 @@ You can verify that the `emulated_hue` component has been loaded and is respondi
- `http://<HA IP Address>:8300/description.xml` - This URL should return a descriptor file in the form of an XML file.
- `http://<HA IP Address>:8300/api/pi/lights` - This will return a list of devices, lights, scenes, groups, etc.. that `emulated_hue` is exposing to Alexa.
For Google Home, verify that the URLs above are using port 80, rather than port 8300 (i.e. http://<HA IP Address>:80/description.xml).
An additional step is required to run Home Assistant as non-root user and use port 80 when using the AiO script. Execute the following command to allow `emulated_hue` to use port 80 as non-root user.
```bash

View File

@ -52,7 +52,7 @@ automation:
data_template: "{{ trigger.event.data.title }}"
```
*Any field under the `<entry>` tag in the feed can be used for example `tigger.event.data.content` will get the body of the feed entry.
*Any field under the `<entry>` tag in the feed can be used for example `trigger.event.data.content` will get the body of the feed entry.
For more advanced use cases, a custom component registering to the `feedreader` event type could be used instead:

View File

@ -1,6 +1,6 @@
---
layout: page
title: "Home Assistant 0.45"
title: "Home Assistant 0.46"
description: ""
date: 2016-12-16 17:00
sidebar: true
@ -9,7 +9,7 @@ sharing: true
footer: true
logo: home-assistant.png
ha_category: Other
ha_release: 0.45
ha_release: 0.46
---
Details about the latest release can always be found at:

View File

@ -26,22 +26,22 @@ automation:
trigger:
- platform: state
entity_id: group.all_devices
state: 'not_home'
to: 'not_home'
condition:
- platform: state
entity_id: sun.sun
state: 'above_horizon'
state: 'above_horizon'
action:
service: ifttt.trigger
data: {"event":"manything_on"}
- alias: 'ManyThing Recording OFF'
# This calls an IFTTT recipe to turn off recording of the ManyThing Camera
# when we are home unless it's nighttime.
# when we get home unless it's nighttime.
trigger:
- platform: state
entity_id: group.all_devices
state: 'home'
to: 'home'
condition:
- condition: state
entity_id: sun.sun

View File

@ -68,8 +68,8 @@ You need to setup a unique trigger for each event you sent to IFTTT.
automation:
alias: Startup Notification
trigger:
platform: event
event_type: homeassistant_start
platform: homeassistant
event: start
action:
service: ifttt.trigger
data: {"event":"TestHA_Trigger", "value1":"Hello World!"}
@ -82,8 +82,8 @@ IFTTT can also be used in scripts and with `data_template`. Here is the above a
automation:
alias: Startup Notification
trigger:
platform: event
event_type: homeassistant_start
platform: homeassistant
event: start
action:
service: script.ifttt_notify
data_template:

View File

@ -36,6 +36,27 @@ Most lights do not support all attributes. You can check the platform documentat
| `flash` | yes | Tell light to flash, can be either value `short` or `long`.
| `effect`| yes | Applies an effect such as `colorloop` or `random`.
<p class='note'>
In order to apply attributes to an entity you will need to add `data:` to the configuration. See example below
</p>
```yaml
# Example configuration.yaml entry
automation:
- id: one
alias: Turn on light when motion is detected
trigger:
- platform: state
entity_id: binary_sensor.motion_1
to: 'on'
action:
- service: light.turn_on
data:
entity_id: light.living_room
brightness: 255
kelvin: 2700
```
### {% linkable_title Service `light.turn_off` %}
Turns one or multiple lights off.

View File

@ -53,10 +53,8 @@ alias: "Bathroom Motion Detected"
trigger:
platform: state
entity_id: binary_sensor.motion_sensor_166d0001171111
from: 'off'
to: 'on'
state: 'on'
action:
service: media_player.turn_on
data:

View File

@ -47,7 +47,7 @@ Available services: `turn_on`, `turn_off`, `toggle`, `volume_up`, `volume_down`,
| -----------------------| -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `entity_id` | yes | Target a specific media player. Defaults to all. |
| `media_content_id` | no | A media identifier. The format of this is component dependent. For example, you can provide URLs to Sonos and Cast but only a playlist ID to iTunes. |
| `media_content_type` | no | A media type. Must be one of `MUSIC`, `TVSHOW`, `VIDEO`, `EPISODE`, `CHANNEL` or `PLAYLIST`. For example, to play music you would set `media_content_type` to `MUSIC`. |
| `media_content_type` | no | A media type. Must be one of `music`, `tvshow`, `video`, `episode`, `channel` or `playlist`. For example, to play music you would set `media_content_type` to `music`. |
#### {% linkable_title Service `media_player/select_source` %}

View File

@ -13,7 +13,7 @@ ha_release: 0.7.5
---
The `telegram` platform uses [Telegram](https://web.telegram.org) to delivery notifications from Home Assistant to your Android device, your Windows phone, or your iOS device.
The `telegram` platform uses [Telegram](https://web.telegram.org) to deliver notifications from Home Assistant to your Android device, your Windows phone, or your iOS device.
The requirements are:
@ -89,7 +89,7 @@ Configuration variables:
- **message** (*Required*): Message text.
- **title** (*Optional*): Will be composed as '%title\n%message'.
- **keyboard** (*Optional*): List of rows of commands, comma-separated, to make a custom keyboard.
- **inline_keyboard** (*Optional*): List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with asociated callback data.
- **inline_keyboard** (*Optional*): List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with associated callback data.
### {% linkable_title Photo support %}
@ -119,7 +119,7 @@ Configuration variables:
- **password** (*Optional*): Username for a URL which require HTTP authentication.
- **authentication** (*Optional*): Set to 'digest' to use HTTP digest authentication, defaults to 'basic'.
- **keyboard** (*Optional*): List of rows of commands, comma-separated, to make a custom keyboard.
- **inline_keyboard** (*Optional*): List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with asociated callback data.
- **inline_keyboard** (*Optional*): List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with associated callback data.
### {% linkable_title Document support %}
@ -148,7 +148,7 @@ Configuration variables:
- **password** (*Optional*): Username for a URL which require HTTP authentication.
- **authentication** (*Optional*): Set to 'digest' to use HTTP digest authentication, defaults to 'basic'.
- **keyboard** (*Optional*): List of rows of commands, comma-separated, to make a custom keyboard.
- **inline_keyboard** (*Optional*): List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with asociated callback data.
- **inline_keyboard** (*Optional*): List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with associated callback data.
### {% linkable_title Location support %}
@ -171,4 +171,4 @@ Configuration variables:
- **latitude** (*Required*): The latitude to send.
- **longitude** (*Required*): The longitude to send.
- **keyboard** (*Optional*): List of rows of commands, comma-separated, to make a custom keyboard.
- **inline_keyboard** (*Optional*): List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with asociated callback data.
- **inline_keyboard** (*Optional*): List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with associated callback data.

View File

@ -59,7 +59,7 @@ automation:
trigger:
platform: state
entity_id: binary_sensor.front_door_motion
state: 'on'
to: 'on'
action:
service: notify.livingroom_tv
data:

View File

@ -14,7 +14,7 @@ ha_release: 0.39
---
The `itach` remote platform allows you to control IR devices with a [Global Caché iTach Device](https://www.globalcache.com/products/itach/ip2irspecs)
The `itach` remote platform allows you to control IR devices with a [Global Caché iTach Device](https://www.globalcache.com/products/itach/ip2irspecs) and GC-100 devices. The Global Cache IR API are similar accross their product line. See API documentation links at the end of this page.
To use your iTach remote in your installation, you will need to know the IR commands for your devices in Pronto hex format and add the following to your `configuration.yaml` file:
@ -35,13 +35,21 @@ remote:
```
Configuration variables:
- **name** (*Required*): The iTach's name to display in the front end.
- **name** (*Optional*): The iTach's name to display in the front end.
- **host** (*Required*): The iTach's IP address.
- **port** (*Optional*): The iTach's port. 4998 is default.
- **devices** array (*Required*): Devices controlled by the iTach.
- **name** (*Required*): Name of the device.
- **modaddr** (*Optional*): iTach module address for the IR emitter. 1 is default.
- **connaddr** (*Required*): iTach connection address for the IR emitter.
- **connaddr** (*Required*): iTach connection location for the IR emitter. (Note connaddr is a misleading label. Do not put the connection address here. Technically the connection address is the combination of the module address plus the connection location).
- **commands** array (*Required*): Commands available to send to the device.
- **name** (*Required*): Command name.
- **data** (*Required*): Hex command data.
An example to call the component from developer tools using the remote, send_command service `{ "entity_id":"remote.tv", "device":"0", "command":"menu" }`
Note: Global Cache devices expect data in their own format of "sendir...". This component converts hex code to Global Cache IR form.
API Docs:
- [iTach](https://www.globalcache.com/files/docs/API-iTach.pdf)
- [GC-100](http://www.globalcache.com/files/docs/API-GC-100.pdf)

View File

@ -147,6 +147,5 @@ Here, last Monday is _today_ as a timestamp, minus 86400 times the current weekd
```
<p class='note'>
The `/dev-template` page of your home-assistant UI can help you check if the values for `start`, `end` or `duration` are correct.
If you want to check if your period is right, just click on your component, the `from` and `to` attributes will show the start and end of the period, nicely formatted.
The `/dev-template` page of your home-assistant UI can help you check if the values for `start`, `end` or `duration` are correct. If you want to check if your period is right, just click on your component, the `from` and `to` attributes will show the start and end of the period, nicely formatted.
</p>

View File

@ -45,7 +45,7 @@ Some example automations:
trigger:
platform: state
entity_id: sensor.modem_callerid
state: "callerid"
to: "callerid"
action:
service: notify.notify
data:
@ -54,7 +54,7 @@ Some example automations:
trigger:
platform: state
entity_id: sensor.modem_callerid
state: "callerid"
to: "callerid"
action:
service: persistent_notification.create
data:
@ -64,7 +64,7 @@ Some example automations:
trigger:
platform: state
entity_id: sensor.modem_callerid
state: "callerid"
to: "callerid"
action:
service: tts.google_say
data_template:

View File

@ -2,7 +2,7 @@
layout: page
title: "Sense HAT"
description: "Instructions how to integrate Sense HAT within Home Assistant."
date: 2016-12-05 07:00
date: 2017-06-03 04:00
sidebar: true
comments: false
sharing: true
@ -124,18 +124,18 @@ As all of the following steps should be under the `pi` user environment.
###### Install _RTIMU_
```bash
# Install RTIMU to pi user environment
# pi user environment: Install RTIMU
pip3 install rtimulib
# Add symlink to RTIMU in _homeassistant_venv_
# Create a symlink using the following command:
ln -s /usr/lib/python3/dist-packages/RTIMU.cpython-34m-arm-linux-gnueabihf.so /srv/homeassistant/homeassistant_venv/lib/python3.4/
# Add _homeassistant_ user to the _input_ and the _i2c_ groups
# pi user environment: Add _homeassistant_ user to the _input_, _video_ and the _i2c_ groups
sudo addgroup homeassistant input
sudo addgroup homeassistant i2c
sudo addgroup homeassistant video
# Reboot Raspberry Pi to apply changes
# HA environment: Add symlink to RTIMU
ln -s /usr/lib/python3/dist-packages/RTIMU.cpython-35m-arm-linux-gnueabihf.so /srv/homeassistant/lib/python3.5/site-packages/
# pi user environment: Reboot Raspberry Pi to apply changes
sudo reboot
```

View File

@ -15,13 +15,15 @@ ha_iot_class: "Local Polling"
The `waqi` sensor platform will query [World Air Quality Index](http://aqicn.org) service to check AQI value for a specific set of locations. The resulting indexes will be added to the Home Assistant as sensor outputs.
This sensor requires an API token. Please obtain one at [AQICN API token](http://aqicn.org/data-platform/token/#/).
To enable this sensor, add the following lines to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: waqi
token: AQICN_API_TOKEN
token: AQICN_API_TOKEN
locations:
- beijing
stations:
@ -30,11 +32,9 @@ sensor:
Configuration variables:
- **locations** (*Required*): a list of location names to look for air quality data. In case a specific location has multiple registered stations all of them will be added to Home Assistant
- **token** (*Required*): a token for the AQICN public API. Please obtain one at [AQICN API token](http://aqicn.org/data-platform/token/#/)
- **stations** (*Optional*): a list of station names to look for air quality data. Station should be within locations specified above.
- **locations** (*Required*): A list of location names to look for air quality data. In case a specific location has multiple registered stations all of them will be added to Home Assistant.
- **token** (*Required*): The token for the AQICN public API.
- **stations** (*Optional*): A list of station names to look for air quality data. Station should be within locations specified above.
The value reported is an overall AQ index for the location. The values of the index can be interpreted as following:

View File

@ -19,107 +19,93 @@ To enable it, add the following lines to your `configuration.yaml`:
```yaml
# Example configuration.yaml entry
switch:
platform: broadlink
host: IP_ADDRESS
mac: 'MAC_ADDRESS'
switches:
reciever:
command_on: 'switch_packet on'
command_off: 'switch_packet off'
- platform: broadlink
host: IP_ADDRESS
mac: 'MAC_ADDRESS'
switches:
reciever:
command_on: 'switch_packet on'
command_off: 'switch_packet off'
```
Configuration variables:
- **host** (*Required*): The hostname/IP address to connect to.
- **mac** (*Required*): Device mac address.
- **timeout** (*Optional*): Timeout in seconds for the connection to the device
- **mac** (*Required*): Device MAC address.
- **timeout** (*Optional*): Timeout in seconds for the connection to the device.
- **friendly_name** (*Optional*): The name used to display the switch in the frontend.
- **type** (*Optional*): Switch type. (rm, rm2, rm_mini, rm_pro_phicomm, rm2_home_plus, rm2_home_plus_gdt, rm2_pro_plus, rm2_pro_plus2, rm2_pro_plus_bl, rm_mini_shate, sp1, sp2, honeywell_sp2, sp3, spmini2 or spminiplus)
- **type** (*Optional*): Switch type. Choose one from: `rm`, `rm2`, `rm_mini`, `rm_pro_phicomm`, `rm2_home_plus`, `rm2_home_plus_gdt`, `rm2_pro_plus`, `rm2_pro_plus2`, `rm2_pro_plus_bl`, `rm_mini_shate`, `sp1`, `sp2`, `honeywell_sp2`, `sp3`, `spmini2` or `spminiplus`.
- **switches** (*Optional*): The array that contains all switches.
- **identifier** (*Required*): Name of the command switch as slug. Multiple entries are possible.
- **friendly_name** (*Optional*): The name used to display the switch in the frontend.
- **command_on** (*Required*): Base64 encoded packet from RM device to take for on.
- **command_off** (*Required*): Base64 encoded packet from RM device to take for off.
Information about how to install on Windows can be found [here](https://home-assistant.io/components/sensor.broadlink/#microsoft-windows-installation)
### {% linkable_title How to obtain IR/RF packets? %}
Choose Call Service from the Developer Tools. Choose the service broadlink/learn_command from the list of Available services: and hit CALL SERVICE. Press the button on your remote with in 20 seconds. The packet will be printed in the log and as a persistent notification.
Choose Call Service from the Developer Tools. Choose the service broadlink/learn_command from the list of **Available services:** and hit **CALL SERVICE**. Press the button on your remote with in 20 seconds. The packet will be printed as a persistent notification in the States page of the web interface.
Example config for rm, rm2, rm_mini, rm_pro_phicomm, rm2_home_plus, rm2_home_plus_gdt, rm2_pro_plus, rm2_pro_plus2, rm2_pro_plus_bl and rm_mini_shate devices:
Example config for `rm`, `rm2`, `rm_mini`, `rm_pro_phicomm`, `rm2_home_plus`, `rm2_home_plus_gdt`, `rm2_pro_plus`, `rm2_pro_plus2`, `rm2_pro_plus_bl` and `rm_mini_shate` devices:
```yaml
switch 2:
platform: broadlink
host: 192.168.1.2
mac: 'B4:43:0D:CC:0F:58'
timeout: 15
switches:
# Will work on most Phillips tvs:
tv_phillips:
friendly_name: "Phillips Tv Power"
command_on: 'JgAcAB0dHB44HhweGx4cHR06HB0cHhwdHB8bHhwADQUAAAAAAAAAAAAAAAA='
command_off: 'JgAaABweOR4bHhwdHB4dHRw6HhsdHR0dOTocAA0FAAAAAAAAAAAAAAAAAAA='
# Will work on most LG tvs
tv_lg:
friendly_name: "LG Tv Power"
command_on: 'JgBYAAABIJISExETETcSEhISEhQQFBETETcROBESEjcRNhM1EjcTNRMTERISNxEUERMSExE2EjYSNhM2EhIROBE3ETcREhITEgAFGwABH0oSAAwzAAEfShEADQU='
command_off: 'JgBYAAABIJISExETETcSEhISEhQQFBETETcROBESEjcRNhM1EjcTNRMTERISNxEUERMSExE2EjYSNhM2EhIROBE3ETcREhITEgAFGwABH0oSAAwzAAEfShEADQU='
tv_lg_hdmi1_hdmi2:
friendly_name: "LG Tv HDMI12"
command_on: 'JgBIAAABIZMRExITEjYSExMRERURExEUEDkRNxEUEjYSNhM3ETcSNxITETgSNhI2ExMQExE4ETYSNxIUERMSExE4ETcRFBETEQANBQ=='
command_off: 'JgBQAAABJJMSEhISETgSEhITEBMSEhMSETcSNxMREjcSNxI3EjcSOBETERITNhM2EhITERM2EzcRNxI3ExISEhI3EjcRExETEgAFLQABJEoRAA0FAAAAAAAAAAA='
tv_lg_hdmi3:
friendly_name: "LG Tv HDMI3"
command_on: 'JgBIAAABIZMSFBISETgRExEUERQQFBETEjcTNhMSETgRNxE3EjcROBM2ERMSFBE4ERMSNxM2EjUSFBE2ETgRExM2ExITEhATEwANBQ=='
tv_lg_av1_av2:
friendly_name: "LG Tv AV12"
command_on: 'JgBIAAABIpQPFBITETgSEw8UEhQSEhEVDzgSOBAUETgQOQ84EjgRNxITETgSExA5EDgREhI3EhMROBMSEDkQFBETEjYTEhE4EQANBQ=='
command_off: 'JgBIAAABH5YPFBETETgUERAUEBURFBATETgROBEUETcSNxE4ETcSOBISEBUQFREUEjUSFBA5ETcRNxE4ETkQOBAUEjcRFRAUEQANBQ=='
switch 2:
platform: broadlink
host: 192.168.1.2
mac: 'B4:43:0D:CC:0F:58'
timeout: 15
switches:
# Will work on most Phillips tvs:
tv:
friendly_name: "Phillips Tv"
command_on: 'JgAcAB0dHB44HhweGx4cHR06HB0cHhwdHB8bHhwADQUAAAAAAAAAAAAAAAA='
command_off: 'JgAaABweOR4bHhwdHB4dHRw6HhsdHR0dOTocAA0FAAAAAAAAAAAAAAAAAAA='
switch:
- platform: broadlink
host: 192.168.1.2
mac: 'B4:43:0D:CC:0F:58'
timeout: 15
switches:
# Will work on most Phillips TVs:
tv_phillips:
friendly_name: "Phillips Tv Power"
command_on: 'JgAcAB0dHB44HhweGx4cHR06HB0cHhwdHB8bHhwADQUAAAAAAAAAAAAAAAA='
command_off: 'JgAaABweOR4bHhwdHB4dHRw6HhsdHR0dOTocAA0FAAAAAAAAAAAAAAAAAAA='
# Will work on most LG TVs
tv_lg:
friendly_name: "LG Tv Power"
command_on: 'JgBYAAABIJISExETETcSEhISEhQQFBETETcROBESEjcRNhM1EjcTNRMTERISNxEUERMSExE2EjYSNhM2EhIROBE3ETcREhITEgAFGwABH0oSAAwzAAEfShEADQU='
command_off: 'JgBYAAABIJISExETETcSEhISEhQQFBETETcROBESEjcRNhM1EjcTNRMTERISNxEUERMSExE2EjYSNhM2EhIROBE3ETcREhITEgAFGwABH0oSAAwzAAEfShEADQU='
tv_lg_hdmi1_hdmi2:
friendly_name: "LG Tv HDMI12"
command_on: 'JgBIAAABIZMRExITEjYSExMRERURExEUEDkRNxEUEjYSNhM3ETcSNxITETgSNhI2ExMQExE4ETYSNxIUERMSExE4ETcRFBETEQANBQ=='
command_off: 'JgBQAAABJJMSEhISETgSEhITEBMSEhMSETcSNxMREjcSNxI3EjcSOBETERITNhM2EhITERM2EzcRNxI3ExISEhI3EjcRExETEgAFLQABJEoRAA0FAAAAAAAAAAA='
tv_lg_hdmi3:
friendly_name: "LG Tv HDMI3"
command_on: 'JgBIAAABIZMSFBISETgRExEUERQQFBETEjcTNhMSETgRNxE3EjcROBM2ERMSFBE4ERMSNxM2EjUSFBE2ETgRExM2ExITEhATEwANBQ=='
tv_lg_av1_av2:
friendly_name: "LG Tv AV12"
command_on: 'JgBIAAABIpQPFBITETgSEw8UEhQSEhEVDzgSOBAUETgQOQ84EjgRNxITETgSExA5EDgREhI3EhMROBMSEDkQFBETEjYTEhE4EQANBQ=='
command_off: 'JgBIAAABH5YPFBETETgUERAUEBURFBATETgROBEUETcSNxE4ETcSOBISEBUQFREUEjUSFBA5ETcRNxE4ETkQOBAUEjcRFRAUEQANBQ=='
- platform: broadlink
host: 192.168.1.2
mac: 'B4:43:0D:CC:0F:58'
timeout: 15
switches:
# Will work on most Phillips TVs:
tv:
friendly_name: "Phillips Tv"
command_on: 'JgAcAB0dHB44HhweGx4cHR06HB0cHhwdHB8bHhwADQUAAAAAAAAAAAAAAAA='
command_off: 'JgAaABweOR4bHhwdHB4dHRw6HhsdHR0dOTocAA0FAAAAAAAAAAAAAAAAAAA='
```
Example config for sp1, sp2, honeywell_sp2, sp3, spmini2 and spminiplus devices:
Example config for `sp1`, `sp2`, `honeywell_sp2`, `sp3`, `spmini2` and `spminiplus` devices:
```yaml
switch 1:
platform: broadlink
host: IP_ADDRESS
mac: 'MAC_ADDRESS'
type: sp1
friendly_name: 'Humidifier'
switch 2:
platform: broadlink
host: IP_ADDRESS
mac: 'MAC_ADDRESS'
type: sp2
friendly_name: 'Humidifier'
switch:
- platform: broadlink
host: IP_ADDRESS
mac: 'MAC_ADDRESS'
type: sp1
friendly_name: 'Humidifier'
- platform: broadlink
host: IP_ADDRESS
mac: 'MAC_ADDRESS'
type: sp2
friendly_name: 'Humidifier'
```
### {% linkable_title Service `send_packet` %}
You can use the service broadlink/send_packet to directly send IR packets without the need to assign a switch entity for each command.
@ -141,12 +127,11 @@ script:
- "JgBGAJSTFDUUNhM2ExITEhMSExITEhM2EzYTNhQRFBEUERQRFBEUNRQ2ExITNhMSExITNhMSExITEhM2ExITNhQ1FBEUNhMADQUAAA=="
```
### {% linkable_title Using E-Control Remotes %}
If you already have your remotes learned on E-Control app you can use this method to "copy" trem to HA.
If you already have your remotes learned on E-Control app you can use this method to "copy" them to Home Assistant.
First get or learn all the remotes you want to add on HA in E-Control
First get or learn all the remotes you want to add to Home Assistant in E-Control
1. Download
@ -158,7 +143,7 @@ First get or learn all the remotes you want to add on HA in E-Control
3. Get data from your Android device
Connect your Android device to your computer and browse the SD card / External Storage folder "/broadlink/newremote/SharedData/". You need to get the following files and put them in the same folder as this script.:
Connect your Android device to your computer and browse the SD card/External Storage folder "/broadlink/newremote/SharedData/". You need to get the following files and put them in the same folder as this script:
jsonSubIr
jsonButton
@ -179,11 +164,11 @@ First get or learn all the remotes you want to add on HA in E-Control
3. `sudo python setup.py install`
7. Test the codes
Use the `sendcode` script you have already downloded to test the codes you got from the device
You need to edit the script with your RM Pro IP Address and MAC Address and with the code in hex format.
When run the script, you know the code works when get message
Use the `sendcode` script you have already downloded to test the codes you got from the device.
You need to edit the script with your RM Pro IP Address and MAC Address and with the code in HEX format.
When run the script, you know the code works when get message .
Code sent...
Not every code works.
8. Convert the hex codes to base64
8. Convert the HEX codes to base64
Use [this](http://tomeko.net/online_tools/hex_to_base64.php?lang=en1) tool to convert the hex codes to base64 for use with Home Assistant.

View File

@ -18,7 +18,7 @@ The component will update your lights based on the the time of day. It will only
During the day (in between `start time` and `sunset time`), it will fade the lights from the `start_colortemp` to the `sunset_colortemp`. After sunset (between `sunset_time` and `stop_time`), the lights will fade from the the `sunset_colortemp` to the `stop_colortemp`. If the lights are still on after the `stop_time` it will continue to change the light to the `stop_colortemp` until the light is turned off. The fade effect is created by updating the lights every 30 seconds with a 30 second transition time.
If you don't wish to have flux update on 30 second intervals, you can leave the switch turned off and use automation rules that call the service `switch.flux_update` whenever you want the lights updated.
If you don't wish to have flux update on 30 second intervals, you can leave the switch turned off and use automation rules that call the service `switch.<name>_update` whenever you want the lights updated, where `<name>` equals the `name:` property in the switch configuration.
To use the Flux switch in your installation, add the following to your `configuration.yaml` file:

View File

@ -33,7 +33,7 @@ switch:
Configuration variables:
- **access_token** (*Required3): Your Rachio API Access Token.
- **access_token** (*Required): Your Rachio API Access Token.
- **manual_run_mins** (*Optional*): For how long, in minutes, to turn on a station when the switch is enabled. Defaults to 10 minutes.
## {% linkable_title Examples %}

View File

@ -32,7 +32,7 @@ Send a notification.
| `disable_notification` | yes | True/false for send the message silently. iOS users and web users will not receive a notification, Android users will receive a notification with no sound. Defaults to False. |
| `disable_web_page_preview`| yes | True/false for disable link previews for links in the message. |
| `keyboard` | yes | List of rows of commands, comma-separated, to make a custom keyboard. Example: `["/command1, /command2", "/command3"]` |
| `inline_keyboard` | yes | List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with asociated callback data. Example: `["/button1, /button2", "/button3"]` or `[[["Text btn1", "/button1"], ["Text btn2", "/button2"]], [["Text btn3", "/button3"]]]` |
| `inline_keyboard` | yes | List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with associated callback data. Example: `["/button1, /button2", "/button3"]` or `[[["Text btn1", "/button1"], ["Text btn2", "/button2"]], [["Text btn3", "/button3"]]]` |
#### {% linkable_title Service `telegram_bot/send_photo` %}
Send a photo.
@ -44,10 +44,11 @@ Send a photo.
| `caption` | yes | The title of the image. |
| `username` | yes | Username for a URL which require HTTP basic authentication. |
| `password` | yes | Password for a URL which require HTTP basic authentication. |
| `authentication` | yes | Define which authentication method to use. Set to `digest` to use HTTP digest authentication. Defaults to `basic`. |
| `target` | yes | An array of pre-authorized chat_ids to send the notification to. Defaults to the first allowed chat_id. |
| `disable_notification` | yes | True/false for send the message silently. iOS users and web users will not receive a notification, Android users will receive a notification with no sound. Defaults to False. |
| `keyboard` | yes | List of rows of commands, comma-separated, to make a custom keyboard. Example: `["/command1, /command2", "/command3"]` |
| `inline_keyboard` | yes | List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with asociated callback data. Example: `["/button1, /button2", "/button3"]` or `[[["Text btn1", "/button1"], ["Text btn2", "/button2"]], [["Text btn3", "/button3"]]]` |
| `inline_keyboard` | yes | List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with associated callback data. Example: `["/button1, /button2", "/button3"]` or `[[["Text btn1", "/button1"], ["Text btn2", "/button2"]], [["Text btn3", "/button3"]]]` |
#### {% linkable_title Service `telegram_bot/send_document` %}
Send a document.
@ -59,10 +60,11 @@ Send a document.
| `caption` | yes | The title of the document. |
| `username` | yes | Username for a URL which require HTTP basic authentication. |
| `password` | yes | Password for a URL which require HTTP basic authentication. |
| `authentication` | yes | Define which authentication method to use. Set to `digest` to use HTTP digest authentication. Defaults to `basic`. |
| `target` | yes | An array of pre-authorized chat_ids to send the notification to. Defaults to the first allowed chat_id. |
| `disable_notification` | yes | True/false for send the message silently. iOS users and web users will not receive a notification, Android users will receive a notification with no sound. Defaults to False. |
| `keyboard` | yes | List of rows of commands, comma-separated, to make a custom keyboard. Example: `["/command1, /command2", "/command3"]` |
| `inline_keyboard` | yes | List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with asociated callback data. Example: `["/button1, /button2", "/button3"]` or `[[["Text btn1", "/button1"], ["Text btn2", "/button2"]], [["Text btn3", "/button3"]]]` |
| `inline_keyboard` | yes | List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with associated callback data. Example: `["/button1, /button2", "/button3"]` or `[[["Text btn1", "/button1"], ["Text btn2", "/button2"]], [["Text btn3", "/button3"]]]` |
#### {% linkable_title Service `telegram_bot/send_location` %}
Send a location.
@ -74,7 +76,7 @@ Send a location.
| `target` | yes | An array of pre-authorized chat_ids to send the notification to. Defaults to the first allowed chat_id. |
| `disable_notification` | yes | True/false for send the message silently. iOS users and web users will not receive a notification, Android users will receive a notification with no sound. Defaults to False. |
| `keyboard` | yes | List of rows of commands, comma-separated, to make a custom keyboard. Example: `["/command1, /command2", "/command3"]` |
| `inline_keyboard` | yes | List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with asociated callback data. Example: `["/button1, /button2", "/button3"]` or `[[["Text btn1", "/button1"], ["Text btn2", "/button2"]], [["Text btn3", "/button3"]]]` |
| `inline_keyboard` | yes | List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with associated callback data. Example: `["/button1, /button2", "/button3"]` or `[[["Text btn1", "/button1"], ["Text btn2", "/button2"]], [["Text btn3", "/button3"]]]` |
#### {% linkable_title Service `telegram_bot/edit_message` %}
Edit a previusly sent message in a conversation.
@ -87,7 +89,7 @@ Edit a previusly sent message in a conversation.
| `title` | yes | Optional title for your notification. Will be composed as '%title\n%message'. |
| `parse_mode` | yes | Parser for the message text: `html` or `markdown`. |
| `disable_web_page_preview`| yes | True/false for disable link previews for links in the message. |
| `inline_keyboard` | yes | List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with asociated callback data. Example: `["/button1, /button2", "/button3"]` or `[[["Text btn1", "/button1"], ["Text btn2", "/button2"]], [["Text btn3", "/button3"]]]` |
| `inline_keyboard` | yes | List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with associated callback data. Example: `["/button1, /button2", "/button3"]` or `[[["Text btn1", "/button1"], ["Text btn2", "/button2"]], [["Text btn3", "/button3"]]]` |
#### {% linkable_title Service `telegram_bot/edit_caption` %}
Edit the caption of a previusly sent message.
@ -98,7 +100,7 @@ Edit the caption of a previusly sent message.
| `chat_id` | no | The chat_id where to edit the caption. |
| `caption` | no | Message body of the notification. |
| `disable_web_page_preview`| yes | True/false for disable link previews for links in the message. |
| `inline_keyboard` | yes | List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with asociated callback data. Example: `["/button1, /button2", "/button3"]` or `[[["Text btn1", "/button1"], ["Text btn2", "/button2"]], [["Text btn3", "/button3"]]]` |
| `inline_keyboard` | yes | List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with associated callback data. Example: `["/button1, /button2", "/button3"]` or `[[["Text btn1", "/button1"], ["Text btn2", "/button2"]], [["Text btn3", "/button3"]]]` |
#### {% linkable_title Service `telegram_bot/edit_replymarkup` %}
Edit the inline keyboard of a previusly sent message.
@ -108,7 +110,7 @@ Edit the inline keyboard of a previusly sent message.
| `message_id` | no | Id of the message to edit. When answering a callback from a pressed button, the id of the origin message is in: `{{ trigger.event.data.message.message_id }}`. |
| `chat_id` | no | The chat_id where to edit the reply_markup. |
| `disable_web_page_preview`| yes | True/false for disable link previews for links in the message. |
| `inline_keyboard` | yes | List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with asociated callback data. Example: `["/button1, /button2", "/button3"]` or `[[["Text btn1", "/button1"], ["Text btn2", "/button2"]], [["Text btn3", "/button3"]]]` |
| `inline_keyboard` | yes | List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with associated callback data. Example: `["/button1, /button2", "/button3"]` or `[[["Text btn1", "/button1"], ["Text btn2", "/button2"]], [["Text btn3", "/button3"]]]` |
#### {% linkable_title Service `telegram_bot/answer_callback_query` %}
Respond to a callback query originated by clicking on an online keyboard button. The answer will be displayed to the user as a notification at the top of the chat screen or as an alert.

View File

@ -75,15 +75,15 @@ automation:
# if light is off, force a 0, otherwise use the brightness value
value_template: {% raw %}'{% if states.light.livingroom_ec.state == "on" %}{{ states.light.livingroom_ec.attributes.brightness }}{% else %}0{% endif %}'{% endraw %}
# brightness below 50% (255 = 100%)
below: 127
below: 128
- condition: numeric_state
entity_id: light.kitchen_bar
value_template: {% raw %}'{% if states.light.kitchen_bar.state == "on" %}{{ states.light.kitchen_bar.attributes.brightness }}{% else %}0{% endif %}'{% endraw %}
below: 127
below: 128
- condition: numeric_state
entity_id: light.kitchen_ceiling
value_template: {% raw %}'{% if states.light.kitchen_ceiling.state == "on" %}{{ states.light.kitchen_ceiling.attributes.brightness }}{% else %}0{% endif %}'{% endraw %}
below: 127
below: 128
# Trigger a scene
# You could add as many services or scenes as you'd like

View File

@ -23,7 +23,7 @@ automation:
trigger:
platform: state
entity_id: binary_sensor.PIR1
state: 'on'
to: 'on'
condition:
- condition: state
entity_id: switch.AlmAct1
@ -41,7 +41,7 @@ automation:
trigger:
platform: state
entity_id: switch.AlmSnd1
state: 'on'
to: 'on'
action:
service: script.turn_on
entity_id: script.flash_room1
@ -50,11 +50,11 @@ automation:
trigger:
platform: state
entity_id: switch.REL1
state: 'off'
to: 'off'
condition:
condition: state
entity_id: switch.AlmSnd1
state: 'off'
to: 'off'
action:
service: script.turn_off
entity_id: script.flash_room1

View File

@ -20,7 +20,7 @@ automation:
trigger:
- platform: state
entity_id: sensor.precip_intensity
state: 'rain'
to: 'rain'
condition:
- platform: state
entity_id: group.all_devices
@ -40,7 +40,7 @@ And then of course turn off the lamp when it stops raining but only if it's with
trigger:
- platform: state
entity_id: sensor.precip_intensity
state: 'None'
to: 'None'
condition:
- condition: sun
after: 'sunset'

View File

@ -80,7 +80,7 @@ automation:
trigger:
- platform: state
entity_id: switch.KillHass
state: 'on'
to: 'on'
action:
service: homeassistant.stop
- alias: 'Stop restarting HA is WeMo is found'

View File

@ -20,7 +20,7 @@ automation:
trigger:
platform: state
entity_id: sensor.motion_sensor
state: 'on'
to: 'on'
action:
service: homeassistant.turn_on
entity_id: light.kitchen
@ -29,7 +29,7 @@ automation:
trigger:
platform: state
entity_id: sensor.motion_sensor
state: 'off'
to: 'off'
for:
minutes: 10
action:

View File

@ -26,7 +26,7 @@ automation:
offset: '-01:00:00'
- platform: state
entity_id: group.all_devices
state: 'home'
to: 'home'
condition:
# Prefix the first line of each condition configuration
# with a '-'' to enter multiple
@ -45,7 +45,7 @@ automation:
trigger:
platform: state
entity_id: group.all_devices
state: 'not_home'
to: 'not_home'
action:
service: light.turn_off
entity_id: group.all_lights

View File

@ -111,6 +111,23 @@ automation:
offset: '-00:45:00'
```
Sometimes you may want more granular control over an automation based on the elevation of the sun. This can be used to layer automations to occur as the sun lowers on the horizon or even after it is below the horizon. This is also useful when the "sunset" event is not dark enough outside and you would like the automation to run later at a precise solar angle instead of the time offset such as turning on exterior lighting.
```yaml
automation:
alias: "Exterior Lighting on when dark outside"
trigger:
platform: numeric_state
entity_id: sun.sun
value_template: "{% raw %}{{ state.attributes.elevation }}{% endraw %}"
# Can be a positive or negative number
below: -4.0
action:
service: switch.turn_on
entity_id: switch.exterior_lighting
```
The US Naval Observatory has a [tool](http://aa.usno.navy.mil/data/docs/AltAz.php) that will help you estimate what the solar angle will be at any specific time.
### {% linkable_title Template trigger %}
Template triggers work by evaluating a [template] on each state change. The trigger will fire if the state change caused the template to render 'true'. This is achieved by having the template result in a true boolean expression (`{% raw %}{{ is_state('device_tracker.paulus', 'home') }}{% endraw %}`) or by having the template render 'true' (example below).

View File

@ -23,7 +23,7 @@ If you want Home Assistant to be launched automatically, an extra step is needed
- `ExecStart` contains the path to `hass` and this may vary. Check with `whereis hass` for the location.
- If running Home Assistant in a Python virtual environment or a Docker container, please skip to section below.
- For most systems, the file is `/etc/systemd/system/home-assistant@[your user].service` with [your user] replaced by the user account that Home Assistant will run as - normally `homeassistant`. For Ubuntu 16.04, the file is `/lib/systemd/system/home-assistant.service` and requires running this command `sudo ln -s /lib/systemd/system/home-assistant.service /etc/systemd/system/home-assistant.service` after file is created.
- If unfamiliar with command-line text editors, `sudo nano -w [filename]` can be used with `[filename]` replaced with the full path to the file. Ex. `sudo nano -w /etc/systemd/system/home-assistant@homeassistant.service`. After text entered, press CTRL-X then press Y to save and exit.
- If unfamiliar with command-line text editors, `sudo nano -w [filename]` can be used with `[filename]` replaced with the full path to the file. Ex. `sudo nano -w /etc/systemd/system/home-assistant@[your user].service`. After text entered, press CTRL-X then press Y to save and exit.
```
[Unit]

View File

@ -12,6 +12,10 @@ redirect_from: /getting-started/customizing-devices/
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.
<p class='note'>
Be carefull not to forget to place `customize`, `customize_domain`, and `customize_glob` inside `homeassistant:` or it will fail.
</p>
```yaml
homeassistant:
name: Home

View File

@ -22,7 +22,7 @@ This is useful if you want to have:
So you already have a working Apache server available at example.org. Your Home Assistant is correctly working on this web server and available at http://localhost:8123
Enable [`mod_proxy_wstunnel`](https://httpd.apache.org/docs/2.4/mod/mod_proxy_wstunnel.htm) by running if you encounter issues while serving Home Assistant through your proxy:
Enable [`mod_proxy_wstunnel`](https://httpd.apache.org/docs/2.4/mod/mod_proxy_wstunnel.html) by running if you encounter issues while serving Home Assistant through your proxy:
```bash
$ sudo a2enmod proxy_wstunnel

View File

@ -84,7 +84,7 @@ Log in as the `pi` account and execute the following commands:
```bash
$ sudo su -s /bin/bash homeassistant
$ cd /home/homeassistant/.homeassistant
$ nano homeassistant.log
$ nano home-assistant.log
```
This will in order do the following:

View File

@ -19,14 +19,15 @@ Note that as of 2016-11-30 SSH is disabled by default in the official Raspbian i
Irrespective of whether you use SSH to connect to the Pi from another computer or not, you need SSH to install Home Assistant. So go ahead and enable SSH.
* Login to Raspberry Pi. For example with `ssh pi@your_raspberry_pi_ip`
* Run the following command
* Run the following command:
<p class='note warning'>
This command is a one-liner and not run as sudo.
</p>
```bash
$ curl -O https://raw.githubusercontent.com/home-assistant/fabric-home-assistant/master/hass_rpi_installer.sh && sudo chown pi:pi hass_rpi_installer.sh && bash hass_rpi_installer.sh
```
<p class='note warning'>
Note this command is one-line and not run as sudo.
</p>
Installation will take approx. 1-2 hours depending on the Raspberry Pi model the installer is being run against. The installer will identitfy what Raspberry Pi hardware revision you are using and adjust commands accordingly. A complete log of the install is located at: `/home/pi/fabric-home-assistant/installation_report.txt` The installer has been updated to simply log any errors encountered, but resume installing. Please consult the "installation report" if your install encountered issues.

View File

@ -68,9 +68,9 @@ condition:
### {% linkable_title Numeric state condition %}
This type of condition attempts to parse the state of specified entity as a number and triggers if the value matches all of the above or below thresholds.
This type of condition attempts to parse the state of specified entity as a number and triggers if the value matches the thresholds.
For above, the condition passes if `value >= above`. For below, the condition passes if `value <= below`. If both `below` and `above` are specified, both tests have to pass.
If both `below` and `above` are specified, both tests have to pass.
You can optionally use a `value_template` to process the value of the state before testing it.

View File

@ -83,7 +83,6 @@
</ul>
</li>
<li>{% active_link /developers/helpers/ Online helpers %}</li>
<li>{% active_link /developers/multiple_instances/ Multiple Instances %}</li>
<li>{% active_link /developers/website/ Home-Assistant.io %}</li>
<li>{% active_link /developers/releasing/ Releasing %}</li>
<li>{% active_link /developers/maintenance/ Maintenance %}</li>

View File

@ -0,0 +1,399 @@
---
layout: post
title: "0.46: Rachio sprinklers, Netgear Arlo cameras and Z-Wave fans"
description: "Another great new release with a major focus on bugfixes."
date: 2017-06-04 01:04:05 +0000
date_formatted: "June 4, 2017"
author: Paulus Schoutsen
author_twitter: balloob
comments: true
categories: Release-Notes
og_image: /images/blog/2017-06-0.46/components.png
---
<a href='/components/#added_in_current_version'><img src='/images/blog/2017-06-0.46/components.png' style='border: 0;box-shadow: none;'></a>
It's time for 0.46! This release does not have too many new integrations, instead it focussed on bug fixes.
## {% linkable_title New platforms %}
- Template light ([@cribbstechnologies] - [#7657]) ([light.template docs]) (new-platform)
- Support for GE Zwave fan controller ([@armills] - [#7767]) ([zwave docs]) ([fan.zwave docs]) (new-platform)
- Rachio (Sprinklers) ([@Klikini] - [#7600]) ([switch.rachio docs]) (new-platform)
- Introduced support to Netgear Arlo Cameras ([@tchellomello] - [#7826]) ([arlo docs]) ([camera.arlo docs]) ([sensor.arlo docs]) (new-platform)
## {% linkable_title Release 0.46.1 - June 9 %}
- Support for renaming ZWave values ([@armills] - [#7780]) ([zwave docs])
- Dsmr5 revert ([@aequitas] - [#7900]) ([sensor.dsmr docs])
- Fix typos in Wunderground component (Percipitation -> Precipitation) ([@mje-nz] - [#7901]) ([sensor.wunderground docs])
- Mqtt cover: Making command topic optional and add ability to set up/down position including ability to template the value ([@cribbstechnologies] - [#7841]) ([cover.mqtt docs])
- Media Player - OpenHome: Fixed metadata issue ([@bazwilliams] - [#7932]) ([media_player.openhome docs])
- Sensor - MetOffice: Fix last updated date ([@cyberjacob] - [#7965]) ([sensor.metoffice docs])
- Prevent Roku doing I/O in event loop ([@balloob] - [#7969]) ([media_player.roku docs])
## {% linkable_title Breaking changes %}
- The USPS sensor entity names have changed as there are now two. One for packages and one for mail. Config will now also use `scan_interval` instead of `update_interval` ([@happyleavesaoc] - [#7655]) ([sensor.usps docs]) (breaking change)
- Automation state trigger: From/to checks will now ignore state changes that are just attribute changess ([@amelchio] - [#7651]) ([automation.state docs]) (breaking change)
- Redesign monitored variables for hp_ilo sensor. `monitored_variables` is now a list of `name` and `sensor_type` values ([@Juggels] - [#7534]) ([sensor.hp_ilo docs]) (breaking change)
```yaml
sensor:
- platform: hp_ilo
host: IP_ADDRESS or HOSTNAME
username: USERNAME
password: PASSWORD
monitored_variables:
- name: SENSOR NAME
sensor_type: SENSOR TYPE
```
- Automation - time: The `after` keyword for time triggers (not conditions) has been deprecated in favor of the `at` keyword. This resembles better what it does (old one still works, gives a warning) ([@armills] - [#7846]) ([automation.time docs]) (breaking change)
- Automation - numeric_state: `above` and `below` will no longer trigger if it is equal. ([@armills] - [#7857]) (breaking change)
- Broadlink switches: Entity ids will change for switches that don't have a default name set. In this case the object_id is now used. ([@abmantis] - [#7845]) ([switch.broadlink docs]) (breaking change)
- Disallow ambiguous color descriptors in the light.turn_on schema. This means that you can no longer specify both `xy_color` and `rgb_color`. ([@amelchio] - [#7765]) (breaking change)
## {% linkable_title If you need help... %}
...don't hesitate to use our very active [forums][forum] or join us for a little [chat][gitter]. The release notes have comments enabled but it's preferred if you use the former communication channels. Thanks.
## {% linkable_title Reporting Issues %}
Experiencing issues introduced by this release? Please report them in our [issue tracker][issue]. Make sure to fill in all fields of the issue template.
<!--more-->
## {% linkable_title All changes %}
- Align with OpenALPR platform for naming conf variables ([@fabaff] - [#7650]) ([image_processing.seven_segments docs])
- Added support to Amcrest camera to feed using RTSP via ffmpeg ([@tchellomello] - [#7646]) ([camera.amcrest docs]) ([sensor.amcrest docs])
- bump fedex version ([@happyleavesaoc] - [#7653]) ([sensor.fedex docs])
- bump ups version ([@happyleavesaoc] - [#7654])
- update usps ([@happyleavesaoc] - [#7655]) ([sensor.usps docs]) (breaking change)
- Final tweaks for Zwave panel ([@turbokongen] - [#7652]) ([zwave docs])
- Add network_key as a config option ([@robbiet480] - [#7637]) ([zwave docs])
- Bugfix #7586 ([@turbokongen] - [#7661]) ([lock.zwave docs])
- Fix tests ([@balloob] - [#7659])
- Change line endings to LN ([@fabaff] - [#7660]) ([calendar.demo docs]) ([calendar.google docs]) ([camera.synology docs]) ([climate.tado docs]) ([remote.harmony docs]) ([sensor.synologydsm docs])
- Point pylutron to pypi ([@thecynic] - [#7664]) ([lutron docs])
- Upgrade Openhome library ([@bazwilliams] - [#7671]) ([media_player.openhome docs])
- Ignore attribute changes in automation trigger from/to ([@amelchio] - [#7651]) ([automation.state docs]) (breaking change)
- Switch pymodbus to pypi ([@andrey-git] - [#7677]) ([modbus docs])
- zoneminder: fix incorrect use of logging.exception. ([@tobygray] - [#7675]) ([zoneminder docs])
- Zwave: Apply refresh_node workaround on 1st instance only ([@andrey-git] - [#7579]) ([zwave docs])
- Guard against new and removed state change events ([@balloob] - [#7687]) ([automation.state docs])
- ZWave: Add reset service to meters ([@turbokongen] - [#7676]) ([zwave docs])
- Remove defunct INSTALL_OPENZWAVE from Dockerfile ([@armills] - [#7697])
- Fix telegram chats ([@azogue] - [#7689]) ([notify.telegram docs])
- Fix playback control of web streams ([@cgtobi] - [#7683]) ([media_player.volumio docs])
- Sort entities in default groups by name ([@amelchio] - [#7681])
- Continue tracking device over dhcp lease table if wireless adapter not installed ([@LvivEchoes] - [#7690]) ([device_tracker.mikrotik docs])
- device_tracker.ubus: Handle empty results ([@tobygray] - [#7673]) ([device_tracker.ubus docs])
- Bump pyEight version ([@mezz64] - [#7701]) ([eight_sleep docs])
- Upgrade python-telegram-bot to 6.0.1 ([@fabaff] - [#7704])
- Make 'sender' as requirement for the config (fixes #7698) ([@fabaff] - [#7706]) ([notify.smtp docs])
- Allow fetching hass.io panel without auth ([@balloob] - [#7714]) ([hassio docs])
- update apcacccess used in apcupsd to 0.0.10, which fixes random file drop from apcaccess ([@infamy] - [#7722]) ([apcupsd docs])
- Constrain requests to a version ([@balloob] - [#7725])
- Asuswrt continuous ssh ([@aronsky] - [#7728])
- Ensure https base_url in telegram bot ([@bzillins] - [#7726]) ([telegram_bot.webhooks docs])
- Prevent the random template filter from caching its output. Fixes #5678 ([@antsar] - [#7716])
- Don't initialize mqtt components which have already been discovered ([@nordeep] - [#7625]) ([mqtt.discovery docs])
- LIFX: disable color features for white-only bulbs ([@amelchio] - [#7742]) ([light.lifx docs])
- Don't block startup more than 60 seconds while waiting for components. ([@antsar] - [#7739])
- Always return rgb color of bulbs ([@w1ll1am23] - [#7743]) ([light.wink docs])
- Redesign monitored variables for hp_ilo sensor ([@Juggels] - [#7534]) ([sensor.hp_ilo docs]) (breaking change)
- Fix time_date sensor to update at predictable intervals ([@stu-gott] - [#7644]) ([sensor.time_date docs])
- Added new commands and functionality to the harmony remote component. ([@everix1992] - [#7113]) ([remote docs]) ([remote.harmony docs]) ([remote.services.yaml docs])
- Template light ([@cribbstechnologies] - [#7657]) ([light.template docs]) (new-platform)
- Exclude filter for event types ([@amigian74] - [#7627])
- Change setup script to use pip install instead of setup.py develop ([@hoh] - [#7756])
- Add icons to device tracker. ([@antsar] - [#7759])
- Rename of the zwave hass.data constants ([@armills] - [#7768]) ([zwave docs]) ([cover.zwave docs]) ([lock.zwave docs])
- Get rid of mock http component app ([@balloob] - [#7775])
- Remove usage of event_loop fixture ([@balloob] - [#7776])
- assertEquals is deprecated ([@balloob] - [#7777])
- Support for GE Zwave fan controller ([@armills] - [#7767]) ([zwave docs]) ([fan.zwave docs]) (new-platform)
- Replace executor with async_add_job ([@balloob] - [#7658])
- Fix Telegram Bot send file to multiple targets, snapshots of HA cameras, variable templating, digest auth ([@azogue] - [#7771])
- Fix more deprecation warnings ([@balloob] - [#7778])
- Powerview to async ([@sander76] - [#7682]) ([scene.hunterdouglas_powerview docs])
- Fix home/stay in concord232 ([@CTLS] - [#7789]) ([alarm_control_panel.concord232 docs])
- Add Marantz SSDP discovery / Detect error string in AppCommand.xml body ([@scarface-4711] - [#7779]) ([media_player.denonavr docs])
- Upgrade Sphinx to 1.6.2 ([@fabaff] - [#7805])
- Upgrade slacker to 0.9.50 ([@fabaff] - [#7797]) ([notify.slack docs])
- Bump pyenvisalink to version 2.1 ([@Cinntax] - [#7803]) ([envisalink docs])
- Upgrade pysnmp to 4.3.6 ([@fabaff] - [#7806]) ([device_tracker.snmp docs]) ([sensor.snmp docs])
- Rachio (Sprinklers) ([@Klikini] - [#7600]) ([switch.rachio docs]) (new-platform)
- Rest notify data ([@Teagan42] - [#7757]) ([notify.rest docs])
- Added handling of an AssertionError from pxssh failed login ([@aronsky] - [#7750]) ([device_tracker.asuswrt docs])
- Upgrade sqlalchemy to 1.1.10 ([@fabaff] - [#7807])
- Upgrade mypy to 0.511 ([@fabaff] - [#7809])
- Allow configuring DSMR5 protocol. ([@aequitas] - [#7535]) ([sensor.dsmr docs])
- Telegram send image: fix mimetype detection ([@azogue] - [#7802])
- Bump aiohttp to 2.1.0 ([@mezz64] - [#7825])
- Cleanup telegram / Add url to webhook ([@pvizeli] - [#7824]) ([telegram_bot.polling docs]) ([telegram_bot.webhooks docs]) (breaking change)
- Upgrade pysnmp to 4.3.7 ([@fabaff] - [#7828]) ([device_tracker.snmp docs]) ([sensor.snmp docs])
- Flux led fix ([@danielhiversen] - [#7829]) ([light.flux_led docs])
- update snapcast media player ([@happyleavesaoc] - [#7079]) ([media_player.services.yaml docs]) ([media_player.snapcast docs])
- Update docstrings and log messages ([@fabaff] - [#7709])
- Upgrade PyMVGLive to 1.1.4 ([@fabaff] - [#7832]) ([sensor.mvglive docs])
- Added persistent error message if cover.myq fails to load ([@tchellomello] - [#7700]) ([cover.myq docs])
- Add initial benchmark framework ([@balloob] - [#7827])
- Downgrade Docker to Python 3.5 to solve Segmentation Faults ([@philhawthorne] - [#7799])
- Introduced support to Netgear Arlo Cameras ([@tchellomello] - [#7826]) ([arlo docs]) ([camera.arlo docs]) ([sensor.arlo docs]) (new-platform)
- Allow 'base_url' (fixes #7784) ([@fabaff] - [#7796]) ([upnp docs])
- Expose the node name on the zwave node entity ([@armills] - [#7787]) ([zwave docs])
- Bumped pyhomematic version ([@danielperna84] - [#7861]) ([homematic docs])
- Rename time trigger 'after' to 'at' ([@armills] - [#7846]) ([automation.time docs]) (breaking change)
- Use expected behvaior for above/below ([@armills] - [#7857]) (breaking change)
- log time delay of domain setup in info level ([@azogue] - [#7808])
- Optimize history_stats efficiency and database usage ([@bokub] - [#7858]) ([sensor.history_stats docs])
- dont use default for switch name, so that the object id is used ([@abmantis] - [#7845]) ([switch.broadlink docs]) (breaking change)
- Disallow ambiguous color descriptors in the light.turn_on schema ([@amelchio] - [#7765]) (breaking change)
- Make monkey patch work in Python 3.6 ([@balloob] - [#7848])
- fix permissions issue for Insteon Local #6558 ([@wardcraigj] - [#7860]) ([insteon_local docs])
- Start of migration framework, to allow moving of files in the config … ([@infamy] - [#7740]) ([ios docs]) ([notify.ios docs]) (breaking change)
- Spotify aliases ([@Teagan42] - [#7702]) ([media_player.spotify docs])
- Query in InfluxDB sensor is now templatable ([@titilambert] - [#7634]) ([sensor.influxdb docs])
- fix for https://github.com/home-assistant/home-assistant/issues/7019 ([@molobrakos] - [#7618]) ([tellduslive docs])
- Check if media commands are actually applicable ([@Juggels] - [#7595]) ([media_player.sonos docs])
- Quickfix Bug #7384 ([@DavidLP] - [#7582]) ([media_player.spotify docs])
- Align switch group handling with light. ([@aequitas] - [#7577]) ([switch.rflink docs])
- Update netdisco ([@balloob] - [#7865])
- Fix telegram_bot ([@balloob] - [#7877]) ([telegram_bot.polling docs]) ([telegram_bot.webhooks docs])
- [light.lifx] Update aiolifx ([@amelchio] - [#7882]) ([light.lifx docs])
- Fix MQTT camera test ([@balloob] - [#7878])
[#7079]: https://github.com/home-assistant/home-assistant/pull/7079
[#7113]: https://github.com/home-assistant/home-assistant/pull/7113
[#7534]: https://github.com/home-assistant/home-assistant/pull/7534
[#7535]: https://github.com/home-assistant/home-assistant/pull/7535
[#7577]: https://github.com/home-assistant/home-assistant/pull/7577
[#7579]: https://github.com/home-assistant/home-assistant/pull/7579
[#7582]: https://github.com/home-assistant/home-assistant/pull/7582
[#7595]: https://github.com/home-assistant/home-assistant/pull/7595
[#7600]: https://github.com/home-assistant/home-assistant/pull/7600
[#7618]: https://github.com/home-assistant/home-assistant/pull/7618
[#7625]: https://github.com/home-assistant/home-assistant/pull/7625
[#7627]: https://github.com/home-assistant/home-assistant/pull/7627
[#7634]: https://github.com/home-assistant/home-assistant/pull/7634
[#7637]: https://github.com/home-assistant/home-assistant/pull/7637
[#7644]: https://github.com/home-assistant/home-assistant/pull/7644
[#7646]: https://github.com/home-assistant/home-assistant/pull/7646
[#7650]: https://github.com/home-assistant/home-assistant/pull/7650
[#7651]: https://github.com/home-assistant/home-assistant/pull/7651
[#7652]: https://github.com/home-assistant/home-assistant/pull/7652
[#7653]: https://github.com/home-assistant/home-assistant/pull/7653
[#7654]: https://github.com/home-assistant/home-assistant/pull/7654
[#7655]: https://github.com/home-assistant/home-assistant/pull/7655
[#7657]: https://github.com/home-assistant/home-assistant/pull/7657
[#7658]: https://github.com/home-assistant/home-assistant/pull/7658
[#7659]: https://github.com/home-assistant/home-assistant/pull/7659
[#7660]: https://github.com/home-assistant/home-assistant/pull/7660
[#7661]: https://github.com/home-assistant/home-assistant/pull/7661
[#7664]: https://github.com/home-assistant/home-assistant/pull/7664
[#7671]: https://github.com/home-assistant/home-assistant/pull/7671
[#7673]: https://github.com/home-assistant/home-assistant/pull/7673
[#7675]: https://github.com/home-assistant/home-assistant/pull/7675
[#7676]: https://github.com/home-assistant/home-assistant/pull/7676
[#7677]: https://github.com/home-assistant/home-assistant/pull/7677
[#7681]: https://github.com/home-assistant/home-assistant/pull/7681
[#7682]: https://github.com/home-assistant/home-assistant/pull/7682
[#7683]: https://github.com/home-assistant/home-assistant/pull/7683
[#7687]: https://github.com/home-assistant/home-assistant/pull/7687
[#7689]: https://github.com/home-assistant/home-assistant/pull/7689
[#7690]: https://github.com/home-assistant/home-assistant/pull/7690
[#7697]: https://github.com/home-assistant/home-assistant/pull/7697
[#7700]: https://github.com/home-assistant/home-assistant/pull/7700
[#7701]: https://github.com/home-assistant/home-assistant/pull/7701
[#7702]: https://github.com/home-assistant/home-assistant/pull/7702
[#7704]: https://github.com/home-assistant/home-assistant/pull/7704
[#7706]: https://github.com/home-assistant/home-assistant/pull/7706
[#7709]: https://github.com/home-assistant/home-assistant/pull/7709
[#7714]: https://github.com/home-assistant/home-assistant/pull/7714
[#7716]: https://github.com/home-assistant/home-assistant/pull/7716
[#7722]: https://github.com/home-assistant/home-assistant/pull/7722
[#7725]: https://github.com/home-assistant/home-assistant/pull/7725
[#7726]: https://github.com/home-assistant/home-assistant/pull/7726
[#7728]: https://github.com/home-assistant/home-assistant/pull/7728
[#7739]: https://github.com/home-assistant/home-assistant/pull/7739
[#7740]: https://github.com/home-assistant/home-assistant/pull/7740
[#7742]: https://github.com/home-assistant/home-assistant/pull/7742
[#7743]: https://github.com/home-assistant/home-assistant/pull/7743
[#7750]: https://github.com/home-assistant/home-assistant/pull/7750
[#7756]: https://github.com/home-assistant/home-assistant/pull/7756
[#7757]: https://github.com/home-assistant/home-assistant/pull/7757
[#7759]: https://github.com/home-assistant/home-assistant/pull/7759
[#7765]: https://github.com/home-assistant/home-assistant/pull/7765
[#7767]: https://github.com/home-assistant/home-assistant/pull/7767
[#7768]: https://github.com/home-assistant/home-assistant/pull/7768
[#7771]: https://github.com/home-assistant/home-assistant/pull/7771
[#7775]: https://github.com/home-assistant/home-assistant/pull/7775
[#7776]: https://github.com/home-assistant/home-assistant/pull/7776
[#7777]: https://github.com/home-assistant/home-assistant/pull/7777
[#7778]: https://github.com/home-assistant/home-assistant/pull/7778
[#7779]: https://github.com/home-assistant/home-assistant/pull/7779
[#7787]: https://github.com/home-assistant/home-assistant/pull/7787
[#7789]: https://github.com/home-assistant/home-assistant/pull/7789
[#7796]: https://github.com/home-assistant/home-assistant/pull/7796
[#7797]: https://github.com/home-assistant/home-assistant/pull/7797
[#7799]: https://github.com/home-assistant/home-assistant/pull/7799
[#7802]: https://github.com/home-assistant/home-assistant/pull/7802
[#7803]: https://github.com/home-assistant/home-assistant/pull/7803
[#7805]: https://github.com/home-assistant/home-assistant/pull/7805
[#7806]: https://github.com/home-assistant/home-assistant/pull/7806
[#7807]: https://github.com/home-assistant/home-assistant/pull/7807
[#7808]: https://github.com/home-assistant/home-assistant/pull/7808
[#7809]: https://github.com/home-assistant/home-assistant/pull/7809
[#7824]: https://github.com/home-assistant/home-assistant/pull/7824
[#7825]: https://github.com/home-assistant/home-assistant/pull/7825
[#7826]: https://github.com/home-assistant/home-assistant/pull/7826
[#7827]: https://github.com/home-assistant/home-assistant/pull/7827
[#7828]: https://github.com/home-assistant/home-assistant/pull/7828
[#7829]: https://github.com/home-assistant/home-assistant/pull/7829
[#7832]: https://github.com/home-assistant/home-assistant/pull/7832
[#7845]: https://github.com/home-assistant/home-assistant/pull/7845
[#7846]: https://github.com/home-assistant/home-assistant/pull/7846
[#7848]: https://github.com/home-assistant/home-assistant/pull/7848
[#7857]: https://github.com/home-assistant/home-assistant/pull/7857
[#7858]: https://github.com/home-assistant/home-assistant/pull/7858
[#7860]: https://github.com/home-assistant/home-assistant/pull/7860
[#7861]: https://github.com/home-assistant/home-assistant/pull/7861
[#7865]: https://github.com/home-assistant/home-assistant/pull/7865
[#7877]: https://github.com/home-assistant/home-assistant/pull/7877
[#7878]: https://github.com/home-assistant/home-assistant/pull/7878
[#7882]: https://github.com/home-assistant/home-assistant/pull/7882
[@CTLS]: https://github.com/CTLS
[@Cinntax]: https://github.com/Cinntax
[@DavidLP]: https://github.com/DavidLP
[@Juggels]: https://github.com/Juggels
[@Klikini]: https://github.com/Klikini
[@LvivEchoes]: https://github.com/LvivEchoes
[@Teagan42]: https://github.com/Teagan42
[@abmantis]: https://github.com/abmantis
[@aequitas]: https://github.com/aequitas
[@amelchio]: https://github.com/amelchio
[@amigian74]: https://github.com/amigian74
[@andrey-git]: https://github.com/andrey-git
[@antsar]: https://github.com/antsar
[@armills]: https://github.com/armills
[@aronsky]: https://github.com/aronsky
[@azogue]: https://github.com/azogue
[@balloob]: https://github.com/balloob
[@bazwilliams]: https://github.com/bazwilliams
[@bokub]: https://github.com/bokub
[@bzillins]: https://github.com/bzillins
[@cgtobi]: https://github.com/cgtobi
[@cribbstechnologies]: https://github.com/cribbstechnologies
[@danielhiversen]: https://github.com/danielhiversen
[@danielperna84]: https://github.com/danielperna84
[@everix1992]: https://github.com/everix1992
[@fabaff]: https://github.com/fabaff
[@happyleavesaoc]: https://github.com/happyleavesaoc
[@hoh]: https://github.com/hoh
[@infamy]: https://github.com/infamy
[@mezz64]: https://github.com/mezz64
[@molobrakos]: https://github.com/molobrakos
[@nordeep]: https://github.com/nordeep
[@philhawthorne]: https://github.com/philhawthorne
[@pvizeli]: https://github.com/pvizeli
[@robbiet480]: https://github.com/robbiet480
[@sander76]: https://github.com/sander76
[@scarface-4711]: https://github.com/scarface-4711
[@stu-gott]: https://github.com/stu-gott
[@tchellomello]: https://github.com/tchellomello
[@thecynic]: https://github.com/thecynic
[@titilambert]: https://github.com/titilambert
[@tobygray]: https://github.com/tobygray
[@turbokongen]: https://github.com/turbokongen
[@w1ll1am23]: https://github.com/w1ll1am23
[@wardcraigj]: https://github.com/wardcraigj
[alarm_control_panel.concord232 docs]: https://home-assistant.io/components/alarm_control_panel.concord232/
[apcupsd docs]: https://home-assistant.io/components/apcupsd/
[arlo docs]: https://home-assistant.io/components/arlo/
[automation.state docs]: https://home-assistant.io/components/automation.state/
[automation.time docs]: https://home-assistant.io/components/automation.time/
[calendar.demo docs]: https://home-assistant.io/components/calendar.demo/
[calendar.google docs]: https://home-assistant.io/components/calendar.google/
[camera.amcrest docs]: https://home-assistant.io/components/camera.amcrest/
[camera.arlo docs]: https://home-assistant.io/components/camera.arlo/
[camera.synology docs]: https://home-assistant.io/components/camera.synology/
[climate.tado docs]: https://home-assistant.io/components/climate.tado/
[cover.myq docs]: https://home-assistant.io/components/cover.myq/
[cover.zwave docs]: https://home-assistant.io/components/cover.zwave/
[device_tracker.__init__ docs]: https://home-assistant.io/components/device_tracker.__init__/
[device_tracker.asuswrt docs]: https://home-assistant.io/components/device_tracker.asuswrt/
[device_tracker.mikrotik docs]: https://home-assistant.io/components/device_tracker.mikrotik/
[device_tracker.snmp docs]: https://home-assistant.io/components/device_tracker.snmp/
[device_tracker.ubus docs]: https://home-assistant.io/components/device_tracker.ubus/
[eight_sleep docs]: https://home-assistant.io/components/eight_sleep/
[envisalink docs]: https://home-assistant.io/components/envisalink/
[fan.zwave docs]: https://home-assistant.io/components/fan.zwave/
[hassio docs]: https://home-assistant.io/components/hassio/
[homematic docs]: https://home-assistant.io/components/homematic/
[image_processing.seven_segments docs]: https://home-assistant.io/components/image_processing.seven_segments/
[insteon_local docs]: https://home-assistant.io/components/insteon_local/
[ios docs]: https://home-assistant.io/components/ios/
[light.__init__ docs]: https://home-assistant.io/components/light.__init__/
[light.flux_led docs]: https://home-assistant.io/components/light.flux_led/
[light.lifx docs]: https://home-assistant.io/components/light.lifx/
[light.template docs]: https://home-assistant.io/components/light.template/
[light.wink docs]: https://home-assistant.io/components/light.wink/
[lock.zwave docs]: https://home-assistant.io/components/lock.zwave/
[lutron docs]: https://home-assistant.io/components/lutron/
[media_player.denonavr docs]: https://home-assistant.io/components/media_player.denonavr/
[media_player.openhome docs]: https://home-assistant.io/components/media_player.openhome/
[media_player.services.yaml docs]: https://home-assistant.io/components/media_player.services.yaml/
[media_player.snapcast docs]: https://home-assistant.io/components/media_player.snapcast/
[media_player.sonos docs]: https://home-assistant.io/components/media_player.sonos/
[media_player.spotify docs]: https://home-assistant.io/components/media_player.spotify/
[media_player.volumio docs]: https://home-assistant.io/components/media_player.volumio/
[modbus docs]: https://home-assistant.io/components/modbus/
[mqtt.discovery docs]: https://home-assistant.io/components/mqtt.discovery/
[notify.ios docs]: https://home-assistant.io/components/notify.ios/
[notify.rest docs]: https://home-assistant.io/components/notify.rest/
[notify.slack docs]: https://home-assistant.io/components/notify.slack/
[notify.smtp docs]: https://home-assistant.io/components/notify.smtp/
[notify.telegram docs]: https://home-assistant.io/components/notify.telegram/
[recorder.__init__ docs]: https://home-assistant.io/components/recorder.__init__/
[remote docs]: https://home-assistant.io/components/remote/
[remote.harmony docs]: https://home-assistant.io/components/remote.harmony/
[remote.services.yaml docs]: https://home-assistant.io/components/remote.services.yaml/
[scene.hunterdouglas_powerview docs]: https://home-assistant.io/components/scene.hunterdouglas_powerview/
[sensor.amcrest docs]: https://home-assistant.io/components/sensor.amcrest/
[sensor.arlo docs]: https://home-assistant.io/components/sensor.arlo/
[sensor.dsmr docs]: https://home-assistant.io/components/sensor.dsmr/
[sensor.fedex docs]: https://home-assistant.io/components/sensor.fedex/
[sensor.history_stats docs]: https://home-assistant.io/components/sensor.history_stats/
[sensor.hp_ilo docs]: https://home-assistant.io/components/sensor.hp_ilo/
[sensor.influxdb docs]: https://home-assistant.io/components/sensor.influxdb/
[sensor.mvglive docs]: https://home-assistant.io/components/sensor.mvglive/
[sensor.snmp docs]: https://home-assistant.io/components/sensor.snmp/
[sensor.synologydsm docs]: https://home-assistant.io/components/sensor.synologydsm/
[sensor.time_date docs]: https://home-assistant.io/components/sensor.time_date/
[sensor.usps docs]: https://home-assistant.io/components/sensor.usps/
[switch.broadlink docs]: https://home-assistant.io/components/switch.broadlink/
[switch.rachio docs]: https://home-assistant.io/components/switch.rachio/
[switch.rflink docs]: https://home-assistant.io/components/switch.rflink/
[telegram_bot.__init__ docs]: https://home-assistant.io/components/telegram_bot.__init__/
[telegram_bot.polling docs]: https://home-assistant.io/components/telegram_bot.polling/
[telegram_bot.webhooks docs]: https://home-assistant.io/components/telegram_bot.webhooks/
[tellduslive docs]: https://home-assistant.io/components/tellduslive/
[upnp docs]: https://home-assistant.io/components/upnp/
[zoneminder docs]: https://home-assistant.io/components/zoneminder/
[zwave docs]: https://home-assistant.io/components/zwave/
[forum]: https://community.home-assistant.io/
[gitter]: https://gitter.im/home-assistant/home-assistant
[issue]: https://github.com/home-assistant/home-assistant/issues
[#7780]: https://github.com/home-assistant/home-assistant/pull/7780
[#7841]: https://github.com/home-assistant/home-assistant/pull/7841
[#7900]: https://github.com/home-assistant/home-assistant/pull/7900
[#7901]: https://github.com/home-assistant/home-assistant/pull/7901
[#7932]: https://github.com/home-assistant/home-assistant/pull/7932
[#7965]: https://github.com/home-assistant/home-assistant/pull/7965
[#7969]: https://github.com/home-assistant/home-assistant/pull/7969
[@cyberjacob]: https://github.com/cyberjacob
[@mje-nz]: https://github.com/mje-nz
[cover.mqtt docs]: https://home-assistant.io/components/cover.mqtt/
[sensor.metoffice docs]: https://home-assistant.io/components/sensor.metoffice/
[sensor.wunderground docs]: https://home-assistant.io/components/sensor.wunderground/
[media_player.roku docs]: https://home-assistant.io/components/media_player.roku/

View File

@ -9,6 +9,8 @@ sharing: true
footer: true
---
# {% linkable_title This has been deprecated and is no longer supported. %}
Home Assistant supports running multiple synchronised instances using a master-slave model. Whenever `events.fire` or `states.set` is called on the slave it will forward it to the master. The master will replicate all events and changed states to its slaves.
<p class='img'>

View File

@ -9,9 +9,11 @@ sharing: true
footer: true
---
In the package [`homeassistant.remote`](https://github.com/home-assistant/home-assistant/blob/master/homeassistant/remote.py) a Python API on top of the [HTTP API](/developers/api/) can be found.
See the [developer documentation][devdocs] for a full overview of the documentation. The rest of this page will contain examples on how to use it.
Note: This page is not full documentation for this API, but a collection of examples showing its use.
[devdocs]: https://dev-docs.home-assistant.io/en/master/api/homeassistant.html#module-homeassistant.remote
In the package [`homeassistant.remote`](https://github.com/home-assistant/home-assistant/blob/master/homeassistant/remote.py) a Python API on top of the [HTTP API](/developers/api/) can be found.
A simple way to get all current entities is to visit the "Set State" page in the "Developer Tools". For the examples below just choose one from the available entries. Here the sensor `sensor.office_temperature` and the switch `switch.livingroom_pin_2` are used.
@ -24,17 +26,6 @@ api = remote.API('127.0.0.1', 'password')
print(remote.validate_api(api))
```
Here's another way to use the `homeassistant.remote` package:
```python
import homeassistant.remote as remote
api = remote.API('127.0.0.1', 'password')
hass = remote.HomeAssistant(api)
hass.start()
living_room = hass.states.get('group.living_room')
```
### {% linkable_title Get configuration %}
Get the current configuration of a Home Assistant instance:
@ -81,7 +72,7 @@ import homeassistant.remote as remote
api = remote.API('127.0.0.1', 'YOUR_PASSWORD')
office_temperature = remote.get_state(api, 'sensor.office_temperature')
print('{} is {} {}.'.format(office_temperature.attributes['friendly_name'],
print('{} is {} {}.'.format(office_temperature.name,
office_temperature.state,
office_temperature.attributes['unit_of_measurement']
)
@ -101,7 +92,7 @@ import homeassistant.remote as remote
api = remote.API('127.0.0.1', 'YOUR_PASSWORD')
switch_livingroom = remote.get_state(api, 'switch.livingroom_pin_2')
print('{} is {}.'.format(switch_livingroom.attributes['friendly_name'],
print('{} is {}.'.format(switch_livingroom.name,
switch_livingroom.state
)
)
@ -193,5 +184,3 @@ data = {"title":"Test", "message":"A simple test message from HA."}
remote.call_service(api, domain, 'jabber', data)
```
For more details, please check the source of [homeassistant.remote](https://github.com/home-assistant/home-assistant/blob/master/homeassistant/remote.py).

View File

@ -91,7 +91,8 @@ The config for an add-on is stored in `config.json`.
| boot | yes | `auto` by system and manual or only `manual`
| ports | no | Network ports to expose from the container. Format is `"container-port/type": host-port`.
| host_network | no | If that is True, the add-on run on host network.
| devices | no | Device list to map into add-on. Format is: `<path_on_host>:<path_in_container>:<cgroup_permissions>`
| devices | no | Device list to map into add-on. Format is: `<path_on_host>:<path_in_container>:<cgroup_permissions>`. i.e. `/dev/ttyAMA0:/dev/ttyAMA0:rwm`
| privileged | no | Privilege for access to hardware/system. Available access: `NET_ADMIN`
| map | no | List of maps for additional hass.io folders. Possible values: `config`, `ssl`, `addons`, `backup`, `share`. Default it map it `ro`, you can change that if you add a ":rw" at the end of name.
| environment | no | A dict of environment variable to run add-on.
| options | yes | Default options value of the add-on

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB