diff --git a/_config.yml b/_config.yml index 84212e57b7c0..dd8e6e0067e6 100644 --- a/_config.yml +++ b/_config.yml @@ -141,14 +141,14 @@ social: # Home Assistant release details current_major_version: 0 -current_minor_version: 73 +current_minor_version: 74 current_patch_version: 1 -date_released: 2018-07-08 +date_released: 2018-07-24 # Either # or the anchor link to latest release notes in the blog post. # Must be prefixed with a # and have double quotes around it. # Major release: -patch_version_notes: "#" +patch_version_notes: "#release-0741---july-24" # Minor release (Example #release-0431---april-25): # Date we moved to Discourse for comments diff --git a/plugins/active_link.rb b/plugins/active_link.rb index bd5853f70223..6b6063cffac7 100644 --- a/plugins/active_link.rb +++ b/plugins/active_link.rb @@ -10,7 +10,7 @@ def initialize(tag_name, text, token) def render(context) href = Liquid::Template.parse(@href).render context title = Liquid::Template.parse(@title).render context - cls = @href == context.registers[:page]["url"] ? "class='active'" : '' + cls = href == context.registers[:page]["url"] ? "class='active'" : '' "#{title}" end end diff --git a/source/_components/asterisk_mbox.markdown b/source/_components/asterisk_mbox.markdown index 2361dfe0c978..f040acd99bbb 100644 --- a/source/_components/asterisk_mbox.markdown +++ b/source/_components/asterisk_mbox.markdown @@ -9,11 +9,11 @@ sharing: true footer: true logo: asterisk.png ha_category: Other -ha_version: 0.51 ha_iot_class: "Local Push" +ha_release: 0.51 --- -The `asterisk_mbox `Asterisk Voicemail integration for Home Assistant allows you to view, listen to, and delete voicemails from an Asterisk voicemail mailbox. The component includes a panel on the frontend that provides caller-id and speech-to-text transcription (using Google's API) of messages in addition to playback and message deletion. There is also an included sensor that indicates of the number of available messages. There is no requirement that the Asterisk PBX and Home Assistant are running on the same machine. +The `asterisk_mbox` Asterisk Voicemail integration for Home Assistant allows you to view, listen to, and delete voicemails from an Asterisk voicemail mailbox. The component includes a panel on the frontend that provides caller-id and speech-to-text transcription (using Google's API) of messages in addition to playback and message deletion. There is also an included sensor that indicates of the number of available messages. There is no requirement that the Asterisk PBX and Home Assistant are running on the same machine. To enable the component, a configuration is required in both Home Assistant as well as on the Asterisk server. @@ -31,13 +31,21 @@ asterisk_mbox: This will add a new 'Mailbox' side-panel, as well as a sensor to indicate # of messages available. -Configuration variables: - -- **password** (*Required*): The password that was set during Asterisk PBX configuration -- **host** (*Required*): The ip-address of the server that is running the Asterisk PBX -- **port** (*Required*): The port on the Asterisk PBX server that was configured during Asterisk PBX configuration +{% configuration %} +password: + description: The password that was set during Asterisk PBX configuration + required: true + type: string +host: + description: The ip-address of the server that is running the Asterisk PBX + required: true + type: string +port: + description: The port on the Asterisk PBX server that was configured during Asterisk PBX configuration + required: true + type: string +{% endconfiguration %}

Communication between the Asterisk PBX server and the Home Assistant server is password-protected, but the data transmission is not encrypted. It is recommended to only use this component when communication is contained within a local area network.

- diff --git a/source/_components/auth.markdown b/source/_components/auth.markdown new file mode 100644 index 000000000000..96d0ab055a21 --- /dev/null +++ b/source/_components/auth.markdown @@ -0,0 +1,15 @@ +--- +layout: page +title: "Auth" +description: "This component is responsible for providing the authentication endpoints." +date: 2018-03-19 21:04 +sidebar: true +comments: false +sharing: true +footer: true +logo: home-assistant.png +ha_category: Other +ha_release: 0.73 +--- + +This component creates the endpoints for the authentication system that is built into Home Assistant. There are no configuration options for this component directly as it relies on the auth system in the core. diff --git a/source/_components/binary_sensor.insteon_plm.markdown b/source/_components/binary_sensor.insteon_plm.markdown index 9312a66cffda..1ea2a2eba416 100644 --- a/source/_components/binary_sensor.insteon_plm.markdown +++ b/source/_components/binary_sensor.insteon_plm.markdown @@ -10,7 +10,7 @@ footer: true logo: insteon.png ha_category: Binary Sensor ha_iot_class: "Local Push" -ha_version: 0.39 +ha_release: 0.39 --- The `insteon_plm` binary sensor platform lets you control your sensors through @@ -18,4 +18,4 @@ an INSTEON PowerLinc Modem (PLM) device connected directly to your system on a USB or serial port. To add support, set up the primary [insteon_plm] component. -[insteon_plm]: /components/insteon_plm/ \ No newline at end of file +[insteon_plm]: /components/insteon_plm/ diff --git a/source/_components/climate.generic_thermostat.markdown b/source/_components/climate.generic_thermostat.markdown index 19e1a1f1cd41..c80c27eb7797 100644 --- a/source/_components/climate.generic_thermostat.markdown +++ b/source/_components/climate.generic_thermostat.markdown @@ -43,7 +43,7 @@ Configuration variables: A full configuration example looks like the one below. `min_cycle_duration` and `keep_alive` must contain at least one of the following entries: `days:`, `hours:`, `minutes:`, `seconds:` or `milliseconds:`. -Currently the `generic_thermostat` climate platform supports 'heat', 'cool' and 'off' operation modes. You can force your `generic_thermstat` to avoid starting by setting Operation to 'off'. +Currently the `generic_thermostat` climate platform supports 'auto', 'heat', 'cool' and 'off' operation modes. If you set the operation mode to 'auto' it will switch to the matching mode 'heat' or 'cool' (`ac_mode`) automatically. You can force your `generic_thermostat` to avoid starting by setting `initial_operation_mode` to 'off'. Please note that changing Away Mode you will force a target temperature change as well that will get restored once the Away Mode is turned off. diff --git a/source/_components/climate.oem.markdown b/source/_components/climate.oem.markdown index 2b7b40122954..1f07cf6bd58d 100644 --- a/source/_components/climate.oem.markdown +++ b/source/_components/climate.oem.markdown @@ -13,7 +13,7 @@ ha_release: 0.39 ha_iot_class: "Local Polling" --- -This platform supports the ESP82666 based "WiFi MQTT Relay / Thermostat" sold by [OpenEnergyMonitor](https://shop.openenergymonitor.com/wifi-mqtt-relay-thermostat/). The underlying [library](http://oemthermostat.readthedocs.io/) only supports this single relay variant of the [original device](https://harizanov.com/2014/12/wifi-iot-3-channel-relay-board-with-mqtt-and-http-api-using-esp8266/). +This platform supports the ESP8266 based "WiFi MQTT Relay / Thermostat" sold by [OpenEnergyMonitor](https://shop.openenergymonitor.com/wifi-mqtt-relay-thermostat/). The underlying [library](http://oemthermostat.readthedocs.io/) only supports this single relay variant of the [original device](https://harizanov.com/2014/12/wifi-iot-3-channel-relay-board-with-mqtt-and-http-api-using-esp8266/). This platform controls the setpoint of the thermostat in its "manual" mode, therefore there is a configuration option the away setpoint. diff --git a/source/_components/device_tracker.mqtt_json.markdown b/source/_components/device_tracker.mqtt_json.markdown index a6cbc50b8769..cc0e4783ec39 100644 --- a/source/_components/device_tracker.mqtt_json.markdown +++ b/source/_components/device_tracker.mqtt_json.markdown @@ -9,11 +9,10 @@ sharing: true footer: true logo: mqtt.png ha_category: Presence Detection -ha_version: 0.44 ha_iot_class: depends +ha_release: 0.44 --- - The `mqtt_json` device tracker platform allows you to detect presence by monitoring an MQTT topic for new locations. To use this platform, you specify a unique topic for each device. To use this device tracker in your installation, add the following to your `configuration.yaml` file: @@ -27,10 +26,16 @@ device_tracker: annetherese_n4: location/annetherese ``` -Configuration variables: - -- **devices** (*Required*): List of devices with their topic. -- **qos** (*Optional*): The QoS level of the topic. +{% configuration %} +devices: + description: List of devices with their topic. + required: true + type: list +qos: + description: The QoS level of the topic. + required: false + type: string +{% endconfiguration %} This platform receives JSON formatted payloads containing GPS information, for example: diff --git a/source/_components/device_tracker.xiaomi_miio.markdown b/source/_components/device_tracker.xiaomi_miio.markdown index ae604043937d..54f4cf9d5dee 100644 --- a/source/_components/device_tracker.xiaomi_miio.markdown +++ b/source/_components/device_tracker.xiaomi_miio.markdown @@ -9,8 +9,8 @@ sharing: true footer: true logo: xiaomi.png ha_category: Presence Detection -ha_version: 0.67 ha_iot_class: "Local Polling" +ha_release: 0.67 --- The `xiaomi_miio` device tracker platform is observing your Xiaomi Mi WiFi Repeater 2 and reporting all associated WiFi clients. diff --git a/source/_components/dominos.markdown b/source/_components/dominos.markdown index d6849d738fa7..4f1d16189159 100644 --- a/source/_components/dominos.markdown +++ b/source/_components/dominos.markdown @@ -9,8 +9,8 @@ sharing: true footer: true logo: dominos.png ha_category: Other -ha_version: 0.59 ha_iot_class: "Cloud Polling" +ha_release: 0.59 --- The `dominos` component allows you to order Dominos Pizza from within your Home Assistant scripts and automations. diff --git a/source/_components/fan.insteon_hub.markdown b/source/_components/fan.insteon_hub.markdown deleted file mode 100644 index 0436d4bddee3..000000000000 --- a/source/_components/fan.insteon_hub.markdown +++ /dev/null @@ -1,17 +0,0 @@ ---- -layout: page -title: "Insteon Hub Fan" -description: "Instructions on how to setup the Insteon Hub Fans within Home Assistant." -date: 2017-08-26 08:00 -sidebar: true -comments: false -sharing: true -footer: true -logo: insteon.png -ha_category: Fan -ha_release: "0.30" ---- - -The `insteon_hub` fan component lets you control your fans connected to an [Insteon Hub](http://www.insteon.com/insteon-hub/) with Home Assistant. - -To get your Insteon Hub fan working with Home Assistant, follow the instructions for the general [Insteon Hub component](/components/insteon_hub/). diff --git a/source/_components/fan.insteon_local.markdown b/source/_components/fan.insteon_local.markdown index d9738043c9a8..69a2249ff9ad 100644 --- a/source/_components/fan.insteon_local.markdown +++ b/source/_components/fan.insteon_local.markdown @@ -1,6 +1,6 @@ --- layout: page -title: "Insteon (Local) Fan" +title: "Insteon (local) Fan" description: "Instructions on how to setup the Insteon Hub Fans locally within Home Assistant." date: 2017-04-06 11:00 sidebar: true @@ -9,9 +9,10 @@ sharing: true footer: true logo: insteon.png ha_category: Fan -ha_version: 0.48 +ha_release: 0.48 +redirect_from: /components/fan.insteon_hub/ --- -The `insteon_local` fan component lets you control your fan connected to an [Insteon Hub](http://www.insteon.com/insteon-hub/) with Home Assistant. +The `insteon_local` fan component lets you control your fans connected to an [Insteon Hub](http://www.insteon.com/insteon-hub/) with Home Assistant. -To get your insteon fans working with Home Assistant, follow the instructions for the general [Insteon local component](/components/insteon_local/). The fans will be automatically disovered and added to Home Assistant. The device names will be the Insteon address of the fans. +To get your Insteon fans working with Home Assistant, follow the instructions for the general [Insteon local component](/components/insteon_local/). The fans will be automatically discovered and added to Home Assistant. The device names will be the Insteon address of the fans. diff --git a/source/_components/fan.insteon_plm.markdown b/source/_components/fan.insteon_plm.markdown index 3f2323e16ebf..0c4478778e3f 100644 --- a/source/_components/fan.insteon_plm.markdown +++ b/source/_components/fan.insteon_plm.markdown @@ -1,7 +1,7 @@ --- layout: page title: "Insteon PLM Fan" -description: "Instructions on how to setup the Insteon PLM fan locally within Home Assistant." +description: "Instructions on how to setup the Insteon PLM Fans locally within Home Assistant." date: 2017-02-19 17:00 sidebar: true comments: false @@ -10,15 +10,7 @@ footer: true logo: insteon.png ha_category: Fan ha_iot_class: "Local Push" -ha_version: 0.65 +ha_release: 0.65 --- -The `insteon_plm` fan platform lets you control your [FanLinc] through -an INSTEON PowerLinc Modem (PLM) device connected directly to your system on a -USB or serial port. To add support, set up the primary [insteon_plm] -component. - -[insteon_plm]: /components/insteon_plm/ -[FanLinc]: https://www.smarthome.com/fanlinc-insteon-2475f-ceiling-fan-and-light-controller-fixture-module-dual-band.html - - +The `insteon_plm` fan platform lets you control your [FanLinc](https://www.smarthome.com/fanlinc-insteon-2475f-ceiling-fan-and-light-controller-fixture-module-dual-band.html) through an INSTEON PowerLinc Modem (PLM) device connected directly to your system on a USB or serial port. To add support, set up the primary [insteon_plm](/components/insteon_plm/) component. diff --git a/source/_components/fan.xiaomi_miio.markdown b/source/_components/fan.xiaomi_miio.markdown index e6e1408e27a7..de4a07316dab 100644 --- a/source/_components/fan.xiaomi_miio.markdown +++ b/source/_components/fan.xiaomi_miio.markdown @@ -9,8 +9,8 @@ sharing: true footer: true logo: xiaomi.png ha_category: Fan -ha_version: 0.57 ha_iot_class: "Local Polling" +ha_release: 0.57 --- The `xiaomi_miio` fan platform allows you to control the Xiaomi Air Purifier and Xiaomi Air Humidifier. @@ -181,20 +181,20 @@ fan: {% configuration %} host: - description: The IP address of your fan. + description: The IP address of your miio fan. required: true type: string token: - description: The API token of your fan. + description: The API token of your miio fan. required: true type: string name: - description: The name of your fan. + description: The name of your miio fan. required: false type: string default: Xiaomi Air Purifier model: - description: The model of your device. + description: The model of your miio fan. Valid values are `zhimi.airpurifier.v6`, `zhimi.airpurifier.v3`, `zhimi.humidifier.v1` and `zhimi.humidifier.ca1`. This setting can be used to bypass the device model detection and is recommended if your device isn't always available. required: false type: string {% endconfiguration %} diff --git a/source/_components/goalfeed.markdown b/source/_components/goalfeed.markdown index 5632a8847d72..474e8a0351fb 100644 --- a/source/_components/goalfeed.markdown +++ b/source/_components/goalfeed.markdown @@ -9,7 +9,7 @@ sharing: true footer: true logo: goalfeed.png ha_category: Other -ha_version: 0.63 +ha_release: 0.63 --- The `goalfeed` component lets you use your Goalfeed account to trigger events in Home Assistant whenever a NHL or MLB team scores. diff --git a/source/_components/image_processing.microsoft_face_identify.markdown b/source/_components/image_processing.microsoft_face_identify.markdown index eb6d0a110fdb..7f0de67938f2 100644 --- a/source/_components/image_processing.microsoft_face_identify.markdown +++ b/source/_components/image_processing.microsoft_face_identify.markdown @@ -24,10 +24,10 @@ For using the result inside an automation rule, take a look at the [component](/ ```yaml # Example configuration.yaml entry image_processing: - - platform: microsoft_face_identify - group: family - source: - - entity_id: camera.door + - platform: microsoft_face_identify + group: family + source: + - entity_id: camera.door ``` Configuration variables: diff --git a/source/_components/input_number.markdown b/source/_components/input_number.markdown index aadbd391509c..9f7f65ed9564 100644 --- a/source/_components/input_number.markdown +++ b/source/_components/input_number.markdown @@ -194,3 +194,38 @@ automation: payload: "{{ states('input_number.target_temp') | int }}" ``` {% endraw %} + +Here's an example of `input_number` being used as a delay in an automation. + +{% raw %} +```yaml +# Example configuration.yaml entry using 'input_number' as a delay in an automation +input_number: + minutes: + name: minutes + icon: mdi:clock-start + initial: 3 + min: 0 + max: 6 + step: 1 + + seconds: + name: seconds + icon: mdi:clock-start + initial: 30 + min: 0 + max: 60 + step: 10 + +automation: + - alias: turn something off after x time after turning it on + trigger: + platform: state + entity_id: switch.something + to: 'on' + action: + - delay: '00:{{ states.input_number.minutes.state | int }}:{{ states.input_number.seconds.state | int }}' + - service: switch.turn_off + entity_id: switch.something +``` +{% endraw %} diff --git a/source/_components/insteon_hub.markdown b/source/_components/insteon_hub.markdown deleted file mode 100644 index 5c9813bc5ca5..000000000000 --- a/source/_components/insteon_hub.markdown +++ /dev/null @@ -1,37 +0,0 @@ ---- -layout: page -title: "Insteon Hub" -description: "Instructions on how to setup the Insteon Hub within Home Assistant." -date: 2016-01-27 08:00 -sidebar: true -comments: false -sharing: true -footer: true -logo: insteon.png -ha_category: Hub -ha_iot_class: "Cloud Polling" ---- - -

-This component has been disabled due to a complaint by Insteon. It will be enabled again once this issue has been resolved. -

- -The `insteon` component lets you use your [Insteon Hub](http://www.insteon.com/insteon-hub/) with Home Assistant. - -You will need to obtain an Insteon REST API key from the [Insteon Developer program](http://www.insteon.com/become-an-insteon-developer) to use this component. - -To integrate your Insteon Hub with Home Assistant, add the following section to your `configuration.yaml` file: - -```yaml -# Example configuration.yaml entry -insteon_hub: - username: YOUR_USERNAME - password: YOUR_PASSWORD - api_key: YOUR_API_KEY -``` - -Configuration variables: - -- **username** (*Required*): The username used to access the Insteon interface (e.g., the [connect.insteon.com](http://connect.insteon.com/) site). -- **password** (*Required*): The password used to access the Insteon interface. -- **api_key** (*Required*): The Insteon REST API key emailed to you once you are approved in the Insteon Developer program. diff --git a/source/_components/insteon_local.markdown b/source/_components/insteon_local.markdown index 40ed93c1d567..b4b534aabd9f 100644 --- a/source/_components/insteon_local.markdown +++ b/source/_components/insteon_local.markdown @@ -10,38 +10,53 @@ footer: true logo: insteon.png ha_category: Hub ha_iot_class: "Local Polling" -ha_version: 0.36 +ha_release: 0.36 +redirect_from: /components/insteon_hub/ --- The `insteon_local` component let you use your [Insteon Hub](http://www.insteon.com/insteon-hub/) with Home Assistant. -To integrate your Insteon local setup with Home Assistant, add the following section to your `configuration.yaml` file: +## {% linkable_title Configuration %} + +To integrate your Insteon Hub (local setup) with Home Assistant, add the following to your `configuration.yaml` file: ```yaml # Example configuration.yaml platform entry insteon_local: - host: YOUR HUB IP - username: YOUR HUB USERNAME - password: YOUR HUB PASSWORD + host: YOUR_HUB_IP + username: YOUR_HUB_USERNAME + password: YOUR_HUB_PASSWORD ``` -Configuration variables: -*Note: The username and password here are for the hub and are different than the ones used to access the app. You can usually find these on the bottom of your hub (unless you've changed them through the settings in the app)* -- **host** (*Required*): The IP address of your hub. -- **username** (*Required*): The username used to access the Insteon interface (find in your Insteon app). -- **password** (*Required*): The password used to access the Insteon interface. -- **timeout** (*Optional*): Timeout to wait for connections. Defaults to 10 seconds. -- **port** (*Optional*): The port your hub is configured to listen to. Defaults to `25105`. +{% configuration %} +host: + description: The IP address of your hub. + required: true + type: string +username: + description: The username used to access the Insteon interface (find in your Insteon app). + required: true + type: string +password: + description: The password used to access the Insteon interface. + required: true + type: string +timeout: + description: Timeout to wait for connections. + required: false + type: time + default: 10 seconds +port: + description: The port your hub is configured to listen to. + required: false + type: string + default: 25105 +{% endconfiguration %} -### {% linkable_title Full configuration %} +*Note: The username and password here are for the hub and are different than the ones used to access the app. You can usually find these on the bottom of your hub (unless you've changed them through the settings in the app)* The `insteon_local` component currently supports lights (dimmers), switches and fans. -```yaml -insteon_local: - host: YOUR HUB IP - username: YOUR HUB USERNAME - password: YOUR HUB PASSWORD - timeout: 10 - port: 25105 -``` +

+This component replaces the old `insteon_hub` component, which has been removed due to a complaint by Insteon. +

diff --git a/source/_components/insteon_plm.markdown b/source/_components/insteon_plm.markdown index 53ac57459832..52f7b93530c3 100644 --- a/source/_components/insteon_plm.markdown +++ b/source/_components/insteon_plm.markdown @@ -10,22 +10,17 @@ footer: true logo: insteon.png ha_category: Hub ha_iot_class: "Local Push" -ha_version: 0.39 +ha_release: 0.39 --- -This component adds "local push" support for INSTEON PowerLinc Modems allowing -linked INSTEON devices to be used within Home Assistant as lights, switches, -and binary sensors. Device support is provided by the underlying [insteonplm] -package. It is known to work with the [2413U] USB and [2412S] RS242 flavors -of PLM and the [2448A7] USB stick. This component does not work with the -IP-based hub products. For that, you'll want the "Insteon (Local)" component -instead. +This component adds "local push" support for INSTEON PowerLinc Modems allowing linked INSTEON devices to be used within Home Assistant as lights, switches, and binary sensors. Device support is provided by the underlying [insteonplm] package. It is known to work with the [2413U] USB and [2412S] RS242 flavors of PLM and the [2448A7] USB stick. This component does not work with the IP-based hub products. For that, you'll want the [Insteon local component](/components/insteon_local/) instead. [insteonplm]: https://github.com/nugget/python-insteonplm [2413U]: https://www.insteon.com/powerlinc-modem-usb [2412S]: https://www.insteon.com/powerlinc-modem-serial [2448A7]: https://www.smarthome.com/insteon-2448a7-portable-usb-adapter.html +## {% linkable_title Configuration %} ```yaml # insteon_plm supported configuration variables @@ -46,78 +41,78 @@ insteon_plm: x10_all_lights_on: HOUSECODE x10_all_lights_off: HOUSECODE ``` -Configuration variables: -- **port** (*Required*): The port for your device, e.g., `/dev/ttyUSB0` -- **device_override** (*Optional*): Override the default device definition - - *ADDRESS* is found on the device itself in the form 1A.2B.3C or 1a2b3c - - *CATEGORY* is found in the back of the device's User Guide in the form of - 0x00 - 0xff - - *SUBCATEGORY* is found in the back of the device's User Guide in the form - of 0x00 - 0xff - - *FIRMWARE* and *PRODUCT_KEY* are more advanced options and will typically - not be used. -- **x10_devices** (*Optional*): Define X10 devices to control or respond to - - *HOUSECODE* is the X10 housecode values a - p - - *UNITCODE* is the X10 unit code values 1 - 16 - - *PLATFORM* is the Home Assistant Platform to associate the device with. - The following platforms are supported - - binary_sensor: Used for on/off devices or keypad buttons that are read only. - - light: Used for dimmable X10 devices - - switch: Used for On/Off X10 devices - - *STEPS* is the number of dim/bright steps the device supports. Used for - dimmable X10 devices only. Default value is 22. -- **x10_all_units_off** (*Optional*): Creates an binary_sensor that responds - to the X10 standard command for All Units Off. -- **x10_all_lights_on** (*Optional*): Creates an binary_sensor that responds - to the X10 standard command for All Lights On -- **x10_all_lights_off** (*Optional*): Creates an binary_sensor that responds - to the X10 standard command for All Lights Off + +{% configuration %} +port: + description: The port for your device, e.g., `/dev/ttyUSB0` + required: true + type: string +device_override: + description: Override the default device definition + required: false + type: list + keys: + ADDRESS: + description: is found on the device itself in the form 1A.2B.3C or 1a2b3c + CATEGORY: + description: is found in the back of the device's User Guide in the form of 0x00 - 0xff + SUBCATEGORY: + description: is found in the back of the device's User Guide in the form of 0x00 - 0xff + FIRMWARE: + description: is a more advanced option and will typically not be used. + PRODUCT_KEY: + description: is a more advanced option and will typically not be used. +x10_devices: + description: Define X10 devices to control or respond to + required: false + type: list + keys: + HOUSECODE: + description: is the X10 housecode values a - p + UNITCODE: + description: is the X10 unit code values 1 - 16 + PLATFORM: + description: is the Home Assistant Platform to associate the device with. Choose one of the following supported platforms. + type: string + keys: + binary_sensor: + description: Used for on/off devices or keypad buttons that are read only. + light: + description: Used for dimmable X10 devices + switch: + description: Used for On/Off X10 devices + STEPS: + description: is the number of dim/bright steps the device supports. Used for dimmable X10 devices only. + default: 22 +x10_all_units_off: + description: Creates an binary_sensor that responds to the X10 standard command for All Units Off. + required: false +x10_all_lights_on: + description: Creates an binary_sensor that responds to the X10 standard command for All Lights On + required: false +x10_all_lights_off: + description: Creates an binary_sensor that responds to the X10 standard command for All Lights Off + required: false +{% endconfiguration %} ### {% linkable_title Autodiscovery %} -The first time autodiscovery runs, the duration may require up to 20 seconds -per device. Subsequent startups will occur much quicker using cached device -information. If a device is not recognized during autodiscovery, you can add -the device to the **device_override** configuration. +The first time autodiscovery runs, the duration may require up to 20 seconds per device. Subsequent startups will occur much quicker using cached device information. If a device is not recognized during autodiscovery, you can add the device to the **device_override** configuration. -In order for a device to be discovered it must be linked to the PLM as either -a responder or a controller. +In order for a device to be discovered it must be linked to the PLM as either a responder or a controller. ### {% linkable_title Linking Devices to the PLM %} -In order for any two Insteon devices to talk with one another, they must be -linked. For an overview of device linking please read the Insteon page on -[understanding linking]. The Insteon PLM module supports All-Linking through -[Development Tools] service calls. The following services are available: - -In order for any two Insteon devices to talk with one another, they must be -linked. For an overview of device linking, please read the Insteon page on -[understanding linking]. The Insteon PLM module supports All-Linking through -[Development Tools] service calls. The following services are available: -- **insteon_plm.add_all_link**: Tells the Insteon Modem (IM) start All-Linking -mode. Once the IM is in All-Linking mode, press the link button on the device -to complete All-Linking. -- **insteon_plm.delete_all_link**: Tells the Insteon Modem (IM) to remove an -All-Link record from the All-Link Database of the IM and a device. Once the IM -is set to delete the link, press the link button on the corresponding device -to complete the process. -- **insteon_plm.load_all_link_database**: Load the All-Link Database for a -device. WARNING - Loading a device All-Link database is very time consuming -and inconsistent. This may take a LONG time and may need to be repeated to -obtain all records. -- **insteon_plm.print_all_link_database**: Print the All-Link Database for a -device. Requires that the All-Link Database is loaded into memory. -- **insteon_plm.print_im_all_link_database**: Print the All-Link Database for -the INSTEON Modem (IM). - -If you are looking for more advanced options, you can use the -[insteonplm_interactive] command line tool that is distributed with the -[insteonplm] Python module. Please see the documentation on the [insteonplm] -GitHub site. Alternatively, you can download [HouseLinc] which runs on any -Windows PC, or you can use [Insteon Terminal] which is open source and runs -on most platforms. SmartHome no longer supports HouseLinc, but it still -works. Insteon Terminal is a very useful tool but please read the disclaimers -carefully, they are important. +In order for any two Insteon devices to talk with one another, they must be linked. For an overview of device linking, please read the Insteon page on [understanding linking]. The Insteon PLM module supports All-Linking through [Development Tools] service calls. The following services are available: + +- **insteon_plm.add_all_link**: Tells the Insteon Modem (IM) start All-Linking mode. Once the IM is in All-Linking mode, press the link button on the device to complete All-Linking. +- **insteon_plm.delete_all_link**: Tells the Insteon Modem (IM) to remove an All-Link record from the All-Link Database of the IM and a device. Once the IM is set to delete the link, press the link button on the corresponding device to complete the process. +- **insteon_plm.load_all_link_database**: Load the All-Link Database for a device. WARNING - Loading a device All-Link database is very time consuming and inconsistent. This may take a LONG time and may need to be repeated to obtain all records. +- **insteon_plm.print_all_link_database**: Print the All-Link Database for a device. Requires that the All-Link Database is loaded into memory. +- **insteon_plm.print_im_all_link_database**: Print the All-Link Database for the INSTEON Modem (IM). + +If you are looking for more advanced options, you can use the [insteonplm_interactive] command line tool that is distributed with the +[insteonplm] Python module. Please see the documentation on the [insteonplm] GitHub site. Alternatively, you can download [HouseLinc] which runs on any Windows PC, or you can use [Insteon Terminal] which is open source and runs on most platforms. SmartHome no longer supports HouseLinc, but it still works. Insteon Terminal is a very useful tool but please read the disclaimers carefully, they are important. [understanding linking]: http://www.insteon.com/support-knowledgebase/2015/1/28/understanding-linking [Development Tools]: https://www.home-assistant.io/docs/tools/dev-tools/ @@ -127,31 +122,15 @@ carefully, they are important. ### {% linkable_title Customization %} -The only configuration item that is absolutely necessary is the port so that -Home Assistant can connect to the PLM. This will expose all the supported -INSTEON devices which exist in the modem’s ALL-Link database. However, devices -will only be shown by their INSTEON hex address (e.g., “1A.2B.3C”) which can -be a bit unwieldy. As you link and unlink devices using the ‘Set’ buttons, -they’ll be added and removed from Home Assistant automatically. - -You can use the normal Home Assistant [device customization] section of your -configuration to assign friendly names and special icons to your devices. This -is especially useful for setting device_class on your binary_sensor INSTEON -devices. +The only configuration item that is absolutely necessary is the port so that Home Assistant can connect to the PLM. This will expose all the supported INSTEON devices which exist in the modem’s ALL-Link database. However, devices will only be shown by their INSTEON hex address (e.g., “1A.2B.3C”) which can be a bit unwieldy. As you link and unlink devices using the ‘Set’ buttons, they’ll be added and removed from Home Assistant automatically. -[device customization]: /getting-started/customizing-devices/ +You can use the normal Home Assistant [device customization](/getting-started/customizing-devices/) section of your configuration to assign friendly names and special icons to your devices. This is especially useful for setting device_class on your binary_sensor INSTEON devices. ### {% linkable_title Device Overrides %} -INSTEON devices are added to Home Assistant using the platform(s) that make the -most sense given the model and features of the hardware. The features of the -INSTEON device are built into the Home Assistant platform. Changing the -platform is not recommended. There are two primary uses for the -**device_override** feature. -- Devices that do not respond during autodiscovery. This is common for battery - operated devices. -- Devices that have not been fully developed. This allows an unknown device to - be mapped to a device that operates similarly to another device. +INSTEON devices are added to Home Assistant using the platform(s) that make the most sense given the model and features of the hardware. The features of the INSTEON device are built into the Home Assistant platform. Changing the platform is not recommended. There are two primary uses for the **device_override** feature. +- Devices that do not respond during autodiscovery. This is common for battery operated devices. +- Devices that have not been fully developed. This allows an unknown device to be mapped to a device that operates similarly to another device. ### {% linkable_title Example Configuration with Options%} @@ -176,10 +155,7 @@ insteon_plm: ### {% linkable_title What NOT to do %} -Insteon PLM is a top level component and device discovery will identify -the Home Assistant platform the device belongs in. As such, do not -declare Insteon devices in other platforms. For example, this configuration -will NOT work: +Insteon PLM is a top level component and device discovery will identify the Home Assistant platform the device belongs in. As such, do not declare Insteon devices in other platforms. For example, this configuration will NOT work: ```yaml light: diff --git a/source/_components/light.insteon_hub.markdown b/source/_components/light.insteon_hub.markdown deleted file mode 100644 index f581706b92c2..000000000000 --- a/source/_components/light.insteon_hub.markdown +++ /dev/null @@ -1,18 +0,0 @@ ---- -layout: page -title: "Insteon Hub Light" -description: "Instructions on how to setup the Insteon Hub Lights within Home Assistant." -date: 2016-09-10 08:00 -sidebar: true -comments: false -sharing: true -footer: true -logo: insteon.png -ha_category: Light -ha_release: 0.21 -ha_iot_class: "Local Push" ---- - -The `insteon_hub` light component lets you control your lights connected to an [Insteon Hub](http://www.insteon.com/insteon-hub/) with Home Assistant. - -To get your Insteon Hub fan working with Home Assistant, follow the instructions for the general [Insteon Hub component](/components/insteon_hub/). diff --git a/source/_components/light.insteon_local.markdown b/source/_components/light.insteon_local.markdown index b9aacb3250f1..818e450eb90d 100644 --- a/source/_components/light.insteon_local.markdown +++ b/source/_components/light.insteon_local.markdown @@ -1,6 +1,6 @@ --- layout: page -title: "Insteon (Local) Light" +title: "Insteon (local) Light" description: "Instructions on how to setup the Insteon Hub Lights locally within Home Assistant." date: 2016-12-18 08:00 sidebar: true @@ -9,10 +9,11 @@ sharing: true footer: true logo: insteon.png ha_category: Light -ha_version: 0.36 ha_iot_class: "Local Push" +ha_release: 0.36 +redirect_from: /components/light.insteon_hub/ --- The `insteon_local` light component lets you control your lights connected to an [Insteon Hub](http://www.insteon.com/insteon-hub/) with Home Assistant. -To get your insteon lights working with Home Assistant, follow the instructions for the general [Insteon local component](/components/insteon_local/). The lights will be automatically disovered and added to Home Assistant. The device names will be the Insteon address of the lights. +To get your Insteon lights working with Home Assistant, follow the instructions for the general [Insteon local component] (/components/insteon_local/). The lights will be automatically discovered and added to Home Assistant. The device names will be the Insteon address of the lights. diff --git a/source/_components/light.insteon_plm.markdown b/source/_components/light.insteon_plm.markdown index 65026cf57611..40561bdd914b 100644 --- a/source/_components/light.insteon_plm.markdown +++ b/source/_components/light.insteon_plm.markdown @@ -1,7 +1,7 @@ --- layout: page title: "Insteon PLM Light" -description: "Instructions on how to setup Insteon PLM lights locally within Home Assistant." +description: "Instructions on how to setup the Insteon PLM Lights locally within Home Assistant." date: 2017-02-19 17:00 sidebar: true comments: false @@ -10,8 +10,7 @@ footer: true logo: insteon.png ha_category: Light ha_iot_class: "Local Push" -ha_version: 0.39 +ha_release: 0.39 --- The `insteon_plm` light platform lets you control your dimmable light switches through an INSTEON PowerLinc Modem (PLM) device connected directly to your system on an USB or serial port. To add support, set up the primary [insteon_plm](/components/insteon_plm/) component. - diff --git a/source/_components/light.sensehat.markdown b/source/_components/light.sensehat.markdown index 55e09b121949..7c7a4d0b378c 100644 --- a/source/_components/light.sensehat.markdown +++ b/source/_components/light.sensehat.markdown @@ -8,9 +8,9 @@ comments: false sharing: true footer: true logo: sense-hat.png -ha_version: 0.44 ha_category: Light ha_iot_class: "Assumed State" +ha_release: 0.44 --- The `sensehat` light platform lets you control the [Sense HAT](https://www.raspberrypi.org/products/sense-hat/) board's 8x8 RGB LED matrix on your Raspberry Pi from within Home Assistant. diff --git a/source/_components/light.xiaomi_miio.markdown b/source/_components/light.xiaomi_miio.markdown index 991ff8c97fa1..4597bc7f8fa4 100644 --- a/source/_components/light.xiaomi_miio.markdown +++ b/source/_components/light.xiaomi_miio.markdown @@ -9,8 +9,8 @@ sharing: true footer: true logo: philips.png ha_category: Light -ha_version: 0.53 ha_iot_class: "Local Polling" +ha_release: 0.53 --- The `xiaomi_miio` platform allows you to control the state of your Xiaomi Philips LED Ball Lamp, Xiaomi Philips Zhirui LED Bulb E14 Candle Lamp, Xiaomi Philips LED Ceiling Lamp and Xiaomi Philips Eyecare Lamp 2. @@ -76,28 +76,22 @@ light: model: philips.light.bulb ``` -Configuration variables: -- **host** (*Required*): The IP of your light. -- **token** (*Required*): The API token of your light. -- **name** (*Optional*): The name of your light. -- **model** (*Optional*): The model of your light. Valid values are `philips.light.bulb`, `philips.light.candle2`, `philips.light.sread1`, `philips.light.ceiling` and `philips.light.zyceiling`. This setting can be used to bypass the device model detection and is recommended if your device isn't always available. - {% configuration %} host: - description: The IP address of your device. + description: The IP address of your miio light. required: true type: string token: - description: The API token of your device. + description: The API token of your miio light. required: true type: string name: - description: The name of your device. + description: The name of your miio light. required: false type: string default: Xiaomi Philips Light model: - description: The model of your device. + description: The model of your miio light. Valid values are `philips.light.bulb`, `philips.light.candle2`, `philips.light.sread1`, `philips.light.ceiling` and `philips.light.zyceiling`. This setting can be used to bypass the device model detection and is recommended if your device isn't always available. required: false type: string {% endconfiguration %} diff --git a/source/_components/mailbox.asterisk_mbox.markdown b/source/_components/mailbox.asterisk_mbox.markdown index 15d5ec455f73..07e50d287c15 100644 --- a/source/_components/mailbox.asterisk_mbox.markdown +++ b/source/_components/mailbox.asterisk_mbox.markdown @@ -9,8 +9,7 @@ sharing: true footer: true logo: asterisk.png ha_category: Mailbox -ha_version: 0.51 +ha_release: 0.51 --- The Asterisk Voicemail Mailbox provides visual and audio access to voicemail on the Asterisk PBX server. This mailbox is enabled automatically through the [Asterisk Voicemail component](/components/asterisk_mbox/) configuration. - diff --git a/source/_components/mailbox.markdown b/source/_components/mailbox.markdown index 16bfa603b8d3..c6d270fdad99 100644 --- a/source/_components/mailbox.markdown +++ b/source/_components/mailbox.markdown @@ -6,13 +6,12 @@ date: 2017-06-30 18:30 sidebar: true comments: false sharing: true -ha_version: 0.51 footer: true +ha_release: 0.51 --- -Mailboxes provide a list of messages with short information about each. Mailbox messages appear on a separate panel in the frontend. +Mailboxes provide a list of messages with short information about each. Mailbox messages appear on a separate panel in the frontend. Home Assistant currently supports only the [Asterisk Voicemail](/component/mailbox.asterisk_mbox) mailbox. Each mailbox also provides an entity to indicate the number of messages available on the main page. - diff --git a/source/_components/matrix.markdown b/source/_components/matrix.markdown index b6e9e9814b91..75bd6da0e6af 100644 --- a/source/_components/matrix.markdown +++ b/source/_components/matrix.markdown @@ -9,7 +9,7 @@ sharing: true footer: true logo: matrix.png ha_category: Hub -ha_version: 0.69 +ha_release: 0.69 --- This component allows you to send messages to matrix rooms, as well as to react to messages in matrix rooms. Reacting to commands is accomplished by firing an event when one of the configured commands is triggered. diff --git a/source/_components/media_player.samsungtv.markdown b/source/_components/media_player.samsungtv.markdown index 49bda958e0a0..0994c7c1fbdf 100644 --- a/source/_components/media_player.samsungtv.markdown +++ b/source/_components/media_player.samsungtv.markdown @@ -57,6 +57,7 @@ Currently known supported models: - U6300 (port must be set to 8001, and `pip3 install websocket-client` must be executed) - K5579 (port must be set to 8001, On/Off, Forward/Backward, Volume control, but no Play button) - K6500AF (port must be set to 8001) +- KS7005 (port must be set to 8001, and `pip3 install websocket-client` must be executed, MAC address must be provided, On/Off, Volume are OK, no channel change) - KS8000 (port must be set to 8001, and `pip3 install websocket-client` must be executed) - KS8005 (port must be set to 8001, and `pip3 install websocket-client` must be executed) - KU6020 (port must be set to 8001, and `pip3 install websocket-client` must be executed) diff --git a/source/_components/media_player.webostv.markdown b/source/_components/media_player.webostv.markdown index 8a18623775cb..b045ccc518a5 100644 --- a/source/_components/media_player.webostv.markdown +++ b/source/_components/media_player.webostv.markdown @@ -40,7 +40,7 @@ Configuration variables: - **turn_on_action** (*Optional*): Defines an [action](/docs/automation/action/) to turn the TV on. - **name** (*Optional*): The name you would like to give to the LG webOS Smart TV. - **timeout** (*Optional*): The timeout for connections to the TV in seconds. -- **filename** (*Optional*): The filename where the pairing key with the TV should be stored. This path is relative to Home Assistant's config directory. It defaults to `webostv.conf`. +- **filename** (*Optional*): The filename where the pairing key with the TV should be stored. This path is relative to Home Assistant's config directory. It defaults to `webostv.conf`. **NOTE**: When using multiple TVs each TV will need its own unique file. - **customize** array (*Optional*): List of options to customize. - **sources** array (*Optional*): List of hardware and webOS App inputs. diff --git a/source/_components/neato.markdown b/source/_components/neato.markdown index 611bc77c00d7..43aca42701f3 100644 --- a/source/_components/neato.markdown +++ b/source/_components/neato.markdown @@ -12,7 +12,7 @@ ha_category: Hub ha_release: 0.33 --- -The `neato` component allows you to control your [Neato Botvac Connected](https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/botvac-connected/). +The `neato` component allows you to control your [Neato Botvac Connected Robots](https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/). To enable `neato` in your installation, add the following to your `configuration.yaml` file: diff --git a/source/_components/notify.telegram.markdown b/source/_components/notify.telegram.markdown index 534924105de8..077288efab28 100644 --- a/source/_components/notify.telegram.markdown +++ b/source/_components/notify.telegram.markdown @@ -99,7 +99,7 @@ action: service: notify.NOTIFIER_NAME data: title: '*Send a message*' - message: 'That's an example that _sends_ a *formatted* message with a custom inline keyboard.' + message: "That's an example that _sends_ a *formatted* message with a custom inline keyboard." data: inline_keyboard: - 'Task 1:/command1, Task 2:/command2' @@ -121,7 +121,7 @@ action: service: notify.NOTIFIER_NAME data: title: Send an images - message: That's an example that sends an image. + message: "That's an example that sends an image." data: photo: - url: http://192.168.1.28/camera.jpg @@ -164,7 +164,7 @@ action: service: notify.NOTIFIER_NAME data: title: Send a video - message: That's an example that sends a video. + message: "That's an example that sends a video." data: video: - url: http://192.168.1.28/camera.mp4 @@ -194,7 +194,7 @@ action: service: notify.NOTIFIER_NAME data: title: Send a document - message: That's an example that sends a document and a custom keyboard. + message: "That's an example that sends a document and a custom keyboard." data: document: file: /tmp/whatever.odf diff --git a/source/_components/prometheus.markdown b/source/_components/prometheus.markdown index d7bdeeb3aa24..42eddb459964 100644 --- a/source/_components/prometheus.markdown +++ b/source/_components/prometheus.markdown @@ -23,7 +23,7 @@ prometheus: Configuration variables: -- **namespace** (*Optional*): The "namespace" that will be assigned to all the Prometheus metrics. This is the prefix of the metric name. E.g., having `myhass` as the namespace will cause the device tracker metrics to be `myhass_device_tracker_state`, the switch metrics to be `myhass_switch_state` and so on. The default is to not add any prefix to the metrics name. +- **namespace** (*Optional*): The "namespace" that will be assigned to all the Prometheus metrics. This is the prefix of the metric name. E.g., having `myhass` as the namespace will cause the device tracker metrics to be `myhass_device_tracker_state`, the switch metrics to be `myhass_switch_state` and so on. The default is to not add any prefix to the metrics name. (available in version 0.73.0 and later) - **filter** (*Optional*): Filtering directives for the components which should be included or excluded from recording. - **exclude** (*Optional*): Excluded from recording. - **entities** (*Optional*): The list of entity ids to be excluded from recording. diff --git a/source/_components/recorder.markdown b/source/_components/recorder.markdown index ab75ddbdacba..8c8b5a4cbc04 100644 --- a/source/_components/recorder.markdown +++ b/source/_components/recorder.markdown @@ -119,7 +119,7 @@ recorder: - sensor.date ``` -If you only want to hide events from e.g., your history, take a look at the [`history` component](/components/history/). Same goes for logbook. But if you have privacy concerns about certain events or neither want them in history or logbook, you should use the `exclude`/`include` options of the `recorder` component, that they aren't even in your database. That way you can save storage and keep the database small by excluding certain often-logged events (like `sensor.last_boot`). +If you only want to hide events from e.g., your history, take a look at the [`history` component](/components/history/). Same goes for logbook. But if you have privacy concerns about certain events or neither want them in history or logbook, you should use the `exclude`/`include` options of the `recorder` component, that way they aren't even in your database. That way you can save storage and keep the database small by excluding certain often-logged events (like `sensor.last_boot`). ### {% linkable_title Service `purge` %} diff --git a/source/_components/rest_command.markdown b/source/_components/rest_command.markdown index 962d92e3c432..4e4ef8fb6f50 100644 --- a/source/_components/rest_command.markdown +++ b/source/_components/rest_command.markdown @@ -39,5 +39,48 @@ Configuration variables: - **timeout** (*Optional*): Timeout for requests. Defaults to 10 seconds. - **content_type** (*Optional*): Content type for the request. -The commands can be dynamic, using templates to insert values of other entities. -Service call support variables for template stuff. +## {% linkable_title Examples %} + +The commands can be dynamic, using templates to insert values of other entities. Service call support variables for doing things with templates. + +{% raw %} +```yaml +# Example configuration.yaml entry +rest_command: + my_request: + url: https://slack.com/api/users.profile.set + method: POST + headers: + authorization: !secret rest_headers_secret + accept: 'application/json, text/html' + payload: '{"profile":{"status_text": "{{ status }}","status_emoji": "{{ emoji }}"}}' + content_type: 'application/json; charset=utf-8' +``` +{% endraw %} + +In this example entry, you can see some simple [templates](/docs/configuration/templating/) in use for dynamic parameters. + +Call the new service from [developer tools](/docs/tools/dev-tools/) in the sidebar with some `data` like: + +```json +{ + "status":"My Status Goes Here", + "emoji":":plex:" +} +``` +Or in an example `automation` + +```yaml +automation: +- alias: 'Arrive at Work' + trigger: + platform: zone + entity_id: device_tracker.my_device + zone: zone.work + event: enter + action: + - service: rest_command.my_request + data: + status: "At Work" + emoji: ":calendar:" +``` diff --git a/source/_components/sensor.duke_energy.markdown b/source/_components/sensor.duke_energy.markdown index 35a14abd964f..1d1bb410d5e1 100644 --- a/source/_components/sensor.duke_energy.markdown +++ b/source/_components/sensor.duke_energy.markdown @@ -9,7 +9,7 @@ sharing: true footer: true logo: duke_energy.png ha_category: Sensor -ha_release: "0.73" +ha_release: "0.74" ha_iot_class: "Cloud Polling" --- diff --git a/source/_components/sensor.fixer.markdown b/source/_components/sensor.fixer.markdown index f02af8ef6b5e..6bb80331e0a3 100644 --- a/source/_components/sensor.fixer.markdown +++ b/source/_components/sensor.fixer.markdown @@ -16,7 +16,7 @@ ha_release: 0.23 The `fixer` sensor will show you the current exchange rate from [Fixer.io](http://fixer.io/) which is using data from the [European Central Bank (ECB)](https://www.ecb.europa.eu). -To get an overview about the available [currencies](http://api.fixer.io/latest). +To get an overview about the available [currencies](https://fixer.io/symbols). ## {% linkable_title Setup %} diff --git a/source/_components/sensor.fritzbox_callmonitor.markdown b/source/_components/sensor.fritzbox_callmonitor.markdown index dd57677a9ca2..6e50df044b19 100644 --- a/source/_components/sensor.fritzbox_callmonitor.markdown +++ b/source/_components/sensor.fritzbox_callmonitor.markdown @@ -17,10 +17,22 @@ ha_iot_class: "Local Polling" The `fritzbox_callmonitor` sensor monitors the call monitor exposed by [AVM Fritz!Box](http://avm.de/produkte/fritzbox/) routers on TCP port 1012. It will assume the values `idle`, `ringing`, `dialing` or `talking` with the phone numbers involved contained in the state attributes. It can also access the internal phone book of the router to look up the names corresponding to the phone numbers and store them in the state attributes. -## {% linkable_title Configuration %} +## {% linkable_title Prerequisites %} + +To build the package you have to install some dependencies first. + +```bash +$ sudo apt-get update +$ sudo apt-get install libxml2-dev libxslt-dev \ + python3-setuptools zlib1g-dev build-essential +``` + +## {% linkable_title Setup%} To activate the call monitor on your Fritz!Box, dial #96\*5\* from any phone connected to it. +## {% linkable_title Configuration %} + To use the Fritz!Box call monitor in your installation, add the following to your `configuration.yaml` file: ```yaml diff --git a/source/_components/sensor.geo_rss_events.markdown b/source/_components/sensor.geo_rss_events.markdown index 6679f4553236..9d73fe5f7b93 100644 --- a/source/_components/sensor.geo_rss_events.markdown +++ b/source/_components/sensor.geo_rss_events.markdown @@ -9,36 +9,27 @@ sharing: true footer: true logo: rss.png ha_category: Sensor -ha_version: 0.55 ha_iot_class: "Cloud Polling" +ha_release: 0.55 --- -The `geo_rss_events` sensor retrieves events from a GeoRSS feed and -shows information of those events filtered by distance to Home Assistant's -location and grouped by category. +The `geo_rss_events` sensor retrieves events from a GeoRSS feed and shows information of those events filtered by distance to Home Assistant's location and grouped by category. -This sensor is particularly useful if events occur unexpectedly in the -vicinity of the home while the GeoRSS feed also contains many events -representing distant unrelated entries. Typical examples are bush fires -alerts or earthquakes. +This sensor is particularly useful if events occur unexpectedly in the vicinity of the home while the GeoRSS feed also contains many events representing distant unrelated entries. Typical examples are bush fires alerts or earthquakes.

-The reference point for comparing the distance is defined by `latitude` -and `longitude` in the basic configuration. +The reference point for comparing the distance is defined by `latitude` and `longitude` in the basic configuration. -Only entries of the feed are considered that define a location as `point` -or `polygon` in *georss.org* format or as *WGS84 latitude/longitude*. +Only entries of the feed are considered that define a location as `point` or `polygon` in *georss.org* format or as *WGS84 latitude/longitude*. The data is updated every 5 minutes. ## {% linkable_title Configuration %} -To enable the GeoRSS events sensor, add the following lines to your -`configuration.yaml`. This is an example configuration showing bush fire -incidents from the NSW Rural Fire Service. +To enable the GeoRSS events sensor, add the following lines to your `configuration.yaml`. This is an example configuration showing bush fire incidents from the NSW Rural Fire Service. ```yaml # Example configuration.yaml entry @@ -53,13 +44,32 @@ sensor: - 'Advice' ``` -Configuration variables: - -- **url** (*Required*): Full URL of the GeoRSS feed. -- **name** (*Optional*): Name of the sensor used in generating the entity id. Default is 'Event Service'. -- **radius** (*Optional*): The distance in kilometers around the Home Assistant's coordinates in which events are considered. Default is: 20km. -- **categories** (*Optional*): List of event category names found in the GeoRSS feed. A separate sensor is created for each category defined. Default is to join events from all categories into an 'Any' category. -- **unit_of_measurement** (*Optional*): The type of events found in the GeoRSS feed. Default is 'Events'. +{% configuration %} +url: + description: Full URL of the GeoRSS feed. + required: true + type: string +name: + description: Name of the sensor used in generating the entity id. + required: false + type: string + default: Event Service +radius: + description: The distance in kilometers around the Home Assistant's coordinates in which events are considered. + required: false + type: string + default: 20km +categories: + description: List of event category names found in the GeoRSS feed. A separate sensor is created for each category defined. + required: false + type: list + default: Default is to join events from all categories into an 'Any' category. +unit_of_measurement: + description: The type of events found in the GeoRSS feed. + required: false + type: string + default: Events +{% endconfiguration %} ## {% linkable_title Example Feeds %} diff --git a/source/_components/sensor.insteon_plm.markdown b/source/_components/sensor.insteon_plm.markdown index 1974ea954047..d394cd05d820 100644 --- a/source/_components/sensor.insteon_plm.markdown +++ b/source/_components/sensor.insteon_plm.markdown @@ -10,13 +10,7 @@ footer: true logo: insteon.png ha_category: Sensor ha_iot_class: "Local Push" -ha_version: 0.65 +ha_release: 0.65 --- -The `insteon_plm` sensor platform lets you control your sensors through -an INSTEON PowerLinc Modem (PLM) device connected directly to your system on a -USB or serial port. To add support, set up the primary [insteon_plm] -component. - -[insteon_plm]: /components/insteon_plm/ - +The `insteon_plm` sensor platform lets you control your sensors through an INSTEON PowerLinc Modem (PLM) device connected directly to your system on a USB or serial port. To add support, set up the primary [insteon_plm](/components/insteon_plm/) component. diff --git a/source/_components/sensor.nut.markdown b/source/_components/sensor.nut.markdown index 278d1a7673ee..744002c0f089 100644 --- a/source/_components/sensor.nut.markdown +++ b/source/_components/sensor.nut.markdown @@ -9,8 +9,8 @@ sharing: true footer: true logo: nut.png ha_category: System Monitor -ha_version: 0.34 ha_iot_class: "Local Polling" +ha_release: 0.34 --- The `nut` sensor platform allows you to monitor a UPS (battery backup) by using data from a [NUT](http://networkupstools.org/) (Network UPS Tools) server. diff --git a/source/_components/sensor.postnl.markdown b/source/_components/sensor.postnl.markdown index 29a193a3416e..3fa412302392 100644 --- a/source/_components/sensor.postnl.markdown +++ b/source/_components/sensor.postnl.markdown @@ -45,5 +45,5 @@ password: {% endconfiguration %}

-This component is not affiliated with PostNL and retrieves date from the endpoints of the mobile application. Use at your own risk. +This component is not affiliated with PostNL and retrieves data from the endpoints of the mobile application. Use at your own risk.

diff --git a/source/_components/sensor.waqi.markdown b/source/_components/sensor.waqi.markdown index a3fd05aab8d9..163ce64ee68e 100644 --- a/source/_components/sensor.waqi.markdown +++ b/source/_components/sensor.waqi.markdown @@ -27,7 +27,7 @@ sensor: locations: - beijing stations: - - Beijing US Embassy + - Beijing US Embassy, Beijing ``` Configuration variables: diff --git a/source/_components/sensor.xiaomi_miio.markdown b/source/_components/sensor.xiaomi_miio.markdown index d67aa622baf6..26e1a4293b99 100644 --- a/source/_components/sensor.xiaomi_miio.markdown +++ b/source/_components/sensor.xiaomi_miio.markdown @@ -9,8 +9,8 @@ sharing: true footer: true logo: xiaomi.png ha_category: Sensor -ha_version: 0.66 ha_iot_class: "Local Polling" +ha_release: 0.66 --- The `xiaomi_miio` sensor platform is observing your Xiaomi Mi Air Quality Monitor (PM2.5) and reporting the air quality index. diff --git a/source/_components/snips.markdown b/source/_components/snips.markdown index fd1259706157..825dbf19d535 100644 --- a/source/_components/snips.markdown +++ b/source/_components/snips.markdown @@ -77,7 +77,7 @@ Note: if you already have an assistant installed and wish to replace it, start b ### {% linkable_title Running Snips %} -Make sure that a microphone is plugged to the Raspberry Pi. If you are having trouble setting up audio, we have written a guide on [Raspberry Pi Audio Configuration](https://github.com/snipsco/snips-platform-documentation/wiki/1.-Setup-the-Snips-Voice-Platform-on-your-Raspberry-Pi#configuring-the-audio). +Make sure that a microphone is plugged to the Raspberry Pi. If you are having trouble setting up audio, we have written a guide on [Raspberry Pi Audio Configuration](https://snips.gitbook.io/documentation/installing-snips/on-a-raspberry-pi#2-configuration). Start the Snips Voice Platform by starting the `snips-*` services: @@ -97,7 +97,7 @@ As the Snips Platform parses this query into an intent, it will be published on #### {% linkable_title Optional: specifying an external MQTT broker %} -By default, Snips runs its own MQTT broker. But we can also tell Snips to use an external broker by specifying this when launching Snips. In this case, we need to specify this in the `/etc/snips.toml` configuration file. For more information on configuring this, see the [Using an external MQTT broker](https://github.com/snipsco/snips-platform-documentation/wiki/6.--Miscellaneous#using-external-mqtt-broker) article. +By default, Snips runs its own MQTT broker. But we can also tell Snips to use an external broker by specifying this when launching Snips. In this case, we need to specify this in the `/etc/snips.toml` configuration file. For more information on configuring this, see the [Using an external MQTT broker](https://snips.gitbook.io/documentation/advanced-configuration/platform-configuration) article. ## {% linkable_title Home Assistant configuration %} diff --git a/source/_components/switch.insteon_local.markdown b/source/_components/switch.insteon_local.markdown index 8a3c3f936038..d465cae2fe59 100644 --- a/source/_components/switch.insteon_local.markdown +++ b/source/_components/switch.insteon_local.markdown @@ -1,6 +1,6 @@ --- layout: page -title: "Insteon (Local) Switch" +title: "Insteon (local) Switch" description: "Instructions on how to setup the Insteon Hub switches locally within Home Assistant." date: 2016-12-18 08:00 sidebar: true @@ -9,9 +9,9 @@ sharing: true footer: true logo: insteon.png ha_category: Switch -ha_version: 0.36 +ha_release: 0.36 --- The `insteon_local` switch component lets you control your switches connected to an [Insteon Hub](http://www.insteon.com/insteon-hub/) with Home Assistant. -To get your insteon switches working with Home Assistant, follow the instructions for the general [Insteon local component](/components/insteon_local/). The switches will be automatically disovered and added to Home Assistant. The device names will be the Insteon address of the switch. +To get your Insteon switches working with Home Assistant, follow the instructions for the general [Insteon local component](/components/insteon_local/). The switches will be automatically discovered and added to Home Assistant. The device names will be the Insteon address of the switch. diff --git a/source/_components/switch.insteon_plm.markdown b/source/_components/switch.insteon_plm.markdown index 8843679bb011..39f7d1235dc1 100644 --- a/source/_components/switch.insteon_plm.markdown +++ b/source/_components/switch.insteon_plm.markdown @@ -10,13 +10,7 @@ footer: true logo: insteon.png ha_category: Switch ha_iot_class: "Local Push" -ha_version: 0.39 +ha_release: 0.39 --- -The `insteon_plm` switch platform lets you control your on/off switches through -an INSTEON PowerLinc Modem (PLM) device connected directly to your system on a -USB or serial port. To add support, set up the primary [insteon_plm] -component. - -[insteon_plm]: /components/insteon_plm/ - +The `insteon_plm` switch platform lets you control your on/off switches through an INSTEON PowerLinc Modem (PLM) device connected directly to your system on a USB or serial port. To add support, set up the primary [insteon_plm](/components/insteon_plm/) component. diff --git a/source/_components/switch.xiaomi_miio.markdown b/source/_components/switch.xiaomi_miio.markdown index 612443720951..11596d6c241a 100644 --- a/source/_components/switch.xiaomi_miio.markdown +++ b/source/_components/switch.xiaomi_miio.markdown @@ -9,8 +9,8 @@ sharing: true footer: true logo: xiaomi.png ha_category: Switch -ha_version: 0.56 ha_iot_class: "Local Polling" +ha_release: 0.56 --- The `xiaomi_miio` switch platform allows you to control the state of your Xiaomi Smart WiFi Socket aka Plug, Xiaomi Smart Power Strip and Xiaomi Chuangmi Plug V1. @@ -57,28 +57,22 @@ switch: model: chuangmi.plug.m1 ``` -Configuration variables: -- **host** (*Required*): The IP of your miio device. -- **token** (*Required*): The API token of your miio device. -- **name** (*Optional*): The name of your miio device. -- **model** (*Optional*): The model of your miio device. Valid values are `chuangmi.plug.v1`, `qmi.powerstrip.v1`, `zimi.powerstrip.v2`, `chuangmi.plug.m1` and `chuangmi.plug.v2`. This setting can be used to bypass the device model detection and is recommended if your device isn't always available. - {% configuration %} host: - description: The IP address of your device. + description: The IP address of your miio device. required: true type: string token: - description: The API token of your device. + description: The API token of your miio device. required: true type: string name: - description: The name of your device. + description: The name of your miio device. required: false type: string default: Xiaomi Miio Switch model: - description: The model of your device. + description: The model of your miio device. Valid values are `chuangmi.plug.v1`, `qmi.powerstrip.v1`, `zimi.powerstrip.v2`, `chuangmi.plug.m1` and `chuangmi.plug.v2`. This setting can be used to bypass the device model detection and is recommended if your device isn't always available. required: false type: string {% endconfiguration %} diff --git a/source/_components/vacuum.neato.markdown b/source/_components/vacuum.neato.markdown index b670457369b5..d1d334bc3de0 100644 --- a/source/_components/vacuum.neato.markdown +++ b/source/_components/vacuum.neato.markdown @@ -14,11 +14,15 @@ ha_iot_class: "Cloud Polling" redirect_from: /components/sensor.neato/ --- -

-Starting with 0.57 the `neato` sensor was migrated to a vacuum platform. -

- -The `neato` vacuum platform allows you to control your [Neato Botvac Connected](https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/botvac-connected/). +The `neato` vacuum platform allows you to control your [Neato Botvac Connected](https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/). The status will contain attributes on the robots last clean session. -To add `neato` sensors to your installation, follow instructions in [Neato component](/components/neato/). +To add `neato` vacuum to your installation, please follow instructions in [Neato component](/components/neato/). + +Currently supported features are: + +- `turn_on` +- `pause` +- `stop` +- `return_to_home` +- `turn_off` (stop all activity and return to dock) diff --git a/source/_components/vacuum.xiaomi_miio.markdown b/source/_components/vacuum.xiaomi_miio.markdown index 6cdc2c33f30a..be3f1ed0bbf3 100644 --- a/source/_components/vacuum.xiaomi_miio.markdown +++ b/source/_components/vacuum.xiaomi_miio.markdown @@ -125,7 +125,9 @@ The following table shows the units of measurement for each attribute: ## {% linkable_title Retrieving the Access Token %}

-As per [python-miio issue 185](https://github.com/rytilahti/python-miio/issues/185) the Mi-Home app no longer stores the token within the database (it's retrieved from Xiaomi servers from version 5.0.31+). Currently the only known fix is to uninstall, then install a downgraded version of the apk. Apkmirror is a trusted source for older versions of the app. [Mi-Home version 5.0.0](https://www.apkmirror.com/apk/xiaomi-inc/mihome/mihome-5-0-0-release/) is confirmed as working for the following Android methods. +As per [python-miio issue 185](https://github.com/rytilahti/python-miio/issues/185) the Android Mi-Home app no longer stores the token within the database (it's retrieved from Xiaomi servers from version 5.0.31+). Currently the only known fix is to uninstall, then install a downgraded version of the apk. Apkmirror is a trusted source for older versions of the app. [Mi-Home version 5.0.0](https://www.apkmirror.com/apk/xiaomi-inc/mihome/mihome-5-0-0-release/) is confirmed as working for the following Android methods. + +The iPhone app still stores the token in the sqlite db as of v4.7.18 (July 17, 2018). This token (32 hexadecimal characters) is required for the Xiaomi Mi Robot Vacuum, Mi Robot 2 (Roborock) Vacuum, Xiaomi Philips Lights and Xiaomi IR Remote. The Xiaomi Gateway uses another security method and requires a `key` (16 alphanumeric chars), which can be obtained easily via a hidden menu item at the Mi-Home app or using the `miio` command line tool. diff --git a/source/_docs/installation/docker.markdown b/source/_docs/installation/docker.markdown index 4245f1069c14..8b3583fd4948 100644 --- a/source/_docs/installation/docker.markdown +++ b/source/_docs/installation/docker.markdown @@ -56,14 +56,14 @@ As Synology within DSM now supports Docker (with a neat UI), you can simply inst The steps would be: * Install "Docker" package on your Synology NAS * Launch Docker-app and move to "Registry"-section -* Find "homeassistant/home-assistant" with registry and click on "Download" +* Find "homeassistant/home-assistant" within registry and click on "Download". Choose the "latest" tag, this will make verison updates easier later on. * Wait for some time until your NAS has pulled the image * Move to the "Image"-section of the Docker-app * Click on "Launch" * Choose a container-name you want (e.g., "homeassistant") * Click on "Advanced Settings" * Set "Enable auto-restart" if you like -* Within "Volume" click on "Add Folder" and choose either an existing folder or add a new folder. The "mount point" has to be "/config", so that Home Assistant will use it for the configs and logs. +* Within "Volume" click on "Add Folder" and choose either an existing folder or add a new folder. The "mount path" has to be "/config", so that Home Assistant will use it for the configs and logs. * Within "Network" select "Use same network as Docker Host" * To ensure that Home Assistant displays the correct timezone go to the "Environment" tab and click the plus sign then add `variable` = `TZ` & `value` = `Europe/London` choosing [your correct timezone](http://en.wikipedia.org/wiki/List_of_tz_database_time_zones) * Confirm the "Advanced Settings" @@ -71,9 +71,9 @@ The steps would be: * Your Home Assistant within Docker should now run and will serve the web interface from port 8123 on your Docker host (this will be your Synology NAS IP address - for example `http://192.168.1.10:8123`) Remark: to update your Home Assistant on your Docker within Synology NAS, you just have to do the following: -* Go to the Docker-app and move to "Image"-section -* Download the "homeassistant/home-assistant" image - don't care, that it is already there -* wait until the system-message/-notification comes up, that the download is finished (there is no progress bar) +* Go to the Docker-app and move to "Registry"-section +* Find "homeassistant/home-assistant" within registry and click on "Download". Choose the "latest" tag, this will overwrite your current image to the latest version. +* Wait until the system-message/-notification comes up, that the download is finished (there is no progress bar) * Move to "Container"-section * Stop your container if it's running * Right-click on it and select "Action"->"Clear". You won't lose any data, as all files are stored in your config-directory @@ -180,6 +180,12 @@ Then start the container with: $ docker-compose up -d ``` +To restart Home Assistant when you have changed configuration: + +```bash +$ docker-compose restart +``` + ### {% linkable_title Exposing Devices %} In order to use Z-Wave, ZigBbee or other components that require access to devices, you need to map the appropriate device into the container. Ensure the user that is running the container has the correct privileges to access the `/dev/tty*` file, then add the device mapping to your docker command: diff --git a/source/_docs/scripts.markdown b/source/_docs/scripts.markdown index ecbe21243374..f11861ad1ac4 100644 --- a/source/_docs/scripts.markdown +++ b/source/_docs/scripts.markdown @@ -75,7 +75,7 @@ Delays are useful for temporarily suspending your script and start it at a later ```yaml # Waits however many minutes input_number.minute_delay is set to # Valid formats include HH:MM and HH:MM:SS -- delay: "00:{{ '%02d' % (states('input_number.minute_delay')|int) }}:00" +- delay: "{{ states('input_number.minute_delay') | multiply(60) | timestamp_custom('%H:%M:%S',False) }}" ``` {% endraw %} diff --git a/source/_docs/z-wave/adding.markdown b/source/_docs/z-wave/adding.markdown index b6fb1f7b3da9..c52661c0c1c2 100644 --- a/source/_docs/z-wave/adding.markdown +++ b/source/_docs/z-wave/adding.markdown @@ -73,3 +73,10 @@ To remove (exclude) a Z-Wave device from your system: 2. Click the **Remove Node** button in the *Z-Wave Network Management* card - this will place the controller in exclusion mode 3. Activate your device to be excluded by following the instructions provided with the device 4. Run a *Heal Network* so all the other nodes learn about its removal + +## {% linkable_title Troubleshooting %} + +Sometimes devices won't add to Home Assistant. There are a couple of possible problems. + +1. You're not using all Z-Wave Plus devices, in which case the device can't use the mesh to be added, and must be in the same room as your controller. +2. The device was previously added to another controller, and not removed. You'll need to follow the process above for removing devices first, then try adding it again. diff --git a/source/_includes/asides/cloud_navigation.html b/source/_includes/asides/cloud_navigation.html index 93a7baf70e0e..48ca40581460 100644 --- a/source/_includes/asides/cloud_navigation.html +++ b/source/_includes/asides/cloud_navigation.html @@ -1,6 +1,6 @@

About Home Assistant

-
diff --git a/source/_includes/custom/welcome.html b/source/_includes/custom/welcome.html index 407028a9e269..0eb5931cd4c3 100644 --- a/source/_includes/custom/welcome.html +++ b/source/_includes/custom/welcome.html @@ -1,6 +1,6 @@

Awaken your home

-Home Assistant is an open-source home automation platform running on Python 3. Track and control all devices at home and automate control. Perfect to run on a Raspberry Pi. +Open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Perfect to run on a Raspberry Pi or a local server.

diff --git a/source/_lovelace/picture-elements.markdown b/source/_lovelace/picture-elements.markdown index a12ce456df4f..eda0a93c9c19 100644 --- a/source/_lovelace/picture-elements.markdown +++ b/source/_lovelace/picture-elements.markdown @@ -55,6 +55,7 @@ style: required: true description: Position and style the element using CSS. type: object + default: "position: absolute, transform: translate(-50%, -50%)" {% endconfiguration %} ### {% linkable_title Icon representing an entity state %} @@ -89,6 +90,7 @@ style: required: true description: Position and style the element using CSS. type: object + default: "position: absolute, transform: translate(-50%, -50%)" {% endconfiguration %} ### {% linkable_title Label with state text %} @@ -131,6 +133,7 @@ style: required: true description: Position and style the element using CSS. type: object + default: "position: absolute, transform: translate(-50%, -50%)" {% endconfiguration %} ### {% linkable_title Service Call Button %} @@ -156,6 +159,7 @@ style: required: true description: Position and style the element using CSS. type: object + default: "position: absolute, transform: translate(-50%, -50%)" {% endconfiguration %} ### {% linkable_title Icon Element %} @@ -198,6 +202,7 @@ style: required: true description: Position and style the element using CSS. type: object + default: "position: absolute, transform: translate(-50%, -50%)" {% endconfiguration %} ### {% linkable_title Image Element %} @@ -209,7 +214,7 @@ type: type: string entity: required: false - description: Entity to use for state_image and state_filter and also target for actions. + description: Entity to use for state_image and state_filter and also target for actions. type: string tap_action: required: false @@ -240,7 +245,7 @@ state_image: required: false description: '[State-based images](#how-to-use-state_image)' type: object -filter: +filter: required: false description: Default CSS filter type: string @@ -252,8 +257,13 @@ style: required: true description: Position and style the element using CSS. type: object + default: "position: absolute, transform: translate(-50%, -50%)" {% endconfiguration %} +The process for creating and referencing custom elements is the same as for custom cards. +Please see the [developer docs on creating custom cards](https://developers.home-assistant.io/docs/en/lovelace_custom_card.html) +for more information. + ## {% linkable_title How to use the style object %} Position and style your elements using [CSS](https://en.wikipedia.org/wiki/Cascading_Style_Sheets). More/other keys are also possible. @@ -282,9 +292,9 @@ state_image: Specify different [CSS filters](https://developer.mozilla.org/en-US/docs/Web/CSS/filter) ```yaml -state_filter: - 'on': brightness(110%) saturate(1.2) - 'off': brightness(50%) hue-rotate(45deg) +state_filter: + "on": brightness(110%) saturate(1.2) + "off": brightness(50%) hue-rotate(45deg) ``` ## {% linkable_title Example %} @@ -315,7 +325,7 @@ state_filter: style: top: 95% left: 60% - service: light.turn_off + service: homeassistant.turn_off service_data: entity_id: group.all_lights - type: icon @@ -324,8 +334,7 @@ state_filter: navigation_path: /lovelace/0 style: top: 10% - left: 10% - + left: 10% ``` @@ -340,8 +349,8 @@ state_filter: entity: light.living_room tap_action: toggle image: /local/living_room.png - state_image: - 'off': /local/living_room_off.png + state_image: + "off": /local/living_room_off.png filter: saturate(.8) state_filter: 'on': brightness(120%) saturate(1.2) diff --git a/source/_posts/2018-07-16-release-73-2.markdown b/source/_posts/2018-07-16-release-73-2.markdown new file mode 100644 index 000000000000..fdaaae717ba2 --- /dev/null +++ b/source/_posts/2018-07-16-release-73-2.markdown @@ -0,0 +1,106 @@ +--- +layout: post +title: "0.73.2 - Security Incident" +description: "We have discovered a security issue and have issued a hot fix." +date: 2018-07-16 00:01:00 +date_formatted: "July 16, 2018" +author: Paulus Schoutsen +author_twitter: balloob +comments: true +categories: Release-Notes +--- + +Today we are releasing 0.73.2 to fix a security incident. We've discovered that 9 months ago, with the release of Home Assistant 0.56, we misconfigured the SSL context that aiohttp used ([PR](https://github.com/home-assistant/home-assistant/pull/9958)). By trying to do the right thing (use an up to date cert store instead of relying on the system certs), we ended up doing the complete opposite: SSL verification was disabled for **outgoing** requests that were done using the shared aiohttp session. This is our fault, and not aiohttp's faults. The impact of this is that certain integrations in Home Assistant have been susceptible to [man in the middle attacks](https://en.wikipedia.org/wiki/Man-in-the-middle_attack). + +A man in the middle attack is when an attacker is able to inject itself between you and the server you're communicating with, allowing it to read and alter the communication. The odds of this happening at home is very rare, yet we wanted to be transparent about this incident. + +After research, the following integrations have been impacted. Although the odds are extremely small, we still suggest that if you use any of these integrations, to create new API keys or change your password. + +- [alarm_control_panel.alarmdotcom](https://www.home-assistant.io/components/alarm_control_panel.alarmdotcom/) +- [climate.sensibo](https://www.home-assistant.io/components/climate.sensibo/) +- [cloud](https://www.home-assistant.io/components/cloud/) (only short lived tokens impacted) +- [device_tracker.automatic](https://www.home-assistant.io/components/device_tracker.automatic/) +- [duckdns](https://www.home-assistant.io/components/duckdns/) +- [freedns](https://www.home-assistant.io/components/freedns/) +- [google_assistant](https://www.home-assistant.io/components/google_assistant/) (manual setup) +- [google_domains](https://www.home-assistant.io/components/google_domains/) +- [homematicip_cloud](https://www.home-assistant.io/components/homematicip_cloud/) +- [image_processing.openalpr_cloud](https://www.home-assistant.io/components/image_processing.openalpr_cloud/) +- [microsoft_face](https://www.home-assistant.io/components/microsoft_face/) +- [namecheapdns](https://www.home-assistant.io/components/namecheapdns/) +- [no_ip](https://www.home-assistant.io/components/no_ip/) +- [notify.flock](https://www.home-assistant.io/components/notify.flock/) +- [notify.prowl](https://www.home-assistant.io/components/notify.prowl/) +- [rest_command](https://www.home-assistant.io/components/rest_command/) +- [scene.lifx_cloud](https://www.home-assistant.io/components/scene.lifx_cloud/) +- [switch.hook](https://www.home-assistant.io/components/switch.hook/) +- [switch.rest](https://www.home-assistant.io/components/switch.rest/) +- [telegram_bot.polling](https://www.home-assistant.io/components/telegram_bot.polling/) +- [tts.voicerss](https://www.home-assistant.io/components/tts.voicerss/) + +Also impacted, but integrations are read only: + +- [sensor.airvisual](https://www.home-assistant.io/components/sensor.airvisual/) +- [sensor.ebox](https://www.home-assistant.io/components/sensor.ebox/) +- [sensor.fido](https://www.home-assistant.io/components/sensor.fido/) +- [sensor.foobot](https://www.home-assistant.io/components/sensor.foobot/) +- [sensor.hydroquebec](https://www.home-assistant.io/components/sensor.hydroquebec/) +- [sensor.startca](https://www.home-assistant.io/components/sensor.startca/) +- [sensor.teksavvy](https://www.home-assistant.io/components/sensor.teksavvy/) +- [sensor.thethingsnetwork](https://www.home-assistant.io/components/sensor.thethingsnetwork/) +- [sensor.tibber](https://www.home-assistant.io/components/sensor.tibber/) +- [sensor.waqi](https://www.home-assistant.io/components/sensor.waqi/) + +If you are running Home Assistant on a system with Python 3.4, we've created a new release 0.64.4b0 with the patch applied. We have made it available as a beta. To install the pre-release run `python3 -m pip install homeassistant==0.64.4b0`. + + + +For complete transparency, the following two sets of integrations also used aiohttp to send or retrieve data. However, they either did not transmit authentication or only communicated with local devices and services. + +Affected, but not transmitting authentication: + +- [sensor.buienradar](https://www.home-assistant.io/components/sensor.buienradar/) +- [sensor.citybikes](https://www.home-assistant.io/components/sensor.citybikes/) +- [sensor.comed_hourly_pricing](https://www.home-assistant.io/components/sensor.comed_hourly_pricing/) +- [sensor.luftdaten](https://www.home-assistant.io/components/sensor.luftdaten/) +- [sensor.pollen](https://www.home-assistant.io/components/sensor.pollen/) +- [sensor.sochain](https://www.home-assistant.io/components/sensor.sochain/) +- [sensor.swiss_public_transport](https://www.home-assistant.io/components/sensor.swiss_public_transport/) +- [sensor.viaggiatreno](https://www.home-assistant.io/components/sensor.viaggiatreno/) +- [sensor.wunderground](https://www.home-assistant.io/components/sensor.wunderground/) +- [sensor.yr](https://www.home-assistant.io/components/sensor.yr/) +- [weather.ipma](https://www.home-assistant.io/components/weather.ipma/) +- [tts.google](https://www.home-assistant.io/components/tts.google/) +- [tts.yandextts](https://www.home-assistant.io/components/tts.yandextts/) +- [updater](https://www.home-assistant.io/components/updater/) + +Local, so cannot be impacted: + +- [android_ip_webcam](https://www.home-assistant.io/components/android_ip_webcam/) +- [apple_tv](https://www.home-assistant.io/components/apple_tv/) +- [camera.amcrest](https://www.home-assistant.io/components/camera.amcrest/) +- [camera.doorbird](https://www.home-assistant.io/components/camera.doorbird/) +- [camera.familyhub](https://www.home-assistant.io/components/camera.familyhub/) +- [camera.generic](https://www.home-assistant.io/components/camera.generic/) +- [camera.mjpeg](https://www.home-assistant.io/components/camera.mjpeg/) +- [camera.proxy](https://www.home-assistant.io/components/camera.proxy/) +- [camera.synology](https://www.home-assistant.io/components/camera.synology/) +- [deconz](https://www.home-assistant.io/components/deconz/) +- [device_tracker.upc_connect](https://www.home-assistant.io/components/device_tracker.upc_connect/) +- [hassio](https://www.home-assistant.io/components/hassio/) +- [hue](https://www.home-assistant.io/components/hue/) +- [media_player.bluesound](https://www.home-assistant.io/components/media_player.bluesound/) +- [media_player.epson](https://www.home-assistant.io/components/media_player.epson/) +- [media_player.kodi](https://www.home-assistant.io/components/media_player.kodi/) +- [media_player.squeezebox](https://www.home-assistant.io/components/media_player.squeezebox/) +- [media_player.volumio](https://www.home-assistant.io/components/media_player.volumio/) +- [notify.kodi](https://www.home-assistant.io/components/notify.kodi/) +- [qwikswitch](https://www.home-assistant.io/components/qwikswitch/) +- [rainmachine](https://www.home-assistant.io/components/rainmachine/) +- [scene.hunterdouglas_powerview](https://www.home-assistant.io/components/scene.hunterdouglas_powerview/) +- [sensor.netdata](https://www.home-assistant.io/components/sensor.netdata/) +- [sensor.pi_hole](https://www.home-assistant.io/components/sensor.pi_hole/) +- [sensor.sma](https://www.home-assistant.io/components/sensor.sma/) +- [sensor.worxlandroid](https://www.home-assistant.io/components/sensor.worxlandroid/) +- [spc](https://www.home-assistant.io/components/spc/) +- [tts.marytts](https://www.home-assistant.io/components/tts.marytts/) diff --git a/source/_posts/2018-07-21-release-74.markdown b/source/_posts/2018-07-21-release-74.markdown new file mode 100644 index 000000000000..1de4c7f4bd20 --- /dev/null +++ b/source/_posts/2018-07-21-release-74.markdown @@ -0,0 +1,423 @@ +--- +layout: post +title: "0.74: Tuya, Cloudflare DNS, Push Camera and Users UI" +description: "This release builds on top of the previous release, as that is how releases work." +date: 2018-07-20 00:01:00 +date_formatted: "July 20, 2018" +author: Paulus Schoutsen +author_twitter: balloob +comments: true +categories: Release-Notes +og_image: /images/blog/2018-07-0.74/paulus_guido.jpg +--- + + + +It's time for Home Assistant 0.74! 🎉 + +This week we heard that Guido van Rossum, the founder of Python, is taking a permanent vacation as the leader of Python after being at the helm for almost 30 years. Guido has not been directly involved with Home Assistant. However he created Python and was part of the team that built asyncio, technologies that power the foundation of Home Assistant and what makes us so fast and robust. Under Guido's guidance, the Python community has grown out to be very friendly and open. A great inspiration for us and other tech communities out there. Thanks for all you have done Guido! + +

+Photo of Paulus, founder of Home Assistant, and Guido, founder of Python. +Paulus & Guido at PyCon US 2018 +

+ +All right, back to Home Assistant. The last release introduced a tech preview of the new user system. The initial preview still required creating users via the command line. In the last two weeks, we've worked hard on adding support for an onboarding wizard and a user management interface. A walkthrough of the new features can be found below. Thanks to [@awarecan] and [@jeradM] for all their work! + +To try it out today, [read these instructions](https://developers.home-assistant.io/blog/2018/07/02/trying-new-auth.html). The user system is still in tech preview. We've moved fast to get where we are today. The next step is that we need to take a step back and look at the system as a whole to make sure it's robust and ready for prime time. + +
+ +
+ +We keep seeing [great examples](https://twitter.com/home_assistant/status/1019579208622845953) of UIs built with Lovelace. Follow us on social media ([FB](https://www.facebook.com/homeassistantio/?ref=bookmarks), [Twitter](https://twitter.com/home_assistant), [G+](https://plus.google.com/+HomeAssistantHomeAutomation)) where we will keep sharing great examples. + +For the Lovelace changes in this release, check out the [changelog](/lovelace/changelog/). To help our development and design teams, we've also introduced a [Lovelace card gallery](https://home-assistant-lovelace-gallery.netlify.com/). + +Thanks to [@c727], [@jeradM] and [@ciotlosm] for leading this effort ❤️ + +I'm happy to announce that this release introduces support for Tuya thanks to [@huangyupeng]. Tuya produces cheap cloud-enabled devices that are sold under a wide variety of brand names across the globe, and now they work with Home Assistant too! + +## {% linkable_title New Platforms %} + +- Add Tuya component and switch support ([@huangyupeng] - [#15399]) ([tuya docs]) ([switch.tuya docs]) (new-platform) +- Add Tuya light platform ([@huangyupeng] - [#15444]) ([tuya docs]) ([light.tuya docs]) (new-platform) +- Added support for Duke Energy smart meters ([@w1ll1am23] - [#15165]) ([sensor.duke_energy docs]) (new-platform) +- Added Push Camera ([@dgomes] - [#15151]) ([camera.push docs]) (new-platform) +- Add Cloudflare DNS component. ([@ludeeus] - [#15388]) ([cloudflare docs]) (new-platform) +- Add HomematicIP alarm control panel ([@mxworm] - [#15342]) ([alarm_control_panel docs]) ([homematicip_cloud docs]) ([alarm_control_panel.homematicip_cloud docs]) (new-platform) + +## {% linkable_title Release 0.74.1 - July 24 %} + +- Bugfix HomeKit name and serial_number ([@cdce8p] - [#15600]) ([homekit docs]) +- Use case insensitive comparison for Sonos model check ([@amelchio] - [#15604]) ([media_player.sonos docs]) +- Frontend component should auto load auth coomponent ([@awarecan] - [#15606]) ([frontend docs]) +- Cast/Sonos: create config entry if manually configured ([@balloob] - [#15630]) ([cast docs]) ([sonos docs]) + +## {% linkable_title If you need help... %} + +...don't hesitate to use our very active [forums](https://community.home-assistant.io/) or join us for a little [chat](https://discord.gg/c5DvZ4e). The release notes have comments enabled but it's preferred if you use the former communication channels. Thanks. + +## {% linkable_title Reporting Issues %} + +Experiencing issues introduced by this release? Please report them in our [issue tracker](https://github.com/home-assistant/home-assistant/issues). Make sure to fill in all fields of the issue template. + + +## {% linkable_title Breaking Changes %} + +- Fixer.io has changed their API and now requires an API key. (fixes #14911) ([@fabaff] - [#15279]) ([sensor.fixer docs]) (breaking change) +- Add support to use HTTPS URLs to SynologyDSM and make it the default ([@tchellomello] - [#15270]) ([sensor.synologydsm docs]) (breaking change) +- HomeKit Controller: Ignore discovering the HomeKit component and HomeKit devices which offer native local API ([@mjg59] - [#15316]) ([homekit_controller docs]) (breaking change) +- LimitlessLED will no longer report `hs_color`/`rgb_color` and `color_temp` simultaneously. ([@amelchio] - [#15298]) ([light.limitlessled docs]) (breaking change) +- IP Ban: Reset failed login attempts counter when login success ([@awarecan] - [#15564]) ([http docs]) ([websocket_api docs]) (breaking change) (beta fix) + +## {% linkable_title Beta Fixes %} + +- Add current user WS command ([@balloob] - [#15485]) ([auth docs]) ([frontend docs]) (beta fix) +- Add onboarding support ([@balloob] - [#15492]) ([frontend docs]) ([onboarding docs]) (beta fix) +- Update HomeKit module code ([@mjg59] - [#15502]) ([homekit_controller docs]) (beta fix) +- Disallow use insecure_example auth provider in configuration.yml ([@awarecan] - [#15504]) (beta fix) +- Added WS endpoint for changing homeassistant password. ([@jeradM] - [#15527]) ([config docs]) (beta fix) +- Don't be so strict client-side ([@balloob] - [#15546]) (beta fix) +- Decouple emulated hue from http server ([@balloob] - [#15530]) ([emulated_hue docs]) (beta fix) +- Allow CORS requests to token endpoint ([@balloob] - [#15519]) ([auth docs]) ([http docs]) (beta fix) +- Upgrade pymysensors to 0.16.0 ([@MartinHjelmare] - [#15554]) ([mysensors docs]) (beta fix) +- Allow auth providers to influence is_active ([@balloob] - [#15557]) (beta fix) +- Remove relative time from state machine ([@balloob] - [#15560]) ([sensor.netatmo docs]) (beta fix) +- Reset failed login attempts counter when login success ([@awarecan] - [#15564]) ([http docs]) ([websocket_api docs]) (breaking change) (beta fix) + +## {% linkable_title All changes %} + +- deconz: fix light.turn_off with transition ([@lbschenkel] - [#15222]) ([light.deconz docs]) +- Add new RTS device ([@pepeEL] - [#15116]) ([tahoma docs]) +- Add additional parameters to NUT UPS sensor ([@carlchan] - [#15066]) ([sensor.nut docs]) +- Fix typos ([@fabaff] - [#15233]) ([watson_iot docs]) +- Use async syntax for cover platforms ([@cdce8p] - [#15230]) ([cover.lutron_caseta docs]) ([cover.mqtt docs]) ([cover.rflink docs]) ([cover.template docs]) ([cover.wink docs]) +- Upgrade pytest to 3.6.2 ([@scop] - [#15241]) +- Add precipitations to Openweathermap daily forecast mode ([@sgttrs] - [#15240]) ([weather.openweathermap docs]) +- deconz: proper fix light.turn_off with transition ([@lbschenkel] - [#15227]) ([light.deconz docs]) +- allow extra slot values in intents ([@dthulke] - [#15246]) +- Lint cleanups ([@scop] - [#15243]) ([google_assistant docs]) ([sensor.tibber docs]) +- Upgrade sqlalchemy to 1.2.9 ([@fabaff] - [#15250]) ([sensor.sql docs]) +- Upgrade WazeRouteCalculator to 0.6 ([@fabaff] - [#15251]) ([sensor.waze_travel_time docs]) +- Fix typo in Docker files ([@SConaway] - [#15256]) +- Switch to own packaged version of pylgnetcast ([@andrey-git] - [#15042]) ([media_player.lg_netcast docs]) +- Added setting cover tilt position in scene ([@kstaniek] - [#15255]) +- Pass tox posargs to pylint ([@scop] - [#15226]) +- Fix Roomba exception ([@arbreng] - [#15262]) ([vacuum.roomba docs]) +- Added support for Duke Energy smart meters ([@w1ll1am23] - [#15165]) ([sensor.duke_energy docs]) (new-platform) +- Update image_processing async ([@dgomes] - [#15082]) ([image_processing docs]) +- Fix python-miio 0.4 compatibility of the xiaomi miio device tracker ([@serhtt] - [#15244]) ([device_tracker docs]) +- Upgrade keyring to 13.1.0 ([@fabaff] - [#15268]) +- deCONZ - new sensor attribute 'on' and new sensor GenericFlag ([@Kane610] - [#15247]) ([deconz docs]) ([binary_sensor.deconz docs]) ([sensor.deconz docs]) +- expose climate current temperature in prometeus metrics ([@stenius] - [#15232]) ([prometheus docs]) +- New device to support option MY in somfy ([@pepeEL] - [#15272]) ([cover.tahoma docs]) +- Add isort configuration ([@fabaff] - [#15278]) +- Add support for new API (fixes #14911) ([@fabaff] - [#15279]) ([sensor.fixer docs]) (breaking change) +- Switch to own packaged version of suds-passworddigest ([@andrey-git] - [#15261]) ([camera.onvif docs]) +- Added Push Camera ([@dgomes] - [#15151]) ([camera.push docs]) (new-platform) +- Added support to HTTPS URLs on SynologyDSM ([@tchellomello] - [#15270]) ([sensor.synologydsm docs]) (breaking change) +- Add system generated users ([@balloob] - [#15291]) ([auth docs]) +- Add additional sensors for Arlo Baby camera ([@lukiffer] - [#15074]) ([sensor.arlo docs]) +- Add HomematicIP Cloud Config Flow and Entries loading ([@mxworm] - [#14861]) ([homematicip_cloud docs]) +- Upgrade youtube_dl to 2018.07.04 ([@fabaff] - [#15323]) ([media_extractor docs]) +- Upgrade keyring to 13.2.0 ([@fabaff] - [#15322]) +- Upgrade pytest to 3.6.3 ([@scop] - [#15332]) +- Add original message as dialogflow_query parameter ([@quazzie] - [#15304]) ([dialogflow docs]) +- Add python 3.7 to travis and tox ([@andrey-git] - [#14523]) +- Frontend: Allow overriding default url when added to home screen ([@sjabby] - [#15368]) ([frontend docs]) +- Add HomematicIP Cloud light power consumption and energie attributes ([@mxworm] - [#15343]) ([light.homematicip_cloud docs]) +- fix camera.push API overwrite ([@dgomes] - [#15334]) ([camera.push docs]) +- Add support for multi-channel enocean switches (D2-01-12 profile) ([@NoUsername] - [#14548]) ([enocean docs]) ([switch.enocean docs]) +- Add sound mode support ([@starkillerOG] - [#14910]) ([media_player.denonavr docs]) +- Fixed issue 15340. alexa/smart_home module can now skip properties that aren't supported in the current state, eg lowerSetpoint in Heat mode or targetSetpoint in Eco mode for Nest devices. ([@iliketoprogram14] - [#15352]) ([alexa docs]) +- Efergy ([@fabaff] - [#15380]) ([sensor.efergy docs]) +- Use IndieAuth for client ID ([@balloob] - [#15369]) ([auth docs]) ([frontend docs]) +- Add httplib2 to h.c.google requirements ([@scop] - [#15385]) ([calendar.google docs]) +- Remove some unneeded pylint import-error disables ([@scop] - [#15386]) ([device_tracker docs]) ([eufy docs]) ([light.eufy docs]) ([switch.eufy docs]) +- Update ha-philipsjs to 0.0.5 ([@danielperna84] - [#15378]) ([media_player.philips_js docs]) +- Add new voices to Amazon Polly ([@hanzoh] - [#15320]) ([tts docs]) +- Add Cloudflare DNS component. ([@ludeeus] - [#15388]) ([cloudflare docs]) (new-platform) +- Add Facebox teach service ([@robmarkcole] - [#14998]) ([image_processing.facebox docs]) +- Expire auth code after 10 minutes ([@balloob] - [#15381]) ([auth docs]) +- Improve NetAtmo sensors update logic ([@glpatcern] - [#14866]) ([sensor.netatmo docs]) +- removed unused return ([@ludeeus] - [#15402]) ([cloudflare docs]) +- Fix confused brightness of xiaomi_aqara gateway light ([@amelchio] - [#15314]) ([light.xiaomi_aqara docs]) +- Fix liveboxplaytv empty channel list ([@pschmitt] - [#15404]) ([media_player.liveboxplaytv docs]) +- Fix credentials lookup ([@balloob] - [#15409]) +- Change Ring binary_sensor frequency polling to avoid rate limit exceeded errors ([@tchellomello] - [#15414]) ([binary_sensor.ring docs]) +- Add Tuya component and switch support ([@huangyupeng] - [#15399]) ([tuya docs]) ([switch.tuya docs]) (new-platform) +- Fix HomeMatic variables ([@danielperna84] - [#15417]) ([homematic docs]) +- Ignore some HomeKit devices ([@mjg59] - [#15316]) ([homekit_controller docs]) (breaking change) +- Make LimitlessLED color/temperature attributes mutually exclusive ([@amelchio] - [#15298]) ([light.limitlessled docs]) (breaking change) +- Add HomematicIP alarm control panel ([@mxworm] - [#15342]) ([alarm_control_panel docs]) ([homematicip_cloud docs]) ([alarm_control_panel.homematicip_cloud docs]) (new-platform) +- Include request.path in legacy api password warning message ([@awarecan] - [#15438]) ([http docs]) +- Add python 3.8-dev to travis and tox ([@andrey-git] - [#15347]) +- Reorg auth ([@balloob] - [#15443]) +- Make typing checks more strict ([@andrey-git] - [#14429]) +- upgrade-mypy ([@scop] - [#14904]) +- Fix comment formatting ([@balloob] - [#15447]) ([device_tracker docs]) +- User management ([@balloob] - [#15420]) ([auth docs]) ([config docs]) ([http docs]) ([websocket_api docs]) +- More typing ([@andrey-git] - [#15449]) +- Catch the ValueError if the bulb was in the wrong mode ([@fabaff] - [#15434]) ([light.mystrom docs]) +- Upgrade keyring to 13.2.1 ([@fabaff] - [#15453]) +- Fix formatting pylint comments in test ([@balloob] - [#15450]) +- Add HomematicIP Cloud dimmer light device ([@mxworm] - [#15456]) ([light.homematicip_cloud docs]) +- Fix ZWave RGBW lights not producing color without explicit white_value ([@jantman] - [#15412]) ([light.zwave docs]) +- Add IPPassageSensor (HmIP-SPDR) ([@danielperna84] - [#15458]) ([homematic docs]) +- Implement is_on ([@teharris1] - [#15459]) ([switch.insteon_plm docs]) +- Remove unnecessary executable permissions ([@scop] - [#15469]) ([fritzbox docs]) ([climate.fritzbox docs]) ([cover.group docs]) ([sensor.wirelesstag docs]) ([switch.amcrest docs]) ([switch.fritzbox docs]) +- Add Tuya light platform ([@huangyupeng] - [#15444]) ([tuya docs]) ([light.tuya docs]) (new-platform) +- Update homematicip_cloud with enum states ([@mxworm] - [#15460]) ([homematicip_cloud docs]) ([binary_sensor.homematicip_cloud docs]) ([light.homematicip_cloud docs]) ([sensor.homematicip_cloud docs]) +- Add user via cmd line creates owner ([@balloob] - [#15470]) ([auth docs]) ([http docs]) +- Switch to own packaged version of pygtfs ([@andrey-git] - [#15040]) ([sensor.gtfs docs]) +- Aware comments ([@balloob] - [#15480]) ([auth docs]) +- Fix flux_led turning on with color or effect ([@amelchio] - [#15472]) ([light.flux_led docs]) +- Update limitlessled to 1.1.2 ([@amelchio] - [#15481]) ([light.limitlessled docs]) +- Add current user WS command ([@balloob] - [#15485]) ([auth docs]) ([frontend docs]) (beta fix) +- Add onboarding support ([@balloob] - [#15492]) ([frontend docs]) ([onboarding docs]) (beta fix) +- Update HomeKit module code ([@mjg59] - [#15502]) ([homekit_controller docs]) (beta fix) +- Disallow use insecure_example auth provider in configuration.yml ([@awarecan] - [#15504]) (beta fix) +- Added WS endpoint for changing homeassistant password. ([@jeradM] - [#15527]) ([config docs]) (beta fix) +- Don't be so strict client-side ([@balloob] - [#15546]) (beta fix) +- Decouple emulated hue from http server ([@balloob] - [#15530]) ([emulated_hue docs]) (beta fix) +- Allow CORS requests to token endpoint ([@balloob] - [#15519]) ([auth docs]) ([http docs]) (beta fix) +- Upgrade pymysensors to 0.16.0 ([@MartinHjelmare] - [#15554]) ([mysensors docs]) (beta fix) +- Allow auth providers to influence is_active ([@balloob] - [#15557]) (beta fix) +- Remove relative time from state machine ([@balloob] - [#15560]) ([sensor.netatmo docs]) (beta fix) +- Reset failed login attempts counter when login success ([@awarecan] - [#15564]) ([http docs]) ([websocket_api docs]) (breaking change) (beta fix) + +[#14429]: https://github.com/home-assistant/home-assistant/pull/14429 +[#14523]: https://github.com/home-assistant/home-assistant/pull/14523 +[#14548]: https://github.com/home-assistant/home-assistant/pull/14548 +[#14861]: https://github.com/home-assistant/home-assistant/pull/14861 +[#14866]: https://github.com/home-assistant/home-assistant/pull/14866 +[#14904]: https://github.com/home-assistant/home-assistant/pull/14904 +[#14910]: https://github.com/home-assistant/home-assistant/pull/14910 +[#14998]: https://github.com/home-assistant/home-assistant/pull/14998 +[#15040]: https://github.com/home-assistant/home-assistant/pull/15040 +[#15042]: https://github.com/home-assistant/home-assistant/pull/15042 +[#15066]: https://github.com/home-assistant/home-assistant/pull/15066 +[#15074]: https://github.com/home-assistant/home-assistant/pull/15074 +[#15082]: https://github.com/home-assistant/home-assistant/pull/15082 +[#15116]: https://github.com/home-assistant/home-assistant/pull/15116 +[#15151]: https://github.com/home-assistant/home-assistant/pull/15151 +[#15165]: https://github.com/home-assistant/home-assistant/pull/15165 +[#15222]: https://github.com/home-assistant/home-assistant/pull/15222 +[#15226]: https://github.com/home-assistant/home-assistant/pull/15226 +[#15227]: https://github.com/home-assistant/home-assistant/pull/15227 +[#15230]: https://github.com/home-assistant/home-assistant/pull/15230 +[#15232]: https://github.com/home-assistant/home-assistant/pull/15232 +[#15233]: https://github.com/home-assistant/home-assistant/pull/15233 +[#15240]: https://github.com/home-assistant/home-assistant/pull/15240 +[#15241]: https://github.com/home-assistant/home-assistant/pull/15241 +[#15243]: https://github.com/home-assistant/home-assistant/pull/15243 +[#15244]: https://github.com/home-assistant/home-assistant/pull/15244 +[#15246]: https://github.com/home-assistant/home-assistant/pull/15246 +[#15247]: https://github.com/home-assistant/home-assistant/pull/15247 +[#15250]: https://github.com/home-assistant/home-assistant/pull/15250 +[#15251]: https://github.com/home-assistant/home-assistant/pull/15251 +[#15255]: https://github.com/home-assistant/home-assistant/pull/15255 +[#15256]: https://github.com/home-assistant/home-assistant/pull/15256 +[#15261]: https://github.com/home-assistant/home-assistant/pull/15261 +[#15262]: https://github.com/home-assistant/home-assistant/pull/15262 +[#15268]: https://github.com/home-assistant/home-assistant/pull/15268 +[#15270]: https://github.com/home-assistant/home-assistant/pull/15270 +[#15272]: https://github.com/home-assistant/home-assistant/pull/15272 +[#15278]: https://github.com/home-assistant/home-assistant/pull/15278 +[#15279]: https://github.com/home-assistant/home-assistant/pull/15279 +[#15291]: https://github.com/home-assistant/home-assistant/pull/15291 +[#15298]: https://github.com/home-assistant/home-assistant/pull/15298 +[#15304]: https://github.com/home-assistant/home-assistant/pull/15304 +[#15314]: https://github.com/home-assistant/home-assistant/pull/15314 +[#15316]: https://github.com/home-assistant/home-assistant/pull/15316 +[#15320]: https://github.com/home-assistant/home-assistant/pull/15320 +[#15322]: https://github.com/home-assistant/home-assistant/pull/15322 +[#15323]: https://github.com/home-assistant/home-assistant/pull/15323 +[#15332]: https://github.com/home-assistant/home-assistant/pull/15332 +[#15334]: https://github.com/home-assistant/home-assistant/pull/15334 +[#15342]: https://github.com/home-assistant/home-assistant/pull/15342 +[#15343]: https://github.com/home-assistant/home-assistant/pull/15343 +[#15347]: https://github.com/home-assistant/home-assistant/pull/15347 +[#15352]: https://github.com/home-assistant/home-assistant/pull/15352 +[#15368]: https://github.com/home-assistant/home-assistant/pull/15368 +[#15369]: https://github.com/home-assistant/home-assistant/pull/15369 +[#15378]: https://github.com/home-assistant/home-assistant/pull/15378 +[#15380]: https://github.com/home-assistant/home-assistant/pull/15380 +[#15381]: https://github.com/home-assistant/home-assistant/pull/15381 +[#15385]: https://github.com/home-assistant/home-assistant/pull/15385 +[#15386]: https://github.com/home-assistant/home-assistant/pull/15386 +[#15388]: https://github.com/home-assistant/home-assistant/pull/15388 +[#15399]: https://github.com/home-assistant/home-assistant/pull/15399 +[#15402]: https://github.com/home-assistant/home-assistant/pull/15402 +[#15404]: https://github.com/home-assistant/home-assistant/pull/15404 +[#15409]: https://github.com/home-assistant/home-assistant/pull/15409 +[#15412]: https://github.com/home-assistant/home-assistant/pull/15412 +[#15414]: https://github.com/home-assistant/home-assistant/pull/15414 +[#15417]: https://github.com/home-assistant/home-assistant/pull/15417 +[#15420]: https://github.com/home-assistant/home-assistant/pull/15420 +[#15434]: https://github.com/home-assistant/home-assistant/pull/15434 +[#15438]: https://github.com/home-assistant/home-assistant/pull/15438 +[#15443]: https://github.com/home-assistant/home-assistant/pull/15443 +[#15444]: https://github.com/home-assistant/home-assistant/pull/15444 +[#15447]: https://github.com/home-assistant/home-assistant/pull/15447 +[#15449]: https://github.com/home-assistant/home-assistant/pull/15449 +[#15450]: https://github.com/home-assistant/home-assistant/pull/15450 +[#15453]: https://github.com/home-assistant/home-assistant/pull/15453 +[#15456]: https://github.com/home-assistant/home-assistant/pull/15456 +[#15458]: https://github.com/home-assistant/home-assistant/pull/15458 +[#15459]: https://github.com/home-assistant/home-assistant/pull/15459 +[#15460]: https://github.com/home-assistant/home-assistant/pull/15460 +[#15469]: https://github.com/home-assistant/home-assistant/pull/15469 +[#15470]: https://github.com/home-assistant/home-assistant/pull/15470 +[#15472]: https://github.com/home-assistant/home-assistant/pull/15472 +[#15480]: https://github.com/home-assistant/home-assistant/pull/15480 +[#15481]: https://github.com/home-assistant/home-assistant/pull/15481 +[#15485]: https://github.com/home-assistant/home-assistant/pull/15485 +[#15492]: https://github.com/home-assistant/home-assistant/pull/15492 +[#15502]: https://github.com/home-assistant/home-assistant/pull/15502 +[#15504]: https://github.com/home-assistant/home-assistant/pull/15504 +[#15519]: https://github.com/home-assistant/home-assistant/pull/15519 +[#15527]: https://github.com/home-assistant/home-assistant/pull/15527 +[#15530]: https://github.com/home-assistant/home-assistant/pull/15530 +[#15546]: https://github.com/home-assistant/home-assistant/pull/15546 +[#15554]: https://github.com/home-assistant/home-assistant/pull/15554 +[#15557]: https://github.com/home-assistant/home-assistant/pull/15557 +[#15560]: https://github.com/home-assistant/home-assistant/pull/15560 +[#15564]: https://github.com/home-assistant/home-assistant/pull/15564 +[@Kane610]: https://github.com/Kane610 +[@MartinHjelmare]: https://github.com/MartinHjelmare +[@NoUsername]: https://github.com/NoUsername +[@SConaway]: https://github.com/SConaway +[@amelchio]: https://github.com/amelchio +[@andrey-git]: https://github.com/andrey-git +[@arbreng]: https://github.com/arbreng +[@awarecan]: https://github.com/awarecan +[@balloob]: https://github.com/balloob +[@carlchan]: https://github.com/carlchan +[@cdce8p]: https://github.com/cdce8p +[@danielperna84]: https://github.com/danielperna84 +[@dgomes]: https://github.com/dgomes +[@dthulke]: https://github.com/dthulke +[@fabaff]: https://github.com/fabaff +[@glpatcern]: https://github.com/glpatcern +[@hanzoh]: https://github.com/hanzoh +[@huangyupeng]: https://github.com/huangyupeng +[@iliketoprogram14]: https://github.com/iliketoprogram14 +[@jantman]: https://github.com/jantman +[@jeradM]: https://github.com/jeradM +[@c727]: https://github.com/c727 +[@ciotlosm]: https://github.com/ciotlosm +[@kstaniek]: https://github.com/kstaniek +[@lbschenkel]: https://github.com/lbschenkel +[@ludeeus]: https://github.com/ludeeus +[@lukiffer]: https://github.com/lukiffer +[@mjg59]: https://github.com/mjg59 +[@mxworm]: https://github.com/mxworm +[@pepeEL]: https://github.com/pepeEL +[@pschmitt]: https://github.com/pschmitt +[@quazzie]: https://github.com/quazzie +[@robmarkcole]: https://github.com/robmarkcole +[@scop]: https://github.com/scop +[@serhtt]: https://github.com/serhtt +[@sgttrs]: https://github.com/sgttrs +[@sjabby]: https://github.com/sjabby +[@starkillerOG]: https://github.com/starkillerOG +[@stenius]: https://github.com/stenius +[@tchellomello]: https://github.com/tchellomello +[@teharris1]: https://github.com/teharris1 +[@w1ll1am23]: https://github.com/w1ll1am23 +[alarm_control_panel docs]: /components/alarm_control_panel/ +[alarm_control_panel.homematicip_cloud docs]: /components/alarm_control_panel.homematicip_cloud/ +[alexa docs]: /components/alexa/ +[auth docs]: /components/auth/ +[binary_sensor.deconz docs]: /components/binary_sensor.deconz/ +[binary_sensor.homematicip_cloud docs]: /components/binary_sensor.homematicip_cloud/ +[binary_sensor.ring docs]: /components/binary_sensor.ring/ +[calendar.google docs]: /components/calendar.google/ +[camera.onvif docs]: /components/camera.onvif/ +[camera.push docs]: /components/camera.push/ +[climate.fritzbox docs]: /components/climate.fritzbox/ +[cloudflare docs]: /components/cloudflare/ +[config docs]: /components/config/ +[cover.group docs]: /components/cover.group/ +[cover.lutron_caseta docs]: /components/cover.lutron_caseta/ +[cover.mqtt docs]: /components/cover.mqtt/ +[cover.rflink docs]: /components/cover.rflink/ +[cover.tahoma docs]: /components/cover.tahoma/ +[cover.template docs]: /components/cover.template/ +[cover.velbus docs]: /components/cover.velbus/ +[cover.wink docs]: /components/cover.wink/ +[deconz docs]: /components/deconz/ +[device_tracker docs]: /components/device_tracker/ +[dialogflow docs]: /components/dialogflow/ +[emulated_hue docs]: /components/emulated_hue/ +[enocean docs]: /components/enocean/ +[eufy docs]: /components/eufy/ +[fritzbox docs]: /components/fritzbox/ +[frontend docs]: /components/frontend/ +[google docs]: /components/google/ +[google_assistant docs]: /components/google_assistant/ +[homekit_controller docs]: /components/homekit_controller/ +[homematic docs]: /components/homematic/ +[homematicip_cloud docs]: /components/homematicip_cloud/ +[http docs]: /components/http/ +[image_processing docs]: /components/image_processing/ +[image_processing.facebox docs]: /components/image_processing.facebox/ +[light.deconz docs]: /components/light.deconz/ +[light.eufy docs]: /components/light.eufy/ +[light.flux_led docs]: /components/light.flux_led/ +[light.homematicip_cloud docs]: /components/light.homematicip_cloud/ +[light.limitlessled docs]: /components/light.limitlessled/ +[light.mystrom docs]: /components/light.mystrom/ +[light.tuya docs]: /components/light.tuya/ +[light.xiaomi_aqara docs]: /components/light.xiaomi_aqara/ +[light.zwave docs]: /components/light.zwave/ +[media_extractor docs]: /components/media_extractor/ +[media_player.denonavr docs]: /components/media_player.denonavr/ +[media_player.lg_netcast docs]: /components/media_player.lg_netcast/ +[media_player.liveboxplaytv docs]: /components/media_player.liveboxplaytv/ +[media_player.philips_js docs]: /components/media_player.philips_js/ +[mysensors docs]: /components/mysensors/ +[onboarding docs]: /components/onboarding/ +[prometheus docs]: /components/prometheus/ +[sensor.arlo docs]: /components/sensor.arlo/ +[sensor.deconz docs]: /components/sensor.deconz/ +[sensor.duke_energy docs]: /components/sensor.duke_energy/ +[sensor.efergy docs]: /components/sensor.efergy/ +[sensor.fixer docs]: /components/sensor.fixer/ +[sensor.gtfs docs]: /components/sensor.gtfs/ +[sensor.homematicip_cloud docs]: /components/sensor.homematicip_cloud/ +[sensor.netatmo docs]: /components/sensor.netatmo/ +[sensor.nut docs]: /components/sensor.nut/ +[sensor.sql docs]: /components/sensor.sql/ +[sensor.synologydsm docs]: /components/sensor.synologydsm/ +[sensor.tibber docs]: /components/sensor.tibber/ +[sensor.waze_travel_time docs]: /components/sensor.waze_travel_time/ +[sensor.wirelesstag docs]: /components/sensor.wirelesstag/ +[switch.amcrest docs]: /components/switch.amcrest/ +[switch.enocean docs]: /components/switch.enocean/ +[switch.eufy docs]: /components/switch.eufy/ +[switch.fritzbox docs]: /components/switch.fritzbox/ +[switch.insteon_plm docs]: /components/switch.insteon_plm/ +[switch.tuya docs]: /components/switch.tuya/ +[tahoma docs]: /components/tahoma/ +[tts docs]: /components/tts/ +[tuya docs]: /components/tuya/ +[vacuum.roomba docs]: /components/vacuum.roomba/ +[watson_iot docs]: /components/watson_iot/ +[weather.openweathermap docs]: /components/weather.openweathermap/ +[websocket_api docs]: /components/websocket_api/ +[#15600]: https://github.com/home-assistant/home-assistant/pull/15600 +[#15604]: https://github.com/home-assistant/home-assistant/pull/15604 +[#15606]: https://github.com/home-assistant/home-assistant/pull/15606 +[#15630]: https://github.com/home-assistant/home-assistant/pull/15630 +[@amelchio]: https://github.com/amelchio +[@awarecan]: https://github.com/awarecan +[@balloob]: https://github.com/balloob +[@cdce8p]: https://github.com/cdce8p +[cast docs]: /components/cast/ +[frontend docs]: /components/frontend/ +[homekit docs]: /components/homekit/ +[media_player.sonos docs]: /components/media_player.sonos/ +[sonos docs]: /components/sonos/ diff --git a/source/cloud/troubleshooting.markdown b/source/cloud/troubleshooting.markdown new file mode 100644 index 000000000000..c9868e882f15 --- /dev/null +++ b/source/cloud/troubleshooting.markdown @@ -0,0 +1,38 @@ +--- +layout: page +title: "Troubleshooting Home Assistant Cloud" +description: "Pointers to help troubleshooting issues with Home Assistant Cloud." +date: 2018-07-17 20:00 +sidebar: true +comments: false +sharing: true +footer: true +--- + +Alright, so you got all excited, tried to setup cloud and it failed? Not to worry, here are some common issues and how to resolve them. + +## {% linkable_title Error fetching the cognito keyset %} + +This issue can occur by Docker being misconfigured. This issue is especially common for people using the GENERIC installation of Hass.io on top of Ubuntu Bionic or another Linux installation. It is related to IPv6 being incorrectly marked as available. + +The solution is to make sure that Docker uses a public available DNS server, like the Google ones. As root, run: + +``` +mkdir -p /etc/docker +echo '{"dns": ["8.8.8.8", "8.8.4.4"]}' > /etc/docker/daemon.json +``` + +## {% linkable_title Alexa: We were unable to link Home Assistant at this time. Please try again later %} + +Some users are experiencing an issue when they are setting up the Home Assistant skill inside the Alexa app. We are still researching what is going on. Some users have reported that the issue went away if they configured Alexa to not expose all entities. You can try this by changing your cloud configuration like this: + +```yaml +# Example configuration.yaml entry configuring Alexa +cloud: + alexa: + filter: + include_entities: + - light.kitchen +``` + +If this resolves the issue, please report it in the #cloud channel on Discord as it can help us find the entities that are causing this issue. diff --git a/source/demo/panels/ha-panel-dev-template.html b/source/demo/panels/ha-panel-dev-template.html index 5c7678632cd9..8a968150cad2 100644 --- a/source/demo/panels/ha-panel-dev-template.html +++ b/source/demo/panels/ha-panel-dev-template.html @@ -1,2 +1,2 @@ \ No newline at end of file + clear: both;white-space:pre-wrap}.rendered.error{color:red}
Templates

Templates are rendered using the Jinja2 template engine with some Home Assistant specific extensions.

[[processed]]
diff --git a/source/getting-started/configuration.markdown b/source/getting-started/configuration.markdown index 5eacd4988294..e4953339f421 100644 --- a/source/getting-started/configuration.markdown +++ b/source/getting-started/configuration.markdown @@ -38,7 +38,7 @@ From the Hass.io main panel open the add-on store. The first add-on we should install is the HASS Configurator. With the HASS Configurator you'll be able to edit your Home Assistant configuration from the web interface. -Go to the add-on store (see previous step), click on Configurator and click on "INSTALL". When installation is complete the UI will go to the add-on details page for the configurator. Here you will be able to change settings, start and stop the add-on. Follow the steps bellow to setup the add-on. +Go to the add-on store (see previous step), click on Configurator and click on "INSTALL". When installation is complete, the UI will go to the add-on details page for the configurator. Here you will be able to change settings, start and stop the add-on. Follow the steps below to setup the add-on. - Set a password on the Config box, don't forget to use quotes on your password diff --git a/source/getting-started/index.markdown b/source/getting-started/index.markdown index 50747c4c4a8e..cb7d538e051e 100644 --- a/source/getting-started/index.markdown +++ b/source/getting-started/index.markdown @@ -21,7 +21,7 @@ Follow this guide if you want to get started with Home Assistant easily, or if y We will need a few things to get started with installing Home Assistant. Links below are linking to Amazon US. If you're not in the US, you should be able to find these items in web stores in your country. -- [Raspberry Pi 3 model B](http://a.co/gEfMqL4) + [Power Supply](https://www.raspberrypi.org/help/faqs/#powerReqs) (at least 2.5A) +- [Raspberry Pi 3 model B+](http://a.co/ak2SQor) + [Power Supply](https://www.raspberrypi.org/help/faqs/#powerReqs) (at least 2.5A) - [Micro SD Card](http://a.co/gslOydD). Get one that is Class 10 as they are more reliable. Size 32 GB or bigger recommended. - SD Card reader. Part of most laptops, and also available as [standalone USB sticks](http://a.co/5FCyb0N) (the brand doesn't matter, just pick the cheapest) - Ethernet cable (optional, Hass.io can work with WiFi as well) @@ -29,13 +29,11 @@ We will need a few things to get started with installing Home Assistant. Links b ### {% linkable_title Software requirements %} -- Download Hass.io image for Raspberry Pi 3 as [32bit][pi3-32] or [64bit][pi3-64] variant +- Download the Hass.io image for [your device](https://www.home-assistant.io/hassio/installation/) - Download [Etcher] to write the image to an SD card - Text Editor like [Visual Studio Code](https://code.visualstudio.com/) [Etcher]: https://etcher.io/ -[pi3-32]: https://github.com/home-assistant/hassos/releases/download/1.7/hassos_rpi3-1.7.img.gz -[pi3-64]: https://github.com/home-assistant/hassos/releases/download/1.7/hassos_rpi3-64-1.7.img.gz ### {% linkable_title Installing Hass.io %} diff --git a/source/hassio/commandline.markdown b/source/hassio/commandline.markdown new file mode 100644 index 000000000000..bec31542584f --- /dev/null +++ b/source/hassio/commandline.markdown @@ -0,0 +1,77 @@ +--- +layout: page +title: "Hass.io via the Command line" +description: "Command line utility to control Hass.io." +date: 2017-04-30 13:28 +sidebar: true +comments: false +sharing: true +footer: true +--- + +

+ +Hass.io upgrade process from the SSH command line +

+ +On the SSH command line, you can use the `hassio` command to retrieve logs, check the details of connected hardware, and more. + +Home Assistant: + +```bash +$ hassio homeassistant logs +$ hassio homeassistant restart +$ hassio homeassistant stop +$ hassio homeassistant start +$ hassio homeassistant update +$ hassio homeassistant check +``` + +Host: + +```bash +$ hassio host hardware +$ hassio host reboot +$ hassio host shutdown +$ hassio host update +``` + +Supervisor + +```bash +$ hassio supervisor logs +$ hassio supervisor info +$ hassio supervisor reload +$ hassio supervisor update +``` + +You can get a better description of the CLI capabilities by typing `hassio help`: + +```bash +NAME: + hassio - Commandline tool to allow interaction with hass.io + +USAGE: + hassio [global options] command [command options] [arguments...] + +VERSION: + 1.2.1 + +AUTHOR: + Home-Assistant + +COMMANDS: + homeassistant, ha info, logs, check, restart, start, stop, update + supervisor, su info, logs, reload, update + host, ho hardware, reboot, shutdown, update + network, ne info, options + snapshots, sn list, info, reload, new, restore, remove + addons, ad list, info, logo, changelog, logs, stats, + reload, start, stop, install, uninstall, update + help, h Shows a list of commands or help for one command + +GLOBAL OPTIONS: + --debug, -d Prints Debug information + --help, -h show help + --version, -v print the version +``` diff --git a/source/hassio/index.markdown b/source/hassio/index.markdown index 0773f3918e64..c26320cdf8e5 100644 --- a/source/hassio/index.markdown +++ b/source/hassio/index.markdown @@ -26,7 +26,7 @@ The advantages of using Hass.io: - Active community that is helpful and sharing add-ons including AppDaemon, Homebridge and InfluxDB.

[Browse the forums »][forums]
[Join the Hass.io chat »][chat]
[Browse community add-on repositories »][comm-add-ons]

- +
### {% linkable_title Upgrading %} @@ -38,10 +38,6 @@ Hass.io users can update Home Assistant via the 'Hass.io' page in the UI. Howeve Hass.io dashboard with upgrade notification (under the hamburger menu -> Hass.io)

-

- -Hass.io upgrade process from the SSH command line -

[Google Assistant]: /addons/google_assistant/ [Snips.ai]: /addons/snips/ @@ -54,67 +50,3 @@ Hass.io upgrade process from the SSH command line [HassOS]: https://github.com/home-assistant/hassos [Docker]: https://www.docker.com/ [install]: /hassio/installation/ - -## {% linkable_title hassio command %} - -On the SSH command line, you can use the `hassio` command to retrieve logs, check the details of connected hardware, and more. - -Home Assistant: - -```bash -$ hassio homeassistant logs -$ hassio homeassistant restart -$ hassio homeassistant stop -$ hassio homeassistant start -$ hassio homeassistant update -$ hassio homeassistant check -``` - -Host: - -```bash -$ hassio host hardware -$ hassio host reboot -$ hassio host shutdown -$ hassio host update -``` - -Supervisor - -```bash -$ hassio supervisor logs -$ hassio supervisor info -$ hassio supervisor reload -$ hassio supervisor update -``` - -You can get a better description of the CLI capabilities by typing `hassio help`: - -```bash -NAME: - hassio - Commandline tool to allow interaction with hass.io - -USAGE: - hassio [global options] command [command options] [arguments...] - -VERSION: - 1.2.1 - -AUTHOR: - Home-Assistant - -COMMANDS: - homeassistant, ha info, logs, check, restart, start, stop, update - supervisor, su info, logs, reload, update - host, ho hardware, reboot, shutdown, update - network, ne info, options - snapshots, sn list, info, reload, new, restore, remove - addons, ad list, info, logo, changelog, logs, stats, - reload, start, stop, install, uninstall, update - help, h Shows a list of commands or help for one command - -GLOBAL OPTIONS: - --debug, -d Prints Debug information - --help, -h show help - --version, -v print the version -``` diff --git a/source/hassio/installation.markdown b/source/hassio/installation.markdown index c93d9d2f77c6..8ed823cf5590 100644 --- a/source/hassio/installation.markdown +++ b/source/hassio/installation.markdown @@ -11,11 +11,11 @@ footer: true Hass.io images are available for: -- Download the appropriate image for your IoT: +- Download the appropriate image for your device: - [Raspberry Pi / Zero][pi1] - - [Raspberry Pi / Zero W][pi0-w] + - [Raspberry Pi Zero W][pi0-w] - [Raspberry Pi 2][pi2] - - [Raspberry Pi 3 32bit][pi3-32] + - [Raspberry Pi 3 32bit][pi3-32] (recommended) - [Raspberry Pi 3 64bit][pi3-64] - As [Virtual Appliance]: - [VMDK][vmdk] @@ -26,8 +26,8 @@ Please remember to ensure you're using an [appropriate power supply](https://www - Flash the downloaded image to an SD card using [Etcher]. -- Optional - Setup the WiFi or static IP: On the SD-card, create the `network/my-network` file and follow the [HassOS howto][hassos-network]. -- Insert SD card to Raspberry Pi and turn it on. On first boot, it downloads the latest version of Home Assistant which takes ~20 minutes (slower/faster depending on the platform). +- Optional - Setup the WiFi or static IP: On a USB stick, create the `network/my-network` file and follow the [HassOS howto][hassos-network]. +- Insert the SD card (and optional USB stick) into the Raspberry Pi and turn it on. On first boot, it downloads the latest version of Home Assistant which takes ~20 minutes (slower/faster depending on the platform). @@ -79,7 +79,7 @@ A detailed guide about running Hass.io as a virtual machine is available in the [pi2]: https://github.com/home-assistant/hassos/releases/download/1.7/hassos_rpi2-1.7.img.gz [pi3-32]: https://github.com/home-assistant/hassos/releases/download/1.7/hassos_rpi3-1.7.img.gz [pi3-64]: https://github.com/home-assistant/hassos/releases/download/1.7/hassos_rpi3-64-1.7.img.gz -[vmdk]: https://github.com/home-assistant/hassos/releases/download/1.7/hassos_ova-1.7.vmdk +[vmdk]: https://github.com/home-assistant/hassos/releases/download/1.8/hassos_ova-1.8.vmdk [linux]: https://github.com/home-assistant/hassio-build/tree/master/install#install-hassio [local]: http://hassio.local:8123 [samba]: /addons/samba/ diff --git a/source/images/blog/2018-07-0.74/components.png b/source/images/blog/2018-07-0.74/components.png new file mode 100644 index 000000000000..bc3a989c790c Binary files /dev/null and b/source/images/blog/2018-07-0.74/components.png differ diff --git a/source/images/blog/2018-07-0.74/paulus_guido.jpg b/source/images/blog/2018-07-0.74/paulus_guido.jpg new file mode 100644 index 000000000000..27fa92ccf756 Binary files /dev/null and b/source/images/blog/2018-07-0.74/paulus_guido.jpg differ diff --git a/source/lovelace/changelog.markdown b/source/lovelace/changelog.markdown index 598b48d76812..6850a94aa411 100644 --- a/source/lovelace/changelog.markdown +++ b/source/lovelace/changelog.markdown @@ -128,3 +128,9 @@ footer: true ## {% linkable_title Changes in 0.72 %} - Initial release of the Lovelace UI + +[glance card]: /lovelace/glance/ +[history graph card]: /lovelace/history-graph/ +[picture glance card]: /lovelace/picture-glance/ +[picture elements card]: /lovelace/picture-elements/ +[entity filter card]: /lovelace/entity-filter/ diff --git a/source/lovelace/index.markdown b/source/lovelace/index.markdown index 2d10ef969476..a78abb9fc3a9 100644 --- a/source/lovelace/index.markdown +++ b/source/lovelace/index.markdown @@ -75,7 +75,7 @@ views: - device_tracker.anne_there state_filter: - 'home' - card_config: + card: type: glance title: People that are home @@ -111,6 +111,11 @@ views: Now restart Home Assistant, navigate to `/lovelace`. When you make changes to `ui-lovelace.yaml`, you don't have to restart Home Assistant or refresh the page. Just hit the refresh button at the top of the UI. +## {% linkable_title Setting Lovelace as the Default UI %} +Once you are ready to start using Lovelace UI as your main user interface, click on info, the "i" icon under 'Developer Tools" in the home assistant side-bar. Next, locate >>Set lovelace as default page on this device<< under the home assistant version information and click it. + +Note that this is a per-device setting and will need to be changed on each device you access the UI from. + ## {% linkable_title Custom Cards %} It is possible to add your own custom cards to show up in the Lovelace UI. For more information, check [the developer docs](https://developers.home-assistant.io/docs/en/lovelace_custom_card.html). @@ -130,3 +135,9 @@ This is probably because your version of Firefox doesn't have custom components This is because for IOS devices by default javascript served is `es5`. You can allow custom components to load by forcing `javascript_version: latest` in your `configuration.yaml` under `frontend:`. > Note: Enabling `latest` on IOS could cause automation and script editor to crash. + +### I would like to add an image to my card, but I do not know where to put them. + +Given examples refer to `/local/example_image.jpg`. That means you should have `www` directory next to your HA `configuration.yaml`. An image kept in `HA_configuration_dir/www/example_image.jpg` will be shown after refreshing Lovelace page. + +> Note: Remember to restart Home Assistant right after creating `www` directory. Otherwise, HA will not know that you created this directory. diff --git a/source/lovelace/tips.markdown b/source/lovelace/tips.markdown new file mode 100644 index 000000000000..32ea7b697f48 --- /dev/null +++ b/source/lovelace/tips.markdown @@ -0,0 +1,63 @@ +--- +layout: page +title: "Lovelace Tips and Tricks" +description: "Helpful tips and tricks for using the Lovelace UI in Home Assistant." +date: 2018-07-23 21:57 +00:00 +sidebar: true +comments: false +sharing: true +footer: true +--- + +The Lovelace UI is a very powerful UI. Here are a few tips and tricks that +might help you when working with Lovelace. + +*Have a tip or trick of your own? Click the "Edit this page on GitHub" at the +top of this page to share it with everyone!* + +## {% linkable_title Tools %} + +We have some amazing users that have created various tools to help you get +started with Lovelace. + +### {% linkable_title Lovelace Migration Script %} + +The [Lovelace Migration Script][migration-script] by [@dale3h] converts your +current "old UI" configuration to the new Lovelace format. The idea behind +this tool is to help give you something to start playing with right away. + +### {% linkable_title Lovelace Config Generator %} + +The [Lovelace Config Generator][config-generator] by [@thomasloven] provides +you with the ability to split your Lovelace configuration into multiple files. + +

+ Split configuration is currently possible directly in Lovelace, but it + is expected to be removed in the near future due to fact that Home Assistant + will be writing directly to the `ui-lovelace.yaml` file. +

+ +## {% linkable_title Tips and Tricks %} + +### {% linkable_title Header Using Panel and Stacks %} + +You can create a header by using `panel: true` with nested +[Vertical Stack][vertical-stack] and [Horizontal Stack][horizontal-stack] +cards. See the code [here][header-stacks]. ([@dale3h]) + +### {% linkable_title Disable Click on Elements %} + +If you do not want an element to be clickable you can add `pointer-events: none` +to the element's `style:` configuration. This is quite useful when building a +[Picture Elements][picture-elements] card that will be viewed mostly in a +mobile browser. (@Toast) + +[@dale3h]: https://github.com/dale3h +[@thomasloven]: https://github.com/thomasloven + +[config-generator]: https://github.com/thomasloven/homeassistant-lovelace-gen +[header-stacks]: https://gist.github.com/dale3h/37b34aebb0c336ffd5fb877c2651097a +[horizontal-stack]: /lovelace/horizontal-stack/ +[migration-script]: https://github.com/dale3h/python-lovelace +[picture-elements]: /lovelace/picture-elements/ +[vertical-stack]: /lovelace/vertical-stack/