Merge pull request #5259 from home-assistant/rc

0.68.0
This commit is contained in:
Paulus Schoutsen 2018-04-27 21:46:18 -04:00 committed by GitHub
commit 290e9509f9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
48 changed files with 1347 additions and 47 deletions

View file

@ -16,7 +16,7 @@ ha_iot_class: "Cloud Polling"
The 'hive' binary sensor component integrates your Hive sensors into Home Assistant.
The Hive sensor component supports the following Hive products:
The Hive binary sensor component supports the following Hive products:
- **Hive Window or Door Sensor**
- **Hive Motion Sensor**

View file

@ -39,3 +39,8 @@ The way these sensors are displayed in the frontend can be modified in the [cust
- **window**: `On` means open, `Off` means closed
For analog sensors please check the [component overview](/components/#sensor).
<p class='img'>
<img src='/images/screenshots/binary_sensor_classes_icons.png' />
Example of various device classes icons in `On` and `Off` state.
</p>

View file

@ -0,0 +1,18 @@
---
layout: page
title: "QwikSwitch Binary Sensor"
description: "Instructions on how to integrate Qwikswitch dimmers and relays as sensors into Home Assistant."
date: 2016-05-04 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: qwikswitch.png
ha_category: Sensor
ha_iot_class: "Local Push"
ha_release: "0.68"
---
The `qwikswitch` binary_sensor platform allows you to use your [QwikSwitch](http://www.qwikswitch.co.za/) sensors within Home Assistant.
The platform is configured through the [QwikSwitch component](/components/qwikswitch/).

View file

@ -12,7 +12,7 @@ ha_category: Hub
ha_release: 0.64
---
This component lets you retrieve data on your BMW vehicle from the BMW Connected Drive portal. You need to have a working BMW Connected Drive account and a Connected Drive enabled vehicle for this to work.
This component lets you retrieve data on your BMW vehicle from the BMW Connected Drive portal. You need to have a working BMW Connected Drive account, and a Connected Drive enabled vehicle for this to work.
For compatibility with your BMW vehicle check the [bimmer_connected page](https://github.com/m1n3rva/bimmer_connected) on github.
@ -52,6 +52,38 @@ bmw_connected_drive:
type: string
{% endconfiguration %}
## {% linkable_title Services %}
The `bmw_connected_drive` component offers several services. In case you need to provide the vehicle identification number (VIN) as a parameter, you can see the VIN in the attributes of the device tracker for the vehicle. The VIN is a 17 digit alphanumeric string, e.g., `WBANXXXXXX1234567`.
Using these services will impact the state of your vehicle. So use these services with care!
### {% linkable_title Locking and unlocking %}
The vehicle can be locked and unlocked via the lock component that is created automatically for each vehicle. Before invoking these services, make sure it's safe to lock/unlock the vehicle in the current situation.
### {% linkable_title Air condition %}
The air condition of the vehicle can be activated with the service `bmw_connected_drive.activate_air_conditioning`.
What exactly is started here depends on the type of vehicle. It might range from just ventilation over auxiliary heating to real air conditioning. If your vehicle is equipped with auxiliary heating, only trigger this service if the vehicle is parked in a location where it is safe to use it (e.g., not in an underground parking or closed garage).
The vehicle is identified via the parameter `vin`.
### {% linkable_title Sound the horn %}
The service `bmw_connected_drive.sound_horn` sounds the horn of the vehicle. Use this feature responsibly, as it might annoy your neighbors. The vehicle is identified via the parameter `vin`.
### {% linkable_title Flash the lights %}
The service `bmw_connected_drive.light_flash' flashes the lights of the vehicle. The vehicle is identified via the parameter `vin`.
### {% linkable_title Update the state %}
The service `bmw_connected_drive.update_state`fetches the last state of the vehicles of all your accounts from the BMW server. This does *not* trigger an update from the vehicle; it gets the data from the BMW servers. So this service does *not* interact with your vehicles.
This service does not require any attributes.
## {% linkable_title Disclaimer %}
This software is not affiliated with or endorsed by BMW Group.

View file

@ -95,7 +95,8 @@ Variables:
- **track**: (*Required*): Should we create a sensor `True` or ignore it `False`?
- **search**: (*Optional*): If set will only trigger for matched events.
- **offset**: (*Optional*): A set of characters that precede a number in the event title for designating a pre-trigger state change on the sensor. (Default: `!!`)
 - **ignore_availablilty**: (*Optional*): Should we respect `free`/`busy` flags? (Defaults to `true`)
 
From this we will end up with the binary sensors `calendar.test_unimportant` and `calendar.test_important` which will toggle themselves on/off based on events on the same calendar that match the search value set for each. You'll also have a sensor `calendar.test_everything` that will not filter events out and always show the next event available.
But what if you only wanted it to toggle based on all events? Just leave out the *search* parameter.

View file

@ -111,7 +111,7 @@ Home Assistant does its best to determine what task in each project is "most" im
Todoist also comes with access to a service, `calendar.todoist_new_task`. This service can be used to create a new Todoist task. You can specify labels and a project, or you can leave them blank, and the task will go to your "Inbox" project.
Here's an example JSON payload:
Here are two example JSON payloads resulting in the same task:
```json
{
@ -123,6 +123,17 @@ Here's an example JSON payload:
}
```
```json
{
"content": "Pick up the mail",
"project": "Errands",
"labels":"Homework,School",
"priority":3,
"due_date_string":"tomorrow at 14:00",
"due_date_lang":"en"
}
```
- **content** (*Required*): The name of the task you want to create.
- **project** (*Optional*): The project to put the task in.
@ -131,6 +142,11 @@ Here's an example JSON payload:
- **priority** (*Optional*): The priority of the task, from 1-4. Again, 1 means least important, and 4 means most important.
- **due_date** (*Optional*): When the task should be due, in either YYYY-MM-DD format or YYYY-MM-DD HH:MM format.
- **due_date_string** (*Optional*): When the task should be due, in [natural language](https://support.todoist.com/hc/en-us/articles/205325931-Dates-and-Times). Mutually exclusive with `due_date`
- **due_date_lang** (*Optional*): When `due_date_string` is set, it is posisble to set the language.
Valid languages are: `en`, `da`, `pl`, `zh`, `ko`, `de`, `pt`, `ja`, `it`, `fr`, `sv`, `ru`, `es`, `nl`
- **due_date** (*Optional*): When the task should be due, in either YYYY-MM-DD format or YYYY-MM-DD HH:MM format. Mutually exclusive with `due_date_string`.
Note that there's (currently) no way to mark tasks as done through Home Assistant; task names do not necessarily have to be unique, so you could find yourself in a situation where you close the wrong task.

View file

@ -0,0 +1,28 @@
---
layout: page
title: "Fritzbox Thermostat"
description: "Instructions on how to integrate the AVM Fritzbox thermostat."
date: 2017-11-12 17:10
sidebar: true
comments: false
sharing: true
footer: true
logo: avm.png
ha_category: Climate
ha_release: 0.68
ha_iot_class: "Local Polling"
---
<p class='note'>
To get AVM fritzbox thermostat follow the instructions for the general [Fritzbox](/components/fritzbox/).
</p>
### {% linkable_title Attributes %}
The are several attributes that can be useful for automations and templates.
| Attribute | Description |
| --------- | ----------- |
| `device_locked` | The state of the key lock at the device.
| `locked` | The state of the lock for configuring the device via the app or the Fritzbox web interface.
| `low_battery` | The low battery state indication.

View file

@ -0,0 +1,70 @@
---
layout: page
title: "Modbus"
description: "Instructions how to integrate a Modbus thermostat within Home Assistant."
date: 2018-01-29 9:35
sidebar: true
comments: false
sharing: true
footer: true
logo: modbus.png
ha_category: Thermostat
ha_release: 0.68
ha_iot_class: "Local Polling"
---
The `modbus` thermostat allows you to use a sensor value (current temperature)
and target value (target temperature) from [Modbus](http://www.modbus.org/)
registers.
To use your Modbus thermostat in your installation, add the following to your `configuration.yaml` file:
```yaml
climate:
- platform: modbus
name: Watlow F4T
slave: 1
target_temp_register: 2782
current_temp_register: 27586
```
{% configuration %}
name:
description: Name of the device
required: true
type: string
slave:
description: The number of the slave (Optional for tcp and upd Modbus, use 1).
required: true
type: int
target_temp_register:
description: Register number for target temperature (Setpoint).
required: true
type: int
current_temp_register:
description: Register number for current temperature (Process value).
required: true
type: int
data_type:
description: Response representation (int, uint, float, custom). If float selected, value will converted to IEEE 754 floating point format.
Default float.
required: false
type: string
count:
description: Number of registers to read.
required: false
type: int
precision:
description: Number of valid decimals, default 0.
required: false
type: int
{% endconfiguration %}
### {% linkable_title Services %}
| Service | Description |
| ------- | ----------- |
| set_temperature | Set Temperature. Requires `value` to be passed in, which is the desired target temperature. `value` should be in the same type as `data_type` |

View file

@ -13,24 +13,20 @@ ha_release: 0.13
ha_iot_class: "Cloud Polling"
---
Wink cover/garage door functionality depends on the product you're using. With GoControl/Linear Home Assistant can open, close, and view state. Chamberlain is currently limited to view only. Meaning Home Assistant will only show the current state of the door and control has been disabled (by Chamberlain). If you have a Chamberlain garage door, and would like to control it via Home Assistant, please contact Chamberlain and request that they re-enabled third-party control.
Wink Cover garage door functionality varies on the product. Home Assistant can open, close, and view state of GoControl/Linear openers. For Chamberlain MyQ-enabled openers, Home Assistant is limited to show current state (open or closed) only using this Wink cover. This restriction was imposed by Chamberlain for third party control. Wink suggests that MyQ customers should contact Chamberlain directly to inquire about expanding permissions.
The following quote is from Wink.
> As part of our agreement with Chamberlain, third-party access to control Chamberlain garage doors has been restricted. Please contact Chamberlain directly to inquire about permissions.
The [MyQ Cover](/components/cover.myq/) does provide full functionality for opening and closing Chamberlain MyQ-enabled garage doors. If installed along with the Wink Component, a duplicate garage door entity may exist. In that case, the semi-functional Wink garage door entity can be hidden via customize.yaml.
The requirement is that you have setup [Wink](/components/wink/).
### {% linkable_title Supported cover devices %}
- Bali window treatments
- Lutron shades
- Pella motorized blinds and shades
- GoControl garage door opener
- Chamberlain (Limited functionality) (No Wink hub required)
- Chamberlain MyQ (Limited functionality) (No Wink hub required)
<p class='note'>
The above devices are confirmed to work, but others may work as well.
</p>

View file

@ -8,7 +8,7 @@ comments: false
sharing: true
footer: true
logo: xiaomi.png
ha_category: Sensor
ha_category: Presence Detection
ha_version: 0.67
ha_iot_class: "Local Polling"
---

View file

@ -23,6 +23,7 @@ Home Assistant can discover and automatically configure [zeroconf](https://en.wi
* [DirecTV receivers](/components/media_player.directv/)
* [Frontier Silicon internet radios](/components/media_player.frontier_silicon/)
* [Google Cast](/components/media_player.cast/)
* [HomeKit](/components/homekit_controller/)
* [IKEA Trådfri (Tradfri)](/components/tradfri/)
* [Linn / Openhome](/components/media_player.openhome/)
* [Logitech Harmony Hub](/components/remote.harmony/)
@ -50,6 +51,8 @@ discovery:
ignore:
- sonos
- samsung_tv
enable:
- homekit
```
Configuration variables:
@ -85,6 +88,12 @@ Valid values for ignore are:
* `yamaha`: Yamaha media player
* `yeelight`: Yeelight Sunflower bulb
- **enable** (*Optional*): A list of platforms not enabled by default that `discovery` should discover.
Valid values for enable are:
* `homekit`: HomeKit accessories
<p class='note'>
Home Assistant must be on the same network as the devices for uPnP discovery to work.
If running Home Assistant in a [Docker container](/docs/installation/docker/) use switch `--net=host` to put it on the host's network.

View file

@ -0,0 +1,54 @@
---
layout: page
title: "Eufy"
description: "Instructions on how to integrate Eufy devices into Home Assistant."
date: 2018-04-09 19:00
sidebar: true
comments: false
sharing: true
footer: true
logo: eufy.png
ha_category: Hub
ha_release: 0.68
---
The `eufy` component is the main component to integrate various [eufy](http://https://www.eufylife.com/) devices with Home Assistant.
Supported devices will be discovered after the `eufy` component is configured:
```yaml
# Example configuration.yaml entry
eufy:
username: testuser@domain
password: p4ssw0rd
```
where username and password are the ones configured in the EufyHome app. Alternately, Eufy devices that are not discoverable can be statically configured.
```yaml
eufy:
devices:
- address: 192.168.1.10
access_token: 1234567890abcdef
type: T1012
name: Smart Light
- address: 192.168.1.11
access_token: abcdef1234567890
type: T1201
name: Smart Switch
```
access_token can be obtained by running:
```
curl -H "Content-Type: application/json" -d '{"client_id":"eufyhome-app", "client_Secret":"GQCpr9dSp3uQpsOMgJ4xQ", "email":"USERNAME", "password":"PASSWORD"}' https://home-api.eufylife.com/v1/user/email/login | jq
```
replacing USERNAME and PASSWORD with the Eufy username and password. This will give an access_token. Then run:
```
curl -H token:TOKEN -H category:Home https://home-api.eufylife.com/v1/device/list/devices-and-groups | jq
```
replacing TOKEN with the access_token from the previous command. This will provide the local_code for each device.

View file

@ -0,0 +1,54 @@
---
layout: page
title: "Fritzbox"
description: "Instructions on how to integrate the AVM Fritzbox Smart Home components."
date: 2018-02-18 17:10
sidebar: true
comments: false
sharing: true
footer: true
logo: avm.png
ha_category: Hub
ha_release: 0.68
ha_iot_class: "Local Polling"
---
The [AVM](www.avm.de) Fritzbox component for Home Assistant allows you to integrate the switch and climate devices.
#### {% linkable_title Tested Devices %}
- [FRITZ!Box 6490 Cable](https://avm.de/produkte/fritzbox/fritzbox-6490-cable/)
- [FRITZ!DECT 200](https://avm.de/produkte/fritzdect/fritzdect-200/)
- [Eurotronic Comet DECT](https://www.eurotronic.org/produkte/comet-dect.html)
## {% linkable_title Setup %}
```yaml
# Example configuration.yaml entry
fritzbox:
devices:
- host: fritz.box
username: YOUR_USERNAME
password: YOUR_PASSWORD
```
{% configuration %}
devices:
description: A list of Fritzbox devices.
required: true
type: map
keys:
host:
description: The hostname or IP address of the Fritzbox.
required: true
type: optional
username:
description: The username for Smart Home access.
required: true
type: string
password:
description: The password of the user.
required: true
type: string
{% endconfiguration %}

View file

@ -15,7 +15,7 @@ logo: apple-homekit.png
The `HomeKit` component allows you to forward entities from Home Assistant to Apple `HomeKit`, so they can be controlled from Apple's `Home` app and `Siri`. Please make sure that you have read the [considerations](#considerations) listed below to save you some trouble later.
<p class="note warning">
It might be necessary to install an additional package:
It might be necessary to install an additional package:
`$ sudo apt-get install libavahi-compat-libdnssd-dev`
</p>
@ -154,7 +154,7 @@ automation:
## {% linkable_title Configure Filter %}
By default no entity will be excluded. To limit which entities are being exposed to `HomeKit`, you can use the `filter` parameter. Keep in mind only [supported components](#supported-components) can be added.
By default no entity will be excluded. To limit which entities are being exposed to `HomeKit`, you can use the `filter` parameter. Keep in mind only [supported components](#supported-components) can be added.
{% raw %}
```yaml
@ -184,7 +184,7 @@ Filters are applied as follows:
- if both include and exclude domains specified, the exclude domains are ignored
* Neither include or exclude domain specified
- if entity is included, pass (as #2 above)
- if entity include and exclude, the entity exclude is ignored
- if entity include and exclude, the entity exclude is ignored
## {% linkable_title Supported Components %}
@ -194,11 +194,19 @@ The following components are currently supported:
| Component | Type Name | Description |
| --------- | --------- | ----------- |
| alarm_control_panel | SecuritySystem | All security systems. |
| binary_sensor | Sensor | Support for `co2`, `door`, `garage_door`, `gas`, `moisture`, `motion`, `occupancy`, `opening`, `smoke` and `window` device classes. Defaults to the `occupancy` device class for everything else. |
| climate | Thermostat | All climate devices. |
| cover | GarageDoorOpener | All covers that support `open` and `close` and have `garage` as their `device_class`. |
| cover | WindowCovering | All covers that support `set_cover_position`. |
| light | Light | Support for `on / off`, `brightness`, `color_temp` and `rgb_color`. |
| sensor | TemperatureSensor | All sensors that have `Celsius` and `Fahrenheit` as their `unit_of_measurement`. |
| sensor | HumiditySensor | All sensors that have `%` as their `unit_of_measurement` |
| cover | WindowCovering | All covers that support `open_cover` and `close_cover` through value mapping. (`open` -> `>=50`; `close` -> `<50`) |
| cover | WindowCovering | All covers that support `open_cover`, `stop_cover` and `close_cover` through value mapping. (`open` -> `>70`; `close` -> `<30`; `stop` -> every value in between) |
| light | Light | Support for `on / off`, `brightness` and `rgb_color`. |
| lock | DoorLock | Support for `lock / unlock`. |
| sensor | TemperatureSensor | All sensors that have `Celsius` and `Fahrenheit` as their `unit_of_measurement` or `temperature` as their `device_class`. |
| sensor | HumiditySensor | All sensors that have `%` as their `unit_of_measurement` or `humidity` as their `device_class`. |
| sensor | AirQualitySensor | All sensors that have `pm25` as part of their `entity_id` or `pm25` as their `device_class` |
| sensor | CarbonDioxideSensor | All sensors that have `co2` as part of their `entity_id` or `co2` as their `device_class` |
| sensor | LightSensor | All sensors that have `lm`/`lux` as their `unit_of_measurement` or `light` as their `device_class` |
| switch / remote / input_boolean / script | Switch | All represented as switches. |

View file

@ -0,0 +1,31 @@
---
layout: page
title: "HomeKit controller support"
description: "Instructions how to integrate your HomeKit devices within Home Assistant."
date: 2018-03-19 21:04
sidebar: true
comments: false
sharing: true
footer: true
logo: apple-homekit.png
ha_category: Hub
ha_release: 0.68
ha_iot_class: "Local Polling"
---
[HomeKit](https://developer.apple.com/homekit/) controller integration for Home Assistant allows you to connect HomeKit accessories to Home Assistant. This component should not be confused with the [HomeKit](homekit) component, which allows you to control Home Assistant devices via HomeKit.
There is currently support for the following device types within Home Assistant:
- [Light](../light.homekit_controller)
- [Switch](../switch.homekit_controller)
The component will be automatically configured if the [`discovery:`](components/discovery/) component is enabled and an enable entry added for HomeKit:
```yaml
discovery:
enable:
- homekit
```
For each detected HomeKit accessory, a configuration prompt will appear in the web front end. Use this to provide the HomeKit PIN.

View file

@ -0,0 +1,19 @@
---
layout: page
title: "Eufy Lights"
description: "Instructions on how to integrate Eufy LED lights into Home Assistant."
date: 2018-04-09 19:00
sidebar: true
comments: false
sharing: true
footer: true
logo: eufy.png
ha_category: Light
ha_iot_class: "Local Polling"
ha_release: 0.68
---
The `eufy` platform allows you to control your [Eufy](http://www.eufylife.com) lights from within Home Assistant.
They will be automatically discovered if the [Eufy](/components/eufy/) component is enabled.

View file

@ -0,0 +1,16 @@
---
layout: page
title: "HomeKit Light"
description: "Instructions how to setup HomeKit lights within Home Assistant."
date: 2017-03-19 21:08
sidebar: true
comments: false
sharing: true
footer: true
logo: apple-homekit.png
ha_category: Light
ha_iot_class: "Local Polling"
ha_release: 0.68
---
To get your HomeKit lights working with Home Assistant, follow the instructions for the general [HomeKit controller component](/components/homekit_controller/).

View file

@ -25,13 +25,37 @@ Supported Devices:
- MAX! Window Sensor (tested)
- MAX! Wall Thermostat (tested)
### {% linkable_title One Gateway %}
A `maxcube` section must be present in the `configuration.yaml` file and contain the following options as required:
```yaml
# Example configuration.yaml entry
maxcube:
host: 192.168.0.20
gateways:
- host: 192.168.0.20
```
Configuration variables:
- **host** (*Required*): The IP address of the eQ-3 MAX! Cube to use.
- **port** (*Optional*): The UDP port number. Defaults to `62910`.
### {% linkable_title Multiple Gateways %}
```yaml
# Example configuration.yaml entry
maxcube:
gateways:
- host: 192.168.0.20
port: 62910
- host: 192.168.0.21
port: 62910
```
{% configuration %}
host:
description: The IP address of the eQ-3 MAX! Cube to use.
required: true
type: string
port:
description: The UDP port number.
required: false
type: int
default: 62910
{% endconfiguration %}

View file

@ -0,0 +1,70 @@
---
layout: page
title: "Blackbird 8x8 HDMI Matrix Switch"
description: "Instructions on how to integrate Monoprice Blackbird 4k 8x8 HDBaseT Matrix Switch into Home Assistant."
date: 2018-03-29 16:35
sidebar: true
comments: false
sharing: true
footer: true
logo: monoprice.svg
ha_category: Media Player
ha_release: 0.68
ha_iot_class: "Local Polling"
---
The `blackbird` platform allows you to control [Monoprice Blackbird Matrix Switch](https://www.monoprice.com/product?p_id=21819) using a serial connection.
To add a Blackbird device to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
media_player:
- platform: blackbird
type: serial
port: /dev/ttyUSB0
zones:
1:
name: Living Room
sources:
3:
name: BluRay
```
{% configuration %}
type:
description: The type of device connection - serial or socket
required: true
type: string
port:
description: The serial port to which Blackbird matrix switch is connected. Either port or host must be defined.
required: optional
type: string
host:
description: The IP address of the Blackbird matrix switch. Either port or host must be defined.
required: optional
type: string
zones:
description: This is the list of zones available. Valid zones are 1,2,3,4,5,6,7,8. Each zone must have a name assigned to it.
required: true
type: int
keys:
name:
description: The name of the zone.
sources:
description: The list of sources available. Valid source numbers are 1,2,3,4,5,6,7,8. Each source number corresponds to the input number on the Blackbird matrix switch. Similar to zones, each source must have a name assigned to it.
required: true
type: int
keys:
name:
description: The name of the source.
{% endconfiguration%}
### {% linkable_title Service `BLACKBIRD_SETALLZONES` %}
Set all zones to the same input source. This service allows you to immediately synchronize all the TVs in your home. Regardless of `entity_id` provided, all zones will be updated.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `entity_id` | yes | String that points at an `entity_id` of a zone.
| `source` | no | String of source name to activate.

View file

@ -17,7 +17,9 @@ ha_iot_class: "Local Push"
The `kodi` platform allows you to control a [Kodi](http://kodi.tv/) multimedia system from Home Assistant.
To add Kodi to your installation, add the following to your `configuration.yaml` file:
The preferred way to set up the Kodi platform is by enabling the [discovery component](https://www.home-assistant.io/components/discovery/) which requires enabled [web interface](https://kodi.wiki/view/Web_interface) on your Kodi installation.
In case the discovery does not work, or you need specific configuration variables, you can add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry

View file

@ -28,11 +28,24 @@ media_player:
pc: 'HTPC'
```
Configuration variables:
- **host** (*Optional*): IP address of the device. Example:`192.168.1.2`. If not specified, the platform will load any discovered receivers.
- **name** (*Required if host is specified*): Name of the device.
- **sources** (*Optional*): A list of mappings from source to source name. Valid sources can be found below. A default list will be used if no source mapping is specified.
{% configuration %}
host:
description: IP address of the device. Example:`192.168.1.2`. If not specified, the platform will load any discovered receivers.
required: false
type: string
name:
description: Name of the device. (*Required if host is specified*)
required: false
type: string
sources:
description: A list of mappings from source to source name. Valid sources can be found below. A default list will be used if no source mapping is specified.
required: false
type: list
zone2:
description: Enables control for the receiver's second zone.
required: false
type: bool
{% endconfiguration %}
List of source names:

View file

@ -55,7 +55,7 @@ A full configuration example will look like the sample below:
media_player:
- platform: webostv
host: 192.168.0.10
name: Living Room TV
name: Living Room TV
timeout: 5
filename: webostv.conf
turn_on_action:
@ -76,7 +76,7 @@ Avoid using `[ ]` in the `name:` of your device.
Home Assistant is able to turn on a LG webOS Smart TV if you specify an action, like HDMI-CEC or WakeOnLan.
Common for webOS 3.0 and higher would be to use WakeOnLan feature.
Common for webOS 3.0 and higher would be to use WakeOnLan feature.
To use this feature your TV should be connected to your network via Ethernet rather than Wireless and you should enable *LG Connect Apps* feature in *Network* settings of the TV [instructions](http://www.lg.com/uk/support/product-help/CT00008334-1437131798537-others) (or *Mobile App* in *General* settings for older models).
```yaml
@ -93,12 +93,36 @@ media_player:
mac: B4:E6:2A:1E:11:0F
```
Any other [actions](/docs/automation/action/) to power on the device can be configured.
Any other [actions](/docs/automation/action/) to power on the device can be configured.
### {% linkable_title Sources %}
To obtain complete list of available sources currently configured on the TV, once the webOS TV is configured and linked, while its powered on head to the **Developer Tools** > **States**, find your `media_player.<name>` and use the sources listed in `source_list:` remembering to split them per line into your `sources:` configuration.
### {% linkable_title Change channel through play_media service %}
The `play_media` service can be used in a script to switch to the specified tv channel.
It selects the best matching cannel according to the `media_content_id` parameter:
1. Channel number *(i.e. '1' or '6')*
2. Exact channel name *(i.e. 'France 2' or 'CNN')*
3. Substring in channel name *(i.e. 'BFM' in 'BFM TV')*
```yaml
# Example action entry in script to switch to channel number 1
service: media_player.play_media
data:
entity_id: media_player.lg_webos_smart_tv
media_content_id: 1
media_content_type: "channel"
# Example action entry in script to switch to channel including 'TF1' in its name
service: media_player.play_media
data:
entity_id: media_player.lg_webos_smart_tv
media_content_id: "TF1"
media_content_type: "channel"
```
### {% linkable_title Next/Previous buttons %}
The behaviour of the next and previsous buttons is different depending on the active source:

View file

@ -28,6 +28,14 @@ notify:
username: CLICKSEND_USERNAME
api_key: CLICKSEND_API_KEY
recipient: PHONE_NO
# Multiple recipients
notify:
- platform: clicksend
name: ClickSend
username: CLICKSEND_USERNAME
api_key: CLICKSEND_API_KEY
recipient: [PHONE_NO1, PHONE_NO2]
```
{% configuration %}
@ -44,9 +52,9 @@ api_key:
required: true
type: string
recipient:
description: "Your phone number. This is where you want to send your notification SMS messages, e.g., `09171234567`."
description: "A single or multiple phone numbers. This is where you want to send your SMS notification messages, e.g., `09171234567` or `[09171234567, 09177654321]`."
required: true
type: string
type: string or list
sender:
description: The name or number of the sender.
required: false

View file

@ -50,7 +50,7 @@ automation:
- '+919784516314'
```
You can also send messages to users that do not have stored their phone number with Facebook, but this requires a bit more work. The Messenger platform uses page specific user IDs instead of a global user ID. You will need to enable a webhook for the "messages" event in Facebook's developer console. Once a user writes a message to a page, that webhook will then receive the user's page specific ID as part of the webhook's payload. Below is a simple PHP script that reacts to the message "get my id" and sends a reply containing the user's ID:
You can also send messages to users that do not have stored their phone number on Facebook, but this requires a bit more work. The Messenger platform uses page-specific user IDs instead of a global user ID. You will need to enable a webhook for the "messages" event in Facebook's developer console. Once a user writes a message to a page, that webhook will then receive the user's page specific ID as part of the webhook's payload. Below is a simple PHP script that reacts to the message "get my id" and sends a reply containing the user's ID:
```php
<?php
@ -96,10 +96,10 @@ if (preg_match('/get my id/', strtolower($message))) {
```
### {% linkable_title Rich messages %}
You could also send rich messing (cards, buttons, images, videos, etc). [Info](https://developers.facebook.com/docs/messenger-platform/send-api-reference) to which types or messages and how to build them.
You could also send rich messing (cards, buttons, images, videos, etc). [Info](https://developers.facebook.com/docs/messenger-platform/send-api-reference) to which types of messages and how to build them.
```yaml
# Example script with a notification entry with rich message
# Example script with a notification entry with a rich message
script:
test_fb_notification:
@ -117,3 +117,21 @@ script:
title: Blue
payload: DEVELOPER_DEFINED_PAYLOAD_FOR_PICKING_BLUE
```
You can now also use Facebook public beta broadcast API to push messages to ALL users who interacted with your chatbot on your page, without having to collect their number. This will scale to thousands of users. Facebook requires that this only be used for non-commercial purposes and they validate every message you send. Also note, your Facebook bot needs to be authorized for "page_subscritions" if you want to make it to all but can be used right away to a selected group of testers of your choice.
To enable broadcast just use the keyword "BROADCAST" as your target. Only put ONE target BROADCAST as below:
```yaml
- alias: Facebook Broadcast
trigger:
platform: sun
event: sunset
action:
service: notify.facebook
data:
message: Some text you want to send
target:
- BROADCAST
```

View file

@ -60,16 +60,19 @@ On some QS Mobile servers button events are only generated for switches added to
### {% linkable_title Qwikswitch Sensors %}
The sensor configuration is a list of sensors. Each sensor is configured with the following parameters:
The sensor configuration is a list of sensors. Depending on the type, it will be a sensor or binary_sensor. Each sensor is configured with the following parameters:
- **name** (*Required*): The sensor name from which the entity_id will be derived.
- **id** (*Required*): A QS_Id
- **type** (*Required*): The Qwikswitch sensor type. These could include:
- imod (up to 6 channels)
- door (single channel)
- qwikcord (Channel1 = CTavg, Channel 2 = CTsum)
- imod (binary_sensor, up to 6 channels)
- door (binary_sensor, single channel)
- qwikcord (Channel 1 = CTavg, Channel 2 = CTsum)
- **channel** (*Optional, default=1*): The channel of interest. Refer to type above.
The following parameters are only applicabe to binary_sensors (i.e. door/imod).
- **invert** (*Optional, default=False): Invert the open/close state.
- **class** (*Optional, default=door): The [class](https://www.home-assistant.io/components/binary_sensor) or binary_sensor.
Example sensor configuration:

View file

@ -43,3 +43,28 @@ Entity ids will be sensor.device_name, where device_name is defined in deCONZ. S
- Xiaomi Smart Home Wireless Switch
- Temperature Sensor
- Xiaomi Temperature/Humidity Sensor
#### {% linkable_title deCONZ Daylight Sensor %}
The deCONZ Daylight sensor is a special sensor built into the deCONZ software since version 2.05.12. It is represented in Home Assistant as a sensor called sensor.daylight. The sensor's state value is a string corresponding to the phase of daylight (descriptions below taken from https://github.com/mourner/suncalc, on which the deCONZ implementation is based):
| Sensor State | Description |
|--------------|-------------|
| sunrise_start | sunrise (top edge of the sun appears on the horizon) |
| sunrise_end | sunrise ends (bottom edge of the sun touches the horizon) |
| golden_hour_1 | morning golden hour (soft light, the best time for photography) |
| solar_noon | solar noon (sun is in the highest position) |
| golden_hour_2 | evening golden hour |
| sunset_start | sunset starts (bottom edge of the sun touches the horizon) |
| sunset_end | sunset (sun disappears below the horizon, evening civil twilight starts) |
| dusk | dusk (evening nautical twilight starts) |
| nautical_dusk | nautical dusk (evening astronomical twilight starts) |
| night_start | night starts (dark enough for astronomical observations) |
| nadir | nadir (darkest moment of the night, the sun is in the lowest position) |
| night_end | night ends (morning astronomical twilight starts) |
| nautical_dawn | nautical dawn (morning nautical twilight starts) |
| dawn | dawn (morning nautical twilight ends, morning civil twilight starts) |
The sensor also has an attribute called "daylight" that has the value `true` when the sensor's state is `golden_hour_1`, `solar_noon`, or `golden_hour_2`, and `false` otherwise.
These states can be used in automations as a trigger (e.g., trigger when a certain phase of daylight starts or ends) or condition (e.g., trigger only if in a certain phase of daylight).

View file

@ -14,8 +14,11 @@ ha_iot_class: "Cloud Polling"
---
The 'hive' sensor component can expose as a sensor the current online status of your Hive Hub.
The 'hive' sensor component exposes hive data as a sensor.
The Hive sensor component exposes the following sensors:
- **Hive Hub Online Status**
- **Hive Outside Temperature**
<p class='note'>
Full configuration details can be found on the main [Hive component](/components/hive/) page.

View file

@ -80,6 +80,10 @@ json_attributes:
description: A list of keys to extract values from a JSON dictionary payload and then set as sensor attributes.
reqired: false
type: list, string
unique_id:
description: "An id that uniquely identifies this sensor. If 2 sensors have the same unique id, Home Assistant will raise an exception.**"
required: false
type: string
{% endconfiguration %}
## {% linkable_title Examples %}

View file

@ -13,6 +13,6 @@ ha_iot_class: "Local Push"
ha_release: "0.67"
---
The `qwikswitch` sensor platform allows you to control your [QwikSwitch](http://www.qwikswitch.co.za/) relays and dimmers as sensors from within Home Assistant.
The `qwikswitch` sensor platform allows you to use your [QwikSwitch](http://www.qwikswitch.co.za/) sensors in Home Assistant.
The platform is configured through the [QwikSwitch component](/components/qwikswitch/).

View file

@ -0,0 +1,52 @@
---
layout: page
title: "Sensirion SHT31 Sensor"
description: "Instructions on how to integrate SHT31 sensors within Home Assistant."
date: 2018-03-06 19:15
sidebar: true
comments: false
sharing: true
footer: true
ha_category: DIY
ha_release: 0.68
logo: sensirion.png
ha_iot_class: "Local Polling"
---
The `sht31` sensor platform allows you to get the current temperature and humidity from a Sensirion SHT31 device.
To use your SHT31 sensor in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
platform: sht31
name: Bedroom
i2c_address: 0x44
monitored_conditions:
- temperature
- humidity
```
{% configuration %}
name:
description: The name of the sensor. Temperature and Humidity will be added to the name for the sensor name.
required: false
default: SHT31
type: string
i2c_address:
description: I2C address of the sensor.
required: false
default: "`0x44`"
type: int
monitored_conditions:
description: Conditions to monitor.
required: false
default: All conditions
type: list
keys:
temperature:
description: The current temperature of the SHT31.
humidity:
description: The current humidity of the SHT31.
{% endconfiguration %}

View file

@ -0,0 +1,47 @@
---
layout: page
title: "Sigfox Sensor"
description: "Display messages from Sigfox devices in Home Assistant."
date: 2018-04-07 12:10
sidebar: true
comments: false
sharing: true
footer: true
logo: sigfox.png
ha_category: Sensor
ha_iot_class: "Local Polling"
ha_release: 0.68
---
[SigFox](https://www.sigfox.com/en) component adding a sensor for each Sigfox device registered with your account. The default name of sensors is `sigfox_{DEVICE_ID}` where `DEVICE_ID` is the devices Sigfox ID. The state of an added Sigfox sensor is the payload of the last message published by that device. Additionally, there are attributes for the latitude and longitude coordinates of the device, as well as the signal-to-noise ratio ( [snr](https://en.wikipedia.org/wiki/Signal-to-noise_ratio)).
```yaml
# Example configuration.yaml entry
sensor:
- platform: sigfox
api_login: your_api_login
api_password: your_api_password
```
{% configuration %}
api_login:
description: Your Sigfox API login.
required: true
type: string
api_password:
description: Your Sigfox API password.
required: true
type: string
name:
description: The name to prepend to the device ID.
required: false
default: "sigfox"
type: string
{% endconfiguration %}
Note that `your_api_login` and `your_api_password` are your **API access credentials** which can be accessed by following:
1. Log into [Sigfox backend](https://backend.sigfox.com)
1. Select `GROUP`
1. Select `API ACCESS`
1. Click on `new` and create new access entry

View file

@ -0,0 +1,39 @@
---
layout: page
title: USCIS Sensor
description: "Instructions on how to set up USCIS within Home Assistant."
date: 2018-03-21 08:00
sidebar: false
comments: false
sharing: true
footer: true
logo: uscis.png
ha_category: Sensor
ha_release: 0.68
ha_iot_class: "Cloud Polling"
---
The `uscis` sensor component allows you get updates on your USCIS case using your case/receipt number. The sensor gets the case information from [USCIS Website]( https://egov.uscis.gov/casestatus/landing.do)
## Example for `configuration.yaml` :
```yaml
sensor:
- platform: uscis
case_id: YOUR_CASE_NUMBER
name: OPTIONAL_NAME
```
{% configuration %}
friendly_name:
description: Name of the sensor in Home Assistant.
required: false
default: USCIS
type: string
case_id:
description: Case/receipt number used to get the case details from USCIS web client.
required: true
type: string
{% endconfiguration %}
All the data will be fetch from [USCIS](https://egov.uscis.gov/casestatus/mycasestatus.do).

View file

@ -0,0 +1,19 @@
---
layout: page
title: "Eufy Switch"
description: "Instructions on how to integrate Eufy switches into Home Assistant."
date: 2018-04-09 19:00
sidebar: true
comments: false
sharing: true
footer: true
logo: eufy.png
ha_category: Switch
ha_iot_class: "Local Polling"
ha_release: 0.68
---
The `eufy` platform allows you to control your [Eufy](http://www.eufylife.com) switches from within Home Assistant.
They will be automatically discovered if the [Eufy](/components/eufy/) component is enabled.

View file

@ -0,0 +1,31 @@
---
layout: page
title: "Fritzbox Switch"
description: "Instructions on how to integrate the AVM Fritzbox switch."
date: 2017-11-12 17:10
sidebar: true
comments: false
sharing: true
footer: true
logo: avm.png
ha_category: Switch
ha_release: 0.68
ha_iot_class: "Local Polling"
---
<p class='note'>
To get AVM Fritzbox switch follow the instructions for the general [Fritzbox](/components/fritzbox/).
</p>
### {% linkable_title Attributes %}
The are several attributes that can be useful for automations and templates.
| Attribute | Description |
| --------- | ----------- |
| `device_locked` | The state of the key lock at the device.
| `locked` | The state of the lock for configuring the device via the app or the Fritzbox web interface.
| `temperature_unit` | The unit of the temperature sensor (only available if the device support temperature sensor).
| `temperature` | The current temperature sensor reading (only available if the device supports temperature sensor).
| `total_consumption` | The total power consumption since the beginning of operation (only available if the device supports power meter function).
| `total_consumption_unit` | The unit of the total_consumption (only available if the device supports power meter function).

View file

@ -0,0 +1,16 @@
---
layout: page
title: "HomeKit Switch"
description: "Instructions on how to setup HomeKit switches within Home Assistant."
date: 2017-03-19 21:08
sidebar: true
comments: false
sharing: true
footer: true
logo: apple-homekit.png
ha_category: Light
ha_iot_class: "Local Polling"
ha_release: 0.68
---
To get your HomeKit switches working with Home Assistant, follow the instructions for the general [HomeKit controller component](/components/homekit_controller/).

View file

@ -88,3 +88,33 @@ data_template:
## {% linkable_title Cache %}
The component has two caches. Both caches can be controlled with the `cache` option in the platform configuration or the service call `say`. A long time cache will be located on the file system. The in-memory cache for fast responses to media players will be auto-cleaned after a short period.
## {% linkable_title REST Api %}
#### {% linkable_title POST /api/tts_get_url %}
Returns an URL to the generated TTS file. Platform and message are required.
```json
{
"plaform": "amazon_polly",
"message": "I am speaking now"
}
```
The return code is 200 if the file is generated. The message body will contain a JSON object with the URL.
```json
{
"url": "http://127.0.0.1:8123/api/tts_proxy/265944c108cbb00b2a621be5930513e03a0bb2cd_en_-_demo.mp3"
}
```
Sample `curl` command:
```bash
$ curl -X POST -H "x-ha-access: YOUR_PASSWORD" \
-H "Content-Type: application/json" \
-d '{"message": "I am speaking now", "platform": "amazon_polly"}' \
http://localhost:8123/api/tts_get_url
```

View file

@ -26,8 +26,10 @@ There is currently support for the following device types within Home Assistant:
Known working ZigBee radios:
- Nortek/GoControl Z-Wave & Zigbee USB Adaptor - Model HUSBZB-1
- Nortek/GoControl Z-Wave & Zigbee USB Adapter - Model HUSBZB-1
- XBee Series 2C
- [Elelabs ZigBee USB Adapter](https://elelabs.com/products/elelabs_usb_adapter.html)
- [Elelabs ZigBee Raspberry Pi Shield](https://elelabs.com/products/elelabs_zigbee_shield.html)
To configure the component, a `zha` section must be present in the `configuration.yaml`,
and the path to the serial device for the radio and path to the database which will persist your network data is required.