From 4f9980e898d9ae9fb7433b04ac62efcc6ded53cb Mon Sep 17 00:00:00 2001 From: Travis CI Date: Sat, 26 Mar 2016 08:09:32 +0000 Subject: [PATCH] Site updated at 2016-03-26 08:09:32 UTC --- atom.xml | 119 +++--- blog/2014/12/18/website-launched/index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- blog/2015/01/13/nest-in-da-house/index.html | 12 +- blog/2015/01/24/release-notes/index.html | 12 +- .../2015/02/08/looking-at-the-past/index.html | 12 +- blog/2015/02/24/streaming-updates/index.html | 12 +- .../index.html | 12 +- blog/2015/03/08/new-logo/index.html | 12 +- blog/2015/03/11/release-notes/index.html | 12 +- blog/2015/03/22/release-notes/index.html | 12 +- blog/2015/04/25/release-notes/index.html | 12 +- .../05/09/utc-time-zone-awareness/index.html | 12 +- blog/2015/05/14/release-notes/index.html | 12 +- blog/2015/06/10/release-notes/index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../13/home-assistant-meets-ifttt/index.html | 12 +- .../index.html | 12 +- .../alarm-sonos-and-itunes-support/index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../11/22/survey-november-2015/index.html | 12 +- .../12/05/community-highlights/index.html | 12 +- .../index.html | 12 +- .../12/07/influxdb-and-grafana/index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../01/19/perfect-home-automation/index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 8 +- .../multi-room-audio-with-snapcast/index.html | 12 +- .../02/20/community-highlights/index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 344 +++++++++++++++++ blog/archives/index.html | 44 ++- blog/categories/architecture/atom.xml | 2 +- blog/categories/architecture/index.html | 12 +- blog/categories/branding/atom.xml | 2 +- blog/categories/branding/index.html | 12 +- blog/categories/community/atom.xml | 2 +- blog/categories/community/index.html | 12 +- blog/categories/esp8266/atom.xml | 2 +- blog/categories/esp8266/index.html | 12 +- blog/categories/how-to/atom.xml | 2 +- blog/categories/how-to/index.html | 12 +- blog/categories/mqtt/atom.xml | 2 +- blog/categories/mqtt/index.html | 12 +- .../public-service-announcement/atom.xml | 2 +- .../public-service-announcement/index.html | 12 +- blog/categories/release-notes/atom.xml | 112 +++--- blog/categories/release-notes/index.html | 44 ++- blog/categories/survey/atom.xml | 2 +- blog/categories/survey/index.html | 12 +- blog/categories/user-stories/atom.xml | 2 +- blog/categories/user-stories/index.html | 12 +- blog/index.html | 174 +++++---- blog/posts/2/index.html | 142 +++---- blog/posts/3/index.html | 133 +++---- blog/posts/4/index.html | 113 +++--- blog/posts/5/index.html | 47 +++ components/automation/index.html | 3 + components/binary_sensor.rpi_gpio/index.html | 3 + .../device_sun_light_trigger/index.html | 3 + components/ifttt/index.html | 3 + components/index.html | 98 +++++ components/input_boolean/index.html | 3 + components/input_select/index.html | 3 + components/input_slider/index.html | 227 ++++++++++++ components/keyboard/index.html | 3 + components/media_player.cast/index.html | 3 + components/media_player.denon/index.html | 3 + components/media_player.firetv/index.html | 3 + components/media_player.itunes/index.html | 3 + components/media_player.kodi/index.html | 3 + components/media_player.mpd/index.html | 3 + components/media_player.plex/index.html | 3 + components/media_player.samsungtv/index.html | 3 + components/media_player.snapcast/index.html | 3 + components/media_player.sonos/index.html | 3 + components/media_player.squeezebox/index.html | 3 + components/media_player.universal/index.html | 3 + components/media_player.yamaha/index.html | 255 +++++++++++++ components/media_player/index.html | 79 +++- components/mqtt/index.html | 81 +++- components/notify.command_line/index.html | 6 + components/notify.file/index.html | 6 + components/notify.free_mobile/index.html | 6 + components/notify.gntp/index.html | 265 ++++++++++++++ components/notify.google_voice/index.html | 6 + components/notify.instapush/index.html | 6 + components/notify.message_bird/index.html | 277 ++++++++++++++ components/notify.mqtt/index.html | 6 + components/notify.nma/index.html | 6 + components/notify.pushbullet/index.html | 6 + components/notify.pushetta/index.html | 6 + components/notify.pushover/index.html | 6 + components/notify.rest/index.html | 6 + components/notify.sendgrid/index.html | 6 + components/notify.slack/index.html | 6 + components/notify.smtp/index.html | 6 + components/notify.syslog/index.html | 6 + components/notify.telegram/index.html | 6 + components/notify.twitter/index.html | 6 + components/notify.xmpp/index.html | 6 + components/notify/index.html | 6 + components/script/index.html | 3 + components/sensor.apcupsd/index.html | 3 + components/sensor.arest/index.html | 3 + components/sensor.bitcoin/index.html | 13 +- components/sensor.bloomsky/index.html | 3 + components/sensor.command_line/index.html | 3 + components/sensor.cpuspeed/index.html | 3 + components/sensor.deutsche_bahn/index.html | 3 + components/sensor.dweet/index.html | 3 + components/sensor.ecobee/index.html | 3 + components/sensor.efergy/index.html | 3 + components/sensor.eliqonline/index.html | 3 + components/sensor.glances/index.html | 3 + components/sensor.http/index.html | 3 + components/sensor.mfi/index.html | 3 + components/sensor.modbus/index.html | 3 + components/sensor.mqtt/index.html | 3 + components/sensor.mysensors/index.html | 3 + components/sensor.nest/index.html | 3 + components/sensor.netatmo/index.html | 3 + components/sensor.neurio_energy/index.html | 3 + components/sensor.onewire/index.html | 3 + components/sensor.rest/index.html | 3 + components/sensor.rfxtrx/index.html | 3 + components/sensor.sabnzbd/index.html | 3 + components/sensor.speedtest/index.html | 3 + components/sensor.steam_online/index.html | 3 + .../sensor.swiss_public_transport/index.html | 3 + components/sensor.systemmonitor/index.html | 3 + components/sensor.tcp/index.html | 3 + components/sensor.tellduslive/index.html | 3 + components/sensor.tellstick/index.html | 3 + components/sensor.temper/index.html | 3 + components/sensor.template/index.html | 3 + components/sensor.time_date/index.html | 3 + components/sensor.torque/index.html | 3 + components/sensor.transmission/index.html | 3 + components/sensor.twitch/index.html | 3 + components/sensor.uber/index.html | 345 ++++++++++++++++++ components/sensor.vera/index.html | 3 + components/sensor.verisure/index.html | 3 + components/sensor.wink/index.html | 3 + components/sensor.worldclock/index.html | 3 + components/sensor.zigbee/index.html | 3 + components/sensor.zwave/index.html | 3 + components/sensor/index.html | 3 + components/shell_command/index.html | 3 + components/switch.arduino/index.html | 4 + components/switch.arest/index.html | 6 + components/switch.command_line/index.html | 6 + components/switch.dlink/index.html | 6 + components/switch.edimax/index.html | 6 + components/switch.hikvision/index.html | 6 + components/switch.mfi/index.html | 6 + components/switch.modbus/index.html | 6 + components/switch.mqtt/index.html | 6 + components/switch.mysensors/index.html | 6 + components/switch.mystrom/index.html | 6 + components/switch.orvibo/index.html | 6 + components/switch.pulseaudio_loopback.html | 1 + .../switch.pulseaudio_loopback/index.html | 301 +++++++++++++++ components/switch.rest/index.html | 6 + components/switch.rfxtrx/index.html | 6 + components/switch.rpi_gpio/index.html | 6 + components/switch.scsgate/index.html | 6 + components/switch.tellduslive/index.html | 6 + components/switch.tellstick/index.html | 6 + components/switch.template/index.html | 6 + components/switch.transmission/index.html | 6 + components/switch.vera/index.html | 6 + components/switch.verisure/index.html | 6 + components/switch.wake_on_lan/index.html | 288 +++++++++++++++ components/switch.wemo/index.html | 6 + components/switch.wink/index.html | 6 + components/switch.zigbee/index.html | 6 + components/switch.zwave/index.html | 6 + components/switch/index.html | 6 + components/tellstick/index.html | 12 +- components/vera/index.html | 17 +- components/zwave/index.html | 31 ++ images/supported_brands/ethernet.png | Bin 0 -> 635 bytes images/supported_brands/gntp.png | Bin 0 -> 73058 bytes images/supported_brands/message_bird.png | Bin 0 -> 3934 bytes images/supported_brands/pulseaudio.png | Bin 0 -> 11379 bytes images/supported_brands/uber.png | Bin 0 -> 5778 bytes images/supported_brands/yamaha.png | Bin 0 -> 35048 bytes sitemap.xml | 344 +++++++++-------- 208 files changed, 4164 insertions(+), 906 deletions(-) create mode 100644 blog/2016/03/26/embedded-mqtt-broker-uber-yamaha-growl/index.html create mode 100644 components/input_slider/index.html create mode 100644 components/media_player.yamaha/index.html create mode 100644 components/notify.gntp/index.html create mode 100644 components/notify.message_bird/index.html create mode 100644 components/sensor.uber/index.html create mode 100644 components/switch.pulseaudio_loopback.html create mode 100644 components/switch.pulseaudio_loopback/index.html create mode 100644 components/switch.wake_on_lan/index.html create mode 100644 images/supported_brands/ethernet.png create mode 100644 images/supported_brands/gntp.png create mode 100644 images/supported_brands/message_bird.png create mode 100644 images/supported_brands/pulseaudio.png create mode 100755 images/supported_brands/uber.png create mode 100644 images/supported_brands/yamaha.png diff --git a/atom.xml b/atom.xml index d45fa5c21b..b9285ff035 100644 --- a/atom.xml +++ b/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Home Assistant]]> - 2016-03-26T07:13:31+00:00 + 2016-03-26T08:09:04+00:00 https://home-assistant.io/ @@ -13,6 +13,73 @@ Octopress + + <![CDATA[0.16: Embedded MQTT broker, Uber, Yamaha receivers and Growl]]> + + 2016-03-26T07:10:00+00:00 + https://home-assistant.io/blog/2016/03/26/embedded-mqtt-broker-uber-yamaha-growl + Party people, 0.16 is here! The big thing with this release is that we have completely removed the barrier to get started by MQTT by being able to launch an embedded MQTT server: hbMQTT. Just add mqtt: to your config and a broker is launched and connected with Home Assistant. See the documentation for more info.

+ +

Further in this release a bunch of cool new stuff, bug fixes and rewrites for the Vera and Tellstick component (see breaking changes section at bottom for this!).

+ +

Rock on.

+ +

+ + + +

Breaking changes

+
    +
  • +

    Automation: support for old deprecated config has been removed

    +
  • +
  • +

    Tellstick configuration has changed

    +
  • +
+ +
+
tellstick:
+  signal_repetitions: X
+
+
+
+ +
    +
  • Vera configuration has changed
  • +
+ +
+
vera:
+  vera_controller_url: http://192.168.1.161:3480/
+  # Optional to exclude devices - this is a list of vera device ids
+  exclude: [ 13, 14, 16, 20, 23, 72, 73, 74, 75, 76, 77, 78, 88, 89, 99]
+  # Optional to import switches as lights - this is a list of vera device ids
+  lights: [15, 17, 19, 21, 22, 24, 26, 43, 64, 70, 87]
+
+
+
+]]>
+
+ <![CDATA[0.15: Unforked Open Z-Wave, templated service calls, extended scene support and PEP257 compliance.]]> @@ -1521,56 +1588,6 @@ $ sudo systemctl status grafana-server
  • Re-install platform and component dependencies after a Home Assistant version upgrade (@balloob)
  • -]]> -
    - - - <![CDATA[0.7.6: Amazon FireTV, Radiotherm thermostats]]> - - 2015-10-26T18:10:00+00:00 - https://home-assistant.io/blog/2015/10/26/firetv-and-radiotherm-now-supported - After two weeks of hard work I’m proud to announce the release of Home Assistant v0.7.6. For this release the main focus was bugs, test coverage and documentation. And we exceeded expectations on all three fronts. Bugs have been squashed, test coverage increased to 85% and thanks to the hard work by @fabaff and myself the component section on the website has gotten a complete revamp.

    - -

    Changes

    - -

    - - - - - -

    Breaking changes

    - -

    As part of this release we did some cleanup which introduced backwards incompatible changes:

    - -

    Heat Control thermostat no longer includes scheduling features.
    -This feature has been removed completely. Use the automation component instead to control target temperature.

    - -

    Config changed for calling a service from a script.
    -execute_service: has been replaced with service:. See component page for example. The old method will continue working for some time.

    - -

    Scenes can no longer be turned off.
    -It is no longer possible to turn a scene off after it has been activated. The way it worked was unpredictable and causes a lot of confusion.

    - -

    Downloader treats relative paths now relative to the config dir instead of the current working dir.
    -This makes more sense as most people run Home Assistant as a daemon

    ]]>
    diff --git a/blog/2014/12/18/website-launched/index.html b/blog/2014/12/18/website-launched/index.html index 40f389c08e..489c251a30 100644 --- a/blog/2014/12/18/website-launched/index.html +++ b/blog/2014/12/18/website-launched/index.html @@ -203,6 +203,12 @@ diff --git a/blog/2014/12/26/home-control-home-automation-and-the-smart-home/index.html b/blog/2014/12/26/home-control-home-automation-and-the-smart-home/index.html index 0b7fe3e62e..4a27a6ba74 100644 --- a/blog/2014/12/26/home-control-home-automation-and-the-smart-home/index.html +++ b/blog/2014/12/26/home-control-home-automation-and-the-smart-home/index.html @@ -258,6 +258,12 @@ This article will try to explain how they all relate.

    diff --git a/blog/2015/01/04/hey-pushbullet-nice-talking-to-you/index.html b/blog/2015/01/04/hey-pushbullet-nice-talking-to-you/index.html index e607f7b0ae..a71dee0f22 100644 --- a/blog/2015/01/04/hey-pushbullet-nice-talking-to-you/index.html +++ b/blog/2015/01/04/hey-pushbullet-nice-talking-to-you/index.html @@ -242,6 +242,12 @@ api_key=ABCDEFGHJKLMNOPQRSTUVXYZ diff --git a/blog/2015/01/11/bootstrapping-your-setup-with-discovery/index.html b/blog/2015/01/11/bootstrapping-your-setup-with-discovery/index.html index 5229e1d6fb..b001746cc9 100644 --- a/blog/2015/01/11/bootstrapping-your-setup-with-discovery/index.html +++ b/blog/2015/01/11/bootstrapping-your-setup-with-discovery/index.html @@ -217,6 +217,12 @@ diff --git a/blog/2015/01/13/nest-in-da-house/index.html b/blog/2015/01/13/nest-in-da-house/index.html index 6602610bed..8544b8a4d6 100644 --- a/blog/2015/01/13/nest-in-da-house/index.html +++ b/blog/2015/01/13/nest-in-da-house/index.html @@ -220,6 +220,12 @@ password=YOUR_PASSWORD diff --git a/blog/2015/01/24/release-notes/index.html b/blog/2015/01/24/release-notes/index.html index 660aa09a6f..e61939a605 100644 --- a/blog/2015/01/24/release-notes/index.html +++ b/blog/2015/01/24/release-notes/index.html @@ -226,6 +226,12 @@ Home Assistant now supports --open-ui and --demo-mode diff --git a/blog/2015/02/08/looking-at-the-past/index.html b/blog/2015/02/08/looking-at-the-past/index.html index 8bd74d5814..d83a751e68 100644 --- a/blog/2015/02/08/looking-at-the-past/index.html +++ b/blog/2015/02/08/looking-at-the-past/index.html @@ -234,6 +234,12 @@ Events are saved in a local database. Google Graphs is used to draw the graph. D diff --git a/blog/2015/02/24/streaming-updates/index.html b/blog/2015/02/24/streaming-updates/index.html index a0affd3bae..9656b4b56b 100644 --- a/blog/2015/02/24/streaming-updates/index.html +++ b/blog/2015/02/24/streaming-updates/index.html @@ -219,6 +219,12 @@ diff --git a/blog/2015/03/01/home-assistant-migrating-to-yaml/index.html b/blog/2015/03/01/home-assistant-migrating-to-yaml/index.html index 497731e6fa..6dd9038786 100644 --- a/blog/2015/03/01/home-assistant-migrating-to-yaml/index.html +++ b/blog/2015/03/01/home-assistant-migrating-to-yaml/index.html @@ -209,6 +209,12 @@ diff --git a/blog/2015/03/08/new-logo/index.html b/blog/2015/03/08/new-logo/index.html index bde0b10ad0..1f29b45b8f 100644 --- a/blog/2015/03/08/new-logo/index.html +++ b/blog/2015/03/08/new-logo/index.html @@ -210,6 +210,12 @@ The old logo, the new detailed logo and the new simple logo. diff --git a/blog/2015/03/11/release-notes/index.html b/blog/2015/03/11/release-notes/index.html index e59680edec..f6881e9b48 100644 --- a/blog/2015/03/11/release-notes/index.html +++ b/blog/2015/03/11/release-notes/index.html @@ -249,6 +249,12 @@ An initial version of voice control for Home Assistant has landed. The current i diff --git a/blog/2015/03/22/release-notes/index.html b/blog/2015/03/22/release-notes/index.html index bbc8920645..bd1d4ddc81 100644 --- a/blog/2015/03/22/release-notes/index.html +++ b/blog/2015/03/22/release-notes/index.html @@ -286,6 +286,12 @@ I (Paulus) have contributed a scene component. A user can create scenes that cap diff --git a/blog/2015/04/25/release-notes/index.html b/blog/2015/04/25/release-notes/index.html index 8ab2094957..184f941edb 100644 --- a/blog/2015/04/25/release-notes/index.html +++ b/blog/2015/04/25/release-notes/index.html @@ -297,6 +297,12 @@ diff --git a/blog/2015/05/09/utc-time-zone-awareness/index.html b/blog/2015/05/09/utc-time-zone-awareness/index.html index 537fe3808f..a48a723070 100644 --- a/blog/2015/05/09/utc-time-zone-awareness/index.html +++ b/blog/2015/05/09/utc-time-zone-awareness/index.html @@ -232,6 +232,12 @@ diff --git a/blog/2015/05/14/release-notes/index.html b/blog/2015/05/14/release-notes/index.html index be0e201a03..5582dbe7a0 100644 --- a/blog/2015/05/14/release-notes/index.html +++ b/blog/2015/05/14/release-notes/index.html @@ -324,6 +324,12 @@ Before diving into the newly supported devices and services, I want to highlight diff --git a/blog/2015/06/10/release-notes/index.html b/blog/2015/06/10/release-notes/index.html index 7be771e1ca..fccf7021a8 100644 --- a/blog/2015/06/10/release-notes/index.html +++ b/blog/2015/06/10/release-notes/index.html @@ -377,6 +377,12 @@ This switch platform allows you to control your motion detection setting on your diff --git a/blog/2015/07/11/ip-cameras-arduino-kodi-efergy-support/index.html b/blog/2015/07/11/ip-cameras-arduino-kodi-efergy-support/index.html index fcf2fce4e8..cde4566927 100644 --- a/blog/2015/07/11/ip-cameras-arduino-kodi-efergy-support/index.html +++ b/blog/2015/07/11/ip-cameras-arduino-kodi-efergy-support/index.html @@ -329,6 +329,12 @@ Fabian has added support for Forecast.io to g diff --git a/blog/2015/08/09/mqtt-raspberry-pi-squeezebox-asuswrt-support/index.html b/blog/2015/08/09/mqtt-raspberry-pi-squeezebox-asuswrt-support/index.html index b1b22bbbd7..9c9aed2f9a 100644 --- a/blog/2015/08/09/mqtt-raspberry-pi-squeezebox-asuswrt-support/index.html +++ b/blog/2015/08/09/mqtt-raspberry-pi-squeezebox-asuswrt-support/index.html @@ -318,6 +318,12 @@ Support for Temper temperature sensors has been contributed by +
  • + 0.16: Embedded MQTT broker, Uber, Yamaha receivers and Growl +
  • + + +
  • 0.15: Unforked Open Z-Wave, templated service calls, extended scene support and PEP257 compliance.
  • @@ -341,12 +347,6 @@ Support for Temper temperature sensors has been contributed by - 0.13: Speedtest.net, Bloomsky, Splunk and Garage Doors - - - diff --git a/blog/2015/08/17/verisure-and-modern-tp-link-router-support/index.html b/blog/2015/08/17/verisure-and-modern-tp-link-router-support/index.html index 7dad57f212..f886d77a26 100644 --- a/blog/2015/08/17/verisure-and-modern-tp-link-router-support/index.html +++ b/blog/2015/08/17/verisure-and-modern-tp-link-router-support/index.html @@ -228,6 +228,12 @@ diff --git a/blog/2015/08/26/laundry-automation-with-moteino-mqtt-and-home-assistant/index.html b/blog/2015/08/26/laundry-automation-with-moteino-mqtt-and-home-assistant/index.html index f5fae73a9e..a7b9e06c71 100644 --- a/blog/2015/08/26/laundry-automation-with-moteino-mqtt-and-home-assistant/index.html +++ b/blog/2015/08/26/laundry-automation-with-moteino-mqtt-and-home-assistant/index.html @@ -337,6 +337,12 @@ diff --git a/blog/2015/08/31/version-7-revamped-ui-and-improved-distribution/index.html b/blog/2015/08/31/version-7-revamped-ui-and-improved-distribution/index.html index cb566db6c3..c2ce85b382 100644 --- a/blog/2015/08/31/version-7-revamped-ui-and-improved-distribution/index.html +++ b/blog/2015/08/31/version-7-revamped-ui-and-improved-distribution/index.html @@ -315,6 +315,12 @@ diff --git a/blog/2015/09/11/different-ways-to-use-mqtt-with-home-assistant/index.html b/blog/2015/09/11/different-ways-to-use-mqtt-with-home-assistant/index.html index fe81b676b8..e342e11f29 100644 --- a/blog/2015/09/11/different-ways-to-use-mqtt-with-home-assistant/index.html +++ b/blog/2015/09/11/different-ways-to-use-mqtt-with-home-assistant/index.html @@ -518,6 +518,12 @@ PubSubClient client(ethClient); diff --git a/blog/2015/09/13/home-assistant-meets-ifttt/index.html b/blog/2015/09/13/home-assistant-meets-ifttt/index.html index 1821a07a92..30ca0b4462 100644 --- a/blog/2015/09/13/home-assistant-meets-ifttt/index.html +++ b/blog/2015/09/13/home-assistant-meets-ifttt/index.html @@ -377,6 +377,12 @@ diff --git a/blog/2015/09/18/monitoring-with-glances-and-home-assistant/index.html b/blog/2015/09/18/monitoring-with-glances-and-home-assistant/index.html index 32ba2dd08e..40f6454225 100644 --- a/blog/2015/09/18/monitoring-with-glances-and-home-assistant/index.html +++ b/blog/2015/09/18/monitoring-with-glances-and-home-assistant/index.html @@ -278,6 +278,12 @@ Glances web server started on http://0.0.0.0:61208/ diff --git a/blog/2015/09/19/alarm-sonos-and-itunes-support/index.html b/blog/2015/09/19/alarm-sonos-and-itunes-support/index.html index c1174352a8..a3487d49da 100644 --- a/blog/2015/09/19/alarm-sonos-and-itunes-support/index.html +++ b/blog/2015/09/19/alarm-sonos-and-itunes-support/index.html @@ -257,6 +257,12 @@ Automation has gotten a lot of love. It now supports conditions, multiple trigge diff --git a/blog/2015/10/05/home-assistant-goes-geo-with-owntracks/index.html b/blog/2015/10/05/home-assistant-goes-geo-with-owntracks/index.html index 21f7d8e323..5903b87cf9 100644 --- a/blog/2015/10/05/home-assistant-goes-geo-with-owntracks/index.html +++ b/blog/2015/10/05/home-assistant-goes-geo-with-owntracks/index.html @@ -233,6 +233,12 @@ Map in Home Assistant showing two people and three zones (home, school, work) diff --git a/blog/2015/10/11/measure-temperature-with-esp8266-and-report-to-mqtt/index.html b/blog/2015/10/11/measure-temperature-with-esp8266-and-report-to-mqtt/index.html index 1d355d30bb..0339c886f6 100644 --- a/blog/2015/10/11/measure-temperature-with-esp8266-and-report-to-mqtt/index.html +++ b/blog/2015/10/11/measure-temperature-with-esp8266-and-report-to-mqtt/index.html @@ -564,6 +564,12 @@ Adafruit_HDC1000 hdc = Adafruit_HDC1000(); diff --git a/blog/2015/10/11/rfxtrx-blinkstick-and-snmp-support/index.html b/blog/2015/10/11/rfxtrx-blinkstick-and-snmp-support/index.html index 44d5e0eba4..0ce50be557 100644 --- a/blog/2015/10/11/rfxtrx-blinkstick-and-snmp-support/index.html +++ b/blog/2015/10/11/rfxtrx-blinkstick-and-snmp-support/index.html @@ -222,6 +222,12 @@ diff --git a/blog/2015/10/26/firetv-and-radiotherm-now-supported/index.html b/blog/2015/10/26/firetv-and-radiotherm-now-supported/index.html index 5c24449033..4e8cbb2840 100644 --- a/blog/2015/10/26/firetv-and-radiotherm-now-supported/index.html +++ b/blog/2015/10/26/firetv-and-radiotherm-now-supported/index.html @@ -244,6 +244,12 @@ This makes more sense as most people run Home Assistant as a daemon

    diff --git a/blog/2015/11/16/zwave-switches-lights-and-honeywell-thermostats-now-supported/index.html b/blog/2015/11/16/zwave-switches-lights-and-honeywell-thermostats-now-supported/index.html index d555404001..7c48b80b03 100644 --- a/blog/2015/11/16/zwave-switches-lights-and-honeywell-thermostats-now-supported/index.html +++ b/blog/2015/11/16/zwave-switches-lights-and-honeywell-thermostats-now-supported/index.html @@ -240,6 +240,12 @@ diff --git a/blog/2015/11/22/survey-november-2015/index.html b/blog/2015/11/22/survey-november-2015/index.html index f9c2bb73b9..5a1214e122 100644 --- a/blog/2015/11/22/survey-november-2015/index.html +++ b/blog/2015/11/22/survey-november-2015/index.html @@ -280,6 +280,12 @@ diff --git a/blog/2015/12/05/community-highlights/index.html b/blog/2015/12/05/community-highlights/index.html index ac3910f2a3..e4cb26e2af 100644 --- a/blog/2015/12/05/community-highlights/index.html +++ b/blog/2015/12/05/community-highlights/index.html @@ -213,6 +213,12 @@ diff --git a/blog/2015/12/06/locks-rollershutters-binary-sensors-and-influxdb-support/index.html b/blog/2015/12/06/locks-rollershutters-binary-sensors-and-influxdb-support/index.html index 876d7ee1fb..cb5faf11fa 100644 --- a/blog/2015/12/06/locks-rollershutters-binary-sensors-and-influxdb-support/index.html +++ b/blog/2015/12/06/locks-rollershutters-binary-sensors-and-influxdb-support/index.html @@ -222,6 +222,12 @@ diff --git a/blog/2015/12/07/influxdb-and-grafana/index.html b/blog/2015/12/07/influxdb-and-grafana/index.html index 0d2592331b..7aa851d824 100644 --- a/blog/2015/12/07/influxdb-and-grafana/index.html +++ b/blog/2015/12/07/influxdb-and-grafana/index.html @@ -313,6 +313,12 @@ $ sudo systemctl status grafana-server diff --git a/blog/2015/12/10/activating-tasker-tasks-from-home-assistant-using-command-line-switches/index.html b/blog/2015/12/10/activating-tasker-tasks-from-home-assistant-using-command-line-switches/index.html index 463cd4fd4c..cd0537247b 100644 --- a/blog/2015/12/10/activating-tasker-tasks-from-home-assistant-using-command-line-switches/index.html +++ b/blog/2015/12/10/activating-tasker-tasks-from-home-assistant-using-command-line-switches/index.html @@ -263,6 +263,12 @@ requests.get(' +
  • + 0.16: Embedded MQTT broker, Uber, Yamaha receivers and Growl +
  • + + +
  • 0.15: Unforked Open Z-Wave, templated service calls, extended scene support and PEP257 compliance.
  • @@ -286,12 +292,6 @@ requests.get(' - 0.13: Speedtest.net, Bloomsky, Splunk and Garage Doors - - - diff --git a/blog/2015/12/12/philips-hue-blocks-3rd-party-bulbs/index.html b/blog/2015/12/12/philips-hue-blocks-3rd-party-bulbs/index.html index 6ac0e2645e..88796681ce 100644 --- a/blog/2015/12/12/philips-hue-blocks-3rd-party-bulbs/index.html +++ b/blog/2015/12/12/philips-hue-blocks-3rd-party-bulbs/index.html @@ -235,6 +235,12 @@ Philips Hue FAQ entries regarding 3rd party light bulbs. diff --git a/blog/2015/12/13/setup-encryption-using-lets-encrypt/index.html b/blog/2015/12/13/setup-encryption-using-lets-encrypt/index.html index 7b173a6b3d..ad99eb6774 100644 --- a/blog/2015/12/13/setup-encryption-using-lets-encrypt/index.html +++ b/blog/2015/12/13/setup-encryption-using-lets-encrypt/index.html @@ -300,6 +300,12 @@ sudo docker run -it --rm -p 443:443 -p 80:80 --name letsencrypt \ diff --git a/blog/2015/12/22/amazon-echo-icloud-and-templates/index.html b/blog/2015/12/22/amazon-echo-icloud-and-templates/index.html index aeacce9d7c..462363a9d8 100644 --- a/blog/2015/12/22/amazon-echo-icloud-and-templates/index.html +++ b/blog/2015/12/22/amazon-echo-icloud-and-templates/index.html @@ -256,6 +256,12 @@ diff --git a/blog/2016/01/17/extended-support-for-diy-solutions/index.html b/blog/2016/01/17/extended-support-for-diy-solutions/index.html index f9cfdb2b1f..0a468d9a6f 100644 --- a/blog/2016/01/17/extended-support-for-diy-solutions/index.html +++ b/blog/2016/01/17/extended-support-for-diy-solutions/index.html @@ -236,6 +236,12 @@ diff --git a/blog/2016/01/19/perfect-home-automation/index.html b/blog/2016/01/19/perfect-home-automation/index.html index 2a12776554..7babdc12a3 100644 --- a/blog/2016/01/19/perfect-home-automation/index.html +++ b/blog/2016/01/19/perfect-home-automation/index.html @@ -240,6 +240,12 @@ diff --git a/blog/2016/01/30/insteon-lifx-twitter-and-zigbee/index.html b/blog/2016/01/30/insteon-lifx-twitter-and-zigbee/index.html index 6eec3b9f06..ea1ec85f60 100644 --- a/blog/2016/01/30/insteon-lifx-twitter-and-zigbee/index.html +++ b/blog/2016/01/30/insteon-lifx-twitter-and-zigbee/index.html @@ -242,6 +242,12 @@ Example of the new views in the frontend. Learn mor diff --git a/blog/2016/02/09/smarter-smart-things-with-mqtt-and-home-assistant/index.html b/blog/2016/02/09/smarter-smart-things-with-mqtt-and-home-assistant/index.html index b3002067fb..a4ea1dbaba 100644 --- a/blog/2016/02/09/smarter-smart-things-with-mqtt-and-home-assistant/index.html +++ b/blog/2016/02/09/smarter-smart-things-with-mqtt-and-home-assistant/index.html @@ -429,6 +429,12 @@ Z-Wave light bulb | diff --git a/blog/2016/02/12/classifying-the-internet-of-things/index.html b/blog/2016/02/12/classifying-the-internet-of-things/index.html index d92fb24baf..9fd3060c3a 100644 --- a/blog/2016/02/12/classifying-the-internet-of-things/index.html +++ b/blog/2016/02/12/classifying-the-internet-of-things/index.html @@ -379,6 +379,12 @@ diff --git a/blog/2016/02/13/speedtest-bloomsky-splunk-and-garage-doors/index.html b/blog/2016/02/13/speedtest-bloomsky-splunk-and-garage-doors/index.html index 9b65565c89..68dacccf75 100644 --- a/blog/2016/02/13/speedtest-bloomsky-splunk-and-garage-doors/index.html +++ b/blog/2016/02/13/speedtest-bloomsky-splunk-and-garage-doors/index.html @@ -245,6 +245,12 @@ diff --git a/blog/2016/02/18/multi-room-audio-with-snapcast/index.html b/blog/2016/02/18/multi-room-audio-with-snapcast/index.html index 07b00c8968..7fef28825b 100644 --- a/blog/2016/02/18/multi-room-audio-with-snapcast/index.html +++ b/blog/2016/02/18/multi-room-audio-with-snapcast/index.html @@ -347,6 +347,12 @@ output = audioresample ! audio/x-raw,rate=48000,channels=2,format=S16LE ! audioc diff --git a/blog/2016/02/20/community-highlights/index.html b/blog/2016/02/20/community-highlights/index.html index 9d8aad2034..f52908e8e6 100644 --- a/blog/2016/02/20/community-highlights/index.html +++ b/blog/2016/02/20/community-highlights/index.html @@ -253,6 +253,12 @@ Hold your NFC tag against the belly of Garfield to unlock the alarm. diff --git a/blog/2016/02/27/steam-d-link-smart-plugs-and-neurio-energy-sensors/index.html b/blog/2016/02/27/steam-d-link-smart-plugs-and-neurio-energy-sensors/index.html index b7b95abde1..8da7d4ea50 100644 --- a/blog/2016/02/27/steam-d-link-smart-plugs-and-neurio-energy-sensors/index.html +++ b/blog/2016/02/27/steam-d-link-smart-plugs-and-neurio-energy-sensors/index.html @@ -244,6 +244,12 @@ diff --git a/blog/2016/03/12/z-wave-pep257-templated-service-calls/index.html b/blog/2016/03/12/z-wave-pep257-templated-service-calls/index.html index e69fceb32f..006ca95d6f 100644 --- a/blog/2016/03/12/z-wave-pep257-templated-service-calls/index.html +++ b/blog/2016/03/12/z-wave-pep257-templated-service-calls/index.html @@ -250,6 +250,12 @@ player state attributes. This change affects automations, scripts and scenes. +
  • + 0.16: Embedded MQTT broker, Uber, Yamaha receivers and Growl +
  • + + +
  • @@ -269,12 +275,6 @@ player state attributes. This change affects automations, scripts and scenes. - -
  • - 0.13: Speedtest.net, Bloomsky, Splunk and Garage Doors -
  • - - diff --git a/blog/2016/03/26/embedded-mqtt-broker-uber-yamaha-growl/index.html b/blog/2016/03/26/embedded-mqtt-broker-uber-yamaha-growl/index.html new file mode 100644 index 0000000000..edfe53987a --- /dev/null +++ b/blog/2016/03/26/embedded-mqtt-broker-uber-yamaha-growl/index.html @@ -0,0 +1,344 @@ + + + + + + + + + + 0.16: Embedded MQTT broker, Uber, Yamaha receivers and Growl - Home Assistant + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    + +
    + + +
    + +
    + +

    0.16: Embedded MQTT broker, Uber, Yamaha receivers and Growl

    + + + +
    + + + two minutes reading time + + + + + + Comments + +
    + +
    + + +

    Party people, 0.16 is here! The big thing with this release is that we have completely removed the barrier to get started by MQTT by being able to launch an embedded MQTT server: hbMQTT. Just add mqtt: to your config and a broker is launched and connected with Home Assistant. See the documentation for more info.

    + +

    Further in this release a bunch of cool new stuff, bug fixes and rewrites for the Vera and Tellstick component (see breaking changes section at bottom for this!).

    + +

    Rock on.

    + +

    + + + +

    Breaking changes

    +
      +
    • +

      Automation: support for old deprecated config has been removed

      +
    • +
    • +

      Tellstick configuration has changed

      +
    • +
    + +
    +
    tellstick:
    +  signal_repetitions: X
    +
    +
    +
    + +
      +
    • Vera configuration has changed
    • +
    + +
    +
    vera:
    +  vera_controller_url: http://192.168.1.161:3480/
    +  # Optional to exclude devices - this is a list of vera device ids
    +  exclude: [ 13, 14, 16, 20, 23, 72, 73, 74, 75, 76, 77, 78, 88, 89, 99]
    +  # Optional to import switches as lights - this is a list of vera device ids
    +  lights: [15, 17, 19, 21, 22, 24, 26, 43, 64, 70, 87]
    +
    +
    +
    +
    + + +
    +

    Comments

    +
    +
    + + +
    + + + + +
    +
    + + + + + + + + + + \ No newline at end of file diff --git a/blog/archives/index.html b/blog/archives/index.html index 23a8acf676..bf86529aeb 100644 --- a/blog/archives/index.html +++ b/blog/archives/index.html @@ -122,6 +122,38 @@

    2016

    + + + +
    @@ -1739,6 +1771,12 @@ diff --git a/blog/categories/architecture/atom.xml b/blog/categories/architecture/atom.xml index ab26bc9b36..8c5338efdb 100644 --- a/blog/categories/architecture/atom.xml +++ b/blog/categories/architecture/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Architecture | Home Assistant]]> - 2016-03-26T07:13:31+00:00 + 2016-03-26T08:09:04+00:00 https://home-assistant.io/ diff --git a/blog/categories/architecture/index.html b/blog/categories/architecture/index.html index 793efcccd1..3c4f0c614d 100644 --- a/blog/categories/architecture/index.html +++ b/blog/categories/architecture/index.html @@ -286,6 +286,12 @@ diff --git a/blog/categories/branding/atom.xml b/blog/categories/branding/atom.xml index 0ee1bba6f6..f46bb03c22 100644 --- a/blog/categories/branding/atom.xml +++ b/blog/categories/branding/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Branding | Home Assistant]]> - 2016-03-26T07:13:31+00:00 + 2016-03-26T08:09:04+00:00 https://home-assistant.io/ diff --git a/blog/categories/branding/index.html b/blog/categories/branding/index.html index e2c53053c9..611f406f31 100644 --- a/blog/categories/branding/index.html +++ b/blog/categories/branding/index.html @@ -254,6 +254,12 @@ diff --git a/blog/categories/community/atom.xml b/blog/categories/community/atom.xml index 576398cf70..78a3eee6bb 100644 --- a/blog/categories/community/atom.xml +++ b/blog/categories/community/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Community | Home Assistant]]> - 2016-03-26T07:13:31+00:00 + 2016-03-26T08:09:04+00:00 https://home-assistant.io/ diff --git a/blog/categories/community/index.html b/blog/categories/community/index.html index d3ba88cb04..2edc28b14f 100644 --- a/blog/categories/community/index.html +++ b/blog/categories/community/index.html @@ -254,6 +254,12 @@ diff --git a/blog/categories/esp8266/atom.xml b/blog/categories/esp8266/atom.xml index 172ab3f157..ec5a579357 100644 --- a/blog/categories/esp8266/atom.xml +++ b/blog/categories/esp8266/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: ESP8266 | Home Assistant]]> - 2016-03-26T07:13:31+00:00 + 2016-03-26T08:09:04+00:00 https://home-assistant.io/ diff --git a/blog/categories/esp8266/index.html b/blog/categories/esp8266/index.html index c97c8903b7..c6f7f20c55 100644 --- a/blog/categories/esp8266/index.html +++ b/blog/categories/esp8266/index.html @@ -223,6 +223,12 @@ diff --git a/blog/categories/how-to/atom.xml b/blog/categories/how-to/atom.xml index af7016b0a2..98b52ab443 100644 --- a/blog/categories/how-to/atom.xml +++ b/blog/categories/how-to/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: How-To | Home Assistant]]> - 2016-03-26T07:13:31+00:00 + 2016-03-26T08:09:04+00:00 https://home-assistant.io/ diff --git a/blog/categories/how-to/index.html b/blog/categories/how-to/index.html index d80b6cd389..c056f44932 100644 --- a/blog/categories/how-to/index.html +++ b/blog/categories/how-to/index.html @@ -488,6 +488,12 @@ diff --git a/blog/categories/mqtt/atom.xml b/blog/categories/mqtt/atom.xml index ea3746108b..4173f2a487 100644 --- a/blog/categories/mqtt/atom.xml +++ b/blog/categories/mqtt/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: MQTT | Home Assistant]]> - 2016-03-26T07:13:31+00:00 + 2016-03-26T08:09:04+00:00 https://home-assistant.io/ diff --git a/blog/categories/mqtt/index.html b/blog/categories/mqtt/index.html index 98c58391e3..e4ecc20646 100644 --- a/blog/categories/mqtt/index.html +++ b/blog/categories/mqtt/index.html @@ -294,6 +294,12 @@ diff --git a/blog/categories/public-service-announcement/atom.xml b/blog/categories/public-service-announcement/atom.xml index 42a1200c8e..59a2be0a55 100644 --- a/blog/categories/public-service-announcement/atom.xml +++ b/blog/categories/public-service-announcement/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Public-Service-Announcement | Home Assistant]]> - 2016-03-26T07:13:31+00:00 + 2016-03-26T08:09:04+00:00 https://home-assistant.io/ diff --git a/blog/categories/public-service-announcement/index.html b/blog/categories/public-service-announcement/index.html index c120efc72a..050c725143 100644 --- a/blog/categories/public-service-announcement/index.html +++ b/blog/categories/public-service-announcement/index.html @@ -219,6 +219,12 @@ diff --git a/blog/categories/release-notes/atom.xml b/blog/categories/release-notes/atom.xml index 77343ba20f..b0218d0053 100644 --- a/blog/categories/release-notes/atom.xml +++ b/blog/categories/release-notes/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Release-Notes | Home Assistant]]> - 2016-03-26T07:13:31+00:00 + 2016-03-26T08:09:04+00:00 https://home-assistant.io/ @@ -13,6 +13,73 @@ Octopress + + <![CDATA[0.16: Embedded MQTT broker, Uber, Yamaha receivers and Growl]]> + + 2016-03-26T07:10:00+00:00 + https://home-assistant.io/blog/2016/03/26/embedded-mqtt-broker-uber-yamaha-growl + Party people, 0.16 is here! The big thing with this release is that we have completely removed the barrier to get started by MQTT by being able to launch an embedded MQTT server: hbMQTT. Just add mqtt: to your config and a broker is launched and connected with Home Assistant. See the documentation for more info.

    + +

    Further in this release a bunch of cool new stuff, bug fixes and rewrites for the Vera and Tellstick component (see breaking changes section at bottom for this!).

    + +

    Rock on.

    + +

    + + + +

    Breaking changes

    +
      +
    • +

      Automation: support for old deprecated config has been removed

      +
    • +
    • +

      Tellstick configuration has changed

      +
    • +
    + +
    +
    tellstick:
    +  signal_repetitions: X
    +
    +
    +
    + +
      +
    • Vera configuration has changed
    • +
    + +
    +
    vera:
    +  vera_controller_url: http://192.168.1.161:3480/
    +  # Optional to exclude devices - this is a list of vera device ids
    +  exclude: [ 13, 14, 16, 20, 23, 72, 73, 74, 75, 76, 77, 78, 88, 89, 99]
    +  # Optional to import switches as lights - this is a list of vera device ids
    +  lights: [15, 17, 19, 21, 22, 24, 26, 43, 64, 70, 87]
    +
    +
    +
    +]]>
    +
    + <![CDATA[0.15: Unforked Open Z-Wave, templated service calls, extended scene support and PEP257 compliance.]]> @@ -218,49 +285,6 @@ Example of the new views in the frontend. Nest component.
  • Entity IDs for Z-Wave devices are now generated in a deterministic way causing all IDs to change starting this release. This is a one time change.
  • -]]> -
    - - - <![CDATA[0.11: Extended support for DIY solutions]]> - - 2016-01-17T23:20:00+00:00 - https://home-assistant.io/blog/2016/01/17/extended-support-for-diy-solutions - First release of 2016 and we are on 🔥! The main repository has passed 2500 ⭐ on GitHub (2596 ⭐ as of now). This release also has a record number of 20 contributors all working on improving and extending Home Assistant. With the continued growth, I am very excited to see what 2016 will bring us 🤘.

    - -

    - - - -

    Backwards incompatible changes

    - - ]]>
    diff --git a/blog/categories/release-notes/index.html b/blog/categories/release-notes/index.html index 8b437e629d..b77b36aba9 100644 --- a/blog/categories/release-notes/index.html +++ b/blog/categories/release-notes/index.html @@ -122,6 +122,38 @@

    2016

    + + + +
    @@ -1152,6 +1184,12 @@ diff --git a/blog/categories/survey/atom.xml b/blog/categories/survey/atom.xml index 9250f7fe4f..b23fdf3fb2 100644 --- a/blog/categories/survey/atom.xml +++ b/blog/categories/survey/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Survey | Home Assistant]]> - 2016-03-26T07:13:31+00:00 + 2016-03-26T08:09:04+00:00 https://home-assistant.io/ diff --git a/blog/categories/survey/index.html b/blog/categories/survey/index.html index 868acd37d9..56d8f1091e 100644 --- a/blog/categories/survey/index.html +++ b/blog/categories/survey/index.html @@ -219,6 +219,12 @@ diff --git a/blog/categories/user-stories/atom.xml b/blog/categories/user-stories/atom.xml index 9b442e636c..6c3f3108dc 100644 --- a/blog/categories/user-stories/atom.xml +++ b/blog/categories/user-stories/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: User-Stories | Home Assistant]]> - 2016-03-26T07:13:31+00:00 + 2016-03-26T08:09:04+00:00 https://home-assistant.io/ diff --git a/blog/categories/user-stories/index.html b/blog/categories/user-stories/index.html index 329c9c1663..532a16c1b7 100644 --- a/blog/categories/user-stories/index.html +++ b/blog/categories/user-stories/index.html @@ -219,6 +219,12 @@ diff --git a/blog/index.html b/blog/index.html index e00ad9aac2..d13898a0df 100644 --- a/blog/index.html +++ b/blog/index.html @@ -102,6 +102,105 @@ +
    +
    + +

    + 0.16: Embedded MQTT broker, Uber, Yamaha receivers and Growl +

    + + + +
    + + + two minutes reading time + + + + + + Comments + +
    + +
    + + +
    +

    Party people, 0.16 is here! The big thing with this release is that we have completely removed the barrier to get started by MQTT by being able to launch an embedded MQTT server: hbMQTT. Just add mqtt: to your config and a broker is launched and connected with Home Assistant. See the documentation for more info.

    + +

    Further in this release a bunch of cool new stuff, bug fixes and rewrites for the Vera and Tellstick component (see breaking changes section at bottom for this!).

    + +

    Rock on.

    + +

    + + + +

    Breaking changes

    +
      +
    • +

      Automation: support for old deprecated config has been removed

      +
    • +
    • +

      Tellstick configuration has changed

      +
    • +
    + +
    +
    tellstick:
    +  signal_repetitions: X
    +
    +
    +
    + +
      +
    • Vera configuration has changed
    • +
    + +
    +
    vera:
    +  vera_controller_url: http://192.168.1.161:3480/
    +  # Optional to exclude devices - this is a list of vera device ids
    +  exclude: [ 13, 14, 16, 20, 23, 72, 73, 74, 75, 76, 77, 78, 88, 89, 99]
    +  # Optional to import switches as lights - this is a list of vera device ids
    +  lights: [15, 17, 19, 21, 22, 24, 26, 43, 64, 70, 87]
    +
    +
    +
    + + +
    +
    +
    +
    -
    -
    - -
    -
    - -

    - 0.11: Extended support for DIY solutions -

    - - - -
    - - - two minutes reading time - - - - - - Comments - -
    - -
    - - -
    -

    First release of 2016 and we are on 🔥! The main repository has passed 2500 ⭐ on GitHub (2596 ⭐ as of now). This release also has a record number of 20 contributors all working on improving and extending Home Assistant. With the continued growth, I am very excited to see what 2016 will bring us 🤘.

    - -

    - - - -

    Backwards incompatible changes

    - - - -

    diff --git a/blog/posts/2/index.html b/blog/posts/2/index.html index dcc2089c47..bebf9c9223 100644 --- a/blog/posts/2/index.html +++ b/blog/posts/2/index.html @@ -102,6 +102,81 @@ +
    +
    + +

    + 0.11: Extended support for DIY solutions +

    + + + +
    + + + two minutes reading time + + + + + + Comments + +
    + +
    + + +
    +

    First release of 2016 and we are on 🔥! The main repository has passed 2500 ⭐ on GitHub (2596 ⭐ as of now). This release also has a record number of 20 contributors all working on improving and extending Home Assistant. With the continued growth, I am very excited to see what 2016 will bring us 🤘.

    + +

    + + + +

    Backwards incompatible changes

    + + + + +
    +
    +
    +
    @@ -595,73 +670,6 @@ The InfluxDB database is a so-called time se -
    -
    -
    - -
    -
    - -

    - 0.7.6: Amazon FireTV, Radiotherm thermostats -

    - - - -
    - - - two minutes reading time - - - - - - Comments - -
    - -
    - - -
    -

    After two weeks of hard work I’m proud to announce the release of Home Assistant v0.7.6. For this release the main focus was bugs, test coverage and documentation. And we exceeded expectations on all three fronts. Bugs have been squashed, test coverage increased to 85% and thanks to the hard work by @fabaff and myself the component section on the website has gotten a complete revamp.

    - -

    Changes

    - -

    - - - - - - Read on → -

    diff --git a/blog/posts/3/index.html b/blog/posts/3/index.html index a726671d4a..9bf3059414 100644 --- a/blog/posts/3/index.html +++ b/blog/posts/3/index.html @@ -102,6 +102,73 @@ +
    +
    + +

    + 0.7.6: Amazon FireTV, Radiotherm thermostats +

    + + + +
    + + + two minutes reading time + + + + + + Comments + +
    + +
    + + +
    +

    After two weeks of hard work I’m proud to announce the release of Home Assistant v0.7.6. For this release the main focus was bugs, test coverage and documentation. And we exceeded expectations on all three fronts. Bugs have been squashed, test coverage increased to 85% and thanks to the hard work by @fabaff and myself the component section on the website has gotten a complete revamp.

    + +

    Changes

    + +

    + + + + + + Read on → + +
    +
    +
    +
    @@ -629,72 +696,6 @@ Inspried by a fea

    -
    -
    - -

    - Verisure devices and modern TP-Link routers now supported -

    - - - -
    - - - 1 minute reading time - - - - - - Comments - -
    - -
    - - -
    -

    A minor bug fix release to fix some issues that have come up since the last release. Please upgrade as soon as possible by running git pull from the Home Assistant directory.

    - -

    This release is a major milestone in our test coverage as we’ve crossed into the 80s! It has to be noted that this covers mainly the core and automation components. Platforms that communicate with IoT devices have been excluded.

    - -

    As we didn’t want to just push out bug fixes, this release includes a few additions:

    - -
      -
    • Support for modern TP-Link routers like the ArcherC9 line has been contributed by @chrisvis.
    • -
    • Improved support for MQTT topic subscriptions has been contributed by @qrtn
    • -
    - -

    Verisure Support
    - Home Assistant support to integrate your Verisure alarms, hygrometers, sensors and thermometers has been contributed by @persandstrom.

    - -
    -
    # Example configuration.yaml entry
    -verisure:
    -  username: user@example.com
    -  password: password
    -  alarm: 1
    -  hygrometers: 0
    -  smartplugs: 1
    -  thermometers: 0
    -
    -
    -
    - - -
    -
    -
    - - -
    - -
    -
    - -

    - Home Assistant moving to YAML -

    - - - -
    - - - less than one minute reading time - - - - - - Comments - -
    - -
    - - -
    -

    Home Assistant is now using YAML for it’s configuration file. YAML allows the use of lists, which should make the configuration file a bit more flexible and useful. The new configuration file format is backwards compatible with existing components. Because of this, there is no need for component developers to update their components.

    - -

    The new file is named configuration.yaml and if it can’t be found in your config directory, Home Assistant will instead try to find the old configuration file, home-assistant.conf.

    - -

    The home-assistant.conf.example has been replaced with an updated configuration.yaml.example.

    - -

    Users of Home Assistant should migrate as the old configuration format is deprecated.

    - -

    diff --git a/blog/posts/5/index.html b/blog/posts/5/index.html index 23449bdfb5..df12efc3e9 100644 --- a/blog/posts/5/index.html +++ b/blog/posts/5/index.html @@ -102,6 +102,53 @@ +
    +
    + +

    + Home Assistant moving to YAML +

    + + + +
    + + + less than one minute reading time + + + + + + Comments + +
    + +
    + + +
    +

    Home Assistant is now using YAML for it’s configuration file. YAML allows the use of lists, which should make the configuration file a bit more flexible and useful. The new configuration file format is backwards compatible with existing components. Because of this, there is no need for component developers to update their components.

    + +

    The new file is named configuration.yaml and if it can’t be found in your config directory, Home Assistant will instead try to find the old configuration file, home-assistant.conf.

    + +

    The home-assistant.conf.example has been replaced with an updated configuration.yaml.example.

    + +

    Users of Home Assistant should migrate as the old configuration format is deprecated.

    + + +
    +
    +
    +
    diff --git a/components/automation/index.html b/components/automation/index.html index 786db7ff81..e61508dd36 100644 --- a/components/automation/index.html +++ b/components/automation/index.html @@ -538,6 +538,9 @@ INFO [homeassistant.components.automation] Initialized rule Rain is over
  • Input Select
  • +
  • + Input Slider +
  • Keyboard
  • diff --git a/components/binary_sensor.rpi_gpio/index.html b/components/binary_sensor.rpi_gpio/index.html index f9cadd7803..280a22b284 100644 --- a/components/binary_sensor.rpi_gpio/index.html +++ b/components/binary_sensor.rpi_gpio/index.html @@ -289,6 +289,9 @@ To avoid having to run Home Assistant as root when using this component, run a R
  • Twitch
  • +
  • + Uber +
  • Vera Sensor
  • diff --git a/components/device_sun_light_trigger/index.html b/components/device_sun_light_trigger/index.html index 412dcdcd61..bde781b73d 100644 --- a/components/device_sun_light_trigger/index.html +++ b/components/device_sun_light_trigger/index.html @@ -177,6 +177,9 @@
  • Input Select
  • +
  • + Input Slider +
  • Keyboard
  • diff --git a/components/ifttt/index.html b/components/ifttt/index.html index d4c2a1bc2e..ca9234fc8e 100644 --- a/components/ifttt/index.html +++ b/components/ifttt/index.html @@ -233,6 +233,9 @@ You need to setup a unique trigger for each event you sent to IFTTT.
  • Input Select
  • +
  • + Input Slider +
  • Keyboard
  • diff --git a/components/index.html b/components/index.html index fef7500b31..a25652bbfa 100644 --- a/components/index.html +++ b/components/index.html @@ -932,6 +932,20 @@ Support for these components is provided by the Home Assistant community. + + + + + + + + + + + + + @@ -2866,6 +2922,20 @@ Support for these components is provided by the Home Assistant community. + + + + + + + + + +
  • Input Select
  • +
  • + Input Slider +
  • Keyboard
  • diff --git a/components/input_select/index.html b/components/input_select/index.html index 7b6b08983c..4aeff73c9d 100644 --- a/components/input_select/index.html +++ b/components/input_select/index.html @@ -180,6 +180,9 @@
  • Input Select
  • +
  • + Input Slider +
  • Keyboard
  • diff --git a/components/input_slider/index.html b/components/input_slider/index.html new file mode 100644 index 0000000000..f66171d8a1 --- /dev/null +++ b/components/input_slider/index.html @@ -0,0 +1,227 @@ + + + + + + + + + + Input Slider - Home Assistant + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    + +
    + + +
    + + + + +
    +

    + Input Slider +

    +
    +
    + + +

    The input_slider component allows the user to define values that can be controlled via the frontend and can be used within conditions of automation.

    + +
    +
    # Example configuration.yaml entry
    +input_slider:
    +  slider1:
    +    name: Slider 1
    +    initial: 30
    +    min: -20
    +    max: 35
    +
    +
    +
    + +

    Configuration variables:

    + +
      +
    • [alias] (Required): Alias for the slider input.
    • +
    • name (Optional): Friendly name of the slider input.
    • +
    • initial (Optional): Initial value when Home Assistant starts.
    • +
    • min (Optional): Minimum value for the slider.
    • +
    • max (Optional): Maximum value for the slider.
    • +
    + + + +
    + + +
    + + + + +
    +
    + + + + + + + + + \ No newline at end of file diff --git a/components/keyboard/index.html b/components/keyboard/index.html index 21572b432b..8d0022acad 100644 --- a/components/keyboard/index.html +++ b/components/keyboard/index.html @@ -178,6 +178,9 @@
  • Input Select
  • +
  • + Input Slider +
  • Keyboard
  • diff --git a/components/media_player.cast/index.html b/components/media_player.cast/index.html index 94f0833818..c5d2b0a790 100644 --- a/components/media_player.cast/index.html +++ b/components/media_player.cast/index.html @@ -188,6 +188,9 @@
  • Universal
  • +
  • + Yamaha Network Receivers +
  • iTunes
  • diff --git a/components/media_player.denon/index.html b/components/media_player.denon/index.html index 6807526fb4..742efa2fa7 100644 --- a/components/media_player.denon/index.html +++ b/components/media_player.denon/index.html @@ -206,6 +206,9 @@
  • Universal
  • +
  • + Yamaha Network Receivers +
  • iTunes
  • diff --git a/components/media_player.firetv/index.html b/components/media_player.firetv/index.html index 46fe3b0a46..8d1633ecf2 100644 --- a/components/media_player.firetv/index.html +++ b/components/media_player.firetv/index.html @@ -224,6 +224,9 @@ Note that python-firetv has support for multiple Amazon Fire TV devices. If you
  • Universal
  • +
  • + Yamaha Network Receivers +
  • iTunes
  • diff --git a/components/media_player.itunes/index.html b/components/media_player.itunes/index.html index 093da3b7a9..6537e0dad7 100644 --- a/components/media_player.itunes/index.html +++ b/components/media_player.itunes/index.html @@ -193,6 +193,9 @@
  • Universal
  • +
  • + Yamaha Network Receivers +
  • iTunes
  • diff --git a/components/media_player.kodi/index.html b/components/media_player.kodi/index.html index d7ea063c03..73f8a14d34 100644 --- a/components/media_player.kodi/index.html +++ b/components/media_player.kodi/index.html @@ -196,6 +196,9 @@
  • Universal
  • +
  • + Yamaha Network Receivers +
  • iTunes
  • diff --git a/components/media_player.mpd/index.html b/components/media_player.mpd/index.html index c07330732e..df84a62db0 100644 --- a/components/media_player.mpd/index.html +++ b/components/media_player.mpd/index.html @@ -197,6 +197,9 @@
  • Universal
  • +
  • + Yamaha Network Receivers +
  • iTunes
  • diff --git a/components/media_player.plex/index.html b/components/media_player.plex/index.html index 0bf65cb8d5..b9e6cd83d2 100644 --- a/components/media_player.plex/index.html +++ b/components/media_player.plex/index.html @@ -199,6 +199,9 @@
  • Universal
  • +
  • + Yamaha Network Receivers +
  • iTunes
  • diff --git a/components/media_player.samsungtv/index.html b/components/media_player.samsungtv/index.html index e6ef3b3bd9..39854b0d6f 100644 --- a/components/media_player.samsungtv/index.html +++ b/components/media_player.samsungtv/index.html @@ -204,6 +204,9 @@ The two letters at the beginning of the model number represent the region, UE is
  • Universal
  • +
  • + Yamaha Network Receivers +
  • iTunes
  • diff --git a/components/media_player.snapcast/index.html b/components/media_player.snapcast/index.html index b41846a01d..08674115ba 100644 --- a/components/media_player.snapcast/index.html +++ b/components/media_player.snapcast/index.html @@ -180,6 +180,9 @@
  • Universal
  • +
  • + Yamaha Network Receivers +
  • iTunes
  • diff --git a/components/media_player.sonos/index.html b/components/media_player.sonos/index.html index ec4d694d91..da5e5e7b9a 100644 --- a/components/media_player.sonos/index.html +++ b/components/media_player.sonos/index.html @@ -182,6 +182,9 @@
  • Universal
  • +
  • + Yamaha Network Receivers +
  • iTunes
  • diff --git a/components/media_player.squeezebox/index.html b/components/media_player.squeezebox/index.html index cd9b5121b6..2799a3cc57 100644 --- a/components/media_player.squeezebox/index.html +++ b/components/media_player.squeezebox/index.html @@ -195,6 +195,9 @@ This lets you control Squeezebox hardware like the Classic, Transporter, Duet, B
  • Universal
  • +
  • + Yamaha Network Receivers +
  • iTunes
  • diff --git a/components/media_player.universal/index.html b/components/media_player.universal/index.html index 7ee9395e7f..8f6ca2b28d 100644 --- a/components/media_player.universal/index.html +++ b/components/media_player.universal/index.html @@ -261,6 +261,9 @@
  • Universal
  • +
  • + Yamaha Network Receivers +
  • iTunes
  • diff --git a/components/media_player.yamaha/index.html b/components/media_player.yamaha/index.html new file mode 100644 index 0000000000..ed0598176e --- /dev/null +++ b/components/media_player.yamaha/index.html @@ -0,0 +1,255 @@ + + + + + + + + + + Yamaha Network Receivers - Home Assistant + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    + +
    + + +
    + + + + +
    +

    + Yamaha Network Receivers +

    +
    +
    + + +

    The yamaha platform allows you to control Yamaha Network Receivers from Home Assistant.

    + +

    Supported devices:

    + +
      +
    • HTR-4065
    • +
    • RX-V473
    • +
    • RX-V573
    • +
    • RX-V673
    • +
    • RX-V773
    • +
    • And more
    • +
    + +

    To add a Yamaha Network Receiver to your installation, add the following to your configuration.yaml file:

    + +
    +
    # Example configuration.yaml entry
    +media_player:
    +  platform: yamaha
    +  name: 'Basement Receiver'
    +
    +
    +
    +

    Configuration variables:

    + +
      +
    • name (Optional): Name of the device
    • +
    + +

    A few notes:

    + +
      +
    • This will automatically search your network for Yamaha receivers. It will add a media player device for each one.
    • +
    • Currently the only controls that are available is Power On/Off, Mute, and Volume control. Other functions such as source select are in progress of being developed.
    • +
    + + + +
    + + +
    + + + + +
    +
    + + + + + + + + + \ No newline at end of file diff --git a/components/media_player/index.html b/components/media_player/index.html index af40a473ba..27bae56cb1 100644 --- a/components/media_player/index.html +++ b/components/media_player/index.html @@ -118,7 +118,7 @@

    Services

    Media control services

    -

    Available services: turn_off, volume_up, volume_down, media_play_pause, media_play, media_pause, media_next_track

    +

    Available services: turn_on, turn_off, toggle, volume_up, volume_down, media_play_pause, media_play, media_pause, media_next_track, media_previous_track

    @@ -137,13 +137,7 @@
    -

    Media play services

    - -

    There are three services to start playing YouTube video’s on the media player.

    - -

    Service media_player/play_youtube_video

    - -

    Service to start playing a YouTube video on the media player.

    +

    Service media_player/mute_volume

    @@ -160,16 +154,14 @@ - + - +
    Target a specific media player. Defaults to all.
    videomute noYouTube video to be played, ie. L0MK7qz13bUTrue/false for mute/unmute
    -

    Service media_player/start_fireplace and media_player/start_epic_sax

    - -

    Will either start a fireplace or Epic Sax Guy 10h on the media player.

    +

    Service media_player/set_volume_level

    @@ -185,6 +177,64 @@ + + + + + + +
    yes Target a specific media player. Defaults to all.
    volumenoInteger for volume level
    + +

    Service media_player/media_seek

    + + + + + + + + + + + + + + + + + + + + + +
    Service data attributeOptionalDescription
    entity_idyesTarget a specific media player. Defaults to all.
    positionnoPosition to seek to. The format is platform dependent.
    + +

    Service media_player/play_media

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Service data attributeOptionalDescription
    entity_idyesTarget a specific media player. Defaults to all.
    media_content_idnoA media identifier. The format of this is component dependent. For example, you can provide URLs to Sonos and Cast but only a playlist ID to iTunes.
    media_content_typenoA media type. Must be one of MUSIC, TVSHOW, VIDEO, EPISODE, CHANNEL or PLAYLIST. For example, to play music you would set media_content_type to MUSIC.
    @@ -238,6 +288,9 @@
  • Universal
  • +
  • + Yamaha Network Receivers +
  • iTunes
  • diff --git a/components/mqtt/index.html b/components/mqtt/index.html index aacccaced8..c214e228bf 100644 --- a/components/mqtt/index.html +++ b/components/mqtt/index.html @@ -147,7 +147,58 @@

    Picking a broker

    -

    The MQTT component needs you to run an MQTT broker for Home Assistant to connect to. There are three options, each with various degrees of ease of setup and privacy.

    +

    The MQTT component needs you to run an MQTT broker for Home Assistant to connect to. There are four options, each with various degrees of ease of setup and privacy.

    + +

    Use the embedded broker

    + +

    Home Assistant contains an embedded MQTT broker. If no broker configuration is given, the HBMQTT broker is started and Home Asssistant connects to it. Default settings for the embedded broker:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    SettingValue
    Hostlocalhost
    Port1883
    Version3.1
    Userhomeassistant
    PasswordYour API password
    Websocket port8080
    + +

    If you want to customize the settings of the embedded broker, use embedded: and the values shown in the HBMQTT Broker configuration.

    + +
    +
    # Example configuration.yaml entry
    +mqtt:
    +  embedded:
    +    # Your HBMQTT config here. Example at:
    +    # http://hbmqtt.readthedocs.org/en/latest/references/broker.html#broker-configuration
    +
    +
    +

    Run your own

    @@ -263,7 +314,7 @@ Home Assistant will automatically load the correct certificate if you connect to

    Testing your setup

    -

    For debugging purposes mosquitto is shipping commandline tools to send and recieve MQTT messages. For sending test messages to a broker running on localhost:

    +

    The mosquitto broker package is shipping commandline tools to send and recieve MQTT messages. As an alternative have a look at hbmqtt_pub and hbmqtt_sub which are provied by HBMQTT. For sending test messages to a broker running on localhost check the example below:

    $ mosquitto_pub -h 127.0.0.1 -t home-assistant/switch/1/on -m "Switch is ON"
    @@ -271,6 +322,22 @@ Home Assistant will automatically load the correct certificate if you connect to
     
    +

    If you are using the embeeded MQTT broker, the command looks a little different because you need to add the MQTT protocol version.

    + +
    +
    $ mosquitto_pub -V mqttv311 -t hello -m world
    +
    +
    +
    + +

    or if you are using a API password.

    + +
    +
    $ mosquitto_pub -V mqttv311 -u homeassistant -P <your api password> -t "hello" -m world
    +
    +
    +
    +

    Another way to send MQTT messages by hand is to use the “Developer Tools” in the Frontend. Choose “Call Service” and then mqtt/mqtt_send under “Available Services”. Enter something similar to the example below into the “Service Data” field.

    @@ -298,6 +365,16 @@ Home Assistant will automatically load the correct certificate if you connect to
    +

    For the embeeded MQTT broker the command looks like the sample below.

    + +
    +
    $ mosquitto_sub -V mqttv311 -t # -v
    +
    +
    +
    + +

    Add the username homeassistant and your API password if needed.

    +

    Processing JSON

    The MQTT switch and sensor platforms support processing JSON over MQTT messages and parse them using JSONPath. JSONPath allows you to specify where in the JSON the value resides that you want to use. The following examples will always return the value 100.

    diff --git a/components/notify.command_line/index.html b/components/notify.command_line/index.html index 0e7d2d3959..8cc06da4e5 100644 --- a/components/notify.command_line/index.html +++ b/components/notify.command_line/index.html @@ -185,6 +185,9 @@
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -197,6 +200,9 @@
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.file/index.html b/components/notify.file/index.html index 2cbebac2b9..702b51c171 100644 --- a/components/notify.file/index.html +++ b/components/notify.file/index.html @@ -169,6 +169,9 @@
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -181,6 +184,9 @@
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.free_mobile/index.html b/components/notify.free_mobile/index.html index ed7f10235f..916f8d41ad 100644 --- a/components/notify.free_mobile/index.html +++ b/components/notify.free_mobile/index.html @@ -178,6 +178,9 @@ If you disable and re-enable the SMS API option, please be sure to update your t
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -190,6 +193,9 @@ If you disable and re-enable the SMS API option, please be sure to update your t
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.gntp/index.html b/components/notify.gntp/index.html new file mode 100644 index 0000000000..d98033bd47 --- /dev/null +++ b/components/notify.gntp/index.html @@ -0,0 +1,265 @@ + + + + + + + + + + GNTP (Growl) - Home Assistant + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    + +
    + + +
    + + + + +
    +

    + GNTP (Growl) +

    +
    +
    + + +

    GNTP is a specification for sending and receiving notifications between computers. The most well known server implementations are Growl for Mac and Growl for Windows.

    + +

    To use GNTP notifications, add the following to your configuration.yaml file:

    + +
    +
    # Example configuration.yaml entry
    +notify:
    +  name: NOTIFER_NAME
    +  platform: gntp
    +
    +
    +
    + +

    GNTP will attempt to connect to a local server running on port 23053 if no hostname is provided.

    + +

    Configuration variables:

    + +
      +
    • name (Optional): Setting the optional parameter name allows multiple notifiers to be created. The default value is notify. The notifier will bind to the service notify.NOTIFIER_NAME.
    • +
    • app_name (Optional): The application name that will be displayed on every notification and will be registered with the server.
    • +
    • app_icon (Optional): The icon that will be displayed on every notification. You can provide a HTTP URL or a file:// URL. File URLs only work if Home Assistant and the GNTP server are running on the same machine. If no app_icon is set a local copy of the Home Assistant logo will be used. If you choose to use a HTTP URL please make the maximum image size 150 px by 150 px as Growl for Mac will sometimes timeout when registering.
    • +
    • hostname (Optional): The hostname or IP address of the GNTP server to contact.
    • +
    • password (Optional): The password to authenticate to the GNTP server with.
    • +
    • port (Optional): The port that the GNTP server runs on. The specification states that servers should not allow users to use any port other than 23053 but port is provided here just in case.
    • +
    + + +
    + + +
    + + + + +
    +
    + + + + + + + + + \ No newline at end of file diff --git a/components/notify.google_voice/index.html b/components/notify.google_voice/index.html index 1e1bf634c1..4c355a6534 100644 --- a/components/notify.google_voice/index.html +++ b/components/notify.google_voice/index.html @@ -191,6 +191,9 @@
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -203,6 +206,9 @@
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.instapush/index.html b/components/notify.instapush/index.html index 167ef899b3..a29c29bcda 100644 --- a/components/notify.instapush/index.html +++ b/components/notify.instapush/index.html @@ -190,6 +190,9 @@
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -202,6 +205,9 @@
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.message_bird/index.html b/components/notify.message_bird/index.html new file mode 100644 index 0000000000..a16901a405 --- /dev/null +++ b/components/notify.message_bird/index.html @@ -0,0 +1,277 @@ + + + + + + + + + + MessageBird - Home Assistant + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    + +
    + + +
    + + + + +
    +

    + MessageBird +

    +
    +
    + + +

    The MessageBird notification platform sends notifications as SMS messages using MessageBird to your mobile phone.

    + +

    To enable MessageBird notifications in your installation, add the following to your configuration.yaml file:

    + +
    +
    # Example configuration.yaml entry
    +notify:
    +  platform: message_bird
    +  api_key: YOUR_API_KEY
    +  name: NOTIFIER_NAME
    +  sender: SENDER_NAME
    +
    +
    +
    + +

    Configuration variables:

    + +
      +
    • api_key (Required): Enter the API key for MessageBird. Go to https://www.messagebird.com/ to retrieve your API key.
    • +
    • name (Optional): Setting the optional parameter name allows multiple notifiers to be created. The default value is notify. The notifier will bind to the service notify.NOTIFIER_NAME.
    • +
    • sender (Optional): Setting the optional parameter sender. This will be the sender of the SMS. It may be either a telephone number (e.g. +4915112345678) or a text with a maximum length of 11 characters. Defaults to HA.
    • +
    + +

    Usage

    + +

    MessageBird is a notify platform and thus can be controlled by calling the notify service as described here. It will send a notification to the specified mobile phone number(s).

    + +

    Example service payload

    + +
    +
    {
    +  "message": "A message for many people",
    +  "target": [ "+49123456789", "+43123456789" ]
    +}
    +
    +
    +
    + + +
    + + +
    + + + + +
    +
    + + + + + + + + + \ No newline at end of file diff --git a/components/notify.mqtt/index.html b/components/notify.mqtt/index.html index f15abb22c4..8a7e98ef39 100644 --- a/components/notify.mqtt/index.html +++ b/components/notify.mqtt/index.html @@ -202,6 +202,9 @@
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -214,6 +217,9 @@
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.nma/index.html b/components/notify.nma/index.html index 79b18ecc62..24c33e252d 100644 --- a/components/notify.nma/index.html +++ b/components/notify.nma/index.html @@ -170,6 +170,9 @@
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -182,6 +185,9 @@
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.pushbullet/index.html b/components/notify.pushbullet/index.html index cdadb1fe03..b6217d60e2 100644 --- a/components/notify.pushbullet/index.html +++ b/components/notify.pushbullet/index.html @@ -218,6 +218,9 @@
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -230,6 +233,9 @@
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.pushetta/index.html b/components/notify.pushetta/index.html index f2b554ec50..ac87c1fbbf 100644 --- a/components/notify.pushetta/index.html +++ b/components/notify.pushetta/index.html @@ -186,6 +186,9 @@
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -198,6 +201,9 @@
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.pushover/index.html b/components/notify.pushover/index.html index f8335bc61a..c3a2cf9720 100644 --- a/components/notify.pushover/index.html +++ b/components/notify.pushover/index.html @@ -176,6 +176,9 @@
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -188,6 +191,9 @@
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.rest/index.html b/components/notify.rest/index.html index 9a781059c4..5a73d63d6c 100644 --- a/components/notify.rest/index.html +++ b/components/notify.rest/index.html @@ -190,6 +190,9 @@
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -202,6 +205,9 @@
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.sendgrid/index.html b/components/notify.sendgrid/index.html index 57b01ab187..6ec69bf90d 100644 --- a/components/notify.sendgrid/index.html +++ b/components/notify.sendgrid/index.html @@ -172,6 +172,9 @@
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -184,6 +187,9 @@
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.slack/index.html b/components/notify.slack/index.html index 39fb536369..870afb86e3 100644 --- a/components/notify.slack/index.html +++ b/components/notify.slack/index.html @@ -173,6 +173,9 @@
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -185,6 +188,9 @@
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.smtp/index.html b/components/notify.smtp/index.html index f8f14112fc..21ca42f85f 100644 --- a/components/notify.smtp/index.html +++ b/components/notify.smtp/index.html @@ -189,6 +189,9 @@ which need special attention. By default, the usage by external applications, es
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -201,6 +204,9 @@ which need special attention. By default, the usage by external applications, es
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.syslog/index.html b/components/notify.syslog/index.html index 38c03df421..b705a1553e 100644 --- a/components/notify.syslog/index.html +++ b/components/notify.syslog/index.html @@ -277,6 +277,9 @@
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -289,6 +292,9 @@
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.telegram/index.html b/components/notify.telegram/index.html index 32d0875fa4..241fec5cd7 100644 --- a/components/notify.telegram/index.html +++ b/components/notify.telegram/index.html @@ -209,6 +209,9 @@ print(chat_id)
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -221,6 +224,9 @@ print(chat_id)
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.twitter/index.html b/components/notify.twitter/index.html index 8ba06dc910..7784d50088 100644 --- a/components/notify.twitter/index.html +++ b/components/notify.twitter/index.html @@ -174,6 +174,9 @@
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -186,6 +189,9 @@
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify.xmpp/index.html b/components/notify.xmpp/index.html index 700eee6056..5b88e3d727 100644 --- a/components/notify.xmpp/index.html +++ b/components/notify.xmpp/index.html @@ -172,6 +172,9 @@
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -184,6 +187,9 @@
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/notify/index.html b/components/notify/index.html index 97c1ee0433..63fc3b0ebc 100644 --- a/components/notify/index.html +++ b/components/notify/index.html @@ -202,6 +202,9 @@
  • Free Mobile
  • +
  • + GNTP (Growl) +
  • Google Voice SMS
  • @@ -214,6 +217,9 @@
  • MQTT Notifications
  • +
  • + MessageBird +
  • Notify My Android
  • diff --git a/components/script/index.html b/components/script/index.html index ac95c4a07c..1d2ceeeb6b 100644 --- a/components/script/index.html +++ b/components/script/index.html @@ -176,6 +176,9 @@
  • Input Select
  • +
  • + Input Slider +
  • Keyboard
  • diff --git a/components/sensor.apcupsd/index.html b/components/sensor.apcupsd/index.html index 5b3d50f6c8..53b51e1907 100644 --- a/components/sensor.apcupsd/index.html +++ b/components/sensor.apcupsd/index.html @@ -339,6 +339,9 @@
  • Twitch
  • +
  • + Uber +
  • Vera Sensor
  • diff --git a/components/sensor.arest/index.html b/components/sensor.arest/index.html index 468ce74a8b..e5bd5c6470 100644 --- a/components/sensor.arest/index.html +++ b/components/sensor.arest/index.html @@ -337,6 +337,9 @@
  • Twitch
  • +
  • + Uber +
  • Vera Sensor
  • diff --git a/components/sensor.bitcoin/index.html b/components/sensor.bitcoin/index.html index afe4c72a5f..3bf8a332d1 100644 --- a/components/sensor.bitcoin/index.html +++ b/components/sensor.bitcoin/index.html @@ -113,11 +113,7 @@
    -

    The bitcoin platform displays various details about the Bitcoin network.

    - -

    If you have an online wallet from Blockchain.info the sensor is capable to show your current balance.

    - -

    You need to enable the API access for your online wallet to get the balance. To do that log in and move to ‘Account Setting’, choose ‘IP Restrictions’, and check ‘Enable Api Access’. You will get an email message from blockchain.info where you must authorize the API access.

    +

    The bitcoin sensor platform displays various details about the Bitcoin network.

    To add the Bitcoin sensor to your installation, add a selection of the available display options to your configuration.yaml file:

    @@ -125,8 +121,6 @@
    # Example configuration.yaml entry
     sensor:
       platform: bitcoin
    -  wallet: 'YOUR WALLET_ID'
    -  password: YOUR_ACCOUNT_PASSWORD
       currency: YOUR CURRENCY
       display_options:
         - exchangerate
    @@ -157,8 +151,6 @@
     

    Configuration variables:

      -
    • wallet (Optional): This is your wallet identifier from https://blockchain.info to access the online wallet.
    • -
    • password (Optional): Password for your online wallet.
    • currency (Optional): The currency to exchange to, eg. CHF, USD, EUR, etc. Default is USD.
    • display_options array (Required): Options to display in the frontend.
        @@ -315,6 +307,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.bloomsky/index.html b/components/sensor.bloomsky/index.html index e9f8930dae..08287c269a 100644 --- a/components/sensor.bloomsky/index.html +++ b/components/sensor.bloomsky/index.html @@ -290,6 +290,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.command_line/index.html b/components/sensor.command_line/index.html index 224d1d91a0..4dec91e1ab 100644 --- a/components/sensor.command_line/index.html +++ b/components/sensor.command_line/index.html @@ -374,6 +374,9 @@ print(response.json()[' Twitch +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.cpuspeed/index.html b/components/sensor.cpuspeed/index.html index e714f52456..ade5d99e55 100644 --- a/components/sensor.cpuspeed/index.html +++ b/components/sensor.cpuspeed/index.html @@ -261,6 +261,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.deutsche_bahn/index.html b/components/sensor.deutsche_bahn/index.html index 1ee1c8c05f..d9fae3b658 100644 --- a/components/sensor.deutsche_bahn/index.html +++ b/components/sensor.deutsche_bahn/index.html @@ -264,6 +264,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.dweet/index.html b/components/sensor.dweet/index.html index fa747011b6..730372b55d 100644 --- a/components/sensor.dweet/index.html +++ b/components/sensor.dweet/index.html @@ -305,6 +305,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.ecobee/index.html b/components/sensor.ecobee/index.html index f0cfb18560..33e8288c28 100644 --- a/components/sensor.ecobee/index.html +++ b/components/sensor.ecobee/index.html @@ -253,6 +253,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.efergy/index.html b/components/sensor.efergy/index.html index 5e12be40b9..7612b4c305 100644 --- a/components/sensor.efergy/index.html +++ b/components/sensor.efergy/index.html @@ -274,6 +274,9 @@ negative number of minutes your timezone is ahead/behind UTC time.
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.eliqonline/index.html b/components/sensor.eliqonline/index.html index 73481da3ca..dfd13edd75 100644 --- a/components/sensor.eliqonline/index.html +++ b/components/sensor.eliqonline/index.html @@ -266,6 +266,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.glances/index.html b/components/sensor.glances/index.html index e1d1a14ebe..40a27347a3 100644 --- a/components/sensor.glances/index.html +++ b/components/sensor.glances/index.html @@ -318,6 +318,9 @@ Glances web server started on http://0.0.0.0:61208/
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.http/index.html b/components/sensor.http/index.html index f4f6174808..4d55cb1339 100644 --- a/components/sensor.http/index.html +++ b/components/sensor.http/index.html @@ -302,6 +302,9 @@ You should choose a unique device name (DEVICE_NAME) to avoid clashes with other
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.mfi/index.html b/components/sensor.mfi/index.html index 1ee498516a..7aa91cd8d6 100644 --- a/components/sensor.mfi/index.html +++ b/components/sensor.mfi/index.html @@ -278,6 +278,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.modbus/index.html b/components/sensor.modbus/index.html index 5de244b365..4037db75a8 100644 --- a/components/sensor.modbus/index.html +++ b/components/sensor.modbus/index.html @@ -311,6 +311,9 @@ Each named register will create an integer sensor and each named bit will create
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.mqtt/index.html b/components/sensor.mqtt/index.html index ac76b05652..d695e963e0 100644 --- a/components/sensor.mqtt/index.html +++ b/components/sensor.mqtt/index.html @@ -328,6 +328,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.mysensors/index.html b/components/sensor.mysensors/index.html index 89fee49006..c4dc6dd24a 100644 --- a/components/sensor.mysensors/index.html +++ b/components/sensor.mysensors/index.html @@ -392,6 +392,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.nest/index.html b/components/sensor.nest/index.html index 001fa8820c..ca2c342dbf 100644 --- a/components/sensor.nest/index.html +++ b/components/sensor.nest/index.html @@ -307,6 +307,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.netatmo/index.html b/components/sensor.netatmo/index.html index 2e286cc9f2..eeb76bea68 100644 --- a/components/sensor.netatmo/index.html +++ b/components/sensor.netatmo/index.html @@ -330,6 +330,9 @@ The Home Assistant NetAtmo platform has only be tested with the classic indoor,
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.neurio_energy/index.html b/components/sensor.neurio_energy/index.html index 285a12ed92..0865b0312b 100644 --- a/components/sensor.neurio_energy/index.html +++ b/components/sensor.neurio_energy/index.html @@ -267,6 +267,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.onewire/index.html b/components/sensor.onewire/index.html index 7aeff91038..802b775baa 100644 --- a/components/sensor.onewire/index.html +++ b/components/sensor.onewire/index.html @@ -266,6 +266,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.rest/index.html b/components/sensor.rest/index.html index 94894a4170..91c5e0d8ec 100644 --- a/components/sensor.rest/index.html +++ b/components/sensor.rest/index.html @@ -360,6 +360,9 @@ Make sure that the URL matches exactly your endpoint or resource.
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.rfxtrx/index.html b/components/sensor.rfxtrx/index.html index 221bf6f374..2a57aa957d 100644 --- a/components/sensor.rfxtrx/index.html +++ b/components/sensor.rfxtrx/index.html @@ -286,6 +286,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.sabnzbd/index.html b/components/sensor.sabnzbd/index.html index 68b16954de..5009682a5e 100644 --- a/components/sensor.sabnzbd/index.html +++ b/components/sensor.sabnzbd/index.html @@ -276,6 +276,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.speedtest/index.html b/components/sensor.speedtest/index.html index 62f753cd8e..7643481eb2 100644 --- a/components/sensor.speedtest/index.html +++ b/components/sensor.speedtest/index.html @@ -313,6 +313,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.steam_online/index.html b/components/sensor.steam_online/index.html index 2f0d2723e8..1429026cc3 100644 --- a/components/sensor.steam_online/index.html +++ b/components/sensor.steam_online/index.html @@ -285,6 +285,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.swiss_public_transport/index.html b/components/sensor.swiss_public_transport/index.html index ce5a4d7cc8..0c42ab2337 100644 --- a/components/sensor.swiss_public_transport/index.html +++ b/components/sensor.swiss_public_transport/index.html @@ -269,6 +269,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.systemmonitor/index.html b/components/sensor.systemmonitor/index.html index 009b8fba77..8c4aec0df5 100644 --- a/components/sensor.systemmonitor/index.html +++ b/components/sensor.systemmonitor/index.html @@ -357,6 +357,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.tcp/index.html b/components/sensor.tcp/index.html index 51b6104857..c6d95fd681 100644 --- a/components/sensor.tcp/index.html +++ b/components/sensor.tcp/index.html @@ -351,6 +351,9 @@ Escape character is '^]'.
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.tellduslive/index.html b/components/sensor.tellduslive/index.html index 94a8faae44..32fdb7441c 100644 --- a/components/sensor.tellduslive/index.html +++ b/components/sensor.tellduslive/index.html @@ -254,6 +254,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.tellstick/index.html b/components/sensor.tellstick/index.html index 524e9d6656..fcb7778ece 100644 --- a/components/sensor.tellstick/index.html +++ b/components/sensor.tellstick/index.html @@ -281,6 +281,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.temper/index.html b/components/sensor.temper/index.html index dba3b72826..dba07a0770 100644 --- a/components/sensor.temper/index.html +++ b/components/sensor.temper/index.html @@ -251,6 +251,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.template/index.html b/components/sensor.template/index.html index 5714c1ecd8..0e7552c0bf 100644 --- a/components/sensor.template/index.html +++ b/components/sensor.template/index.html @@ -328,6 +328,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.time_date/index.html b/components/sensor.time_date/index.html index 19218aba7e..67cd067569 100644 --- a/components/sensor.time_date/index.html +++ b/components/sensor.time_date/index.html @@ -269,6 +269,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.torque/index.html b/components/sensor.torque/index.html index d777d65ce2..cd672ad3e0 100644 --- a/components/sensor.torque/index.html +++ b/components/sensor.torque/index.html @@ -286,6 +286,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.transmission/index.html b/components/sensor.transmission/index.html index 14d0ef6bbf..2a56dfb737 100644 --- a/components/sensor.transmission/index.html +++ b/components/sensor.transmission/index.html @@ -297,6 +297,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.twitch/index.html b/components/sensor.twitch/index.html index 3b33e089bb..eb49bc0009 100644 --- a/components/sensor.twitch/index.html +++ b/components/sensor.twitch/index.html @@ -266,6 +266,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.uber/index.html b/components/sensor.uber/index.html new file mode 100644 index 0000000000..0df0e2f9d3 --- /dev/null +++ b/components/sensor.uber/index.html @@ -0,0 +1,345 @@ + + + + + + + + + + Uber - Home Assistant + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
        + +
        + + + +
        +
        + +
        + + +
        + + + + +
        +

        + Uber +

        +
        +
        + + +

        The uber sensor will give you time and price estimates for all available Uber products at the given start_latitude and start_longitude.The ATTRIBUTES are used to provide extra information about products, such as estimated trip duration, distance and vehicle capacity. By default, 2 sensors will be created for each product at the given start location, one for pickup time and one for current price. The sensor is powered by the official Uber API.

        + +

        You must create an application here to obtain a server_token.

        + +

        To enable this sensor, add the following lines to your configuration.yaml file:

        + +
        +
        # Example configuration.yaml entry
        +sensor:
        +  platform: uber
        +  start_latitude: 37.8116380
        +  start_longitude: -122.2648050
        +  end_latitude: 37.7768520
        +  end_longitude: -122.4155500
        +  server_token: 'BeAPPTDsWZSHLf7fd9OWjZkIezweRw18Q8NltY27'
        +  product_ids:
        +    - '04a497f5-380d-47f2-bf1b-ad4cfdcb51f2'
        +
        +
        +
        + +

        Configuration variables:

        + +
          +
        • start_latitude (Required): The starting latitude for a trip.
        • +
        • start_longitude (Required): The starting longitude for a trip.
        • +
        • end_latitude (Optional): The ending latitude for a trip. While end_latitude is optional, it is strongly recommended to provide an end_latitude/end_longitude when possible as you will get more accurate price and time estimates.
        • +
        • end_longitude (Optional): The ending longitude for a trip. While end_longitude is optional, it is strongly recommended to provide an end_latitude/end_longitude when possible as you will get more accurate price and time estimates.
        • +
        • server_token (Required): A server token obtained from developer.uber.com after creating an app.
        • +
        • product_ids (Options): A list of Uber product UUIDs. If provided, sensors will only be created for the given product IDs. Please note that product IDs are region and some times even more specific geographies based. The easiest way to find a UUID is to click on a sensor in the Home Assistant frontend and look for “Product ID” in the attributes.
        • +
        + + +
        + + +
        + + + + +
        +
        + + + + + + + + + \ No newline at end of file diff --git a/components/sensor.vera/index.html b/components/sensor.vera/index.html index ed3d26c019..e233911ec4 100644 --- a/components/sensor.vera/index.html +++ b/components/sensor.vera/index.html @@ -285,6 +285,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.verisure/index.html b/components/sensor.verisure/index.html index f3617b12d5..c2f2b38062 100644 --- a/components/sensor.verisure/index.html +++ b/components/sensor.verisure/index.html @@ -268,6 +268,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.wink/index.html b/components/sensor.wink/index.html index 212d98ce3c..71819c774d 100644 --- a/components/sensor.wink/index.html +++ b/components/sensor.wink/index.html @@ -268,6 +268,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.worldclock/index.html b/components/sensor.worldclock/index.html index 6b27fcea22..679e859f61 100644 --- a/components/sensor.worldclock/index.html +++ b/components/sensor.worldclock/index.html @@ -272,6 +272,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.zigbee/index.html b/components/sensor.zigbee/index.html index 026083eb5f..45b7221bac 100644 --- a/components/sensor.zigbee/index.html +++ b/components/sensor.zigbee/index.html @@ -317,6 +317,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor.zwave/index.html b/components/sensor.zwave/index.html index b8b9373c29..5c7a0455f5 100644 --- a/components/sensor.zwave/index.html +++ b/components/sensor.zwave/index.html @@ -259,6 +259,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/sensor/index.html b/components/sensor/index.html index 884b2fd3a6..ba33192289 100644 --- a/components/sensor/index.html +++ b/components/sensor/index.html @@ -255,6 +255,9 @@
      • Twitch
      • +
      • + Uber +
      • Vera Sensor
      • diff --git a/components/shell_command/index.html b/components/shell_command/index.html index bb75ac5a99..26d3b934d7 100644 --- a/components/shell_command/index.html +++ b/components/shell_command/index.html @@ -161,6 +161,9 @@
      • Input Select
      • +
      • + Input Slider +
      • Keyboard
      • diff --git a/components/switch.arduino/index.html b/components/switch.arduino/index.html index a08f1a9418..f6d55f1fe5 100644 --- a/components/switch.arduino/index.html +++ b/components/switch.arduino/index.html @@ -125,6 +125,8 @@ 11: name: Fan Office type: digital + default: on + negate: true 12: name: Light Desk type: digital @@ -139,6 +141,8 @@
        • name: Name that will be used in the frontend for the pin.
        • type: The type of the pin. At the moment only ‘digital’ is supported.
        • +
        • default: The initial value for this port.
        • +
        • negate: If this pin should be inverted.
      diff --git a/components/switch.arest/index.html b/components/switch.arest/index.html index e1a23b690e..83ee067d3c 100644 --- a/components/switch.arest/index.html +++ b/components/switch.arest/index.html @@ -244,6 +244,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -274,6 +277,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.command_line/index.html b/components/switch.command_line/index.html index 5c7470df55..c29423088f 100644 --- a/components/switch.command_line/index.html +++ b/components/switch.command_line/index.html @@ -286,6 +286,9 @@ switch:
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -316,6 +319,9 @@ switch:
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.dlink/index.html b/components/switch.dlink/index.html index 738a39b9e9..4ea68a5d17 100644 --- a/components/switch.dlink/index.html +++ b/components/switch.dlink/index.html @@ -198,6 +198,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -228,6 +231,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.edimax/index.html b/components/switch.edimax/index.html index 70c2385a2b..7fc05ccd29 100644 --- a/components/switch.edimax/index.html +++ b/components/switch.edimax/index.html @@ -189,6 +189,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -219,6 +222,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.hikvision/index.html b/components/switch.hikvision/index.html index da4c7a0419..9ee50c4768 100644 --- a/components/switch.hikvision/index.html +++ b/components/switch.hikvision/index.html @@ -192,6 +192,9 @@ Currently works using default https port only.
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -222,6 +225,9 @@ Currently works using default https port only.
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.mfi/index.html b/components/switch.mfi/index.html index 35f09c1e7f..9ae24aea95 100644 --- a/components/switch.mfi/index.html +++ b/components/switch.mfi/index.html @@ -200,6 +200,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -230,6 +233,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.modbus/index.html b/components/switch.modbus/index.html index b8e82195cb..c1f3cf0c88 100644 --- a/components/switch.modbus/index.html +++ b/components/switch.modbus/index.html @@ -230,6 +230,9 @@ Each named bit will create a switch.
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -260,6 +263,9 @@ Each named bit will create a switch.
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.mqtt/index.html b/components/switch.mqtt/index.html index 17eadecde5..95645fe8bc 100644 --- a/components/switch.mqtt/index.html +++ b/components/switch.mqtt/index.html @@ -240,6 +240,9 @@ Make sure that your topic match exact. some-topic/ and some-t
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -270,6 +273,9 @@ Make sure that your topic match exact. some-topic/ and some-t
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.mysensors/index.html b/components/switch.mysensors/index.html index c21ebd70d5..e1e9c92790 100644 --- a/components/switch.mysensors/index.html +++ b/components/switch.mysensors/index.html @@ -261,6 +261,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -291,6 +294,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.mystrom/index.html b/components/switch.mystrom/index.html index 616b5ad9be..c5d0c52a93 100644 --- a/components/switch.mystrom/index.html +++ b/components/switch.mystrom/index.html @@ -205,6 +205,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -235,6 +238,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.orvibo/index.html b/components/switch.orvibo/index.html index 5406cc50ce..4b5ff362a6 100644 --- a/components/switch.orvibo/index.html +++ b/components/switch.orvibo/index.html @@ -183,6 +183,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -213,6 +216,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.pulseaudio_loopback.html b/components/switch.pulseaudio_loopback.html new file mode 100644 index 0000000000..31ef8fc571 --- /dev/null +++ b/components/switch.pulseaudio_loopback.html @@ -0,0 +1 @@ + diff --git a/components/switch.pulseaudio_loopback/index.html b/components/switch.pulseaudio_loopback/index.html new file mode 100644 index 0000000000..65271438cc --- /dev/null +++ b/components/switch.pulseaudio_loopback/index.html @@ -0,0 +1,301 @@ + + + + + + + + + + PulseAudio Loopback Switch - Home Assistant + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      + +
      + + + +
      +
      + +
      + + +
      + + + + +
      +

      + PulseAudio Loopback Switch +

      +
      +
      + + +

      The goal behind this switch is to allow a very flexible whole home audio system based upon PulseAudio.

      + +

      For example, for a system with a 7.1 surround sound card, and 3 instances of mpd running, it is possible to quickly route the output of any mpd instance to any of the 8 possible (4 stereo) channels on the sound card, by loading/unloading a loopback module. This loading/unloading functionality is provided by this component. When the switch is ‘on’, the loopback module is loaded. When the switch is ‘off’, the module is not loaded.

      + +

      The benefit of this approach is that this audio routing can occur without modifying the design-time configuration of mpd or PulseAudio.

      + +

      This component uses a TCP connection to control a local or remote PulseAudio server- so there are no local dependencies.

      + +

      To enable this switch, add the following lines to your configuration.yaml file:

      + +
      +
      # Example configuration.yaml entry
      +switch:
      +  platform: pulseaudio_loopback
      +  name: mpd1 -> bedroom
      +  host: 127.0.0.1
      +  port: 4712
      +  source_name: mpd1.monitor
      +  sink_name: bedroom
      +
      +
      +
      + +

      Configuration variables:

      + +
        +
      • sink_name (Required): The name of the Pulseaudio sink that will recieve the audio.
      • +
      • source_name (Required): The name of the Pulseaudio source that will supply the audio.
      • +
      • name (Optional): Name of the switch.
      • +
      • host (Optional): The IP address or host name of the PulseAudio server. If not specified, 127.0.0.1 is used.
      • +
      • port (Optional): The port that Pulseaudio is listening on. Defaults to 4712.
      • +
      • buffer_size (Optional): How much data to load from Pulseaudio at once. Default is 1KB.
      • +
      • tcp_timeout (Optional): How long to wait for a response from Pulseaudio before giving up. Default is 3 seconds.
      • +
      + +

      +This component relies on raw TCP commands to PulseAudio. In order for PulseAudio to accept commands with +this component, module-cli-protocol must be loaded on the PulseAudio server. +

      + + + +
      + + +
      + + + + +
      +
      + + + + + + + + + \ No newline at end of file diff --git a/components/switch.rest/index.html b/components/switch.rest/index.html index fa8b849957..15c262274d 100644 --- a/components/switch.rest/index.html +++ b/components/switch.rest/index.html @@ -206,6 +206,9 @@ Make sure that the URL matches exactly your endpoint or resource.
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -236,6 +239,9 @@ Make sure that the URL matches exactly your endpoint or resource.
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.rfxtrx/index.html b/components/switch.rfxtrx/index.html index 3c899b69e3..d36dc07223 100644 --- a/components/switch.rfxtrx/index.html +++ b/components/switch.rfxtrx/index.html @@ -202,6 +202,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -232,6 +235,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.rpi_gpio/index.html b/components/switch.rpi_gpio/index.html index 9460e98439..e3f399a773 100644 --- a/components/switch.rpi_gpio/index.html +++ b/components/switch.rpi_gpio/index.html @@ -204,6 +204,9 @@ If you are not running Raspbian Jessie, you will need to run Home Assistant as r
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -234,6 +237,9 @@ If you are not running Raspbian Jessie, you will need to run Home Assistant as r
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.scsgate/index.html b/components/switch.scsgate/index.html index 0c6d5c2fcf..f706564ef3 100644 --- a/components/switch.scsgate/index.html +++ b/components/switch.scsgate/index.html @@ -199,6 +199,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -229,6 +232,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.tellduslive/index.html b/components/switch.tellduslive/index.html index 5cb509bcc1..74ce0a0024 100644 --- a/components/switch.tellduslive/index.html +++ b/components/switch.tellduslive/index.html @@ -177,6 +177,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -207,6 +210,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.tellstick/index.html b/components/switch.tellstick/index.html index b64b6f9444..63014e1429 100644 --- a/components/switch.tellstick/index.html +++ b/components/switch.tellstick/index.html @@ -200,6 +200,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -230,6 +233,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.template/index.html b/components/switch.template/index.html index 9fb72713c5..10bd831a7e 100644 --- a/components/switch.template/index.html +++ b/components/switch.template/index.html @@ -278,6 +278,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -308,6 +311,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.transmission/index.html b/components/switch.transmission/index.html index 0ac56dd109..84f3f40f52 100644 --- a/components/switch.transmission/index.html +++ b/components/switch.transmission/index.html @@ -199,6 +199,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -229,6 +232,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.vera/index.html b/components/switch.vera/index.html index 4262b7f1ca..6617a4c447 100644 --- a/components/switch.vera/index.html +++ b/components/switch.vera/index.html @@ -208,6 +208,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -238,6 +241,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.verisure/index.html b/components/switch.verisure/index.html index 7290e0d857..c03a681bac 100644 --- a/components/switch.verisure/index.html +++ b/components/switch.verisure/index.html @@ -185,6 +185,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -215,6 +218,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.wake_on_lan/index.html b/components/switch.wake_on_lan/index.html new file mode 100644 index 0000000000..42c37234b3 --- /dev/null +++ b/components/switch.wake_on_lan/index.html @@ -0,0 +1,288 @@ + + + + + + + + + + Wake on LAN Switch - Home Assistant + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      + +
      + + + +
      +
      + +
      + + +
      + + + + +
      +

      + Wake on LAN Switch +

      +
      +
      + + +

      The wake_on_lan (WOL) switch platform allows you to turn on a WOL enabled computer.

      + +

      +The WOL switch can only turn on your computer and monitor the state. There is no universal way to turn off a computer remotely. +

      + +

      To enable this switch in your installation, add the following to your configuration.yaml file:

      + +
      +
      # Example configuration.yml entry
      +switch:
      +  platform: wake_on_lan
      +  mac_address: "00-01-02-03-04-05"
      +  name: "WOL"
      +  host: "192.168.1.1"
      +
      +
      +
      + +

      Configuration variables:

      + +
        +
      • mac_address (Required): MAC address to send the wake up command to.
      • +
      • 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).
      • +
      + + + +
      + + +
      + + + + +
      +
      + + + + + + + + + \ No newline at end of file diff --git a/components/switch.wemo/index.html b/components/switch.wemo/index.html index dd3cd1f0cb..43a029e6cb 100644 --- a/components/switch.wemo/index.html +++ b/components/switch.wemo/index.html @@ -183,6 +183,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -213,6 +216,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.wink/index.html b/components/switch.wink/index.html index f50c109293..7971fb4dda 100644 --- a/components/switch.wink/index.html +++ b/components/switch.wink/index.html @@ -191,6 +191,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -221,6 +224,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.zigbee/index.html b/components/switch.zigbee/index.html index a0b2f3083b..10637c4c37 100644 --- a/components/switch.zigbee/index.html +++ b/components/switch.zigbee/index.html @@ -205,6 +205,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -235,6 +238,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch.zwave/index.html b/components/switch.zwave/index.html index 269aa329b6..a29c31f246 100644 --- a/components/switch.zwave/index.html +++ b/components/switch.zwave/index.html @@ -182,6 +182,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -212,6 +215,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/switch/index.html b/components/switch/index.html index cbde2d0da6..3630517f5c 100644 --- a/components/switch/index.html +++ b/components/switch/index.html @@ -194,6 +194,9 @@
    • Orvibo Switch
    • +
    • + PulseAudio Loopback Switch +
    • RESTful Switch
    • @@ -224,6 +227,9 @@
    • Verisure SmartPlug
    • +
    • + Wake on LAN Switch +
    • Wink Switch
    • diff --git a/components/tellstick/index.html b/components/tellstick/index.html index 5d68e9592e..69ab09ffb0 100644 --- a/components/tellstick/index.html +++ b/components/tellstick/index.html @@ -119,21 +119,13 @@
      # Example configuration.yaml entry
      -switch:
      -  platform: tellstick
      -
      -sensor:
      -  platform: tellstick
      -
      -# All dimmers will be picked up as lights.
      -light:
      -  platform: tellstick
      +tellstick:
      +  signal_repetitions: X
       
      -
    diff --git a/components/vera/index.html b/components/vera/index.html index cf0b1c58e6..1c4f33294a 100644 --- a/components/vera/index.html +++ b/components/vera/index.html @@ -115,13 +115,16 @@

    The Vera ecosystem is using Z-Wave for communication between the Vera controller and the devices.

    -

    Building on top of Vera

    - - +
    +
    vera:
    +  vera_controller_url: http://192.168.1.161:3480/
    +  # Optional to exclude devices - this is a list of vera device ids
    +  exclude: [ 13, 14, 16, 20, 23, 72, 73, 74, 75, 76, 77, 78, 88, 89, 99]
    +  # Optional to import switches as lights - this is a list of vera device ids
    +  lights: [15, 17, 19, 21, 22, 24, 26, 43, 64, 70, 87]
    +
    +
    +
    diff --git a/components/zwave/index.html b/components/zwave/index.html index d28be8ed44..08b342836e 100644 --- a/components/zwave/index.html +++ b/components/zwave/index.html @@ -231,6 +231,37 @@ Depending on what’s plugged into your USB ports, the name found above may chan

    The entity_id and scene_id of all triggered events can be seen in the console output.

    +

    Services

    + +

    The Z-Wave component exposes two services to help maintain the network.

    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ServiceDescription
    add_node 
    remove_node 
    heal_network 
    soft_reset 
    + diff --git a/images/supported_brands/ethernet.png b/images/supported_brands/ethernet.png new file mode 100644 index 0000000000000000000000000000000000000000..6f507b4ac946bf731f78e3401cb98aea3d34fbc0 GIT binary patch literal 635 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD1|%QND7OGoY)RhkE(}8pX7+2iB`GtXjiOti+F{I+w+q;fl(t$F^KjxcWs9^9kzts9D z(Z;D*`Ryg`3YO~Dsy3yjUD^B>IM`x+c4@TEy#C|ZeVb2z54@RV`2K$?51%2wisvLC z+M;cj^K*~#1MUL0ISkwh_IqcPZ)2-tDnDRaz-rU;*ZKJY)(_GZAAh{AVA_|LX42*S z;5Uny)z`;tKSHX1$eXMC>93pmxb0NbS8o*t8r_&={!saW``bm<39NIN`fK@b zXG^-B_)H*0ei%!zY7%$6ShN$$g$cYh~_o|c;N)pmi(0q-i& z-q&*rPp((!&G_~$IAr_Vzbk_#?^?8%=@5@VT7v;|i=@IChD0_FV}}`xV4)3$?^t_l z_0|9WT6NF+6Bj}Pi&|VlIv?$moae8W{B_6g*U!*ORt!sE8tam;{rGcijV8kONer*Q zbm!c7@WzYjkJtJ|5YNqqcuwd+bd@OYYNOrfOJ)l$DPNNDHX=9e`sycKJJ|KIr`$1| zUb1=hBL?%2Kkxh2@MVd|N-V7SadrE~U&(&kBWJ$n{4W=s`{diSwLH^Hs+Y(-4r_bA iZR$c`q%HZjmq{R_OfdP$f}_Bs!QkoY=d#Wzp$Pzcf&$tA literal 0 HcmV?d00001 diff --git a/images/supported_brands/gntp.png b/images/supported_brands/gntp.png new file mode 100644 index 0000000000000000000000000000000000000000..a0ad0fb1334d7b91f9a82cabfef0730b288bc731 GIT binary patch literal 73058 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�fw_@XBPd!xDqs^ZHf8WxNj4YsUPPG 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

    Y?JNMb(E_pCg|X=my<(zTS8Oe6 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 Ukwm~~u>b%707*qoM6N<$g3%HG-v9sr literal 0 HcmV?d00001 diff --git a/images/supported_brands/message_bird.png b/images/supported_brands/message_bird.png new file mode 100644 index 0000000000000000000000000000000000000000..1beab0c385ce817f6894cdcca003c60e0d2d9893 GIT binary patch literal 3934 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 RKF(jVy*1jZ+~Qc|{{RUT7b*Y% literal 0 HcmV?d00001 diff --git a/images/supported_brands/pulseaudio.png b/images/supported_brands/pulseaudio.png new file mode 100644 index 0000000000000000000000000000000000000000..f90a8ad76d2cc4c1e0b09f1f600609ea6943b82a GIT binary patch literal 11379 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 literal 0 HcmV?d00001 diff --git a/images/supported_brands/uber.png b/images/supported_brands/uber.png new file mode 100755 index 0000000000000000000000000000000000000000..7a201cd47d5a6f5c17e12a2bffa61b182ad95eef GIT binary patch literal 5778 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 U=inX;U_t<`8@JWVRBa>w0Z>Ogvj6}9 literal 0 HcmV?d00001 diff --git a/images/supported_brands/yamaha.png b/images/supported_brands/yamaha.png new file mode 100644 index 0000000000000000000000000000000000000000..6ae38e57fed39c1979aa84fb0a33461227cd70cf GIT binary patch literal 35048 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 + + https://home-assistant.io/blog/2016/03/26/embedded-mqtt-broker-uber-yamaha-growl/ + 2016-03-26T07:10:00+00:00 + https://home-assistant.io/blog/2016/03/12/z-wave-pep257-templated-service-calls/ 2016-03-12T18:55:00+00:00 @@ -1059,6 +1063,27 @@ https://home-assistant.io/components/scene.hunterdouglas_powerview/ + + https://home-assistant.io/components/input_slider/ + + + https://home-assistant.io/components/notify.message_bird/ + + + https://home-assistant.io/components/switch.wake_on_lan/ + + + https://home-assistant.io/components/switch.pulseaudio_loopback/ + + + https://home-assistant.io/components/sensor.uber/ + + + https://home-assistant.io/components/notify.gntp/ + + + https://home-assistant.io/components/media_player.yamaha/ + https://home-assistant.io/cookbook/automation_for_rainy_days/ @@ -1290,628 +1315,635 @@ https://home-assistant.io/blog/2016/03/12/z-wave-pep257-templated-service-calls/ + + https://home-assistant.io/blog/2016/03/26/embedded-mqtt-broker-uber-yamaha-growl/ + https://home-assistant.io/components/alarm_control_panel.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/alarm_control_panel.manual.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/alarm_control_panel.mqtt.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/arduino.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/automation.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/browser.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/camera.foscam.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/camera.generic.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/configurator.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/conversation.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_sun_light_trigger.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_tracker.actiontec.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_tracker.aruba.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_tracker.asuswrt.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_tracker.ddwrt.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_tracker.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_tracker.locative.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_tracker.luci.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_tracker.mqtt.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_tracker.netgear.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_tracker.nmap_scanner.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_tracker.owntracks.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_tracker.snmp.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_tracker.thomson.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_tracker.tomato.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_tracker.tplink.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/device_tracker.ubus.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/discovery.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/downloader.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/ecobee.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/group.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/history.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/ifttt.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/ifttt.manything.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/introduction.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/isy994.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/keyboard.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/light.blinksticklight.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/light.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/light.hue.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/light.hyperion.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/light.limitlessled.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/light.rfxtrx.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/light.tellstick.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/light.vera.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/light.wink.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/lock.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/lock.wink.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/logbook.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/media_player.cast.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/media_player.denon.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/media_player.firetv.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/media_player.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/media_player.itunes.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/media_player.kodi.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/media_player.mpd.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/media_player.plex.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/media_player.sonos.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/media_player.squeezebox.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/modbus.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/mqtt.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/notify.file.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/notify.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/notify.instapush.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/notify.nma.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/notify.pushbullet.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/notify.pushover.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/notify.slack.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/notify.smtp.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/notify.syslog.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/notify.telegram.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/notify.xmpp.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/rfxtrx.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/scene.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/script.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.arduino.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.arest.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.bitcoin.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.command_sensor.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.cpuspeed.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.dht.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.ecobee.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.efergy.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.forecast.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.glances.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.modbus.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.mqtt.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.mysensors.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.openweathermap.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.rest.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.rfxtrx.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.rpi_gpio.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.sabnzbd.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.speedtest.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.swiss_public_transport.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.systemmonitor.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.tellstick.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.temper.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.time_date.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.transmission.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.vera.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.wink.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sensor.worldclock.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/shell_command.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/simple_alarm.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/sun.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/switch.arduino.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/switch.arest.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/switch.command_switch.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/switch.edimax.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/switch.hikvision.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/switch.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/switch.modbus.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/switch.mqtt.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 + + + https://home-assistant.io/components/switch.pulseaudio_loopback.html + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/switch.rest.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/switch.rfxtrx.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/switch.rpi_gpio.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/switch.tellstick.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/switch.transmission.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/switch.vera.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/switch.wemo.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/switch.wink.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/tellstick.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/thermostat.ecobee.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/thermostat.heat_control.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/thermostat.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/thermostat.nest.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/thermostat.radiotherm.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/vera.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/verisure.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/wink.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/zone.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/components/zwave.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/demo/frontend.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/demo/index.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/developers/add_new_platform.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/developers/api.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/developers/architecture.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/developers/creating_components.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/developers/credits.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/developers/frontend.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/developers/python_api.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/developers/rest_api.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/developers/website.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/getting-started/android.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/getting-started/automation.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/getting-started/autostart.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/getting-started/configuration.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/getting-started/devices.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/getting-started/presence-detection.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/getting-started/templating.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/getting-started/troubleshooting-configuration.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/getting-started/troubleshooting.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/googlef4f3693c209fe788.html - 2016-03-26T07:12:55+00:00 + 2016-03-26T08:08:24+00:00 https://home-assistant.io/static/mdi-demo.html - 2016-03-26T07:12:56+00:00 + 2016-03-26T08:08:24+00:00