diff --git a/source/_addons/mosquitto.markdown b/source/_addons/mosquitto.markdown index de3df298949..f143d9ac34d 100644 --- a/source/_addons/mosquitto.markdown +++ b/source/_addons/mosquitto.markdown @@ -43,7 +43,7 @@ Configuration variables: ### {% linkable_title Home Assistant configuration %} -To use the Mosquitto as [broker](/docs/mqtt/broker/#run-your-own) add the following entry to the `configuration.yaml` file. +To use the Mosquitto as [broker](/docs/mqtt/broker/#run-your-own), add the following entry to the `configuration.yaml` file. ```yaml # Example configuration.yaml entry @@ -59,3 +59,20 @@ mqtt: username: YOUR_USERNAME password: YOUR_PASSWORD ``` + +### {% linkable_title Listening simultaneously on SSL/TLS (8883) and insecure (1883) ports %} + +1. Configure SSL/TLS as normal. +2. Set `customize` flag to `true` in your configuration. +3. Create a file in `/share/mosquitto` named `insecure.conf` with the following contents: + +```text +listener 1883 +protocol mqtt +``` + +4. Restart MQTT + +
+It's recommened that you only open your firewall to the SSL/TLS port (8883) and only use the insecure port (1883) for local devices. +
diff --git a/source/_addons/nginx_proxy.markdown b/source/_addons/nginx_proxy.markdown index bc3be8cc44d..e1d8a5f01c8 100644 --- a/source/_addons/nginx_proxy.markdown +++ b/source/_addons/nginx_proxy.markdown @@ -11,7 +11,7 @@ footer: true Setup an SSL proxy with NGINX and redirect port 80 to 443. Make sure you have generated a certificate before you start this add-on. -In the `http` section of the `configuration.yaml` file remove `ssl_certificate` and `ssl_key` and don't enter the port in the `base_url` to avoid a HTTP 502 error. +In the `http` section of the `configuration.yaml` file remove `ssl_certificate` and `ssl_key` and don't enter the port in the `base_url` to avoid an HTTP 502 error. ```json { diff --git a/source/_addons/samba.markdown b/source/_addons/samba.markdown index a8cd931cbee..9d0f18923fb 100644 --- a/source/_addons/samba.markdown +++ b/source/_addons/samba.markdown @@ -35,7 +35,7 @@ Configuration variables: - **name** (*Optional*): Set netbios name of Hass.io device. Default is `hassio`. - **workgroup** (*Optional*): Set network workgroup name. Default is `WORKGROUP`. - **guest** (*Optional*): Allow login without a username or password. Default is `true`. -- **map** (*Optional*): Control which folders will be exposed. `config` shares the Home Assistant configuration folder. `addons` shares the local custom repositiory. `share` shares a folder that can be accessed by add-ons and Home Assistant. `backup` shares access to snapshot files. `ssl` shares certificate storage. Be careful with the `ssl` option! Defaults are all set to `true`, except for `ssl`. +- **map** (*Optional*): Control which folders will be exposed. `config` shares the Home Assistant configuration folder. `addons` shares the local custom repository. `share` shares a folder that can be accessed by add-ons and Home Assistant. `backup` shares access to snapshot files. `ssl` shares certificate storage. Be careful with the `ssl` option! Defaults are all set to `true`, except for `ssl`. - **username** (*Optional*): Username for logging in if guest login is not used. - **password** (*Optional*): Password for `username`. An empty password is not supported. - **interface** (*Optional*): Interface that will start the share. Normally this is `eth0` for ethernet wired connection and `wlan0` for wireless connection. diff --git a/source/_components/amcrest.markdown b/source/_components/amcrest.markdown index 379d601f219..fc62783afa0 100644 --- a/source/_components/amcrest.markdown +++ b/source/_components/amcrest.markdown @@ -13,23 +13,25 @@ ha_iot_class: "Local Polling" ha_release: 0.49 --- -The `amcrest` platform allows you to integrate your [Amcrest](https://amcrest.com/) IP camera in Home Assistant. +The `amcrest` camera platform allows you to integrate your [Amcrest](https://amcrest.com/) IP camera in Home Assistant. + +## {% linkable_title Configuration %} To enable your camera in your installation, add the following to your `configuration.yaml` file: ```yaml # Example configuration.yaml entry amcrest: - - host: IP_ADDRESS - username: USERNAME - password: PASSWORD + - host: IP_ADDRESS_CAMERA_1 + username: YOUR_USERNAME + password: YOUR_PASSWORD sensors: - motion_detector - sdcard - - host: IP_ADDRESS - username: USERNAME - password: PASSWORD + - host: IP_ADDRESS_CAMERA_2 + username: YOUR_USERNAME + password: YOUR_PASSWORD resolution: low stream_source: snapshot sensors: diff --git a/source/_components/arlo.markdown b/source/_components/arlo.markdown index 479a7713293..e82ade68d13 100644 --- a/source/_components/arlo.markdown +++ b/source/_components/arlo.markdown @@ -15,19 +15,27 @@ ha_iot_class: "Cloud Polling" The `arlo` implementation allows you to integrate your [Arlo](https://arlo.netgear.com/) devices in Home Assistant. +## {% linkable_title Configuration %} + To enable device linked in your [Arlo](https://arlo.netgear.com/) account, add the following to your `configuration.yaml` file: ```yaml # Example configuration.yaml entry arlo: - username: you@example.com - password: secret + username: YOUR_USERNAME + password: YOUR_PASSWORD ``` -Configuration variables: - -- **username** (*Required*): The username for accessing your Arlo account. -- **password** (*Required*): The password for accessing your Arlo account. +{% configuration %} +username: + description: The username for accessing your Arlo account. + required: true + type: string +password: + description: The password for accessing your Arlo account. + required: true + type: string +{% endconfiguration %} It is recommended to create a dedicated user on Arlo website to be used within Home Assistant and then share your Arlo cameras. diff --git a/source/_components/august.markdown b/source/_components/august.markdown index cbac63c9357..a4df212e8bc 100644 --- a/source/_components/august.markdown +++ b/source/_components/august.markdown @@ -15,6 +15,8 @@ ha_iot_class: "Cloud Polling" The `august` component allows you to integrate your [August](http://august.com) devices in Home Assistant. Currently this component supports August Lock and Doorbell. +## {% linkable_title Configuration %} + You will need your August login information (username (either phone# or email), and password) to use this module. To set it up, add the following to your `configuration.yaml` file: @@ -24,27 +26,27 @@ To set it up, add the following to your `configuration.yaml` file: august: login_method: phone username: "+16041234567" - password: secret + password: YOUR_PASSWORD ``` {% configuration %} - login_method: - description: Method to login to your August account, either "email" or "phone". A verification code will be sent to your email or phone during setup. - required: true - type: string - username: - description: The username for accessing your August account. This depends on your login_method, if login_method is email, this will be your email of the account. Otherwise, this will be your phone number. - required: true - type: string - password: - description: The password for accessing your August account. - required: true - type: string - timeout: - description: Timeout to wait for connections. - required: false - type: int - default: 10 +login_method: + description: Method to login to your August account, either "email" or "phone". A verification code will be sent to your email or phone during setup. + required: true + type: string +username: + description: The username for accessing your August account. This depends on your login_method, if login_method is email, this will be your email of the account. Otherwise, this will be your phone number. + required: true + type: string +password: + description: The password for accessing your August account. + required: true + type: string +timeout: + description: Timeout to wait for connections. + required: false + type: int + default: 10 {% endconfiguration %} Once Home Assistant is started, a configurator will pop up asking you to enter verification code that is sent to your phone number or email. diff --git a/source/_components/binary_sensor.hikvision.markdown b/source/_components/binary_sensor.hikvision.markdown index 803e8b40a2a..7e931302716 100644 --- a/source/_components/binary_sensor.hikvision.markdown +++ b/source/_components/binary_sensor.hikvision.markdown @@ -15,22 +15,22 @@ ha_iot_class: "Local Push" The Hikvision Binary Sensor is a platform that parses the event stream of a [Hikvision IP Camera or NVR](http://www.hikvision.com/) and presents the camera/nvr events to Home Assistant as binary sensors with either an "off" or "on" state. -The platform will automatically add all sensors to Home Assistant that are configured within the camera/nvr interface to "Notify the surveillance center" as a trigger. If you would like to hide a sensor type you can do so by either unchecking "Notify the surveillance center" in the camera configuration or by using the "ignored" customize option detailed below. +The platform will automatically add all sensors to Home Assistant that are configured within the camera/nvr interface to "Notify the surveillance center" as a trigger. If you would like to hide a sensor type you can do so by either unchecking "Notify the surveillance center" in the camera configuration or by using the "ignored" customize option detailed below.-In order for the sensors to work the hikvision user must have the 'Remote: Notify Surveillance Center / Trigger Alarm Output' permission which can be enabled from the user managment section of the web interace. Also the 'WEB Authentication' needs to be set to 'digest/basic' in the security / authentication section. +In order for the sensors to work the hikvision user must have the 'Remote: Notify Surveillance Center/Trigger Alarm Output' permission which can be enabled from the user management section of the web interface. Also the 'WEB Authentication' needs to be set to 'digest/basic' in the security/authentication section.
For example, if you configure a camera with the name "Front Porch" that has motion detection and line crossing events enabled to notify the surveillance center the following binary sensors will be added to Home Assistant: -``` +```text binary_sensor.front_porch_motion binary_sensor.front_port_line_crossing ``` -When used with a NVR device the sensors will be appended with the channel number they represent. For example, if you configure an NVR with the name "Home" that supports 2 cameras with motion detection and line crossing events enabled to notify the surveillance center the following binary sensors will be added to Home Assistant: +When used with a NVR device the sensors will be appended with the channel number they represent. For example, if you configure an NVR with the name "Home" that supports 2 cameras with motion detection and line crossing events enabled to notify the surveillance center the following binary sensors will be added to Home Assistant: -``` +```text binary_sensor.home_motion_1 binary_sensor.home_motion_2 binary_sensor.home_line_crossing_1 @@ -38,35 +38,37 @@ binary_sensor.home_line_crossing_2 ``` This platform should work with all Hikvision cameras and nvrs, and has been confirmed to work with the following models: + - DS-2CD3132-I - DS-2CD2232-I5 - DS-2CD2032-I - DS-2CD2042WD-I - DS-2CD2142FWD-I -To enable this sensor, the following lines are required in your `configuration.yaml`: +To enable this sensor, the following lines are required in your `configuration.yaml` file: ```yaml binary_sensor: - platform: hikvision - host: IP_ADDRESS - username: user - password: pass + - platform: hikvision + host: IP_ADDRESS + username: user + password: pass ``` Configuration options for a Hikvision Sensor: -- **name** (*Optional*): The name you'd like to give the camera in Home Assistant, defaults to name defined in the camera. - **host** (*Required*): The IP address of the camera you would like to connect to. -- **port** (*Optional*): The port to connect to the camera on, defaults to 80. -- **ssl** (*Optional*): True if you want to connect with https. Be sure to set the port also. - **username** (*Required*): The username to authenticate with. - **password** (*Required*): The password to authenticate with. +- **name** (*Optional*): The name you'd like to give the camera in Home Assistant, defaults to name defined in the camera. +- **port** (*Optional*): The port to connect to the camera on, defaults to 80. +- **ssl** (*Optional*): True if you want to connect with https. Be sure to set the port also. - **customize** (*Optional*): This attribute contains sensor-specific override values. Only sensor name needs defined: - **ignored** (*Optional*): Ignore this sensor completely. It won't be shown in the Web Interface and no events are generated for it. - **delay** (*Optional*): Specify the delay to wait after a sensor event ends before notifying Home Assistant. This is useful to catch multiple quick trips in one window without the state toggling on and off. The default delay is 5 seconds. Supported sensor/event types are: + - Motion - Line Crossing - Field Detection @@ -84,37 +86,36 @@ Supported sensor/event types are: - Face Detection - Scene Change Detection - Example of a configuration in your `configuration.yaml` that utilizes the customize options for a camera: ```yaml binary_sensor: - platform: hikvision - host: 192.168.X.X - port: 80 - ssl: False - username: user - password: pass - customize: - motion: - delay: 30 - line_crossing: - ignored: True + - platform: hikvision + host: 192.168.X.X + port: 80 + ssl: False + username: user + password: pass + customize: + motion: + delay: 30 + line_crossing: + ignored: True ``` Example of a configuration in your `configuration.yaml` that utilizes the customize options for a nvr: ```yaml binary_sensor: - platform: hikvision - host: 192.168.X.X - port: 80 - ssl: False - username: user - password: pass - customize: - motion_1: - delay: 30 - field_detection_2: - ignored: True + - platform: hikvision + host: 192.168.X.X + port: 80 + ssl: False + username: user + password: pass + customize: + motion_1: + delay: 30 + field_detection_2: + ignored: True ``` diff --git a/source/_components/binary_sensor.mqtt.markdown b/source/_components/binary_sensor.mqtt.markdown index b49b21b3651..1c6a6d87eff 100644 --- a/source/_components/binary_sensor.mqtt.markdown +++ b/source/_components/binary_sensor.mqtt.markdown @@ -17,6 +17,8 @@ The `mqtt` binary sensor platform uses an MQTT message payload to set the binary The binary sensor state will be updated only after a new message is published on `state_topic` matching `payload_on` or `payload_off`. If these messages are published with the `retain` flag set, the binary sensor will receive an instant state update after subscription and Home Assistant will display the correct state on startup. Otherwise, the initial state displayed in Home Assistant will be `unknown`. +## {% linkable_title Configuration %} + The `mqtt` binary sensor platform optionally supports an `availability_topic` to receive online and offline messages (birth and LWT messages) from the MQTT device. During normal operation, if the MQTT cover device goes offline (i.e., publishes `payload_not_available` to `availability_topic`), Home Assistant will display the binary sensor as `unavailable`. If these messages are published with the `retain` flag set, the binary sensor will receive an instant update after subscription and Home Assistant will display the correct availability state of the binary sensor when Home Assistant starts up. If the `retain` flag is not set, Home Assistant will display the binary sensor as `unavailable` when Home Assistant starts up. If no `availability_topic` is defined, Home Assistant will consider the MQTT device to be available. To use an MQTT binary sensor in your installation, add the following to your `configuration.yaml` file: @@ -42,12 +44,12 @@ payload_on: description: The payload that represents the on state. required: false type: string - default: ON + default: "ON" payload_off: description: The payload that represents the off state. required: false type: string - default: OFF + default: "OFF" availability_topic: description: "The MQTT topic subscribed to receive birth and LWT messages from the MQTT device. If `availability_topic` is not defined, the binary sensor availability state will always be `available`. If `availability_topic` is defined, the binary sensor availability state will be `unavailable` by default." required: false diff --git a/source/_components/calendar.google.markdown b/source/_components/calendar.google.markdown index 4e7ea750b8c..d0463968357 100644 --- a/source/_components/calendar.google.markdown +++ b/source/_components/calendar.google.markdown @@ -14,7 +14,7 @@ ha_release: 0.33 --- -This platform allows you to connect to your [Google Calendars](https://calendar.google.com) and generate binary sensors. The sensors created can trigger based on any event on the calendar or only for matching events. When you first setup this component it will generate a new configuration file *google_calendars.yaml* that will contain information about all of the calendars you can see. +The `google` calendar platform allows you to connect to your [Google Calendars](https://calendar.google.com) and generate binary sensors. The sensors created can trigger based on any event on the calendar or only for matching events. When you first setup this component it will generate a new configuration file `google_calendars.yaml` that will contain information about all of the calendars you can see. ### {% linkable_title Prerequisites %} @@ -27,7 +27,7 @@ Generate a Client ID and Client Secret on [Google Developers Console](https://co 1. Save this page. You don't have to fill out anything else there. 1. Click 'Create credentials' -> OAuth client ID. 1. Set the Application type to 'Other' and give this credential set a name then click Create. -1. Save the client ID and secret as you will need to put these in your configuration.yaml file. +1. Save the client ID and secret as you will need to put these in your `configuration.yaml` file. 1. Click on "Library", search for "Google Calendar API" and enable it. ### {% linkable_title Basic Setup %} @@ -37,33 +37,43 @@ To integrate Google Calendar in Home Assistant, add the following section to you ```yaml # Example configuration.yaml entry google: - client_id: *Value_created_from_steps_above* - client_secret: *Value_created_from_steps_above* + client_id: YOUR_CLIENT_ID + client_secret: YOUR_CLIENT_SECRET ``` -Configuration variables: - -- **client_id** (*Required*): Use the value you generated in the Prerequisites stage. -- **client_secret** (*Required*): Use the value you generated in the Prerequisites stage. -- **track_new_calendar** (*Optional*): Will automatically generate a binary sensor when a new calendar is detected. The system scans for new calendars on startup. By default this is set to `True`. +{% configuration %} +client_id: + description: Use the value you generated in the Prerequisites stage. + required: true + type: string +minimum: + description: Use the value you generated in the Prerequisites stage. + required: true + type: string +track_new_calendar: + description: Will automatically generate a binary sensor when a new calendar is detected. The system scans for new calendars only on startup. + required: false + type: boolean + default: true +{% endconfiguration %} The next steps will require you to have Home Assistant running. After you have it running complete the Google authentication that pops up. It will give you a URL and a code to enter. This will grant your Home Assistant service access to all the Google Calendars that the account you authenticate with can read. This is a Read-Only view of these calendars. - ### {% linkable_title Calendar Configuration %} -Editing `google_calendars.yaml` + +Editing the `google_calendars.yaml` file. A basic entry for a single calendar looks like: ```yaml -- cal_id: "***************************@group.calendar.google.com" +- cal_id: "*****@group.calendar.google.com" entities: - device_id: test_everything name: Give me everything track: true -- cal_id: "***************************@group.calendar.google.com" +- cal_id: "*****@group.calendar.google.com" entities: - device_id: test_important name: Important Stuff @@ -79,38 +89,27 @@ A basic entry for a single calendar looks like: Variables: - **cal_id**: The Google generated unique id for this calendar. **DO NOT CHANGE** - - **entities**: Yes, you can have multiple sensors for a calendar! - - **device_id**: (*Required*): The name that all your automations/scripts will use to reference this device. - - **name**: (*Required*): What is the name of your sensor that you'll see in the frontend. - - **track**: (*Required*): Should we create a sensor `True` or ignore it `False`? - - **search**: (*Optional*): If set will only trigger for matched events. - - **offset**: (*Optional*): A set of characters that precede a number in the event title for designating a pre-trigger state change on the sensor. (Default: `!!`) From this we will end up with the binary sensors `calendar.test_unimportant` and `calendar.test_important` which will toggle themselves on/off based on events on the same calendar that match the search value set for each. You'll also have a sensor `calendar.test_everything` that will not filter events out and always show the next event available. But what if you only wanted it to toggle based on all events? Just leave out the *search* parameter. -**Note**: If you use a `#` sign for `search` then wrap the whole search term in quotes. Otherwise everything following the hash sign would be considered a YAML comment. - ++If you use a `#` sign for `search` then wrap the whole search term in quotes. Otherwise everything following the hash sign would be considered a YAML comment. +
### {% linkable_title Sensor attributes %} - **offset_reached**: If set in the event title and parsed out will be `on`/`off` once the offset in the title in minutes is reached. So the title `Very important meeting #Important !!-10` would trigger this attribute to be `on` 10 minutes before the event starts. - - **all_day**: `True`/`False` if this is an all day event. Will be `False` if there is no event found. - - **message**: The event title with the `search` and `offset` values extracted. So in the above example for **offset_reached** the **message** would be set to `Very important meeting` - - **description**: The event description. - - **location**: The event Location. - - **start_time**: Start time of event. - - **end_time**: End time of event. diff --git a/source/_components/camera.foscam.markdown b/source/_components/camera.foscam.markdown index 2003ecaa25b..c9d1aabd505 100644 --- a/source/_components/camera.foscam.markdown +++ b/source/_components/camera.foscam.markdown @@ -15,6 +15,8 @@ ha_iot_class: "Local Polling" The `foscam` platform allows you to watch the live stream of your [Foscam](http://www.foscam.com/) IP camera in Home Assistant. +## {% linkable_title Configuration %} + To enable your Foscam IP camera in your installation, add the following to your `configuration.yaml` file: ```yaml @@ -22,8 +24,8 @@ To enable your Foscam IP camera in your installation, add the following to your camera: - platform: foscam ip: IP_ADDRESS - username: USERNAME - password: PASSWORD + username: YOUR_USERNAME + password: YOUR_PASSWORD ``` Configuration variables: @@ -39,4 +41,5 @@ There seems to be some issues within Foscam with lengthy passwords and passwords ### {% linkable_title Control Foscam PTZ (Pan/Tilt/Zoom) - Home/Away %} + Foscam Webcams which support CGI Commands can be controlled by Home Assistant ([Source](http://www.ipcamcontrol.net/files/Foscam%20IPCamera%20CGI%20User%20Guide-V1.0.4.pdf)). For an example of how this can be done, see the [Foscam IP Camera Pan, Tilt, Zoom Control](/cookbook/foscam_away_mode_PTZ/) Cookbook entry. diff --git a/source/_components/camera.synology.markdown b/source/_components/camera.synology.markdown index d8314358323..93a2e78ff36 100644 --- a/source/_components/camera.synology.markdown +++ b/source/_components/camera.synology.markdown @@ -14,7 +14,7 @@ ha_iot_class: "Local Polling" --- -The `synology` platform allows you to watch the live streams of your [Synology](https://www.synology.com/) Surveillance Station based IP cameras in Home Assistant. +The `synology` camera platform allows you to watch the live streams of your [Synology](https://www.synology.com/) Surveillance Station based IP cameras in Home Assistant. To enable your Surveillance Station cameras in your installation, add the following to your `configuration.yaml` file: @@ -22,9 +22,9 @@ To enable your Surveillance Station cameras in your installation, add the follow # Minimum configuration.yaml entry camera: - platform: synology - url: SYNOLOGY_URL - username: USERNAME - password: PASSWORD + url: IP_ADDRESS_OF_SYNOLOGY_NAS + username: YOUR_USERNAME + password: YOUR_PASSWORD ``` Configuration variables: @@ -43,8 +43,8 @@ A full sample configuration for the `synology` platform is shown below: camera: - platform: synology url: https://192.168.1.120:5001 - username: USERNAME - password: PASSWORD + username: YOUR_USERNAME + password: YOUR_PASSWORD timeout: 15 verify_ssl: False ``` diff --git a/source/_components/canary.markdown b/source/_components/canary.markdown index 425055f48a4..186d704e17e 100644 --- a/source/_components/canary.markdown +++ b/source/_components/canary.markdown @@ -15,6 +15,8 @@ ha_iot_class: "Cloud Polling" The `canary` component allows you to integrate your [Canary](https://canary.is) devices in Home Assistant. +## {% linkable_title Configuration %} + You will need your Canary login information (username, usually your email address, and password) to use this module. To set it up, add the following to your `configuration.yaml` file: @@ -22,8 +24,8 @@ To set it up, add the following to your `configuration.yaml` file: ```yaml # Example configuration.yaml entry canary: - username: you@example.com - password: secret + username: YOUR_USERNAME + password: YOUR_PASSWORD ``` {% configuration %} @@ -42,8 +44,6 @@ canary: default: 10 {% endconfiguration %} - - Once loaded, your front end will have the following components: * A camera image triggered by motion for each camera. diff --git a/source/_components/cover.garadget.markdown b/source/_components/cover.garadget.markdown index 04a8fcaa6c6..0a3b5de358e 100644 --- a/source/_components/cover.garadget.markdown +++ b/source/_components/cover.garadget.markdown @@ -16,6 +16,8 @@ ha_iot_class: "Cloud Polling" The `garadget` cover platform lets you control [Garadget](http://www.garadget.com/) garage door futurizers through Home Assistant. +## {% linkable_title Configuration %} + To enable Garadget Covers in your installation, add the following to your `configuration.yaml` file: ```yaml @@ -24,8 +26,8 @@ cover: - platform: garadget covers: 190028001947343412342341: - username: UseYourLogin@garadget.com - password: abc123 + username: YOUR_USERNAME + password: YOUR_PASSWORD 4c003f001151353432134214: access_token: df4cc785ff818f2b01396c44142342fccdef ``` @@ -44,12 +46,13 @@ Configuration variables: If provided, the **access_token** will be used, otherwise the **username** and **password** will be used to automatically generate an access token at start time. +## {% linkable_title Example %} -**Example with more detail:**
diff --git a/source/_components/goalfeed.markdown b/source/_components/goalfeed.markdown
index 0320a66d848..5632a8847d7 100644
--- a/source/_components/goalfeed.markdown
+++ b/source/_components/goalfeed.markdown
@@ -19,8 +19,8 @@ To use this component, enter your email address and password from your goalfeed.
```yaml
# Example configuration.yaml entry
goalfeed:
- username: your_email@gmail.com
- password: goalfeed_password
+ username: YOUR_E_MAIL_ADDRESS
+ password: YOUR_PASSWORD
```
{% configuration %}
diff --git a/source/_components/google_assistant.markdown b/source/_components/google_assistant.markdown
index 72af8bf76d3..b30eee33f43 100644
--- a/source/_components/google_assistant.markdown
+++ b/source/_components/google_assistant.markdown
@@ -67,7 +67,7 @@ agent_user_id:
required: false
type: string
api_key:
- description: An API Key generated for the project from [Google Console](https://console.cloud.google.com/apis/api/homegraph.googleapis.com/overview) which allows you to update devices without unlinking and relinking an account (see step 9 below). If not provided then the `google_assistant.request_sync` service is not exposed. It is recommended to set up this configuration key as it also allows the usage of the following command, "Ok Google, sync my devices". Once you have setup this componenet you will need to call this service (or command) each time you add a new device that you wish to control via the Google Assistant integration.
+ description: An API Key generated for the project from [Google Console](https://console.cloud.google.com/apis/api/homegraph.googleapis.com/overview) which allows you to update devices without unlinking and relinking an account (see step 9 below). If not provided then the `google_assistant.request_sync` service is not exposed. It is recommended to set up this configuration key as it also allows the usage of the following command, "Ok Google, sync my devices". Once you have setup this component you will need to call this service (or command) each time you add a new device that you wish to control via the Google Assistant integration.
required: false
type: string
expose_by_default:
diff --git a/source/_components/image_processing.dlib_face_identify.markdown b/source/_components/image_processing.dlib_face_identify.markdown
index 5cac74b560f..34690d6b8fd 100644
--- a/source/_components/image_processing.dlib_face_identify.markdown
+++ b/source/_components/image_processing.dlib_face_identify.markdown
@@ -13,7 +13,7 @@ featured: false
ha_release: 0.44
---
-The `dlib_face_identify` image processing platform allows you to use the [Dlib](http://www.dlib.net/) through Home Assistant. This platform allow you to identify persons on camera and fire a event with identify persons.
+The `dlib_face_identify` image processing platform allows you to use the [Dlib](http://www.dlib.net/) through Home Assistant. This platform allow you to identify persons on camera and fire an event with identify persons.
For using the result inside an automation rule, take a look at the [component](/components/image_processing/) page.
diff --git a/source/_components/knx.markdown b/source/_components/knx.markdown
index f27048d4e75..7acfae76761 100644
--- a/source/_components/knx.markdown
+++ b/source/_components/knx.markdown
@@ -116,7 +116,7 @@ knx:
```
* **type**: Type of the exposed value. Either time or datetime or any supported type of [KNX Sensor](/components/sensor.knx/) (e.g., "temperature" or "humidity").
-* **entity_id**: Entity id of the HASS component to be exposed. Not necessarry for types time and datetime.
+* **entity_id**: Entity id of the HASS component to be exposed. Not necessary for types time and datetime.
* **address**: KNX group address.
diff --git a/source/_components/light.avion.markdown b/source/_components/light.avion.markdown
index 74260e93957..68c40b1aac4 100644
--- a/source/_components/light.avion.markdown
+++ b/source/_components/light.avion.markdown
@@ -21,8 +21,6 @@ To enable these lights, add the following lines to your `configuration.yaml` fil
# Example configuration.yaml entry
light:
- platform: avion
- username: testuser@fakedomain.com
- password: foobar
```
Configuration variables:
diff --git a/source/_components/light.decora_wifi.markdown b/source/_components/light.decora_wifi.markdown
index cf2c5556266..7fc68d0dcf8 100644
--- a/source/_components/light.decora_wifi.markdown
+++ b/source/_components/light.decora_wifi.markdown
@@ -26,13 +26,18 @@ To enable these lights, add the following lines to your `configuration.yaml` fil
# Example configuration.yaml entry
light:
- platform: decora_wifi
- username: my_leviton_user_email@email.com
- password: my_leviton_password
+ username: YOUR_USERNAME
+ password: YOUR_PASSWORD
```
-Configuration variables:
-
-- **username** (*Required*): Your "My Leviton" app email address/user name.
-- **password** (*Required*): Your "My Leviton" app password.
-
+{% configuration %}
+username:
+ description: Your "My Leviton" app email address/user name.
+ required: true
+ type: string
+password:
+ description: Your "My Leviton" app password.
+ required: true
+ type: string
+{% endconfiguration %}
diff --git a/source/_components/lock.nello.markdown b/source/_components/lock.nello.markdown
index 53f2e26e79b..558f9098b96 100644
--- a/source/_components/lock.nello.markdown
+++ b/source/_components/lock.nello.markdown
@@ -16,6 +16,7 @@ ha_iot_class: "Cloud Polling"
---
The `nello` platform allows you to control [Nello](https://nello.io) intercoms.
+
To get started you need to create a secondary Nello account and authorize it to access your lock(s).
@@ -24,18 +25,26 @@ Be aware that if you use your main account for Home Assistant you may not be abl
## {% linkable_title Configuration %}
+To add your Nello locks to your installation, add the following to your `configuration.yaml` file:
+
```yaml
# Example configuration.yaml entry
lock:
- platform: nello
- username: mail@example.com
- password: mySecretPassword
+ username: YOUR_USERNAME
+ password: YOUR_PASSWORD
```
-Configuration variables:
-
-- **username** (*Required*): The username of your Nello account.
-- **password** (*Required*): The password of your Nello account.
+{% configuration %}
+username:
+ description: The username of your Nello account.
+ required: true
+ type: string
+password:
+ description: The password of your Nello account.
+ required: true
+ type: string
+{% endconfiguration %}
## {% linkable_title Events %}
diff --git a/source/_components/lock.sesame.markdown b/source/_components/lock.sesame.markdown
index 01d9910fdac..affd029f63a 100644
--- a/source/_components/lock.sesame.markdown
+++ b/source/_components/lock.sesame.markdown
@@ -15,18 +15,28 @@ ha_release: "0.47"
The `sesame` platform allows you to control your [Sesame](https://candyhouse.co/) smart locks made by CANDY HOUSE, Inc.
+## {% linkable_title Configuration %}
+
Your Sesame needs to be paired with a mobile device running the app in *virtual station* mode, or a standalone [Wi-Fi Access Point](https://candyhouse.co/collections/frontpage/products/wi-fi-access-point).
Once you have remote access enabled using one of the above AND the Integration - cloud option enabled on the Sesame app for that lock settings, add the following to your `configuration.yaml` file:
+
```yaml
# Example configuration.yaml entry
lock:
- platform: sesame
- email: abc@i-lovecandyhouse.co
- password: super-strong-password
+ email: YOUR_E_MAIL_ADDRESS
+ password: YOUR_PASSWORD
```
-Configuration variables:
+{% configuration %}
+email:
+ description: The email address for your Sesame account.
+ required: true
+ type: string
+password:
+ description: The password for your Sesame account.
+ required: true
+ type: string
+{% endconfiguration %}
-- **email** (*Required*): The email address for your Sesame account.
-- **password** (*Required*): The password for your Sesame account.
diff --git a/source/_components/lutron.markdown b/source/_components/lutron.markdown
index 67bdb19dd91..6799e1feb55 100644
--- a/source/_components/lutron.markdown
+++ b/source/_components/lutron.markdown
@@ -18,6 +18,8 @@ ha_iot_class: "Local Polling"
Presently, there's only support for communicating with the [RadioRA 2](http://www.lutron.com/en-US/Products/Pages/WholeHomeSystems/RadioRA2/Overview.aspx) Main Repeater and only handle light switches and dimmers.
+## {% linkable_title Configuration %}
+
When configured, the `lutron` component will automatically discover the rooms and their associated switches/dimmers as configured by the RadioRA 2 software from Lutron. Each room will be treated as a separate group.
To use Lutron RadioRA 2 devices in your installation, add the following to your `configuration.yaml` file using the IP address of your RadioRA 2 main repeater:
diff --git a/source/_components/media_player.cmus.markdown b/source/_components/media_player.cmus.markdown
index 6754b57c874..1415de1e547 100644
--- a/source/_components/media_player.cmus.markdown
+++ b/source/_components/media_player.cmus.markdown
@@ -23,19 +23,19 @@ media_player:
- platform: cmus
```
-if cmus is running on a remote server:
+If cmus is running on a remote server:
```yaml
# Example configuration.yaml entry
media_player:
- platform: cmus
- host: IP_ADDRESS
- password: PASSWORD
+ host: IP_ADDRESS_OF_CMUS_PLAYER
+ password: YOUR_PASSWORD
```
Configuration variables:
-- **host** (*Optional*): Hostname or IP address of the machine running cmus. Note if a remote cmus is configured that instance must be configured to listen to remote connections, which also requires a password to be set.
+- **host** (*Optional*): Hostname or IP address of the machine running cmus. Note if a remote cmus is configured that instance must be configured to listen to remote connections, which also requires a password to be set.
- **password** (*Required if host is set*): Password for your cmus player.
- **port** (*Optional*): Port of the cmus socket, defaults to 3000.
- **name** (*Optional*): The name you'd like to give the cmus player in Home Assistant
diff --git a/source/_components/media_player.firetv.markdown b/source/_components/media_player.firetv.markdown
index 96d9c48c0e8..0abf2b3dadc 100644
--- a/source/_components/media_player.firetv.markdown
+++ b/source/_components/media_player.firetv.markdown
@@ -16,7 +16,7 @@ ha_iot_class: "Local Polling"
The `firetv` platform allows you to control a [Amazon Fire TV/stick](http://www.amazon.com/Amazon-DV83YW-Fire-TV/dp/B00U3FPN4U).
-The python-firetv Python 2.x module with its helper script that exposes a HTTP server to fetch state and perform actions is used.
+The python-firetv Python 2.x module with its helper script that exposes an HTTP server to fetch state and perform actions is used.
Steps to configure your Amazon Fire TV stick with Home Assistant:
diff --git a/source/_components/media_player.markdown b/source/_components/media_player.markdown
index dfbe48ccc99..40b642dc0c2 100644
--- a/source/_components/media_player.markdown
+++ b/source/_components/media_player.markdown
@@ -9,7 +9,7 @@ sharing: true
footer: true
---
-Interacts with media players on your network. Please check the sidebar for a full list of supported devices.
+Interacts with media players on your network. Please check the right sidebar for a full list of supported devices.
## {% linkable_title Services %}
@@ -27,7 +27,7 @@ Available services: `turn_on`, `turn_off`, `toggle`, `volume_up`, `volume_down`,
| `entity_id` | yes | Target a specific media player. Defaults to all. |
| `is_volume_muted` | no | True/false for mute/unmute |
-#### {% linkable_title Service `media_player/volume_set` %}
+#### {% linkable_title Service `media_player.volume_set` %}
| Service data attribute | Optional | Description |
|------------------------|----------|--------------------------------------------------|
diff --git a/source/_components/media_player.ue_smart_radio.markdown b/source/_components/media_player.ue_smart_radio.markdown
index 217b625b8d5..0a250b6b860 100644
--- a/source/_components/media_player.ue_smart_radio.markdown
+++ b/source/_components/media_player.ue_smart_radio.markdown
@@ -22,8 +22,8 @@ To add your UE Smart Radio player to your installation, add the following to you
# Example configuration.yaml entry
media_player:
- platform: ue_smart_radio
- username: USERNAME
- password: PASSWORD
+ username: YOUR_USERNAME
+ password: YOUR_PASSWORD
```
{% configuration %}
diff --git a/source/_components/melissa.markdown b/source/_components/melissa.markdown
index ed696574cc4..46be358b61d 100644
--- a/source/_components/melissa.markdown
+++ b/source/_components/melissa.markdown
@@ -16,13 +16,15 @@ ha_iot_class: "Cloud Polling"
The `Melissa` component is the main component to connect to a [Melissa Climate](http://seemelissa.com/) A/C control.
+## {% linkable_title Configuration %}
+
To set the Melissa component up, add the following information to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
melissa:
- username:
The component can integrate cars from European and African markets only.
@@ -30,8 +31,8 @@ To use Mercedes me in your installation, add the following to your `configuratio
```yaml
# Example configuration.yaml entry
mercedesme:
- username: email
- password: password
+ username: YOUR_E_MAIL_ADDRESS
+ password: YOUR_PASSWORD
```
{% configuration %}
@@ -43,11 +44,6 @@ password:
description: The password for your given Mercedes me account.
required: true
type: string
-scan_interval:
- description: API polling interval. The minimal value can't be less then 30 seconds.
- required: true
- default: 30
- type: int
{% endconfiguration %}
diff --git a/source/_components/mqtt_eventstream.markdown b/source/_components/mqtt_eventstream.markdown
index 11644dc5b32..4946433e630 100644
--- a/source/_components/mqtt_eventstream.markdown
+++ b/source/_components/mqtt_eventstream.markdown
@@ -15,6 +15,8 @@ ha_iot_class: depends
The `mqtt_eventstream` component connects two Home Assistant instances via MQTT.
+## {% linkable_title Configuration %}
+
To integrate MQTT Eventstream into Home Assistant, add the following section to your `configuration.yaml` file:
```yaml
diff --git a/source/_components/mqtt_statestream.markdown b/source/_components/mqtt_statestream.markdown
index 1a607624d3c..8b1afaa89d5 100644
--- a/source/_components/mqtt_statestream.markdown
+++ b/source/_components/mqtt_statestream.markdown
@@ -15,6 +15,8 @@ ha_iot_class: depends
The `mqtt_statestream` component publishes state changes in Home Assistant to individual MQTT topics.
+## {% linkable_title Configuration %}
+
To enable MQTT Statestream in Home Assistant, add the following section to your `configuration.yaml` file:
```yaml
diff --git a/source/_components/mychevy.markdown b/source/_components/mychevy.markdown
index 64584db11d9..15a6b88ff19 100644
--- a/source/_components/mychevy.markdown
+++ b/source/_components/mychevy.markdown
@@ -13,33 +13,31 @@ ha_release: 0.62
ha_iot_class: "Cloud Polling"
---
-The `MyChevy` component communicates with the
-[my.chevrolet](https://my.chevrolet.com) website using selenium to log
-in as your user, and screen scrape the data provided. GM does not
-make it easy to sign up for any official development program, so this
-provides a workaround to get access to your data.
+The `MyChevy` component communicates with the [my.chevrolet](https://my.chevrolet.com) website using selenium to log in as your user, and screen scrape the data provided. GM does not make it easy to sign up for any official development program, so this provides a workaround to get access to your data.
This component provides the following platforms:
- - Binary sensors - if the car is plugged in
- - Sensors - such as Battery Level, Charge Mode, EST Range, Total
- Distance Traveled
+
+ - Binary sensors: if the car is plugged in
+ - Sensors: Battery Level, Charge Mode, EST Range, Total Distance Traveled
+
+## {% linkable_title Configuration %}
To use MyChevy in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
mychevy:
- username: email
- password: password
+ username: YOUR_E_MAIL_ADDRESS
+ password: YOUR_PASSWORD
```
{% configuration %}
username:
- description: The email address associated with your my.chevrolet account
+ description: The email address associated with your my.chevrolet account.
required: true
type: string
password:
- description: The password for your given my.chevrolet account
+ description: The password for your given my.chevrolet account.
required: true
type: string
{% endconfiguration %}
@@ -47,27 +45,15 @@ password:
#### {% linkable_title Installation %}
-Because this uses selenium behind the scenes, installation is more
-complicated than merely pip install. See the installation instructions
-at https://github.com/sdague/mychevy.
+Because this uses selenium behind the scenes, installation is more complicated than merely pip install. See the [installation instructions](https://github.com/sdague/mychevy).
#### {% linkable_title Limitations %}
-The architecture of the GM automotive networking imposes some
-limitations on the functionality of the component.
+The architecture of the GM automotive networking imposes some limitations on the functionality of the component.
-The OnStar network link is very slow, and takes 1 - 3 minutes to get
-information back from the car. As such the mychevy component only
-polls every 30 minutes to not overwhelms that connection.
+The OnStar network link is very slow, and takes 1 - 3 minutes to get information back from the car. As such the mychevy component only polls every 30 minutes to not overwhelms that connection.
-The OnStar network (or more specifically the gateway used by the
-my.chevrolet website) appears to suffer more than most networks when
-the car is a) in a garage, and b) it's cold outside (like < 15 degrees
-F). One of the provided sensors is a status sensor which indicates if
-we got connectivity with the car on the last polling cycle or not.
+The OnStar network (or more specifically the gateway used by the my.chevrolet website) appears to suffer more than most networks when the car is a) in a garage, and b) it's cold outside (like < 15 degrees F). One of the provided sensors is a status sensor which indicates if we got connectivity with the car on the last polling cycle or not.
+
+The "API" for this is written by web scraping. As such, it only currently is known to work if you have a Chevy Bolt EV, and only 1 Chevy car connected to OnStar. Patches for extended support should go to the https://github.com/sdague/mychevy project first, then Home Assistant can be extended.
-The "API" for this is written by web scraping. As such, it only
-currently is known to work if you have a Chevy Bolt EV, and only 1
-Chevy car connected to OnStar. Patches for extended support should go
-to the https://github.com/sdague/mychevy project first, then
-Home Assistant can be extended.
diff --git a/source/_components/neato.markdown b/source/_components/neato.markdown
index 316769ff7ce..82c36d9dfad 100644
--- a/source/_components/neato.markdown
+++ b/source/_components/neato.markdown
@@ -19,15 +19,21 @@ To enable `neato` in your installation, add the following to your `configuration
```yaml
# Example configuration.yaml entry
neato:
- username: USERNAME
- password: PASSWORD
+ username: YOUR_USERNAME
+ password: YOUR_PASSWORD
```
-Configuration variables:
-
-- **username** (*Required*): Username for the Neato account.
-- **password** (*Required*): Password for the Neato account.
+{% configuration %}
+username:
+ description: Username for the Neato account.
+ required: true
+ type: string
+password:
+ description: v
+ required: true
+ type: string
+{% endconfiguration %}
-After the update to firmware 4.0 (which adds cleaning maps) there is also support for displaying the maps of the Botvac D3 Connected and Botvac D5 Connected robots. The start/stop functionality does not work. More information on how to update here: https://support.neatorobotics.com/hc/en-us/articles/115004320694-Software-Update-4-0-for-Neato-Botvac-Connected-D3-D5-
+After the update to firmware 4.0 (which adds cleaning maps) there is also support for displaying the maps of the Botvac D3 Connected and Botvac D5 Connected robots. The start/stop functionality does not work. More information on how to update can be found [here](https://support.neatorobotics.com/hc/en-us/articles/115004320694-Software-Update-4-0-for-Neato-Botvac-Connected-D3-D5-).
If this component throws an error when starting home-assistant you should check if all actors are plugged in and connected to the FritzBox. Inactive actors that are not deleted from FritzBox configuration might lead to errors.
diff --git a/source/_components/switch.hook.markdown b/source/_components/switch.hook.markdown
index 3ba23b8c19a..fbfeef75b4b 100644
--- a/source/_components/switch.hook.markdown
+++ b/source/_components/switch.hook.markdown
@@ -20,23 +20,44 @@ In short, Hook is an RF to Wi-Fi bridge, controlling devices that receive comman
Hook provides a simple [REST API](https://app.swaggerhub.com/api/rahilj/GetHook_RestAPI/v1). This Home Assistant component reads in devices that have been set up in the official app.
+## {% linkable_title Configuration %}
+
Configure with either your username/password or your API token for the official app.
+To enable this platform in your installation, add the following to your `configuration.yaml` file:
+
```yaml
# Example configuration.yaml entry
switch:
- - platform: hook
- username:
New customize information will be applied the next time the state of the entity gets updated.
diff --git a/source/_docs/configuration/templating.markdown b/source/_docs/configuration/templating.markdown
index d00a879b7bd..b8752c54ac5 100644
--- a/source/_docs/configuration/templating.markdown
+++ b/source/_docs/configuration/templating.markdown
@@ -83,10 +83,10 @@ Home Assistant adds extensions to allow templates to access all of the current s
- Filter `timestamp_local` will convert an UNIX timestamp to local time/data.
- Filter `timestamp_utc` will convert an UNIX timestamp to UTC time/data.
- Filter `timestamp_custom(format_string, local_boolean)` will convert an UNIX timestamp to a custom format, the use of a local timestamp is default, supporting [Python format options](https://docs.python.org/3/library/time.html#time.strftime).
-- Filter `max` will obtain the larget item in a sequence.
+- Filter `max` will obtain the largest item in a sequence.
- Filter `min` will obtain the smallest item in a sequence.
-[strp-format]: https://docs.python.org/3.4/library/datetime.html#strftime-and-strptime-behavior
+[strp-format]: https://docs.python.org/3.6/library/datetime.html#strftime-and-strptime-behavior
If your template uses an `entity_id` that begins with a number (example: `states.device_tracker.2008_gmc`) you must use a bracket syntax to avoid errors caused by rendering the `entity_id` improperly. In the example given, the correct syntax for the device tracker would be: `states.device_tracker['2008_gmc']`
diff --git a/source/_docs/installation/docker.markdown b/source/_docs/installation/docker.markdown
index afd31d7e5f2..53ee1037841 100644
--- a/source/_docs/installation/docker.markdown
+++ b/source/_docs/installation/docker.markdown
@@ -80,7 +80,7 @@ If you want to use a USB Bluetooth adapter or Z-Wave USB Stick with Home Assista
### {% linkable_title QNAP NAS %}
-As QNAP within QTS now supports Docker (with a neat UI), you can simply install Home Assistant using docker without the need for command-line. For details about the package (including compatability-information, if your NAS is supported), see https://www.qnap.com/solution/container_station/en/index.php
+As QNAP within QTS now supports Docker (with a neat UI), you can simply install Home Assistant using docker without the need for command-line. For details about the package (including compatibility-information, if your NAS is supported), see https://www.qnap.com/solution/container_station/en/index.php
The steps would be:
diff --git a/source/_docs/installation/virtualenv.markdown b/source/_docs/installation/virtualenv.markdown
index 386adbc7bf4..7c56772af73 100644
--- a/source/_docs/installation/virtualenv.markdown
+++ b/source/_docs/installation/virtualenv.markdown
@@ -17,7 +17,7 @@ It's recommended when installing Python packages that you use a [virtual environ
_(If you're on a Debian based system, you will need to install Python virtual environment support using `apt-get install python3-pip python3-venv`.)_
-It is recommended to use the [advanced guide](/docs/installation/raspberry-pi/) which allows for the installation to run as a `homeassistant` user. The steps below may be shorter but some users find difficulty when applying updates and may run into issues.
+It is recommended to use the [advanced guide](/docs/installation/raspberry-pi/) which allows for the installation to run as a `homeassistant` user. The steps below may be shorter but some users find difficulty when applying updates and may run into issues.
Looking for more advanced guides? Check our [Rasbian guide](/docs/installation/raspberry-pi/) or the [other installation guides](/docs/installation/).
service developer tools, select the service `homeassistant/reload_core_config` and click "Call Service".
+Home Assistant offers a service to reload the core configuration while Home Assistant is running called `homeassistant.reload_core_config`. This allows you to change your customize section and see it being applied without having to restart Home Assistant. To call this service, go to the
service developer tools, select the service `homeassistant.reload_core_config` and click "CALL SERVICE".