Merge pull request #2468 from home-assistant/release-0-43

0.43
This commit is contained in:
Paulus Schoutsen 2017-04-22 00:33:57 -07:00 committed by GitHub
commit 77e93a5861
46 changed files with 1601 additions and 46 deletions

View File

@ -138,10 +138,10 @@ social:
# Home Assistant release details # Home Assistant release details
current_major_version: 0 current_major_version: 0
current_minor_version: 42 current_minor_version: 43
current_patch_version: 4 current_patch_version: 0
date_released: 2017-04-17 date_released: 2017-04-22
# Either # or the anchor link to latest release notes in the blog post. # Either # or the anchor link to latest release notes in the blog post.
# Must be prefixed with a # and have double quotes around it. # Must be prefixed with a # and have double quotes around it.
patch_version_notes: "#release-0424---april-17" patch_version_notes: ""

View File

@ -0,0 +1,20 @@
---
layout: page
title: "AlarmDecoder Alarm Control Panel"
description: "Instructions how to setup the AlarmDecoder Alarm control panel within Home Assistant."
date: 2017-04-02 13:28
sidebar: true
comments: false
sharing: true
footer: true
logo: alarmdecoder.png
ha_category: Alarm
ha_release: 0.43
ha_iot_class: "Local Push"
---
The `alarmdecoder` alarm control panel platform allows you to control your [AlarmDecoder](https://www.alarmdecoder.com) alarms.
The requirement is that you have setup your [AlarmDecoder hub](/components/alarmdecoder/).

View File

@ -12,20 +12,21 @@ ha_category: Alarm
ha_release: 0.42 ha_release: 0.42
--- ---
The `totalconnect` platform provides connectivity with the Honeywell TotalConnect alarm systems used by many alarm companies The `totalconnect` platform provides connectivity with the Honeywell TotalConnect alarm systems used by many alarm companies.
To enable this, add the following lines to your `configuration.yaml`: To enable this, add the following lines to your `configuration.yaml`:
```yaml ```yaml
# Example configuration.yaml entry # Example configuration.yaml entry
alarm_control_panel: alarm_control_panel:
platform: totalconnect - platform: totalconnect
username: YOUR_USERNAME username: YOUR_USERNAME
password: YOUR_PASSWORD password: YOUR_PASSWORD
``` ```
Configuration variables: Configuration variables:
- **name** (*Optional*): Name of device in HomeAssistant
- **name** (*Optional*): Name of device in Home Assistant.
- **username** (*Required*): Username used to sign into the TotalConnect app/web client. - **username** (*Required*): Username used to sign into the TotalConnect app/web client.
- **password** (*Required*): Password used to sign into the TotalConnect app/web client. - **password** (*Required*): Password used to sign into the TotalConnect app/web client.

View File

@ -0,0 +1,55 @@
---
layout: page
title: "AlarmDecoder Alarm"
description: "Instructions on how to integrate a DSC/Honeywell alarm panel with Home Assistant using an AlarmDecoder device."
date: 2017-04-02 13:28
sidebar: true
comments: false
sharing: true
footer: true
logo: alarmdecoder.png
ha_category: Hub
ha_release: 0.43
ha_iot_class: "Local Push"
---
The `alarmdecoder` component will allow Home Assistant users who own either a DSC or Honeywell alarm panel to leverage their alarm system and it's sensors to provide Home Assistant with rich information about their homes. Connectivity between Home Assistant and the alarm panel is accomplished through a device produced by Nu Tech Software Solutions, known as the AlarmDecoder. The AlarmDecoder devices provide a serial, TCP/IP socket or USB interface to the alarm panel, where it emulates an alarm keypad.
Please visit the [AlarmDecoder website](https://www.alarmdecoder.com/) for further information about the AlarmDecoder devices.
There is currently support for the following device types within Home Assistant:
- [Binary Sensor](/components/binary_sensor.alarmdecoder/): Reports on zone status
- [Sensor](/components/sensor.alarmdecoder/): Emulates an keypad display
- [Alarm Control Panel](/components/alarm_control_panel.alarmdecoder/): Reports on alarm status, and can be used to arm/disarm the system
This is a fully event-based component. Any event sent by the AlarmDecoder device will be immediately reflected within Home Assistant.
An `alarmdecoder` section must be present in the `configuration.yaml` file and contain the following options as required:
```yaml
# Example configuration.yaml entry
alarmdecoder:
device:
type: socket
host: 192.168.1.20
port: 10000
panel_display: On
zones:
01:
name: 'Smoke Detector'
type: 'smoke'
02:
name: 'Front Door'
type: 'opening'
```
Configuration variables:
- **type** (*Required*): The type of AlarmDecoder device: socket, serial or usb
- **host** (*Optional*): The IP address of the AlarmDecoder device on your home network, if using socket type. Default: `localhost`
- **port** (*Optional*): The port of the AlarmDecoder device on your home network, if using socket type. Default: `10000`
- **path** (*Optional*): The path of the AlarmDecoder device, if using socket type. Default: `/dev/ttyUSB0`
- **baud** (*Optional*): The baud rate of the AlarmDecoder device, if using serial type. Default: `115200`
- **panel_display** (*Optional*): Create a sensor called sensor.alarm_display to match the Alarm Keypad dispaly. Default: `off`
- **zones** (*Optional*): AlarmDecoder has no way to tell us which zones are actually in use, so each zone must be configured in Home Assistant. For each zone, at least a name must be given. For more information on the available zone types, take a look at the [Binary Sensor](/components/binary_sensor.alarmdecoder/) docs. *Note: If no zones are specified, Home Assistant will not load any binary_sensor components.*

View File

@ -0,0 +1,20 @@
---
layout: page
title: "AlarmDecoder Binary Sensor"
description: "Instructions how to integrate AlarmDecoder binary sensors into Home Assistant."
date: 2017-04-02 13:28
sidebar: true
comments: false
sharing: true
footer: true
logo: alarmdecoder.png
ha_release: 0.43
ha_category: Binary Sensor
ha_iot_class: "Local Push"
---
The `alarmdecoder` alarm control panel platform allows you to control your [AlarmDecoder](https://www.alarmdecoder.com) alarms.
Check the [type/class](/components/binary_sensor/) list for a possible visualization of your zone.
The requirement is that you have setup your [AlarmDecoder hub](/components/alarmdecoder/).

View File

@ -0,0 +1,43 @@
---
layout: page
title: "Ping (ICMP) Binary sensor"
description: "Instructions how to integrate Ping (ICMP)-based binary sensors into Home Assistant."
date: 2017-04-11 08:00
sidebar: true
comments: false
sharing: true
footer: true
logo: home-assistant.png
ha_category: Binary sensor
ha_release: 0.43
---
The `ping` binary sensor platform allows you to using `ping` to send ICMP echo requests. This way you can check if a given host is online and determine the round trip times from your Home Assistant instance to that system.
To use this sensor in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
binary_sensor:
- platform: ping
host: 192.168.0.1
```
Configuration variables:
- **host** (*Required*): The IP address or hostname of the system you want to track.
- **count** (*Optional*): Number of packets to send. Defaults to 5.
- **name** (*Optional*): Let you overwrite the name of the device. Defaults to `Ping Binary sensor`.
The sensor exposes the different round trip times values measured by `ping` as attributes:
- `round trip time mdev`
- `round trip time avg`
- `round trip time min`
- `round trip time max`
<p class='note'>
This sensor was only tested on a Linux-based system.
</p>

View File

@ -0,0 +1,33 @@
---
layout: page
title: "MQTT"
description: "Instructions how to use an MQTT image message as a Camera within Home Assistant."
date: 2017-04-14 00:45
sidebar: true
comments: false
sharing: true
footer: true
logo: mqtt.png
ha_category: Camera
ha_release: 0.43
---
The `mqtt` camera platform allows you to integrate the content of an image file sent through MQTT into Home Assistant as a camera. Everytime a message under the `topic` in the configuration is received, the image displayed in Home Assistant will also be updated.
This can be used with an application or a service capable of sending images through MQTT, for example [Zanzito](https://play.google.com/store/apps/details?id=it.barbaro.zanzito).
To enable this camera in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
camera:
- platform: mqtt
topic: zanzito/shared_locations/my-device
```
Configuration variables:
- **topic** (*Required*): MQTT topic to subscribe to.
- **name** (*Optional*): Name of the camera

View File

@ -0,0 +1,20 @@
---
layout: page
title: "Neato Camera"
description: "Instructions how to setup the Neato cleaning maps within Home Assistant."
date: 2017-04-05 13:10
sidebar: true
comments: false
sharing: true
footer: true
logo: neato.png
ha_category: Camera
ha_release: 0.42
---
The `neato` camera platform allows you to view the latest cleaning map of your [Neato Botvac Connected]
(https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/botvac-connected/).
The requirement is that you have setup your [Neato hub](/components/neato/).

View File

@ -0,0 +1,39 @@
---
layout: page
title: "JSON MQTT Device Tracker"
description: "Instructions how to use JSON MQTT to track devices in Home Assistant."
date: 2017-04-12 20:41
sidebar: true
comments: false
sharing: true
footer: true
logo: mqtt.png
ha_category: Presence Detection
ha_version: 0.44
---
The `mqtt_json` device tracker platform allows you to detect presence by monitoring an MQTT topic for new locations. To use this platform, you specify a unique topic for each device.
To use this device tracker in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
device_tracker:
- platform: mqtt
devices:
paulus_oneplus: location/paulus
annetherese_n4: location/annetherese
```
Configuration variables:
- **devices** (*Required*): List of devices with their topic.
- **qos** (*Optional*): The QoS level of the topic.
This platform receives JSON formatted payloads containing GPS information, for example:
```json
{"longitude": 1.0,"gps_accuracy": 60,"latitude": 2.0,"battery_level": 99.9}
```
Where `longitude` is the longitude, `latitude` is the latitude, `gps_accuracy` is the accuracy in meters, `battery_level` is the current battery level of the device sending the update.
`longitude` and `latitude` are required keys, `gps_accuracy` and `battery_level` are optional.

View File

@ -7,7 +7,6 @@ sidebar: true
comments: false comments: false
sharing: true sharing: true
footer: true footer: true
featured: true
ha_category: Hub ha_category: Hub
ha_release: "0.30" ha_release: "0.30"
logo: digital_ocean.png logo: digital_ocean.png

View File

@ -30,6 +30,7 @@ Home Assistant can discover and automatically configure zeroconf/mDNS and uPnP d
* Flux Led/MagicLight * Flux Led/MagicLight
* Linn / Openhome * Linn / Openhome
* Denon Network Receivers * Denon Network Receivers
* Bose Soundtouch speakers
It will be able to add Google Chromecasts and Belkin WeMo switches automatically, for Philips Hue it will require some configuration from the user. It will be able to add Google Chromecasts and Belkin WeMo switches automatically, for Philips Hue it will require some configuration from the user.
@ -66,7 +67,7 @@ Valid values for ignore are:
<p class='note'> <p class='note'>
Home Assistant must be on the same network as the devices for uPnP discovery to work. Home Assistant must be on the same network as the devices for uPnP discovery to work.
If running Home Assistant in a Docker container use switch `--net=host` to put it on the host's network. If running Home Assistant in a Docker container use switch `--net=host` to put it on the host's network.
</p> </p>

View File

@ -0,0 +1,53 @@
---
layout: page
title: "myStrom WiFi Bulb"
description: "Instructions how to integrate myStrom WiFi Bulbs into Home Assistant."
date: 2017-04-18 06:00
sidebar: true
comments: false
sharing: true
footer: true
logo: mystrom.png
ha_category: Light
---
The `mystrom` light platform allows you to control your [myStrom](https://mystrom.ch/en/) WiFi Bulbs.
To use your myStrom WiFi Bulb in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
light:
- platform: mystrom
host: IP_ADDRESS
mac: MAC_ADDRESS
```
Configuration variables:
- **host** (*Required*): The IP address of your myStrom WiFi Bulb, eg. `192.168.1.32`.
- **mac** (*Required*): The MAC address of your myStrom WiFi Bulb, eg. `5AAC8CA542F3`.
- **name** (*Optional*): The name to use when displaying this light.
Check if you are able to access the light located at `IP_ADRRESS`. The details about your light is provided as a JSON response.
```bash
$ curl http://[IP_ADDRESS]/api/v1/device/[MAC_ADDRESS]
{
"MAC_ADDRESS": {
"type": "rgblamp",
"battery": false,
"reachable": true,
"meshroot": false,
"on": true,
"color": "0;0;100",
"mode": "hsv",
"ramp": 409,
"power": 5.1,
"fw_version": "2.25"
}
}
```

View File

@ -0,0 +1,50 @@
---
layout: page
title: "PWM LED"
description: "Instructions on how to setup pwm leds within Home Assistant."
date: 2017-04-04 13:00
sidebar: true
layout: page
comments: false
sharing: true
footer: true
ha_category: Light
ha_iot_class: "Local Push"
ha_release: 0.43
---
The `rpi_gpio_pwm` platform allows to control multiple lights using pulse-width modulation, for example led strips. It supports one-color, RGB and RGBW leds driven by GPIOs of an Raspberry Pi or a PCA9685 controller.
### {% linkable_title Configuration %}
```yaml
# Example configuration.yaml entry
light:
platform: rpi_gpio_pwm
leds:
# One-color led directly connected to GPIO
- name: Lightstrip Cupboard
driver: gpio
pins: [17]
type: simple
# RGB led connected to PCA9685 controller
- name: TV Backlight
driver: pca9685
pins: [0, 1, 2] # [R, G, B]
type: rgb
# RGBW led connected to PCA9685 controller
- name: Lightstrip Desk
driver: pca9685
pins: [3, 4, 5, 6] # [R, G, B, W]
type: rgbw
```
Configuration variables:
- **leds** array (*Required*):
- **name** (*Required*): The name of the led.
- **driver** (*Required*): The driver, which controls the led. Choose either `gpio` or `pca9685`.
- **pins** (*Required*): The pins connected to the led. The order of pins is determined by the specified type.
- **type** (*Required*): The type of led. Choose either `rgb`, `rgbw` or `simple`.
- **freq** (*Optional*): The PWM frequency. (Default: `200`)
- **address** (*Optional*): The address of the PCA9685 driver. (Default: `0x40`)

View File

@ -0,0 +1,18 @@
---
layout: page
title: "IKEA Trådfri lights"
description: "Access and control your ZigBee-based IKEA Trådfri (Tradfri) Lights."
date: 2017-04-12 22.04
sidebar: true
comments: false
sharing: true
footer: true
logo: ikea.svg
ha_category: Light
ha_iot_class: "Local Polling"
ha_release: 0.43
---
For installation instructions, see [the tradfri component][tradfri].
[tradfri]: /components/tradfri/

View File

@ -24,15 +24,11 @@ To use Lutron Caseta devices in your installation, add the following to your con
``` yaml ``` yaml
lutron_caseta: lutron_caseta:
host: <ip_address> host: <ip_address>
username: lutron
password: integration
``` ```
Configuration variables: Configuration variables:
- **host** (*Required*): The IP address of the Lutron SmartBridge. - **host** (*Required*): The IP address of the Lutron SmartBridge.
- **username** (*Required*): The login name of the user. The user `lutron` always exists.
- **password** (*Required*): The password for the user specified above. `integration` is the password for the always-present `lutron` user.
<p class='note'> <p class='note'>
It is recommended to assign a static IP address to your Lutron SmartBridge. This ensures that it won't change IP address, so you won't have to change the `host` if it reboots and comes up with a different IP address. It is recommended to assign a static IP address to your Lutron SmartBridge. This ensures that it won't change IP address, so you won't have to change the `host` if it reboots and comes up with a different IP address.

View File

@ -9,13 +9,15 @@ sharing: true
footer: true footer: true
logo: soundtouch.jpg logo: soundtouch.jpg
ha_category: Media Player ha_category: Media Player
ha_release: X.X.X ha_release: 0.34.0
ha_iot_class: "Local Polling" ha_iot_class: "Local Polling"
--- ---
The `soundtouch` platform allows you to control your [Bose Soundtouch](https://www.soundtouch.com/) speakers from Home Assistant. The `soundtouch` platform allows you to control your [Bose Soundtouch](https://www.soundtouch.com/) speakers from Home Assistant.
To add your Soundtouch components to your installation, add the following to your `configuration.yaml` file. By default it supports auto-discovery provided by Home Assistant, and you don't need to add anything to your `configuration.yaml`.
Alternatively, you can add the following to your `configuration.yaml` file.
```yaml ```yaml
# Example configuration.yaml # Example configuration.yaml

View File

@ -0,0 +1,51 @@
---
layout: page
title: "Spotify"
description: "Instructions on how to integrate Spotify into Home Assistant."
date: 2017-04-10 08:00
sidebar: true
comments: false
sharing: true
footer: true
logo: spotify.png
ha_category: Media Player
featured: false
ha_release: 0.43
ha_iot_class: "Cloud Polling"
---
The `spotify` media player platform allows you to control [Spotify](https://www.spotify.com/) playback from Home Assistant.
## {% linkable_title Prerequisites %}
- Spotify Premium account.
- Spotify Application, properly configured.
To create the required Spotify Application, login to [Spotify Developer](https://developer.spotify.com), visit the [My Applications](https://developer.spotify.com/my-applications/#!/applications) page, and select **Create An App**. Enter any name and description. Once your application is created, you can view it and discover your **Client ID** and **Client Secret**, which are placed in the Home Assistant configuration file. Finally, add a **Redirect URI** in the following form:
`http://<your_home_assistant_url_or_local_ip>/api/spotify`
Remember to select **Save** after adding the URI.
## {% linkable_title Configuration %}
To add Spotify to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
media_player:
- platform: spotify
client_id: <your client id>
client_secret: <your client secret>
```
Configuration variables:
- **client_id** (*Required*): Client ID from your Spotify Application.
- **client_secret** (*Required*): Client Secret from your Spotify Application.
- **cache_path** (*Optional*): Path to cache authentication token (defaults to configuration directory).
## {% linkable_title Setup %}
After the prerequisites and configuration are complete, restart Home Assistant. A **Spotify** configurator element will be available. Follow the instructions to authorize Home Assistant to access your Spotify account. A Spotify media player will then appear.

View File

@ -35,6 +35,7 @@ Configuration variables:
- **username** (*Optional*): The username for HTTP authentication. - **username** (*Optional*): The username for HTTP authentication.
- **password** (*Optional*): The password for HTTP authentication. - **password** (*Optional*): The password for HTTP authentication.
- **timeout** (*Optional*): Timeout for requests. Defaults to 10 seconds. - **timeout** (*Optional*): Timeout for requests. Defaults to 10 seconds.
- **content_type** (*Optional*): Content type for the request.
The commands can be dynamic, using templates to insert values of other entities. Service call support variables for template stuff. The commands can be dynamic, using templates to insert values of other entities. Service call support variables for template stuff.

View File

@ -0,0 +1,38 @@
---
layout: page
title: "LIFX Cloud Scenes"
description: "Instructions on using native LIFX scenes with Home Assistant."
date: 2017-04-15 23:00
sidebar: true
comments: false
sharing: true
footer: true
logo: lifx.png
ha_category: Scene
ha_release: 0.43
---
The `lifx_cloud` scene platform allows you to activate the scenes that LIFX smartphone apps store in the LIFX cloud.
```yaml
# Example configuration.yaml entry
scene:
platform: lifx_cloud
token: YOUR_LIFX_TOKEN
```
Configuration variables:
- **token** (*Required*): The API token for your LIFX Cloud account.
- **timeout** (*Optional*): Network timeout in seconds (defaults to 10).
### Getting an API token
You create your API token on the LIFX website:
1. Sign in to the [LIFX Cloud](https://cloud.lifx.com/)
2. Click on your e-mail address and select _Settings_
3. Now click _Generate New Token_
4. Enter a meaningful label, such as 'Home Assistant'
5. Click _Generate_
6. Copy the token that now appears
7. Paste the token into the Home Assistant configuration file

View File

@ -0,0 +1,18 @@
---
layout: page
title: "AlarmDecoder Sensor"
description: "Instructions how to integrate AlarmDecoder sensors into Home Assistant."
date: 2017-04-02 13:28
sidebar: true
comments: false
sharing: true
footer: true
logo: alarmdecoder.png
ha_release: 0.43
ha_category: Sensor
ha_iot_class: "Local Push"
---
The `alarmdecoder` alarm control panel platform allows you to control your [AlarmDecoder](https://www.alarmdecoder.com) alarms.
The requirement is that you have setup your [AlarmDecoder hub](/components/alarmdecoder/).

View File

@ -39,6 +39,8 @@ Configuration variables:
- **api_key** (*Required*): Your API key. - **api_key** (*Required*): Your API key.
- **name** (*Optional*): Additional name for the sensors. Default to platform name. - **name** (*Optional*): Additional name for the sensors. Default to platform name.
- **forecast** array (*Optional*): List of days in the 7 day forecast you would like to receive data on, starting with tomorrow as day 1. Any `monitored_condition` with a daily forecast by DarkSky will generate a sensor tagged with `_<day>`. - **forecast** array (*Optional*): List of days in the 7 day forecast you would like to receive data on, starting with tomorrow as day 1. Any `monitored_condition` with a daily forecast by DarkSky will generate a sensor tagged with `_<day>`.
- **latitude** (*Optional*): Latitude coordinate to monitor weather of (required if **longitude** is specificed), defaults to coordinates defined in your `configuration.yaml`
- **longitude** (*Optional*): Longitude coordinate to monitor weather of (required if **latitude** is specified), defaults to coordinates defined in your `configuration.yaml`
- **monitored_conditions** array (*Required*): Conditions to display in the frontend. - **monitored_conditions** array (*Required*): Conditions to display in the frontend.
- **summary**: A human-readable text summary of the current conditions. - **summary**: A human-readable text summary of the current conditions.
- **precip_type**: The type of precipitation occurring. - **precip_type**: The type of precipitation occurring.

View File

@ -25,6 +25,8 @@ It's an alternative to the [template sensor](/components/sensor.template/)'s `va
}}{% endraw %} }}{% endraw %}
``` ```
Sensors with an unknown state will be ignored in the calculation. If the unit of measurement of the sensors differs, the `min_max` sensor will go to an error state where the value is `UNKNOWN` and the unit of measurement is `ERR`.
To enable the minimum/maximum sensor, add the following lines to your `configuration.yaml`: To enable the minimum/maximum sensor, add the following lines to your `configuration.yaml`:
```yaml ```yaml
@ -43,3 +45,4 @@ Configuration variables:
- **type** (*Optional*): The type of sensor: `min`, `max` or `mean`. Defaults to `max`. - **type** (*Optional*): The type of sensor: `min`, `max` or `mean`. Defaults to `max`.
- **name** (*Optional*): Name of the sensor to use in the frontend. - **name** (*Optional*): Name of the sensor to use in the frontend.
- **round_digits** (*Optional*): Round mean value to specified number of digits. Defaults to 2. - **round_digits** (*Optional*): Round mean value to specified number of digits. Defaults to 2.

View File

@ -35,6 +35,8 @@ sensor:
unit_of_measurement: °C unit_of_measurement: °C
slave: 1 slave: 1
register: 120 register: 120
register_type: input
data_type: float
scale: 0.01 scale: 0.01
offset: -273.16 offset: -273.16
precision: 2 precision: 2
@ -46,8 +48,10 @@ Configuration variables:
- **name** (*Required*): Name of the sensor. - **name** (*Required*): Name of the sensor.
- **slave** (*Required*): The number of the slave (Optional for tcp and upd Modbus). - **slave** (*Required*): The number of the slave (Optional for tcp and upd Modbus).
- **register** (*Required*): Register number. - **register** (*Required*): Register number.
- **register_type** (*Optional*): Modbus register type (holding, input), default holding
- **unit_of_measurement** (*Optional*): Unit to attach to value. - **unit_of_measurement** (*Optional*): Unit to attach to value.
- **count** (*Optional*): Number of registers to read. - **count** (*Optional*): Number of registers to read.
- **scale** (*Optional*): Scale factor (output = scale * value + offset), default 1 - **scale** (*Optional*): Scale factor (output = scale * value + offset), default 1
- **offset** (*Optional*): Final offset (output = scale * value + offset), default 0 - **offset** (*Optional*): Final offset (output = scale * value + offset), default 0
- **precision** (*Optional*): Number of valid decimals, default 0 - **precision** (*Optional*): Number of valid decimals, default 0
- **data_type** (*Optional*): Response representation (int, float). If float selected, value will be converted to IEEE 754 floating point format. default int

View File

@ -22,45 +22,39 @@ To enable this sensor, add the following lines to your `configuration.yaml` file
# Example configuration.yaml entry # Example configuration.yaml entry
sensor: sensor:
- platform: mvglive - platform: mvglive
station: STATION_OR_STOP nextdeparture:
- station: STATION_OR_STOP_NAME
``` ```
Configuration variables: Configuration variables:
- **station** (*Required*): Name of the stop or station. Visit [the MVG live web site](http://www.mvg-live.de) to find valid names. - **station** (*Required*): Name of the stop or station. Visit [the MVG live web site](http://www.mvg-live.de) to find valid names.
- **destination** (*Optional*): Name of the line's final destination to display only connections ending there. - **destinations** (*Optional*): One or multiple final stop names, e.g. 'Feldmoching' or ['Feldmoching','Harthof']. This can be used to only consider a particular direction of travel
- **line** (*Optional*): Online display connections from this line, e.g. `'U6'`, `'S2'`. - **directions** (*Optional*): Filter by direction of the departure. For Tram, Bus, SEV, and S-Bahn, direction = direction. For U-Bahn trains, directions are more general. For U1, U2, U3 and U6, direction='1' indicates south-bound trains, direction='2' indicates northbound trains. For U4 and U5, direction='1' indicates east-bound trains, direction='2' indicates west-bound trains. For example, setting directions: '1' can be used to get all south-bound trains at Scheidplatz.
- **offset** (*Optional*): Do not display connections departing sooner than this number of minutes (defaults to 0). Useful if you are a couple of minutes away from the stop. - **lines** (*Optional*): One or more line numbers, e.g. 'U2' or ['U2','U8','N41']
- **bus** (*Optional*): If 'False', do not display bus connections - **products** (*Optional*): One or more modes of transport, defaults to all 4 modes ['U-Bahn', 'Tram', 'Bus', 'S-Bahn'].
- **tram** (*Optional*): If 'False', do not display tram connections - **timeoffset** (*Optional*): Do not display departures leaving sooner than this number of minutes (defaults to 0). Useful if you are a couple of minutes away from the stop.
- **ubahn** (*Optional*): If 'False', do not display U-Bahn (subway) connections - **name** (*Optional*): You can customise the name of the sensor, which defaults to the station name.
- **sbahn** (*Optional*): If 'False', do not display S-Bahn (suburban train) connections
## {% linkable_title Examples %} ## {% linkable_title Examples %}
### {% linkable_title Full configuration %} ### {% linkable_title Full configuration %}
The example below shows a full configuration using the 'line' argument. The example below shows a full configuration with three sensors that showcase the various configuration options.
```yaml ```yaml
# Example configuration.yml entry # Example configuration.yml entry
sensor: sensor:
- platform: mvglive - platform: mvglive
station: Marienplatz nextdeparture:
line: U6 - station: Hauptbahnhof
offset: 5 name: Hbf
destination: Garching-Forschungszentrum destinations: ['München Flughafen Terminal','Markt Schwaben']
``` products: 'S-Bahn'
timeoffset: 2
Another example showing all bus connections at the main station. - station: Sendlinger Tor
lines: ['U2','U8']
```yaml - station: Scheidplatz
# Example configuration.yml entry products: ['U-Bahn']
sensor: directions: '1'
- platform: mvglive
station: Hauptbahnhof
offset: 2
sbahn: False
ubahn: False
tram: False
``` ```
The first sensor will return S-Bahn departures to Munich Airport or Markt Schwaben that are at least 2 minutes away. The second sensor returns U2 and U8 departures from Sendlinger Tor while the third sensor returns all south-bound U-Bahn trains from Scheidplatz.

View File

@ -13,5 +13,6 @@ ha_release: 0.33
--- ---
The `neato` sensor platform allows you to watch status and battery of your [Neato Botvac Connected](https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/botvac-connected/). The `neato` sensor platform allows you to watch status and battery of your [Neato Botvac Connected](https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/botvac-connected/).
The status sensor will contain attributes on the robots last clean session.
To add `neato` sensors to your installation, follow instructions in [Neato component](/components/neato/). To add `neato` sensors to your installation, follow instructions in [Neato component](/components/neato/).

View File

@ -0,0 +1,44 @@
---
layout: page
title: "OpenSky Network"
description: "Instructions on how to integrate OpenSky Network into Home Assistant."
date: 2017-04-14 10:00
sidebar: true
comments: false
sharing: true
footer: true
logo: opensky.png
ha_category: Sensor
featured: false
ha_release: 0.43
ha_iot_class: "Cloud Polling"
---
The `opensky` sensor allows one to track overhead flights in a given region. It uses crowd-sourced data from the [OpenSky Network](https://opensky-network.org/) public API. It will also fire Home Assistant events when flights enter and exit the defined region.
## Configuration
To enable this sensor, add the following lines to your `configuration.yaml`.
```yaml
sensor:
- platform: opensky
radius: 10
```
Configuration options for the OpenSky Network sensor:
- **radius** (*Required*): Radius of region to monitor, in kilometers
- **latitude** (*Optional*): Region latitude (defaults to home zone latitude)
- **longitude** (*Optional*): Region longitude (defaults to home zone longitude)
- **name** (*Optional*): Sensor name (defaults to `opensky`)
## Events
- **opensky_entry**: Fired when a flight enters the region
- **opensky_exit**: Fired when a flight exits the region
Both events have two attributes:
- **sensor**: Name of `opensky` sensor that fired the event
- **callsign**: Callsign of the flight

View File

@ -56,5 +56,9 @@ The sun event need to have the type 'sun', which service to call, which event (s
| --------- | ----------- | | --------- | ----------- |
| `next_rising` | Date and time of the next sun rising (in UTC). | `next_rising` | Date and time of the next sun rising (in UTC).
| `next_setting` | Date and time of the next sun setting (in UTC). | `next_setting` | Date and time of the next sun setting (in UTC).
| `next_dawn` | Date and time of the next dawn (in UTC).
| `next_dusk` | Date and time of the next dusk (in UTC).
| `next_noon` | Date and time of the next solar noon (in UTC).
| `next_midnight` | Date and time of the next solar midnight (in UTC).
| `elevation` | Solar elevation. This is the angle between the sun and the horizon. Negative values mean the sun is below the horizon. | `elevation` | Solar elevation. This is the angle between the sun and the horizon. Negative values mean the sun is below the horizon.
| `azimuth` | Solar azimuth. The angle is shown clockwise from north. | `azimuth` | Solar azimuth. The angle is shown clockwise from north.

View File

@ -40,3 +40,8 @@ Configuration variables:
- **username** (*Required*): The username for your Fritz!Box. - **username** (*Required*): The username for your Fritz!Box.
- **password** (*Required*): The password for your Fritz!Box. - **password** (*Required*): The password for your Fritz!Box.
- **host** (*Optional*): The IP address/hostname of your Fritz!Box. Defaults to `fritz.box`. - **host** (*Optional*): The IP address/hostname of your Fritz!Box. Defaults to `fritz.box`.
<p class='note warning'>
If this component throws an error when starting home-assistant you should check if all actors are plugged in and connected to the FritzBox. Inactive actors that are not deleted from FritzBox configuration might lead to errors.
</p>

View File

@ -34,6 +34,7 @@ Configuration variables:
- **name** (*Optional*): The name of the switch. Default is 'Wake on LAN'. - **name** (*Optional*): The name of the switch. Default is 'Wake on LAN'.
- **host** (*Optional*): The IP address or hostname to check the state of the device (on/off). - **host** (*Optional*): The IP address or hostname to check the state of the device (on/off).
- **turn_off** (*Optional*): Defines an [action](/getting-started/automation/) to run when the switch is turned off. - **turn_off** (*Optional*): Defines an [action](/getting-started/automation/) to run when the switch is turned off.
- **broadcast_address** (*Optional*): The IP address of the host to send the magic packet to (default 255.255.255.255).
## {% linkable_title Examples %} ## {% linkable_title Examples %}

View File

@ -0,0 +1,81 @@
---
layout: page
title: "Telegram chatbot"
description: "Telegram chatbot support"
date: 2017-04-05 18:50
sidebar: true
comments: false
sharing: true
footer: true
logo: telegram.png
ha_release: 0.42
---
Use Telegram on your mobile device to send messages or commands to your Home Assistant.
A command looks like `/thecommand`
When received by hass it will fire a `telegram.command` event on the event bus with the following `event_data`:
```yaml
command: "/thecommand"
args: "<any other text following the command>"
from_first: "<first name of the sender>"
from_last: "<last name of the sender>"
user_id: "<id of the sender>"
```
### {% linkable_title Configuration samples %}
Simple ping pong example.
```yaml
alias: 'telegram bot that reply pong to ping'
hide_entity: true
trigger:
platform: event
event_type: telegram.command
event_data:
command: '/ping'
action:
- service: notify.notify
data:
message: 'pong'
```
Example that show keyboard interaction with `notify.telegram`
```yaml
trigger:
platform: event
event_type: telegram.command
event_data:
command: '/start'
action:
- service: notify.telegram
data:
message: 'commands'
data:
keyboard:
- '/ping, /alarm'
- '/siren'
```
and an automation to trigger a related command "/siren".
```yaml
trigger:
platform: event
event_type: telegram.command
event_data:
command: '/siren'
action:
- service: homeassistant.turn_on
entity_id: switch.vision_zm1601eu5_battery_operated_siren_switch_9_0
- delay:
seconds: 10
- service: homeassistant.turn_off
entity_id: switch.vision_zm1601eu5_battery_operated_siren_switch_9_0
```

View File

@ -0,0 +1,38 @@
---
layout: page
title: "Telegram polling"
description: "Telegram polling support"
date: 2017-04-05 18:50
sidebar: true
comments: false
sharing: true
footer: true
logo: telegram.png
ha_category: Telegram chatbot
ha_release: 0.42
---
Telegram chatbot polling implementation.
One of two bot implementations supported by Telegram. Your hass does not have to be exposed to the internet.
To integrate this into Home Assistant, add the following section to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
telegram_bot:
platform: polling
api_key: <telegram api key>
allowed_chat_ids:
- 12345
- 67890
```
Configuration variables:
- **allowed_chat_ids** (*Required*): A list of user in the `user_id` Telegram format enabled to interact to webhook
- **api_key** (*Required*): The API token of your bot.
To get your `chat_id` and `api_key` follow the instructions [here](/components.notify.telegram) .

View File

@ -0,0 +1,61 @@
---
layout: page
title: "Telegram webhooks"
description: "Telegram webhooks support"
date: 2017-04-05 18:50
sidebar: true
comments: false
sharing: true
footer: true
logo: telegram.png
ha_category: Telegram chatbot
ha_release: 0.42
---
Telegram chatbot webhooks implementation as described in [docs](https://core.telegram.org/bots/webhooks).
One of two bot implementations supported by Telegram. Described by Telegram as the preferred implementation but requires your hass instance to be exposed to the internet.
To integrate this into Home Assistant, add the following section to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
http:
base_url: <public_url> # the hass https url which is exposed to the internet.
telegram_bot:
platform: webhooks
api_key: telegram api key
allowed_chat_ids:
- 12345
- 67890
```
Configuration variables:
- **allowed_chat_ids** (*Required*): A list of user in the `user_id` Telegram format enabled to interact to webhook
- **api_key** (*Required*): The API token of your bot.
- **trusted_networks** (*Optional*): Telegram server access ACL as list. Defaults to `149.154.167.197-233`.
To get your `chat_id` and `api_key` follow the instructions [here](/components.notify.telegram) .
Full configuration sample:
```yaml
# Example configuration.yaml entry
http:
base_url: <public_url>
telegram_webhooks:
api_key: ABCDEFGHJKLMNOPQRSTUVXYZ
trusted_networks:
- 149.154.167.197/32
- 149.154.167.198/31
- 149.154.167.200/29
- 149.154.167.208/28
- 149.154.167.224/29
- 149.154.167.232/31
allowed_chat_ids:
- 12345
- 67890
```

View File

@ -0,0 +1,39 @@
---
layout: page
title: "IKEA Trådfri (Tradfri)"
description: "Access and control your ZigBee-based IKEA Trådfri (Tradfri) devices."
date: 2017-04-12 22.04
sidebar: true
featured: true
comments: false
sharing: true
footer: true
logo: ikea.svg
ha_category: Hub
ha_iot_class: "Local Polling"
ha_release: 0.43
---
Support for the IKEA Trådfri (Tradfri) gateway. The gateway can control lights connected to it.
NB: for this to work, you need to install a modified lib-coap library:
```bash
apt-get install libtool
git clone --depth 1 --recursive -b dtls https://github.com/home-assistant/libcoap.git
cd libcoap
./autogen.sh
./configure --disable-documentation --disable-shared --without-debug CFLAGS="-D COAP_DEBUG_FD=stderr"
make
make install
```
To enable these lights, add the following lines to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
tradfri:
host: 192.168.0.129
api_key: <on back of gateway>
```

View File

@ -0,0 +1,48 @@
---
layout: page
title: "MaryTTS"
description: "Instructions how to setup MaryTTS with Home Assistant."
date: 2017-04-08 16:49
sidebar: true
comments: false
sharing: true
footer: true
logo: marytts.png
ha_category: Text-to-speech
ha_release: 0.43
---
The `marytts` text-to-speech platform uses [MaryTTS](http://mary.dfki.de/) Text-to-Speech engine to read a text with natural sounding voices.
To enable text-to-speech with MaryTTS, add the following lines to your `configuration.yaml`:
```yaml
# Example configuration.yaml entry
tts:
- platform: marytts
host: 'localhost'
port: 59125
```
Configuration variables:
- **host** (*Optional*): MaryTTS server hostname or IP address. Default is `localhost`.
- **port** (*Optional*): MaryTTS server port. Default is 59125.
- **codec** (*Optional*): Audio codec. Default is `wav`. Supported are `aiff`, `au`, `wav`.
- **voice** (*Optional*): Speaker voice. Default is `cmu-slt-hsmm`.
- **language** (*Optional*): Language to use. Default is `en-US`. Supports 'de', 'en-GB', 'en-US', 'fr', 'it', 'lb', 'ru', 'sv', 'te', 'tr'.
See [documentation](http://mary.dfki.de/documentation/index.html) for details.
A full configuration sample:
```yaml
# Example configuration.yaml entry
tts:
- platform: marytts
host: 'localhost'
port: 59125
codec: 'wav'
voice: 'cmu-slt-hsmm'
language: 'en-US'
```

View File

@ -0,0 +1,12 @@
---
layout: page
title: "Configuration.yaml by Mahasri Kalavala"
description: ""
date: 2017-04-19 12:00
sidebar: true
comments: false
sharing: true
footer: true
ha_category: Example configuration.yaml
ha_external_link: https://github.com/skalavala/smarthome
---

View File

@ -79,6 +79,12 @@ Home Assistant provides multiple ways to be installed. A requirement is that you
</div> </div>
<div class='title'>Vagrant</div> <div class='title'>Vagrant</div>
</a> </a>
<a class='option-card' href='/docs/installation/freenas/'>
<div class='img-container'>
<img src='/images/supported_brands/freenas.png' />
</div>
<div class='title'>FreeNAS</div>
</a>
</div> </div>
Once Home Assistant is installed, execute the following code in a console/terminal to check if the setup was successful: Once Home Assistant is installed, execute the following code in a console/terminal to check if the setup was successful:

View File

@ -0,0 +1,38 @@
---
layout: page
title: "Installation on FreeNAS 9.10"
description: "Installation of Home Assistant on your FreeNAS."
date: 2017-04-06 17:00
sidebar: true
comments: false
sharing: true
footer: true
---
[Freenas](http://www.freenas.org) is a free and open-source network-attached storage (NAS) software based on FreeBSD and the OpenZFS file system. It is licensed under the terms of the BSD License and runs on commodity x86-64 hardware.
This has been tested on the FreeNAS 9.10. These instructions assume you already have a running and accessible jail. For more information on creating a jail follow the official FreeNAS 9.10.x documentation [HERE](https://doc.freenas.org/9.10/jails.html#adding-jails). Once you have the jail follow the steps below.
Install the necessary Python Packages.
```bash
# pkg update
# pkg upgrade
# pkg install python35
# pkg install py35-sqlite3
# python3.5 -m ensurepip
```
Install Home Assistant itself.
```bash
# pip3 install homeassistant
```
Finally start Home Assistant.
```bash
# hass --open-ui
```
Some suggestions on using a tmux to keep it running can be found in the FreeNAS forums [HERE](https://forums.freenas.org/index.php?threads/how-to-home-assistant-in-a-jail-tested-on-9-10.50371/)

View File

@ -29,8 +29,8 @@
<a href='/components/media_player.plex/'> <a href='/components/media_player.plex/'>
<img src='/images/supported_brands/plex.png' /> <img src='/images/supported_brands/plex.png' />
</a> </a>
<a href='/components/device_tracker.netgear/'> <a href='/components/tradfri/'>
<img src='/images/supported_brands/netgear.png' /> <img src='/images/supported_brands/ikea.svg' width='165' />
</a> </a>
<a href='/components/vera/'> <a href='/components/vera/'>
<img src='/images/supported_brands/vera.png' /> <img src='/images/supported_brands/vera.png' />

View File

@ -0,0 +1,456 @@
---
layout: post
title: "Home Assistant 0.43: IKEA Trådfri, Spotify and our iOS app is live"
description: "Another packed release. Three major cool new features and a ton of small ones."
date: 2017-04-22 01:04:05 +0000
date_formatted: "April 22, 2017"
author: Paulus Schoutsen
author_twitter: balloob
comments: true
categories: Release-Notes
og_image: /images/blog/2017-04-0.43/components.png
---
<a href='/components/#added_in_current_version'><img src='/images/blog/2017-04-0.43/components.png' style='border: 0;box-shadow: none;'></a>
Oooh yeah. It's time for 0.43 and this is going to be a killer release. For the people that have been following on social media, you might have noticed that [we got pretty excited about the new IKEA Trådfri line up][ikea-blog]. And so we are very happy to announce that thanks to the work by [@ggravlingen], [@MartinHjelmare] and myself that this will be the first release to support the IKEA light bulbs. Home Assistant will automatically detect the gateway on your network and after following the instructions, allow you to control your lights.
<p class='img'>
<img src='/images/blog/2017-04-tradfri/discovery.png' />
After automatic discovery, Home Assistant will ask the user to finish pairing with the gateway.
</p>
And in case you have missed the other big news: [@robbiet480] released the [first version of our iOS app][ios]! It took a little over a year but it offers some great ways to make your iDevice work with Home Assistant. Big congrats to Robbie for shipping! As with our other parts, the app is open-sourced under APACHE 2 and contributors are welcome. [Check it out.][ios-source]
A big shout out this release to [@happyleavesaoc] for his constant stream of great contributions to Home Assistant. The first contribution was back in October 2015 and since then @happyleavesaoc has been responsible for many platforms and bug fixes including the Spotify platform this release. Thanks @happyleavesaoc, you're a great example of what makes our community awesome.
The new Spotify integration is based on the new Spotify Connect Playback API. It supports playback, album art and switching which Spotify device you're controlling.
[ikea-blog]: /blog/2017/04/17/ikea-tradfri-internet-of-things-done-right/
[ios]: /blog/2017/04/15/ios/
[ios-source]: https://github.com/home-assistant/home-assistant-ios
## {% linkable_title New Platforms %}
- Add MaryTTS platform ([@johanpalmqvist] - [#6988]) ([tts.marytts docs]) (new-platform)
- Telegram bot component (incl. webhook and polling platform) ([@sander76] - [#6913]) ([telegram_bot docs]) ([telegram_bot.polling docs]) ([telegram_bot.webhooks docs]) (breaking change) (new-platform)
- Add support fo map data from Neato ([@turbokongen] - [#6939]) ([neato docs]) ([camera.neato docs]) ([sensor.neato docs]) (new-platform)
- Added initial support for IKEA Trådfri Gateway ([@ggravlingen] - [#7074]) ([light.tradfri docs]) (new-platform)
- MQTT camera ([@MrMep] - [#7092]) ([camera.mqtt docs]) (new-platform)
- Add LIFX Cloud scene support ([@amelchio] - [#7124]) ([scene.lifx_cloud docs]) (new-platform)
- spotify media player ([@happyleavesaoc] - [#6980]) ([media_player.spotify docs]) (new-platform)
- JSON MQTT Device tracker ([@MrMep] - [#7055]) (new-platform)
- opensky sensor ([@happyleavesaoc] - [#7061]) ([sensor.opensky docs]) (new-platform)
- Add ping binary sensor ([@fabaff] - [#7052]) ([binary_sensor.ping docs]) (new-platform)
## {% linkable_title Breaking changes %}
- Remove deprecated classes from `homeassistant.remote` ([@balloob] - [#7011])
- min_max sensor has a different default name and will ignore states that are unknown ([@micw] - [#6786])
- `telegram_webhooks` has been converted to a new `telegram_bot` component. It has two platforms: webhook and polling platform ([@sander76] - [#6913]) ([telegram_bot docs])([telegram_bot.polling docs]) ([telegram_bot.webhooks docs])
```yaml
telegram_bot:
platform: webhooks
api_key : api_key_here
allowed_chat_ids:
- 123456
- 456789
```
- Lutron_Caseta: it is no longer necessary to specify username and password in the config. ([@gurumitts] - [#7165]) ([lutron_caseta docs])
- mvglive: config has been updated to allow support for multiple departures ([@mountainsandcode] - [#6953]) ([sensor.mvglive docs])
```yaml
sensor:
- platform: mvglive
nextdeparture:
- station: Hauptbahnhof
name: Hbf
destinations: ['München Flughafen Terminal','Markt Schwaben']
products: 'S-Bahn'
timeoffset: 2
- station: Sendlinger Tor
lines: ['U2','U8']
- station: Scheidplatz
products: ['U-Bahn']
directions: '1'
```
<!--more-->
## {% linkable_title All changes %}
- Update kodi for aiohttp2 ([@armills] - [#6967]) ([media_player.kodi docs]) ([notify.kodi docs])
- Fix current_temperature is rounded ([@aufano] - [#6960]) ([climate docs])
- Bugfix time and task coro ([@pvizeli] - [#6968])
- Initial import for HassIO ([@pvizeli] - [#6935])
- Preserve customize glob order. ([@andrey-git] - [#6963])
- Foscam Camera: Adding exception handling when fetching the camera image to avoid python exception errors when host is not reachable or rather any url error to camera ([@viswa-swami] - [#6964]) ([camera.foscam docs])
- light.yeelight: catch i/o related exceptions from the backend lib ([@rytilahti] - [#6952])
- From Dusk till Dawn ([@BillyNate] - [#6857]) ([sun docs])
- Tests for zwave services ([@armills] - [#6937]) ([zwave docs])
- Fix control+c quitting HASS ([@balloob] - [#6974])
- Update Emby for aiohttp v2 ([@mezz64] - [#6981])
- switch.tplink: upgrade to the newest upstream release which adds support for plugs using the newer communication protocol ([@rytilahti] - [#6979]) ([switch.tplink docs])
- switch.tplink: bump pyhs100 version requirement ([@rytilahti] - [#6986])
- Add tests for ZWaveDeviceEntityValues helper ([@armills] - [#6978]) ([zwave docs])
- Bump Amcrest module to 1.1.8 ([@tchellomello] - [#6990])
- update gstreamer ([@happyleavesaoc] - [#6987]) ([media_player.gstreamer docs])
- Warn if start takes a long time. ([@balloob] - [#6975])
- Upgrade to aiohttp 2.0.6 ([@balloob] - [#6992])
- Make discovery not block start ([@balloob] - [#6991])
- Downgrade aiohttp to 205 ([@balloob] - [#6994])
- Bump pywemo version. ([@pavoni] - [#7004])
- Fix Synology camera content type ([@balloob] - [#7010]) ([camera.synology docs])
- Fix two more instances of JSON parsing synology ([@balloob] - [#7014])
- Bump pyalarmdotcom to support new version of aiohttp ([@Xorso] - [#7021]) ([alarm_control_panel.alarmdotcom docs])
- Fix US states check (fixes #7015) ([@fabaff] - [#7017])
- Remove deprecated remote classes ([@balloob] - [#7011]) (breaking change)
- Replace 'vendor_id' with 'arch' (fixes #7003) ([@fabaff] - [#7023])
- more tests for slugify ([@micw] - [#7027])
- Additional ZWave coverage ([@armills] - [#7024]) ([zwave docs])
- bump ups version ([@happyleavesaoc] - [#7033]) ([sensor.ups docs])
- update usps version ([@happyleavesaoc] - [#7035]) ([sensor.usps docs])
- update fedex ([@happyleavesaoc] - [#7034]) ([sensor.fedex docs])
- Google TTS can't read percent sign (#6971) ([@pezinek] - [#7030]) ([tts.google docs])
- Feature/min max improvements ([@micw] - [#6786]) (breaking change)
- Upgrade psutil to 5.2.2 ([@fabaff] - [#7037]) ([sensor.systemmonitor docs])
- Upgrade sendgrid to 4.0.0 ([@fabaff] - [#7038]) ([notify.sendgrid docs])
- Missing line name restriction added (fixes #7039) ([@DavidMStraub] - [#7040]) ([sensor.mvglive docs])
- Plug file leak on LIFX unregister ([@amelchio] - [#7031]) ([light.lifx docs])
- Make core to look avilable state of device on servicecall ([@pvizeli] - [#7045])
- Remove configuration sample ([@fabaff] - [#7048])
- Bugfix wait on start event ([@pvizeli] - [#7013])
- Bugfix slider ([@pvizeli] - [#7047]) ([input_slider docs])
- Add MaryTTS platform ([@johanpalmqvist] - [#6988]) ([tts.marytts docs]) (new-platform)
- Fix mysensors callback ([@MartinHjelmare] - [#7057]) ([mysensors docs]) ([device_tracker.mysensors docs])
- Constrain chardet to 2.3 ([@balloob] - [#7063])
- Fix/slugify with german umlaut ss ([@micw] - [#7029])
- Speed up aiohttp ([@balloob] - [#7064])
- Upgrade netdisco to 1.0.0rc2 ([@balloob] - [#7008])
- Telegram bot component (incl. webhook and polling platform) ([@sander76] - [#6913]) ([telegram_bot docs]) ([telegram_bot.polling docs]) ([telegram_bot.webhooks docs]) (breaking change) (new-platform)
- Upgrade paho-mqtt to 1.2.2 ([@fabaff] - [#7066])
- Fix handling with register callbacks on added_to_hass ([@pvizeli] - [#7067])
- Lutron. Bugfix callback registration. ([@pvizeli] - [#7042])
- Adding AlarmDecoder platform ([@hawk259] - [#6900])
- Add communication data attributes to Zwave node_entity ([@turbokongen] - [#6813]) ([zwave docs])
- Add product_name attribute to zwave nodes. ([@andrey-git] - [#7071])
- Bump braviarc version to 0.3.7 ([@robbiet480] - [#7078]) ([media_player.braviatv docs])
- Fix account balance in fido sensor ([@titilambert] - [#7077]) ([sensor.fido docs])
- MQTT: Managing binary payloads ([@MrMep] - [#6976]) ([mqtt docs])
- Bump qnapstats library version to 0.2.4 ([@colinodell] - [#7085]) ([sensor.qnap docs])
- Add support fo map data from Neato ([@turbokongen] - [#6939]) ([neato docs]) ([camera.neato docs]) ([sensor.neato docs]) (new-platform)
- Added initial support for IKEA Trådfri Gateway ([@ggravlingen] - [#7074]) ([light.tradfri docs]) (new-platform)
- Better thread safety in zwave node_entity ([@andrey-git] - [#7087])
- Uber version bump ([@armills] - [#7100]) ([sensor.uber docs])
- No product ids configured should fetch all ids ([@armills] - [#7091])
- Upgrade aiohttp to 2.0.7 ([@fabaff] - [#7106])
- Update file header, add const for defaults, and update log messages ([@fabaff] - [#7110])
- Upgrade speedtest-cli to 1.0.4 ([@fabaff] - [#7105]) ([sensor.speedtest docs])
- Remove globally disabled pylint issue and update docstrings ([@fabaff] - [#7111])
- Use third-party lib aioautomatic for automatic ([@armills] - [#7126]) ([device_tracker.automatic docs])
- Upgrade chardet to 3.0.2 ([@fabaff] - [#7112])
- Send stderr of ping tracker to devnull ([@amelchio] - [#7096]) ([device_tracker.ping docs])
- Upgraded Amcrest module to 1.1.9 to support new firmware versions: ([@tchellomello] - [#7130])
- Mqtt camera ([@MrMep] - [#7092]) ([camera.mqtt docs]) (new-platform)
- Bump version to 0.43.0.dev0 ([@MartinHjelmare] - [#7132])
- Load zwave panel ([@balloob] - [#7127]) ([zwave docs])
- IKEA Trådfri Gateway: added support for RGB ([@ggravlingen] - [#7115]) ([light.tradfri docs])
- Make Trådfri discoverable ([@balloob] - [#7128])
- Make version number optional and a string to fix identify issue introduced in iOS 1.0.1 ([@robbiet480] - [#7141])
- Fix for zwave RGB setting ([@armills] - [#7137])
- Replace rollershutter with cover in demo ([@robbiet480] - [#7140])
- Add debug logging to automation initial state ([@armills] - [#7068]) ([automation docs])
- Always return True/False from is_state and is_state_attr ([@amelchio] - [#7138])
- Add LIFX Cloud scene support ([@amelchio] - [#7124]) ([scene.lifx_cloud docs]) (new-platform)
- Fix LIFX lights with disappearing names ([@amelchio] - [#7119]) ([light.lifx docs])
- lutron: fix typo that prevented callback registration ([@thecynic] - [#7148]) ([lutron docs])
- Fix HassIO timeout bug ([@pvizeli] - [#7155])
- small fix for random effect in order to use the whole rgb range. So 255 is not excluded anymore. ([@Mister-Espria] - [#7156]) ([light.flux_led docs]) ([light.yeelight docs])
- exposed content_type in rest_command ([@cmsimike] - [#7101])
- Add vera power meter. ([@pavoni] - [#7134]) ([vera docs]) ([sensor.vera docs])
- Add support for tradfri color temp ([@MartinHjelmare] - [#7153]) ([light.tradfri docs])
- Disable MQTT camera test ([@balloob] - [#7164])
- myStrom WiFi bulbs ([@fabaff] - [#7161])
- Fix #7026 adding a new wol parameter ([@titilambert] - [#7144]) ([switch.wake_on_lan docs])
- Add subscription update for Wemo switches, fix bug in Insight switches, fix wemo motion bug, fix wemo discovery ([@pavoni] - [#7135]) ([wemo docs])
- Update neato.py ([@michaelarnauts] - [#7166]) ([neato docs])
- Keep track of already added players ([@molobrakos] - [#7149])
- Fix id zone mismatch ([@gurumitts] - [#7165]) ([lutron_caseta docs]) (breaking change)
- Upgrade pytradfri to 1.0 ([@balloob] - [#7163])
- Value of 0 should not be considered `unknown`. ([@aequitas] - [#7139])
- Upgrade netdisco ([@balloob] - [#7171])
- Added new services to platform kodi ([@alexmogavero] - [#6426]) ([media_player docs]) ([media_player.kodi docs])
- Supress trackback and upgrade PyMata to 2.14 ([@fabaff] - [#7176]) ([arduino docs])
- Disable invalid-sequence-index ([@fabaff] - [#7177])
- Upgrade mypy to 0.501 (was renamed from mypy-lang) ([@fabaff] - [#7117])
- Add condition for API failure ([@sytone] - [#7181])
- Add history to component priority list ([@balloob] - [#7173])
- Tweak Tradfri ([@balloob] - [#7172]) ([light.tradfri docs])
- Mqtt camera test ([@MrMep] - [#7175])
- updated pylgtv module to fix problems with timeouts ([@hmn] - [#7184]) ([media_player.webostv docs]) ([notify.webostv docs])
- Fix wemo discovery ([@balloob] - [#7183]) ([wemo docs]) ([light.wemo docs]) ([switch.wemo docs])
- Add Bose soundtouch discovery support and upgrade libsoundtouch library ([@CharlesBlonde] - [#7005])
- spotify media player ([@happyleavesaoc] - [#6980]) ([media_player.spotify docs]) (new-platform)
- JSON MQTT Device tracker ([@MrMep] - [#7055]) (new-platform)
- opensky sensor ([@happyleavesaoc] - [#7061]) ([sensor.opensky docs]) (new-platform)
- Add ping binary sensor ([@fabaff] - [#7052]) ([binary_sensor.ping docs]) (new-platform)
- Added light.pwm component. ([@soldag] - [#7009])
- Fix for errors on missing preview on LG webos TV ([@masarliev] - [#6755]) ([media_player.webostv docs])
- Fix auto discovery for Apple TV ([@postlund] - [#7188]) ([media_player.apple_tv docs])
- Do not request artwork if not available ([@postlund] - [#7189]) ([media_player.apple_tv docs])
- mvglive bug fixes and improvements ([@mountainsandcode] - [#6953]) ([sensor.mvglive docs]) (breaking change)
- Upgrade py-cpuinfo to 3.2.0 ([@fabaff] - [#7190]) ([sensor.cpuspeed docs])
- Add support of input registers while querying modbus sensor. ([@LvivEchoes] - [#7082]) ([modbus docs]) ([sensor.modbus docs])
- Add HassIO to discovery component ([@pvizeli] - [#7195])
- LIFX light effects ([@amelchio] - [#7145]) ([light.lifx docs])
- HassIO API v2 ([@pvizeli] - [#7201])
- Support xy_color with LIFX lights ([@amelchio] - [#7208]) ([light.lifx docs])
- Update ios.py ([@biacz] - [#7160])
- Fix arwn platform to update hass state when events are received ([@sdague] - [#7202])
- Issue 6749 updated pylgtv to 0.1.6 to fix thread leak in asyncio loop ([@hmn] - [#7199]) ([media_player.webostv docs]) ([notify.webostv docs])
[#6426]: https://github.com/home-assistant/home-assistant/pull/6426
[#6755]: https://github.com/home-assistant/home-assistant/pull/6755
[#6786]: https://github.com/home-assistant/home-assistant/pull/6786
[#6813]: https://github.com/home-assistant/home-assistant/pull/6813
[#6857]: https://github.com/home-assistant/home-assistant/pull/6857
[#6900]: https://github.com/home-assistant/home-assistant/pull/6900
[#6913]: https://github.com/home-assistant/home-assistant/pull/6913
[#6935]: https://github.com/home-assistant/home-assistant/pull/6935
[#6937]: https://github.com/home-assistant/home-assistant/pull/6937
[#6939]: https://github.com/home-assistant/home-assistant/pull/6939
[#6952]: https://github.com/home-assistant/home-assistant/pull/6952
[#6953]: https://github.com/home-assistant/home-assistant/pull/6953
[#6960]: https://github.com/home-assistant/home-assistant/pull/6960
[#6963]: https://github.com/home-assistant/home-assistant/pull/6963
[#6964]: https://github.com/home-assistant/home-assistant/pull/6964
[#6966]: https://github.com/home-assistant/home-assistant/pull/6966
[#6967]: https://github.com/home-assistant/home-assistant/pull/6967
[#6968]: https://github.com/home-assistant/home-assistant/pull/6968
[#6974]: https://github.com/home-assistant/home-assistant/pull/6974
[#6975]: https://github.com/home-assistant/home-assistant/pull/6975
[#6976]: https://github.com/home-assistant/home-assistant/pull/6976
[#6978]: https://github.com/home-assistant/home-assistant/pull/6978
[#6979]: https://github.com/home-assistant/home-assistant/pull/6979
[#6980]: https://github.com/home-assistant/home-assistant/pull/6980
[#6981]: https://github.com/home-assistant/home-assistant/pull/6981
[#6986]: https://github.com/home-assistant/home-assistant/pull/6986
[#6987]: https://github.com/home-assistant/home-assistant/pull/6987
[#6988]: https://github.com/home-assistant/home-assistant/pull/6988
[#6990]: https://github.com/home-assistant/home-assistant/pull/6990
[#6991]: https://github.com/home-assistant/home-assistant/pull/6991
[#6992]: https://github.com/home-assistant/home-assistant/pull/6992
[#6994]: https://github.com/home-assistant/home-assistant/pull/6994
[#7004]: https://github.com/home-assistant/home-assistant/pull/7004
[#7005]: https://github.com/home-assistant/home-assistant/pull/7005
[#7008]: https://github.com/home-assistant/home-assistant/pull/7008
[#7009]: https://github.com/home-assistant/home-assistant/pull/7009
[#7010]: https://github.com/home-assistant/home-assistant/pull/7010
[#7011]: https://github.com/home-assistant/home-assistant/pull/7011
[#7013]: https://github.com/home-assistant/home-assistant/pull/7013
[#7014]: https://github.com/home-assistant/home-assistant/pull/7014
[#7017]: https://github.com/home-assistant/home-assistant/pull/7017
[#7021]: https://github.com/home-assistant/home-assistant/pull/7021
[#7023]: https://github.com/home-assistant/home-assistant/pull/7023
[#7024]: https://github.com/home-assistant/home-assistant/pull/7024
[#7027]: https://github.com/home-assistant/home-assistant/pull/7027
[#7029]: https://github.com/home-assistant/home-assistant/pull/7029
[#7030]: https://github.com/home-assistant/home-assistant/pull/7030
[#7031]: https://github.com/home-assistant/home-assistant/pull/7031
[#7033]: https://github.com/home-assistant/home-assistant/pull/7033
[#7034]: https://github.com/home-assistant/home-assistant/pull/7034
[#7035]: https://github.com/home-assistant/home-assistant/pull/7035
[#7037]: https://github.com/home-assistant/home-assistant/pull/7037
[#7038]: https://github.com/home-assistant/home-assistant/pull/7038
[#7040]: https://github.com/home-assistant/home-assistant/pull/7040
[#7042]: https://github.com/home-assistant/home-assistant/pull/7042
[#7045]: https://github.com/home-assistant/home-assistant/pull/7045
[#7047]: https://github.com/home-assistant/home-assistant/pull/7047
[#7048]: https://github.com/home-assistant/home-assistant/pull/7048
[#7052]: https://github.com/home-assistant/home-assistant/pull/7052
[#7055]: https://github.com/home-assistant/home-assistant/pull/7055
[#7057]: https://github.com/home-assistant/home-assistant/pull/7057
[#7061]: https://github.com/home-assistant/home-assistant/pull/7061
[#7063]: https://github.com/home-assistant/home-assistant/pull/7063
[#7064]: https://github.com/home-assistant/home-assistant/pull/7064
[#7066]: https://github.com/home-assistant/home-assistant/pull/7066
[#7067]: https://github.com/home-assistant/home-assistant/pull/7067
[#7068]: https://github.com/home-assistant/home-assistant/pull/7068
[#7071]: https://github.com/home-assistant/home-assistant/pull/7071
[#7074]: https://github.com/home-assistant/home-assistant/pull/7074
[#7077]: https://github.com/home-assistant/home-assistant/pull/7077
[#7078]: https://github.com/home-assistant/home-assistant/pull/7078
[#7082]: https://github.com/home-assistant/home-assistant/pull/7082
[#7085]: https://github.com/home-assistant/home-assistant/pull/7085
[#7087]: https://github.com/home-assistant/home-assistant/pull/7087
[#7091]: https://github.com/home-assistant/home-assistant/pull/7091
[#7092]: https://github.com/home-assistant/home-assistant/pull/7092
[#7096]: https://github.com/home-assistant/home-assistant/pull/7096
[#7100]: https://github.com/home-assistant/home-assistant/pull/7100
[#7101]: https://github.com/home-assistant/home-assistant/pull/7101
[#7105]: https://github.com/home-assistant/home-assistant/pull/7105
[#7106]: https://github.com/home-assistant/home-assistant/pull/7106
[#7110]: https://github.com/home-assistant/home-assistant/pull/7110
[#7111]: https://github.com/home-assistant/home-assistant/pull/7111
[#7112]: https://github.com/home-assistant/home-assistant/pull/7112
[#7115]: https://github.com/home-assistant/home-assistant/pull/7115
[#7117]: https://github.com/home-assistant/home-assistant/pull/7117
[#7119]: https://github.com/home-assistant/home-assistant/pull/7119
[#7124]: https://github.com/home-assistant/home-assistant/pull/7124
[#7126]: https://github.com/home-assistant/home-assistant/pull/7126
[#7127]: https://github.com/home-assistant/home-assistant/pull/7127
[#7128]: https://github.com/home-assistant/home-assistant/pull/7128
[#7130]: https://github.com/home-assistant/home-assistant/pull/7130
[#7132]: https://github.com/home-assistant/home-assistant/pull/7132
[#7134]: https://github.com/home-assistant/home-assistant/pull/7134
[#7135]: https://github.com/home-assistant/home-assistant/pull/7135
[#7137]: https://github.com/home-assistant/home-assistant/pull/7137
[#7138]: https://github.com/home-assistant/home-assistant/pull/7138
[#7139]: https://github.com/home-assistant/home-assistant/pull/7139
[#7140]: https://github.com/home-assistant/home-assistant/pull/7140
[#7141]: https://github.com/home-assistant/home-assistant/pull/7141
[#7144]: https://github.com/home-assistant/home-assistant/pull/7144
[#7145]: https://github.com/home-assistant/home-assistant/pull/7145
[#7148]: https://github.com/home-assistant/home-assistant/pull/7148
[#7149]: https://github.com/home-assistant/home-assistant/pull/7149
[#7153]: https://github.com/home-assistant/home-assistant/pull/7153
[#7155]: https://github.com/home-assistant/home-assistant/pull/7155
[#7156]: https://github.com/home-assistant/home-assistant/pull/7156
[#7160]: https://github.com/home-assistant/home-assistant/pull/7160
[#7161]: https://github.com/home-assistant/home-assistant/pull/7161
[#7163]: https://github.com/home-assistant/home-assistant/pull/7163
[#7164]: https://github.com/home-assistant/home-assistant/pull/7164
[#7165]: https://github.com/home-assistant/home-assistant/pull/7165
[#7166]: https://github.com/home-assistant/home-assistant/pull/7166
[#7171]: https://github.com/home-assistant/home-assistant/pull/7171
[#7172]: https://github.com/home-assistant/home-assistant/pull/7172
[#7173]: https://github.com/home-assistant/home-assistant/pull/7173
[#7175]: https://github.com/home-assistant/home-assistant/pull/7175
[#7176]: https://github.com/home-assistant/home-assistant/pull/7176
[#7177]: https://github.com/home-assistant/home-assistant/pull/7177
[#7181]: https://github.com/home-assistant/home-assistant/pull/7181
[#7183]: https://github.com/home-assistant/home-assistant/pull/7183
[#7184]: https://github.com/home-assistant/home-assistant/pull/7184
[#7188]: https://github.com/home-assistant/home-assistant/pull/7188
[#7189]: https://github.com/home-assistant/home-assistant/pull/7189
[#7190]: https://github.com/home-assistant/home-assistant/pull/7190
[#7195]: https://github.com/home-assistant/home-assistant/pull/7195
[#7199]: https://github.com/home-assistant/home-assistant/pull/7199
[#7201]: https://github.com/home-assistant/home-assistant/pull/7201
[#7202]: https://github.com/home-assistant/home-assistant/pull/7202
[#7208]: https://github.com/home-assistant/home-assistant/pull/7208
[@BillyNate]: https://github.com/BillyNate
[@CharlesBlonde]: https://github.com/CharlesBlonde
[@DavidMStraub]: https://github.com/DavidMStraub
[@JesseWebDotCom]: https://github.com/JesseWebDotCom
[@LvivEchoes]: https://github.com/LvivEchoes
[@MartinHjelmare]: https://github.com/MartinHjelmare
[@Mister-Espria]: https://github.com/Mister-Espria
[@MrMep]: https://github.com/MrMep
[@Xorso]: https://github.com/Xorso
[@aequitas]: https://github.com/aequitas
[@alexmogavero]: https://github.com/alexmogavero
[@amelchio]: https://github.com/amelchio
[@andrey-git]: https://github.com/andrey-git
[@armills]: https://github.com/armills
[@aufano]: https://github.com/aufano
[@balloob]: https://github.com/balloob
[@biacz]: https://github.com/biacz
[@cmsimike]: https://github.com/cmsimike
[@colinodell]: https://github.com/colinodell
[@fabaff]: https://github.com/fabaff
[@ggravlingen]: https://github.com/ggravlingen
[@gurumitts]: https://github.com/gurumitts
[@happyleavesaoc]: https://github.com/happyleavesaoc
[@hawk259]: https://github.com/hawk259
[@hmn]: https://github.com/hmn
[@johanpalmqvist]: https://github.com/johanpalmqvist
[@masarliev]: https://github.com/masarliev
[@mezz64]: https://github.com/mezz64
[@michaelarnauts]: https://github.com/michaelarnauts
[@micw]: https://github.com/micw
[@molobrakos]: https://github.com/molobrakos
[@mountainsandcode]: https://github.com/mountainsandcode
[@pavoni]: https://github.com/pavoni
[@pezinek]: https://github.com/pezinek
[@postlund]: https://github.com/postlund
[@pvizeli]: https://github.com/pvizeli
[@robbiet480]: https://github.com/robbiet480
[@rytilahti]: https://github.com/rytilahti
[@sander76]: https://github.com/sander76
[@sdague]: https://github.com/sdague
[@soldag]: https://github.com/soldag
[@sytone]: https://github.com/sytone
[@tchellomello]: https://github.com/tchellomello
[@thecynic]: https://github.com/thecynic
[@titilambert]: https://github.com/titilambert
[@turbokongen]: https://github.com/turbokongen
[@viswa-swami]: https://github.com/viswa-swami
[alarm_control_panel.alarmdotcom docs]: /components/alarm_control_panel.alarmdotcom/
[arduino docs]: /components/arduino/
[automation docs]: /components/automation/
[binary_sensor.ping docs]: /components/binary_sensor.ping/
[binary_sensor.wemo docs]: /components/binary_sensor.wemo/
[camera.foscam docs]: /components/camera.foscam/
[camera.mqtt docs]: /components/camera.mqtt/
[camera.neato docs]: /components/camera.neato/
[camera.synology docs]: /components/camera.synology/
[climate docs]: /components/climate/
[device_tracker.automatic docs]: /components/device_tracker.automatic/
[device_tracker.mysensors docs]: /components/device_tracker.mysensors/
[device_tracker.ping docs]: /components/device_tracker.ping/
[hassio docs]: /components/hassio/
[input_slider docs]: /components/input_slider/
[light.flux_led docs]: /components/light.flux_led/
[light.lifx docs]: /components/light.lifx/
[light.lutron_caseta docs]: /components/light.lutron_caseta/
[light.services.yaml docs]: /components/light.services.yaml/
[light.tradfri docs]: /components/light.tradfri/
[light.wemo docs]: /components/light.wemo/
[light.yeelight docs]: /components/light.yeelight/
[lutron docs]: /components/lutron/
[lutron_caseta docs]: /components/lutron_caseta/
[media_player docs]: /components/media_player/
[media_player.apple_tv docs]: /components/media_player.apple_tv/
[media_player.braviatv docs]: /components/media_player.braviatv/
[media_player.gstreamer docs]: /components/media_player.gstreamer/
[media_player.kodi docs]: /components/media_player.kodi/
[media_player.spotify docs]: /components/media_player.spotify/
[media_player.webostv docs]: /components/media_player.webostv/
[modbus docs]: /components/modbus/
[mqtt docs]: /components/mqtt/
[mysensors docs]: /components/mysensors/
[neato docs]: /components/neato/
[notify.kodi docs]: /components/notify.kodi/
[notify.sendgrid docs]: /components/notify.sendgrid/
[notify.webostv docs]: /components/notify.webostv/
[scene.lifx_cloud docs]: /components/scene.lifx_cloud/
[sensor.cpuspeed docs]: /components/sensor.cpuspeed/
[sensor.crimereports docs]: /components/sensor.crimereports/
[sensor.fedex docs]: /components/sensor.fedex/
[sensor.fido docs]: /components/sensor.fido/
[sensor.modbus docs]: /components/sensor.modbus/
[sensor.mvglive docs]: /components/sensor.mvglive/
[sensor.neato docs]: /components/sensor.neato/
[sensor.opensky docs]: /components/sensor.opensky/
[sensor.qnap docs]: /components/sensor.qnap/
[sensor.speedtest docs]: /components/sensor.speedtest/
[sensor.systemmonitor docs]: /components/sensor.systemmonitor/
[sensor.uber docs]: /components/sensor.uber/
[sensor.ups docs]: /components/sensor.ups/
[sensor.usps docs]: /components/sensor.usps/
[sensor.vera docs]: /components/sensor.vera/
[sun docs]: /components/sun/
[switch.tplink docs]: /components/switch.tplink/
[switch.wake_on_lan docs]: /components/switch.wake_on_lan/
[switch.wemo docs]: /components/switch.wemo/
[telegram_bot docs]: /components/telegram_bot/
[telegram_bot.polling docs]: /components/telegram_bot.polling/
[telegram_bot.webhooks docs]: /components/telegram_bot.webhooks/
[tts.google docs]: /components/tts.google/
[tts.marytts docs]: /components/tts.marytts/
[vera docs]: /components/vera/
[wemo docs]: /components/wemo/
[zwave docs]: /components/zwave/
[zwave.node_entity docs]: /components/zwave.node_entity/

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

View File

@ -0,0 +1,260 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="Layer_1"
x="0px"
y="0px"
width="353.99997"
height="126.99999"
viewBox="10 10.132 353.99997 127"
enable-background="new 10 10.132 380 129.736"
xml:space="preserve"
inkscape:version="0.48.2 r9819"
sodipodi:docname="AJAX1.svg"><metadata
id="metadata79"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs77" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1280"
inkscape:window-height="1004"
id="namedview75"
showgrid="false"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0"
inkscape:zoom="2.3967198"
inkscape:cx="163.35055"
inkscape:cy="33.454287"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="Layer_1" />
<g
id="g3"
transform="translate(-0.50001037,-2.368)">
<g
id="g5">
<defs
id="defs7">
<rect
id="SVGID_1_"
x="9.5"
y="10.5"
width="380"
height="129" />
</defs>
<clipPath
id="SVGID_2_">
<use
xlink:href="#SVGID_1_"
overflow="visible"
id="use11"
style="overflow:visible"
x="0"
y="0"
width="380"
height="129.73599" />
</clipPath>
</g>
<g
id="g15">
<defs
id="defs17">
<rect
id="SVGID_3_"
x="9.5"
y="10.5"
width="380"
height="129" />
</defs>
<clipPath
id="SVGID_4_">
<use
xlink:href="#SVGID_3_"
overflow="visible"
id="use21"
style="overflow:visible"
x="0"
y="0"
width="380"
height="129.73599" />
</clipPath>
<rect
x="10.5"
y="12.5"
clip-path="url(#SVGID_4_)"
width="354"
height="127"
id="rect23"
style="fill:#ffcc00;stroke:none" />
</g>
<g
id="g25">
<defs
id="defs27">
<rect
id="SVGID_5_"
x="9.5"
y="10.5"
width="380"
height="129" />
</defs>
<clipPath
id="SVGID_6_">
<use
xlink:href="#SVGID_5_"
overflow="visible"
id="use31"
style="overflow:visible"
x="0"
y="0"
width="380"
height="129.73599" />
</clipPath>
<path
clip-path="url(#SVGID_6_)"
d="m 10.5,12.5 h 354 v 127 h -354 v -127 z m 176.988,121.768 c 95.437,0 172.821,-25.941 172.821,-57.918 0,-31.979 -77.385,-57.902 -172.821,-57.902 -95.433,0 -172.809,25.924 -172.809,57.902 0,31.975 77.376,57.918 172.809,57.918"
id="path33"
style="fill:#003399;stroke:none"
inkscape:connector-curvature="0" />
</g>
<g
id="g35">
<defs
id="defs37">
<rect
id="SVGID_7_"
x="9.5"
y="10.5"
width="380"
height="129" />
</defs>
<clipPath
id="SVGID_8_">
<use
xlink:href="#SVGID_7_"
overflow="visible"
id="use41"
style="overflow:visible"
x="0"
y="0"
width="380"
height="129.73599" />
</clipPath>
<path
clip-path="url(#SVGID_8_)"
d="m 146.5,95.857 c 0,0 0.612,-0.53 0.694,-0.858 0.229,-1.067 -0.154,-2.103 -0.154,-2.103 L 137.5,77.857 V 77.76 l 0.042,15.807 0.272,1.254 0.518,0.68 H 108.17 l 0.497,-0.68 0.26,-1.344 -0.012,-41.164 -0.263,-1.192 -0.493,-0.621 h 30.174 l -0.506,0.662 -0.26,1.317 -0.018,14.752 10.929,-14.3 c 0,0 0.226,-0.56 0.226,-1.367 0,-0.508 -0.497,-1.336 -0.497,-1.336 l 30.03,0.034 -13.067,18.582 15.748,25.166 1.179,0.904 1.341,0.586 H 146.5 v 0.357 z"
id="path43"
inkscape:connector-curvature="0"
style="fill:#003399;stroke:none;fill-opacity:1" />
</g>
<g
id="g45">
<defs
id="defs47">
<rect
id="SVGID_9_"
x="9.5"
y="10.5"
width="380"
height="129" />
</defs>
<clipPath
id="SVGID_10_">
<use
xlink:href="#SVGID_9_"
overflow="visible"
id="use51"
style="overflow:visible"
x="0"
y="0"
width="380"
height="129.73599" />
</clipPath>
<path
style="fill:#003399;stroke:none;fill-opacity:1"
clip-path="url(#SVGID_10_)"
d="m 91.426,93.688 0.267,1.406 0.49,0.844 -30.146,-0.081 0.355,-0.858 0.108,-1.433 0,-41.209 -0.122,-1.213 -0.353,-0.644 30.17,0 -0.502,0.662 -0.255,1.317 z"
id="polygon53" />
</g>
<g
id="g55">
<defs
id="defs57">
<rect
id="SVGID_11_"
x="9.5"
y="10.5"
width="380"
height="129" />
</defs>
<clipPath
id="SVGID_12_">
<use
xlink:href="#SVGID_11_"
overflow="visible"
id="use61"
style="overflow:visible"
x="0"
y="0"
width="380"
height="129.73599" />
</clipPath>
<path
style="fill:#003399;stroke:none;fill-opacity:1"
clip-path="url(#SVGID_12_)"
d="m 235.211,67.105 1.371,-0.25 0.84,-0.492 -0.024,12.721 -0.882,-0.516 -1.305,-0.257 -16.711,0.019 0,4.17 21.819,0 1.537,-0.306 0.756,-0.583 0.05,14.355 -52.857,-0.103 0.484,-0.858 0.211,-1.437 0,-41.211 -0.223,-1.431 -0.51,-0.87 52.682,0.099 0.041,13.81 -0.857,-0.364 -1.434,-0.101 -21.699,0 0,3.669 z"
id="polygon63" />
</g>
<g
id="g65">
<defs
id="defs67">
<rect
id="SVGID_13_"
x="9.5"
y="10.5"
width="380"
height="129" />
</defs>
<clipPath
id="SVGID_14_">
<use
xlink:href="#SVGID_13_"
overflow="visible"
id="use71"
style="overflow:visible"
x="0"
y="0"
width="380"
height="129.73599" />
</clipPath>
<path
clip-path="url(#SVGID_14_)"
d="m 285.449,69.522 -3.547,7.978 h 7.105 l -3.558,-7.978 z M 267.298,52.421 c 0,0 0.224,-0.806 0.128,-1.448 -0.087,-0.628 -0.505,-0.868 -0.505,-0.868 l 40.885,0.012 c 0,0 -0.421,0.228 -0.509,0.871 -0.092,0.627 0.131,1.444 0.131,1.444 l 17.85,41.817 0.568,0.89 0.786,0.719 -32.288,0.056 c 0,0 0.495,-1.044 0.444,-1.479 -0.051,-0.463 -0.211,-1.06 -0.211,-1.06 L 292.48,87.5 h -14.054 l -2.298,5.874 c 0,0 -0.218,0.051 -0.218,0.503 0,0.88 0.529,1.623 0.529,1.623 h -26.037 c 0,0 0.896,-0.354 1.391,-1.437 0.404,-0.856 0.326,-0.806 0.326,-0.806 l 15.179,-40.836 z"
id="path73"
inkscape:connector-curvature="0"
style="fill:#003399;stroke:none;fill-opacity:1" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 113 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB