From fdaa9e9a155a52bf15fa431e598f47559d8a0b5e Mon Sep 17 00:00:00 2001 From: vrs01 Date: Wed, 16 Nov 2016 22:08:33 +0100 Subject: [PATCH 01/10] Typo "api-key (required)" (#1448) --- source/_components/media_player.emby.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/media_player.emby.markdown b/source/_components/media_player.emby.markdown index f4149dc4681..89f2c9605d5 100644 --- a/source/_components/media_player.emby.markdown +++ b/source/_components/media_player.emby.markdown @@ -29,6 +29,6 @@ media_player: Configuration variables: - **host** (*Required*): The host name or address of the device that is running Emby. -- **api_key** (*Requred*): The api-key you would like home-assistant to use to authenticate. +- **api_key** (*Required*): The api-key you would like home-assistant to use to authenticate. - **ssl** (*Optional*): True if you want to connect with https. Be sure to set the port also. - **port** (*Optional*): The port number. Defaults to 8096. From 0af4f52129dcb0995e3db643882588c20c26ee04 Mon Sep 17 00:00:00 2001 From: godloth Date: Wed, 16 Nov 2016 16:09:24 -0500 Subject: [PATCH 02/10] Fixed some typos and text (#1449) made some errors in the first submission and the text was not that clear, should be ok now --- source/_components/sensor.command_line.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/sensor.command_line.markdown b/source/_components/sensor.command_line.markdown index f77ab937d62..cfb660f3e58 100644 --- a/source/_components/sensor.command_line.markdown +++ b/source/_components/sensor.command_line.markdown @@ -70,7 +70,7 @@ Thanks to the [`proc`](https://en.wikipedia.org/wiki/Procfs) file system, variou ### {% linkable_title Monitoring the failed login attempt on HA %} -If you want to get the fillowing in case you want to know if someone is hammering your server is open on the net +If you'd like to know how much failed login attempts are made to HA proceed with the following ```yaml From 3587076d2ed2888f0d38ff98cb6c77b3236ffa07 Mon Sep 17 00:00:00 2001 From: SilvrrGIT Date: Wed, 16 Nov 2016 15:11:59 -0600 Subject: [PATCH 03/10] Update light.yeelight.markdown (#1447) --- source/_components/light.yeelight.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/light.yeelight.markdown b/source/_components/light.yeelight.markdown index 5a1d061be4d..2406dd47b14 100644 --- a/source/_components/light.yeelight.markdown +++ b/source/_components/light.yeelight.markdown @@ -31,7 +31,7 @@ Configuration variables:

Before trying to control your light through Home Assistant, you have to setup your bulb using Yeelight app. ( [Android](https://play.google.com/store/apps/details?id=com.yeelight.cherry&hl=fr), [IOS](https://itunes.apple.com/us/app/yeelight/id977125608?mt=8) ). -In the bulb property, you have to enable "Developer Mode" +In the bulb property, you have to enable "Developer Mode" Developer mode may only be available with the latest firmware installed on your bulb. Firmware can be updated in the application after connecting the bulb. Determine your bulb ip (using router, software, ping ...)

From edf76a05b2f1ef52128a8c26bbe725df8a7ca341 Mon Sep 17 00:00:00 2001 From: Nathan Henrie Date: Wed, 16 Nov 2016 14:14:31 -0700 Subject: [PATCH 04/10] Update switch.command_line friendly_name behavior (#1437) `switch.command_line` will now always use `object_id` for `entity_id`, even if `friendly_name` is given. https://github.com/home-assistant/home-assistant/issues/3434 https://github.com/home-assistant/home-assistant/pull/4343 How interesting -- issue 3434 and PR 4343. --- source/_components/switch.command_line.markdown | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/source/_components/switch.command_line.markdown b/source/_components/switch.command_line.markdown index ac837fa52e7..f0b41958f08 100644 --- a/source/_components/switch.command_line.markdown +++ b/source/_components/switch.command_line.markdown @@ -38,6 +38,10 @@ Configuration variables: - **value_template** (*Optional*): If specified, `command_state` will ignore the result code of the command but the template evaluating to `true` will indicate the switch is on. - **friendly_name** (*Optional*): The name used to display the switch in the frontend. +A note on `friendly_name`: + +When set, the `friendly_name` had been previously used for API calls and backend configuration instead of the `object_id` ("identifier"), but [this behavior is changing](https://github.com/home-assistant/home-assistant/pull/4343) to make the `friendly_name` for display purposes only. This allows users to set an `identifier` that emphasizes uniqueness and predictability for API and config purposes but have a prettier `friendly_name` still show up in the UI. As an additional benefit, if a user wanted to change the `friendly_name` / display name (e.g. from "Kitchen Lightswitch" to "Kitchen Switch" or "Living Room Light", or remove the `friendly_name` altogether), he or she could do so without needing to change existing automations or API calls. See aREST device below for an example. + ## {% linkable_title Examples %} In this section you find some real life examples of how to use this switch. @@ -51,14 +55,16 @@ The example below is doing the same as the [aREST switch](/components/switch.are switch: platform: command_line switches: - arest_pin4: + arest_pin_four: command_on: "/usr/bin/curl -X GET http://192.168.1.10/digital/4/1" command_off: "/usr/bin/curl -X GET http://192.168.1.10/digital/4/0" command_state: "/usr/bin/curl -X GET http://192.168.1.10/digital/4" value_template: '{% raw %}{{ return_value == "1" }}{% endraw %}' - friendly_name: aREST Pin 4 + friendly_name: Kitchen Lightswitch ``` +Given this example, in the UI one would see the `friendly_name` of "Kitchen Light". However, the `identifier` is `arest_pin_four`, making the `entity_id` `switch.arest_pin_four`, which is what one would use in [`automation`](https://home-assistant.io/components/automation/) or in [API calls](https://home-assistant.io/developers/). + ### {% linkable_title Shutdown your local host %} This switch will shutdown your system that is hosting Home Assistant. From b1ca30f30e964bbdc229da5e8103a71f2f439e49 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Thu, 17 Nov 2016 13:39:55 -0800 Subject: [PATCH 05/10] Update server_sent_events.markdown --- source/developers/server_sent_events.markdown | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/source/developers/server_sent_events.markdown b/source/developers/server_sent_events.markdown index 0a9bfa6848b..6d9e9e1cd69 100644 --- a/source/developers/server_sent_events.markdown +++ b/source/developers/server_sent_events.markdown @@ -62,11 +62,7 @@ If you want to test the server-sent events without creating a website, the Pytho $ pip3 install sseclient ``` -<<<<<<< HEAD -The simplest script to consume the SSE looks like the following snippet. -======= -The simplest script to consume the SSE in Python looks like this: ->>>>>>> current +A simple script to consume SSE in Python looks like this: ```python from sseclient import SSEClient @@ -75,4 +71,3 @@ messages = SSEClient('http://localhost:8123/api/stream?api_password=YOUR_PASSWOR for msg in messages: print(msg) ``` - From e92707a724385e9ebec04e38edee8a9f3f375c67 Mon Sep 17 00:00:00 2001 From: Richard H Date: Fri, 18 Nov 2016 17:04:49 +0000 Subject: [PATCH 06/10] Added bidirectional slider example on Input Slider Component Page (#1439) * Added bidirectional slider example --- source/_components/input_slider.markdown | 45 ++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/source/_components/input_slider.markdown b/source/_components/input_slider.markdown index a61f1d062de..20c33a4d95f 100644 --- a/source/_components/input_slider.markdown +++ b/source/_components/input_slider.markdown @@ -110,3 +110,48 @@ automation: {% endraw %} ``` + +Exampleof `input_slider` being used in a bidirectional manner, both being set by and controlled by an MQTT action in an automation. + +```yaml +{% raw %} +# Example configuration.yaml entry using 'input_slider' in an action in an automation + +# Define input_slider +input_slider: + target_temp: + name: Target Heater Temperature Slider + min: 1 + max: 30 + step: 1 + unit_of_measurement: step + icon: mdi:target + +# Automation. + # This automation script runs when a value is received via MQTT on retained topic: setTemperature + # It sets the value slider on the GUI. This slides also had its own automation when the value is changed. +- alias: Set temp slider + trigger: + platform: mqtt + topic: "setTemperature" + # entity_id: input_slider.target_temp + action: + service: input_slider.select_value + data_template: + entity_id: input_slider.target_temp + value: '{{ trigger.payload}}' + + # This automation script runs when the target temperature slider is moved. + # It publishes its value to the same MQTT topic it is also subscribed to. +- alias: Temp slider moved + trigger: + platform: state + entity_id: input_slider.target_temp + action: + service: mqtt.publish + data_template: + topic: "setTemperature" + retain: true + payload: '{{ states.input_slider.target_temp.state | int }}' +{% endraw %} +``` From 44c12e1ba173ab1bbb3cd676461b61e7ddaf9bae Mon Sep 17 00:00:00 2001 From: jnimmo Date: Sat, 19 Nov 2016 09:01:55 +1300 Subject: [PATCH 07/10] Add supported services (#1249) To document the new alarm_keypress * Add supported services * Update envisalink.markdown --- source/_components/envisalink.markdown | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/source/_components/envisalink.markdown b/source/_components/envisalink.markdown index f5554c73228..522d7f52e9d 100644 --- a/source/_components/envisalink.markdown +++ b/source/_components/envisalink.markdown @@ -69,3 +69,12 @@ Configuration variables: - **zones** (*Optional*): Envisalink boards have no way to tell us which zones are actually in use, so each zone must be configured in Home Assistant. For each zone, at least a name must be given. For more information on the available zone types, take a look at the [Binary Sensor](/components/binary_sensor.envisalink/) docs. *Note: If no zones are specified, Home Assistant will not load any binary_sensor components.* - **partitions** (*Optional*): Again, Envisalink boards do not tell us what is in use and what is not, so each partition must be configured with a partition name. If no partition parameter is specified, then no alarm_panel or sensor components are loaded. +Supported services: + +The following services are supported by Envisalink and can be used to script or automate the alarm. + +- **alarm_disarm**: Disarms the alarm with the user code provided, or the code specified in the configuration. +- **alarm_arm_home**: Arms the alarm in home mode. +- **alarm_arm_away**: Arms the alarm in standard away mode. +- **alarm_trigger**: Trigger an alarm on the Envisalink connected alarm system. For example, a newer zwave/zigbee sensor can now be integrated into a legacy alarm system using a Home Assistant automation. +- **alarm_keypress**: Sends a string of up to 6 characters to the alarm. *DSC alarms only* From f9671ae45b7f7c9c2c98732ebe2798c321e1bdc5 Mon Sep 17 00:00:00 2001 From: Matt N Date: Sat, 19 Nov 2016 01:04:34 -0800 Subject: [PATCH 08/10] Fix httpie link typo (#1461) --- source/developers/server_sent_events.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/developers/server_sent_events.markdown b/source/developers/server_sent_events.markdown index 6d9e9e1cd69..2f94a0bc8e0 100644 --- a/source/developers/server_sent_events.markdown +++ b/source/developers/server_sent_events.markdown @@ -44,7 +44,7 @@ Visit [http://localhost:8123/local/sse.html](http://localhost:8123/local/sse.htm ## {% linkable_title Examples %} -A simple way to consume server-sent events is to use a command-line http client like [httpie][https://httpie.org/]. Installation info is on the site (if you use Homebrew, it's `brew install httpie`). Once installed, run this snippet from your terminal: +A simple way to consume server-sent events is to use a command-line http client like [httpie](https://httpie.org/). Installation info is on the site (if you use Homebrew, it's `brew install httpie`). Once installed, run this snippet from your terminal: ```bash $ http --stream http://localhost:8123/api/stream x-ha-access:YOUR_PASSWORD content-type:application/json From 2641693202a2d4e4fedd54c755e0f9360e10a8e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Pobo=C5=99il?= Date: Sat, 19 Nov 2016 10:05:27 +0100 Subject: [PATCH 09/10] Fixed typo in OpenALPR (#1460) --- source/_components/openalpr.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/openalpr.markdown b/source/_components/openalpr.markdown index bed6047537f..ffb28649307 100644 --- a/source/_components/openalpr.markdown +++ b/source/_components/openalpr.markdown @@ -91,7 +91,7 @@ Configuration variables: ```yaml # Example configuration.yaml entry openalpr: - engine: local + engine: cloud region: eu api_key: SK_AAABBBBCCCEEEE entities: From 231814be8644c52bcbd02f2dd25d5e3560aea986 Mon Sep 17 00:00:00 2001 From: Fredrik Lindqvist Date: Sat, 19 Nov 2016 11:31:58 +0100 Subject: [PATCH 10/10] General cleanup of new merged pull requests (#1458) * Update sensor.synologydsm.markdown Changes to spelling and formatting. * Update sensor.command_line.markdown Fix spelling, grammar and rewrote some instructions. * Update hdmi_cec.markdown Fix spelling and formatting. --- source/_components/hdmi_cec.markdown | 16 +++++++--- .../_components/sensor.command_line.markdown | 11 ++++--- .../_components/sensor.synologydsm.markdown | 30 +++++++++---------- 3 files changed, 32 insertions(+), 25 deletions(-) diff --git a/source/_components/hdmi_cec.markdown b/source/_components/hdmi_cec.markdown index e1350a106bb..4f490389dea 100644 --- a/source/_components/hdmi_cec.markdown +++ b/source/_components/hdmi_cec.markdown @@ -33,20 +33,28 @@ Create a symlink to the `cec` installation. $ ln -s /usr/local/lib/python3.4/dist-packages/cec /path/to/your/venv/lib/python3.4/site-packages ``` -For the default virtual environment of a [Raspberry Pi AIO](/getting-started/installation-raspberry-pi-all-in-one/) the command would be as follows. +For the default virtual environment of a [Raspberry Pi All-In-One installation](/getting-started/installation-raspberry-pi-all-in-one/) the command would be as follows. ```bash $ ln -s /usr/local/lib/python3.4/dist-packages/cec /srv/hass/hass_venv/lib/python3.4/site-packages ```

If after symlinking and adding `hdmi_cec:` to your configuration you are getting the following error in your logs, -`* failed to open vchiq instance` you will also need to add the user account Home Asssistant runs under, to the `video` group. To add the Home Assisitant's user account to the `video` group, run the following command. `$ usermod -a -G video ` +`* failed to open vchiq instance` you will also need to add the user account Home Asssistant runs under, to the `video` group. To add the Home Assistant user account to the `video` group, run the following command. `$ usermod -a -G video `

## {% linkable_title Testing your installation %} -* Login to Raspberry Pi `ssh pi@your_raspberry_pi_ip` -* at the command line type: `echo scan | cec-client -s -d 1` +* Login to Raspberry Pi + +```bash +ssh pi@your_raspberry_pi_ip +``` +* at the command line type: + +```bash +echo scan | cec-client -s -d 1 +``` * This will give you the list of devices that are on the bus ```bash diff --git a/source/_components/sensor.command_line.markdown b/source/_components/sensor.command_line.markdown index cfb660f3e58..a87f844a1ab 100644 --- a/source/_components/sensor.command_line.markdown +++ b/source/_components/sensor.command_line.markdown @@ -44,7 +44,7 @@ There are several ways to get the temperature of your hard drive. A simple solut $ hddtemp -n /dev/sda ``` -To use those information, the entry for a command-line sensor in the `configuration.yaml` file will look like this. +To use this information, the entry for a command-line sensor in the `configuration.yaml` file will look like this. ```yaml # Example configuration.yaml entry @@ -68,10 +68,9 @@ Thanks to the [`proc`](https://en.wikipedia.org/wiki/Procfs) file system, variou value_template: '{% raw %}{{ value | multiply(0.001) }}{% endraw %}' ``` -### {% linkable_title Monitoring the failed login attempt on HA %} - -If you'd like to know how much failed login attempts are made to HA proceed with the following +### {% linkable_title Monitoring failed login attempts on Home Assistant %} +If you'd like to know how many failed login attempts are made to Home Assistant, add the following to your `configuration.yaml` file: ```yaml # Example configuration.yaml entry @@ -81,7 +80,7 @@ sensor: command: grep -c 'Login attempt' /home/hass/.homeassistant/home-assistant.log ``` -Make sure to configure the logger to monitor the proper component at the proper level. +Make sure to configure the [logger component](/components/logger) to monitor the [http component](https://home-assistant.io/components/http/) at least the `warning` level. ```yaml # Example working logger settings that works @@ -115,7 +114,7 @@ sensor: ### {% linkable_title Use an external script %} -The example is doing the same as the [aREST sensor](/components/sensor.arest/) but with an external Python script. It should give you an idea about interacting with devices which are exposing a RESTful API. +The example is doing the same as the [aREST sensor](/components/sensor.arest/) but with an external Python script. It should give you an idea about interfacing with devices which are exposing a RESTful API. The one-line script to retrieve a value is shown below. Of course would it be possible to use this directly in the `configuration.yaml` file but need extra care about the quotation marks. diff --git a/source/_components/sensor.synologydsm.markdown b/source/_components/sensor.synologydsm.markdown index 0cf3cd86d12..7b7d66ed083 100644 --- a/source/_components/sensor.synologydsm.markdown +++ b/source/_components/sensor.synologydsm.markdown @@ -14,9 +14,9 @@ ha_iot_class: depends --- -This `synologydsm` sensor allows getting various statistics from your [Synology NAS](https://www.synology.com). Please note that using this sensor wakes up your synology if in hibernation mode. +This `synologydsm` sensor allows getting various statistics from your [Synology NAS](https://www.synology.com). Please note that using this sensor wakes up your Synology NAS if in hibernation mode. -To use the SynologyDSM sensor in your installation, add the following to your `configuration.yaml` file: +To use the `synologydsm` sensor in your installation, add the following to your `configuration.yaml` file: ```yaml # Example configuration.yml entry @@ -30,13 +30,13 @@ sensor: - memory_real_usage - network_up ``` -Note: After booting HASS it can take up to 15 minutes for the sensors to show up. This is due to the fact that sensors are created after HASS has fully been initialised. +Note: After booting Home Assistant it can take up to 15 minutes for the sensors to show up. This is due to the fact that sensors are created after Home Assistant has fully been initialized. Configuration variables: - **host** (*Required*): The IP address of the Synology NAS to monitor -- **port** (*Optional*): The port number on which the NAS is reachable. Defaults to `5000`. -- **username** (*Required*): An user to connect to the Synology NAS (a seperate account is adviced, see the Seperate User Configuration section below for details). +- **port** (*Optional*): The port number on which the Synology NAS is reachable. Defaults to `5000`. +- **username** (*Required*): An user to connect to the Synology NAS (a separate account is advised, see the Separate User Configuration section below for details). - **password** (*Required*): The password of the user to connect to the Synology NAS. - **volumes** (*Optional*): Array of volumes to monitor. Defaults to all volumes. - **disks** (*Optional*): Array of disks to monitor. Defaults to all disks. @@ -57,13 +57,13 @@ Configuration variables: - **memory_total_real**: Displays total size of real memory in MB. - **network_up**: Displays total up speed of network interfaces (combines all interfaces). - **network_down**: Displays total down speed of network interfaces (combines all interfaces). - - **disk_name**: Displays the name of the harddisk (creates a new entry for each disk). - - **disk_device**: Displays the path of the harddisk (creates a new entry for each disk). - - **disk_smart_status**: Displays the S.M.A.R.T status of the harddisk (creates a new entry for each disk). - - **disk_status**: Displays the status of the harddisk (creates a new entry for each disk). - - **disk_exceed_bad_sector_thr**: Displays true / false to indicate if the harddisk exceeded the maximum bad sector threshold (creates a new entry for each disk). - - **disk_below_remain_life_thr**: Displays true / false to indicate if the harddisk dropped below the remain life threshold (creates a new entry for each disk). - - **disk_temp**: Displays the temperature of the harddisk (creates a new entry for each disk, uses the unit_system to display in C or F). + - **disk_name**: Displays the name of the hard disk (creates a new entry for each disk). + - **disk_device**: Displays the path of the hard disk (creates a new entry for each disk). + - **disk_smart_status**: Displays the S.M.A.R.T status of the hard disk (creates a new entry for each disk). + - **disk_status**: Displays the status of the hard disk (creates a new entry for each disk). + - **disk_exceed_bad_sector_thr**: Displays true / false to indicate if the hard disk exceeded the maximum bad sector threshold (creates a new entry for each disk). + - **disk_below_remain_life_thr**: Displays true / false to indicate if the hard disk dropped below the remain life threshold (creates a new entry for each disk). + - **disk_temp**: Displays the temperature of the hard disk (creates a new entry for each disk, uses the unit_system to display in C or F). - **volume_status**: Displays the status of the volume (creates a new entry for each volume). - **volume_device_type**: Displays the volume type (RAID, etc) (creates a new entry for each volume). - **volume_size_total**: Displays the total size of the volume in GB's (creates a new entry for each volume). @@ -72,8 +72,8 @@ Configuration variables: - **volume_disk_temp_avg**: Displays the average temperature of all disks in the volume (creates a new entry for each volume). - **volume_disk_temp_max**: Displays the maximum temperature of all disks in the volume (creates a new entry for each volume). -Seperate User Configuration: +Separate User Configuration: -Due to the nature of the Synology DSM Api it is required to grant de user admin rights. This is related to the fact that utilisation information is stored in the core module. +Due to the nature of the Synology DSM API it is required to grant the user admin rights. This is related to the fact that utilization information is stored in the core module. -When creating the user it is possible to deny access to all locations and applications. By doing this the user will not be able to login to the web interface or view any of the files on the NAS. It is still able to read the utilisation and storage information using the API. +When creating the user it is possible to deny access to all locations and applications. By doing this the user will not be able to login to the web interface or view any of the files on the Synology NAS. It is still able to read the utilization and storage information using the API.