diff --git a/source/_components/binary_sensor.ads.markdown b/source/_components/binary_sensor.ads.markdown index 753858d9737..ab988a737ae 100644 --- a/source/_components/binary_sensor.ads.markdown +++ b/source/_components/binary_sensor.ads.markdown @@ -26,16 +26,16 @@ binary_sensor: ``` {% configuration %} - adsvar: - required: true - description: The name of the variable which you want to access on the ADS device. - type: string - name: - required: false - description: An identifier for the light in the frontend. - type: string - device_class: - required: false - description: The [type/class](/components/binary_sensor/) of the sensor to set the icon in the frontend. - type: string +adsvar: + description: The name of the variable which you want to access on the ADS device. + required: true + type: string +name: + description: An identifier for the light in the frontend. + required: false + type: string +device_class: + description: The [type/class](/components/binary_sensor/) of the sensor to set the icon in the frontend. + required: false + type: string {% endconfiguration %} diff --git a/source/_components/binary_sensor.aurora.markdown b/source/_components/binary_sensor.aurora.markdown index 460500c24c3..f0429886ac2 100644 --- a/source/_components/binary_sensor.aurora.markdown +++ b/source/_components/binary_sensor.aurora.markdown @@ -32,17 +32,19 @@ binary_sensor: forecast_threshold: description: Provide your own threshold number above which the sensor will trigger. required: false - default: 75 type: integer + default: 75 name: description: The name of the sensor. required: false - default: Aurora Visibility type: string + default: Aurora Visibility {% endconfiguration %} +## {% linkable_title Full example %} + ```yaml - binary_sensor: - - platform: aurora - forecast_threshold: 50 +binary_sensor: + - platform: aurora + forecast_threshold: 50 ``` diff --git a/source/_components/binary_sensor.bayesian.markdown b/source/_components/binary_sensor.bayesian.markdown index a5b1779ce58..6154fbaa1f2 100644 --- a/source/_components/binary_sensor.bayesian.markdown +++ b/source/_components/binary_sensor.bayesian.markdown @@ -14,7 +14,6 @@ ha_release: 0.53 ha_qa_scale: internal --- - The `bayesian` binary sensor platform observes the state from multiple sensors and uses [Bayes' rule](https://en.wikipedia.org/wiki/Bayes%27_theorem) to estimate the probability that an event has occurred given the state of the observed sensors. If the estimated posterior probability is above the `probability_threshold`, the sensor is `on` otherwise it is `off`. This allows for the detection of complex events that may not be readily observable, e.g., cooking, showering, in bed, the start of a morning routine, etc. It can also be used to gain greater confidence about events that _are_ directly observable, but for which the sensors can be unreliable, e.g., presence. @@ -36,20 +35,58 @@ binary_sensor: to_state: 'on' ``` -Configuration variables: - -- **prior** (*Required*): The prior probability of the event. At any point in time (ignoring all external influences) how likely is this event to occur? -- **probability_threshold** (*Optional*): The probability at which the sensor should trigger to `on`. -- **name** (*Optional*): Name of the sensor to use in the frontend. Defaults to `Bayesian Binary sensor`. -- **observations** array (*Required*): The observations which should influence the likelihood that the given event has occurred. - - **entity_id** (*Required*): Name of the entity to monitor. - - **prob_given_true** (*Required*): The probability of the observation occurring, given the event is `true`. - - **prob_given_false** (*Optional*): The probability of the observation occurring, given the event is `false` can be set as well. If `prob_given_false` is not set, it will default to `1 - prob_given_true`. - - **platform** (*Required*): The only supported observation platforms are `state` and `numeric_state`, which are modeled after their corresponding triggers for automations, requiring `below` and/or `above` instead of `to_state`. - - **to_state** (*Required*): The target state. +{% configuration %} +prior: + description: > + The prior probability of the event. At any point in time + (ignoring all external influences) how likely is this event to occur? + required: true + type: float +probability_threshold: + description: The probability at which the sensor should trigger to `on`. + required: false + type: float + default: 0.5 +name: + description: Name of the sensor to use in the frontend. + required: false + type: string + default: Bayesian Binary Sensor +observations: + description: The observations which should influence the likelihood that the given event has occurred. + required: true + type: list + keys: + entity_id: + description: Name of the entity to monitor. + required: true + type: string + prob_given_true: + description: The probability of the observation occurring, given the event is `true`. + required: true + type: float + prob_given_false: + description: The probability of the observation occurring, given the event is `false` can be set as well. + required: false + type: float + default: "`1 - prob_given_true` if `prob_given_false` is not set" + platform: + description: > + The only supported observation platforms are `state` and `numeric_state`, + which are modeled after their corresponding triggers for automations, + requiring `below` and/or `above` instead of `to_state`. + required: true + type: string + to_state: + description: The target state. + required: true + type: string +{% endconfiguration %} ## {% linkable_title Full examples %} +The following is an example for the `state` observation platform. + ```yaml # Example configuration.yaml entry binary_sensor: @@ -78,6 +115,8 @@ binary_sensor: to_state: 'below_horizon' ``` +Next up an example which targets the `numeric_state` observation platform, +as seen in the configuration it requires `below` and/or `above` instead of `to_state`. ```yaml # Example configuration.yaml entry diff --git a/source/_components/binary_sensor.bbb_gpio.markdown b/source/_components/binary_sensor.bbb_gpio.markdown index 66e4c98f4fa..069c6c9eb1d 100644 --- a/source/_components/binary_sensor.bbb_gpio.markdown +++ b/source/_components/binary_sensor.bbb_gpio.markdown @@ -48,18 +48,18 @@ pins: bouncetime: description: Debounce time for reading input pin defined in milliseconds [ms]. required: false - default: 50 type: integer + default: 50 invert_logic: description: If `true`, inverts the input logic to ACTIVE LOW required: false - default: false type: boolean + default: false pull_mode: description: Type of internal pull resistor connected to input. Options are `UP` - pull-up resistor and `DOWN` - pull-down resistor. required: false - default: UP - type: string + type: string + default: UP {% endconfiguration %} For more details about the GPIO layout, visit the [article](http://elinux.org/Beagleboard:BeagleBoneBlack) about the BeagleBone Black. diff --git a/source/_components/binary_sensor.command_line.markdown b/source/_components/binary_sensor.command_line.markdown index 0bf0512d265..8f499766a42 100644 --- a/source/_components/binary_sensor.command_line.markdown +++ b/source/_components/binary_sensor.command_line.markdown @@ -13,7 +13,6 @@ ha_release: 0.12 ha_iot_class: "Local Polling" --- - The `command_line` binary sensor platform issues specific commands to get data. ## {% linkable_title Configuration %} @@ -33,10 +32,10 @@ command: required: true type: string name: - description: Let you overwrite the name of the device. By default *name* from the device is used. + description: Let you overwrite the name of the device. required: false - default: name type: string + default: "*name* from the device" device_class: description: The [type/class](/components/binary_sensor/) of the sensor to set the icon in the frontend. required: false @@ -44,13 +43,13 @@ device_class: payload_on: description: The payload that represents enabled state. required: false - default: ON type: string + default: ON payload_off: description: The payload that represents disabled state. required: false - default: OFF type: string + default: OFF value_template: description: Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the payload. required: false @@ -58,13 +57,13 @@ value_template: scan_interval: description: Defines number of seconds for polling interval. required: false - default: 60 type: integer + default: 60 command_timeout: description: Defines number of seconds for command timeout. required: false - default: 15 type: integer + default: 15 {% endconfiguration %} ## {% linkable_title Examples %} diff --git a/source/_components/binary_sensor.concord232.markdown b/source/_components/binary_sensor.concord232.markdown index f734d4afa5b..79d12a803aa 100644 --- a/source/_components/binary_sensor.concord232.markdown +++ b/source/_components/binary_sensor.concord232.markdown @@ -14,6 +14,8 @@ ha_release: 0.31 The `concord232` platform provides integration with GE, Interlogix (and other brands) alarm panels that support the RS-232 Automation Control Panel interface module (or have it built in). Supported panels include Concord 4. +## {% linkable_title Configuration %} + To enable this, add the following lines to your `configuration.yaml`: ```yaml @@ -26,11 +28,11 @@ binary_sensor: host: description: The host where the concord232 server process is running. required: false - default: localhost type: string + default: localhost port: description: The port where the Alarm panel is listening. required: false - default: 5007 type: integer + default: 5007 {% endconfiguration %} diff --git a/source/_components/binary_sensor.ffmpeg_motion.markdown b/source/_components/binary_sensor.ffmpeg_motion.markdown index eaf15a86a79..a342d640643 100644 --- a/source/_components/binary_sensor.ffmpeg_motion.markdown +++ b/source/_components/binary_sensor.ffmpeg_motion.markdown @@ -13,7 +13,6 @@ ha_release: 0.27 redirect_from: /components/binary_sensor.ffmpeg/ --- - The `ffmpeg` platform allows you to use any video feed with [FFmpeg](http://www.ffmpeg.org/) for motion sensors in Home Assistant.

@@ -47,28 +46,28 @@ name: initial_state: description: Start `ffmpeg` with Home Assistant. required: false - default: true type: boolean + default: true changes: description: How much needs to change between two frames to detect it as motion, value in percentage (a lower value is more sensitive). required: false - default: 10% type: integer + default: 10 reset: description: The time to reset the state after no new motion is detected. required: false - default: 20 type: integer + default: 20 repeat: description: How many events need to be detected in *repeat_time* in order to trigger a motion, 0 repeats means deactivated. required: false - default: 0 type: integer + default: 0 repeat_time: description: The span of time *repeat* events need to occur in before triggering a motion, 0 seconds means deactivated. required: false - default: 0 type: integer + default: 0 extra_arguments: description: Extra options to pass to `ffmpeg`, e.g., video denoise filtering. required: false diff --git a/source/_components/binary_sensor.ffmpeg_noise.markdown b/source/_components/binary_sensor.ffmpeg_noise.markdown index ae2077cd298..53f45188b8d 100644 --- a/source/_components/binary_sensor.ffmpeg_noise.markdown +++ b/source/_components/binary_sensor.ffmpeg_noise.markdown @@ -12,7 +12,6 @@ ha_category: Image Processing ha_release: 0.27 --- - The `ffmpeg` platform allows you to use any video or audio feed with [FFmpeg](http://www.ffmpeg.org/) for various sensors in Home Assistant.

@@ -42,23 +41,23 @@ name: initial_state: description: Start ffmpeg with home-assistant. required: false - default: true type: boolean + default: true peak: description: The threshold of detecting noise, in dB. 0 is very loud and -100 is low. required: false - default: -30 type: integer + default: -30 duration: description: How long the noise needs to be over the peak to trigger the state. required: false - default: 1 type: integer + default: 1 reset: description: The time to reset the state after no new noise is over the peak. required: false - default: 20 type: integer + default: 20 extra_arguments: description: Extra options to pass to `ffmpeg`, like audio frequency filtering. required: false diff --git a/source/_components/binary_sensor.gc100.markdown b/source/_components/binary_sensor.gc100.markdown index 80d828723bd..2551d551004 100644 --- a/source/_components/binary_sensor.gc100.markdown +++ b/source/_components/binary_sensor.gc100.markdown @@ -23,7 +23,11 @@ binary_sensor: - '3:2': Garage Obstruction ``` -Configuration variables: - -- **ports** (*Required*): A list of module-address to name mappings in the format 'x:y': name, where x is module #, y is address. - +{% configuration %} +ports: + description: > + A list of module-address to name mappings in the format `'x:y': name`, + where x is module #, y is address. + required: true + type: list +{% endconfiguration %} diff --git a/source/_components/binary_sensor.knx.markdown b/source/_components/binary_sensor.knx.markdown index 97004e94b8e..9bb13677c13 100644 --- a/source/_components/binary_sensor.knx.markdown +++ b/source/_components/binary_sensor.knx.markdown @@ -42,14 +42,16 @@ device_class: significant_bit: description: Specify which significant bit of the KNX value should be used. required: false - default: 1 type: integer + default: 1 reset_after: description: Reset back to OFF state after specified milliseconds. required: false type: integer {% endconfiguration %} +### {% linkable_title Automation actions %} + You can also attach actions to binary sensors (e.g., to switch on a light when a switch was pressed). In this example, one light is switched on when the button was pressed once and two others when the button was pressed a second time. ```yaml @@ -81,13 +83,13 @@ name: counter: description: Set to 2 if your only want the action to be executed if the button was pressed twice. To 3 for three times button pressed. required: false - default: 1 type: integer + default: 1 hook: description: Indicates if the automation should be executed on what state of the binary sensor. Values are "on" or "off". required: false - default: "on" type: string + default: "on" action: description: Specify a list of actions analog to the [automation rules](/docs/automation/action/). required: false diff --git a/source/_components/binary_sensor.linode.markdown b/source/_components/binary_sensor.linode.markdown index cf6392993f5..414d4c2ae17 100644 --- a/source/_components/binary_sensor.linode.markdown +++ b/source/_components/binary_sensor.linode.markdown @@ -28,9 +28,8 @@ binary_sensor: ``` {% configuration %} - nodes: - description: List of VPSs you want to control. - required: true - type: string +nodes: + description: List of VPSs you want to control. + required: true + type: string {% endconfiguration %} - diff --git a/source/_components/binary_sensor.nx584.markdown b/source/_components/binary_sensor.nx584.markdown index 0f9c17dea93..88e77577dcc 100644 --- a/source/_components/binary_sensor.nx584.markdown +++ b/source/_components/binary_sensor.nx584.markdown @@ -17,6 +17,8 @@ The `nx584` platform provides integration with GE, Caddx, Interlogix (and other Enabling this sensor platform exposes all of your zones as binary sensors, which provides visibility through the UI as well as the ability to trigger automation actions instantly when something happens like a door opening, or a motion sensor trigger. +## {% linkable_title Configuration %} + To enable this feature, add the following lines to your `configuration.yaml`: ```yaml @@ -29,19 +31,19 @@ binary_sensor: host: description: This is the host where the nx584 server process is running. If unset, it is assumed to be `localhost`, which will work if the server process is running on the same system as Home Assistant. required: false - default: localhost type: string + default: localhost port: description: The port where the server process is running. required: false - default: 5007 type: integer + default: 5007 exclude_zones: description: This is a list of zone numbers that should be excluded. Use this to avoid exposing a zone that is of no interest, unconnected, etc. required: false type: [list, integer] zone_types: - description: This is a list of zone numbers mapped to zone types. Use this to designate zones as doors, motion sensors, smoke detectors, etc. See the list of available zone types relevant to alarm zones below. + description: This is a list of zone numbers mapped to zone types. Use this to designate zones as doors, motion sensors, smoke detectors, etc. See the list of available zone types relevant to alarm zones below. required: false type: map keys: @@ -59,6 +61,8 @@ zone_types: description: Safety {% endconfiguration %} +## {% linkable_title Full example %} + An extended configuration entry could look like this: ```yaml diff --git a/source/_components/binary_sensor.octoprint.markdown b/source/_components/binary_sensor.octoprint.markdown index 83bed7216f0..c4181593468 100644 --- a/source/_components/binary_sensor.octoprint.markdown +++ b/source/_components/binary_sensor.octoprint.markdown @@ -13,13 +13,13 @@ ha_release: 0.19 ha_iot_class: "Local Polling" --- -The `octoprint` sensor platform let you monitor various states of your 3D printer and its print jobs. +The `octoprint` binary sensor platform let you monitor if your 3D printer is printing or if there was a printing error.

You must have the [OctoPrint component](/components/octoprint/) configured to use this binary sensor. After configuring that component, binary sensors automatically appear.

-<<<<<<< HEAD -======= + +## {% linkable_title Configuration %} To set it up, add the following information to your `configuration.yaml` file: @@ -42,9 +42,8 @@ monitored_conditions: printing error: description: Error while printing. name: - description: - required: The name of the sensor. - default: OctoPrint + description: The name of the sensor. + required: false type: string + default: OctoPrint {% endconfiguration %} ->>>>>>> current diff --git a/source/_components/binary_sensor.rfxtrx.markdown b/source/_components/binary_sensor.rfxtrx.markdown index dbfe56427b6..99470e2be45 100644 --- a/source/_components/binary_sensor.rfxtrx.markdown +++ b/source/_components/binary_sensor.rfxtrx.markdown @@ -21,7 +21,7 @@ them may be recognized under the X10 protocol but most of them are recognized under the *Lighting4* protocol. The rfxtrx binary sensor component provides some special options for them, while other rfxtrx protocols should work too. -# Setting up your devices +## {% linkable_title Setting up your devices %} Once you have set up your [rfxtrx hub](/components/rfxtrx/), the easiest way to find your binary sensors is to add this to your `configuration.yaml`: @@ -67,8 +67,8 @@ devices: fire_event: description: Fires an event even if the state is the same as before. Can be used for automations. required: false - default: false type: boolean + default: false off_delay: description: For sensors that only sends 'On' state updates, this variable sets a delay after which the sensor state will be updated back to 'Off'. required: false @@ -88,8 +88,8 @@ devices: automatic_add: description: To enable the automatic addition of new binary sensors. required: false - default: false type: boolean + default: false {% endconfiguration %}

@@ -131,7 +131,7 @@ binary_sensor: seconds: 5 ``` -## Options for PT-2262 devices under the Lighting4 protocol +### {% linkable_title Options for PT-2262 devices under the Lighting4 protocol %} When a data packet is transmitted by a PT-2262 device using the Lighting4 protocol, there is no way to automatically extract the device identifier and the @@ -201,7 +201,7 @@ This automatic guess should work most of the time but there is no guarantee on that. You should activate it only when you want to configure your new devices and leave it off otherwise. -## Known working devices +### {% linkable_title Known working devices %} The following devices are known to work with the rfxtrx binary sensor component. There are too many other to list. diff --git a/source/_components/binary_sensor.rpi_gpio.markdown b/source/_components/binary_sensor.rpi_gpio.markdown index 5b95daed1ca..8494c3af37c 100644 --- a/source/_components/binary_sensor.rpi_gpio.markdown +++ b/source/_components/binary_sensor.rpi_gpio.markdown @@ -28,13 +28,33 @@ binary_sensor: 12: PIR Bedroom ``` -Configuration variables: - -- **ports** array (*Required*): Array of used ports. - - **port: name** (*Required*): Port numbers (BCM mode pin numbers) and corresponding names. -- **pull_mode** (*Optional*): The internal pull to use (UP or DOWN). Default is UP. -- **bouncetime** (*Optional*): The time in milliseconds for port debouncing. Default is 50ms. -- **invert_logic** (*Optional*): If true, inverts the output logic to ACTIVE LOW. Default is false (ACTIVE HIGH). +{% configuration %} +ports: + description: List of used ports. + required: true + type: map + keys: + "port: name": + description: The port numbers (BCM mode pin numbers) and corresponding names. + required: true + type: string +bouncetime: + description: The time in milliseconds for port debouncing. + required: false + type: integer + default: 50 +invert_logic: + description: If `true`, inverts the output logic to ACTIVE LOW. + required: false + type: boolean + default: "`false` (ACTIVE HIGH)" +pull_mode: + description: > + Type of internal pull resistor to use. + Options are `UP` - pull-up resistor and `DOWN` - pull-down resistor. + required: false + type: string + default: "`UP`" +{% endconfiguration %} For more details about the GPIO layout, visit the Wikipedia [article](https://en.wikipedia.org/wiki/Raspberry_Pi#GPIO_connector) about the Raspberry Pi. - diff --git a/source/_components/binary_sensor.rpi_pfio.markdown b/source/_components/binary_sensor.rpi_pfio.markdown index 29cda1530da..7dad33505d0 100644 --- a/source/_components/binary_sensor.rpi_pfio.markdown +++ b/source/_components/binary_sensor.rpi_pfio.markdown @@ -32,11 +32,29 @@ binary_sensor: settle_time: 50 ``` -Configuration variables: - -- **ports** array (*Required*): Array of used ports. - - **num** (*Required*): Port number. - - **name** (*Required*): Port name. - - **settle_time** (*Optional*): The time in milliseconds for port debouncing. Default is 2 0ms. - - **invert_logic** (*Optional*): If true, inverts the output logic to ACTIVE LOW. Default is false (ACTIVE HIGH). - +{% configuration %} +ports: + description: List of used ports. + required: true + type: map + keys: + num: + description: The port number. + required: true + type: map + keys: + name: + description: The port name. + required: true + type: string + settle_time: + description: The time in milliseconds for port debouncing. + required: false + type: integer + default: 20 + invert_logic: + description: If `true`, inverts the output logic to ACTIVE LOW. + required: false + type: boolean + default: "`false` (ACTIVE HIGH)" +{% endconfiguration %} diff --git a/source/_components/binary_sensor.skybell.markdown b/source/_components/binary_sensor.skybell.markdown index 5ca42b98c33..4f3d63d7c35 100644 --- a/source/_components/binary_sensor.skybell.markdown +++ b/source/_components/binary_sensor.skybell.markdown @@ -30,9 +30,9 @@ binary_sensor: {% configuration %} monitored_conditions: - type: list - required: true description: Conditions to display in the frontend. The following conditions can be monitored. + required: true + type: list keys: button: description: Returns whether the doorbell button was pressed. diff --git a/source/_components/binary_sensor.tcp.markdown b/source/_components/binary_sensor.tcp.markdown index e5651d954b6..21242113632 100644 --- a/source/_components/binary_sensor.tcp.markdown +++ b/source/_components/binary_sensor.tcp.markdown @@ -14,53 +14,57 @@ ha_release: 0.14 The TCP Binary Sensor is a type of [TCP Sensor](/components/sensor.tcp/) which is either "off" or "on". In order to use this sensor type, in addition to the configuration for the TCP Sensor, you must supply a `value_on` value to represent what is returned when the device is turned on. +## {% linkable_title Configuration %} + To enable this sensor, add the following lines to your `configuration.yaml`: ```yaml -binary_sensor: # Example configuration.yaml entry - platform: tcp - name: TCP Binary Sensor - host: IP_ADDRESS - port: PORT - payload: "r State\n" - value_on: 1 - timeout: 5 +binary_sensor: + - platform: tcp + name: TCP Binary Sensor + host: IP_ADDRESS + port: PORT + payload: "r State\n" + value_on: 1 + timeout: 5 ``` -Configuration options for the a TCP Sensor: - {% configuration %} name: - required: true - description: The name you'd like to give the sensor in Home Assistant. - type: string + description: The name you'd like to give the sensor in Home Assistant. + required: false + type: string + default: TCP Sensor host: - required: true - description: The hostname/IP address to connect to. - type: string + description: The hostname/IP address to connect to. + required: true + type: string port: - required: true - description: The port to connect to the host on. - type: integer + description: The port to connect to the host on. + required: true + type: integer payload: - required: true - description: What to send to the host in order to get the response we're interested in. - type: string + description: What to send to the host in order to get the response we're interested in. + required: true + type: string value_on: - required: true - description: The value returned when the device is "on". - type: string -timeout: - required: false - description: How long in seconds to wait for a response from the service before giving up and disconnecting. Defaults to 10. - type: integer + description: The value returned when the device is "on". + required: true + type: string value_template: - required: false - description: Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract the value. By default it's assumed that the entire response is the value. - type: string + description: Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract the value. + required: false + type: template + default: entire response is the value buffer_size: - required: false - description: The size of the receive buffer in bytes. Set this to a larger value if you expect to receive a response larger than the default. Defaults to 1024. - type: integer -{% endconfiguration %} \ No newline at end of file + description: The size of the receive buffer in bytes. Set this to a larger value if you expect to receive a response larger than the default. + required: false + type: integer + default: 1024 +timeout: + description: How long in seconds to wait for a response from the service before giving up and disconnecting. + required: false + type: integer + default: 10 +{% endconfiguration %} diff --git a/source/_components/binary_sensor.template.markdown b/source/_components/binary_sensor.template.markdown index 24b9f047567..4462349926f 100644 --- a/source/_components/binary_sensor.template.markdown +++ b/source/_components/binary_sensor.template.markdown @@ -18,6 +18,8 @@ The `template` platform supports sensors which break out the `state` and `state_attributes` from other entities. The state of a Template Binary Sensor can only be `on` or `off`. +## {% linkable_title Configuration %} + To enable Template Binary Sensors in your installation, add the following to your `configuration.yaml` file: diff --git a/source/_components/binary_sensor.vera.markdown b/source/_components/binary_sensor.vera.markdown index d5e5d9fb14d..b0be093c688 100644 --- a/source/_components/binary_sensor.vera.markdown +++ b/source/_components/binary_sensor.vera.markdown @@ -14,5 +14,5 @@ ha_release: pre 0.7 --- The `vera` platform allows you to get data from your [Vera](http://getvera.com/) binary sensors from within Home Assistant. - + They will be automatically discovered if the vera component is loaded. diff --git a/source/_components/binary_sensor.verisure.markdown b/source/_components/binary_sensor.verisure.markdown index 1f9b9f0f4e3..370dff6e88e 100644 --- a/source/_components/binary_sensor.verisure.markdown +++ b/source/_components/binary_sensor.verisure.markdown @@ -16,4 +16,4 @@ Integrates Verisure binary sensors into Home Assistant. See the [main component] The following binary sensor types are supported: -Door & Window +- Door & Window diff --git a/source/_components/binary_sensor.vultr.markdown b/source/_components/binary_sensor.vultr.markdown index a78cb30dc37..bd71ac62b8a 100644 --- a/source/_components/binary_sensor.vultr.markdown +++ b/source/_components/binary_sensor.vultr.markdown @@ -15,6 +15,8 @@ ha_iot_class: "Cloud Polling" The `vultr` binary sensor platform allows you to monitor your [Vultr](https://www.vultr.com/) subscription to see if it is powered on or not. +## {% linkable_title Configuration %} + To use this binary sensor, you first have to set up your [Vultr hub](/components/vultr/).

@@ -42,6 +44,7 @@ name: type: string {% endconfiguration %} +## {% linkable_title Full example %} Full `configuration.yaml` (produces `binary_sensor.totally_awesome_server`): @@ -51,4 +54,3 @@ binary_sensor: name: totally_awesome_server subscription: 12345 ``` - diff --git a/source/_components/binary_sensor.wink.markdown b/source/_components/binary_sensor.wink.markdown index 1d23f5bf7c1..1633d206bc9 100644 --- a/source/_components/binary_sensor.wink.markdown +++ b/source/_components/binary_sensor.wink.markdown @@ -13,12 +13,10 @@ ha_release: 0.14 ha_iot_class: "Cloud Polling" --- - The Wink binary sensor platform allows you to get data from your [Wink](http://www.wink.com/) binary sensors. The requirement is that you have setup [Wink](/components/wink/). - ### {% linkable_title Supported Binary sensor devices %} - Smoke and CO detectors (No Wink hub required for Nest) @@ -36,4 +34,3 @@ The requirement is that you have setup [Wink](/components/wink/).

The above devices are confirmed to work, but others may work as well.

- diff --git a/source/_components/binary_sensor.wirelesstag.markdown b/source/_components/binary_sensor.wirelesstag.markdown index a98a129255b..f7b50106887 100644 --- a/source/_components/binary_sensor.wirelesstag.markdown +++ b/source/_components/binary_sensor.wirelesstag.markdown @@ -56,4 +56,3 @@ monitored_conditions: battery: description: On means tag battery is low, Off means normal. {% endconfiguration %} - diff --git a/source/_components/binary_sensor.workday.markdown b/source/_components/binary_sensor.workday.markdown index c589e08bcfd..3a9b3253922 100644 --- a/source/_components/binary_sensor.workday.markdown +++ b/source/_components/binary_sensor.workday.markdown @@ -82,6 +82,8 @@ If you use the sensor for Canada (`CA`) with Ontario (`ON`) as `province:` then Otherwise the value is evaluated as `true` (check the YAML documentation for further details) and the sensor will not work.

+## {% linkable_title Automation example %} + Example usage for automation: ```yaml diff --git a/source/_components/binary_sensor.xiaomi_aqara.markdown b/source/_components/binary_sensor.xiaomi_aqara.markdown index 190d72b2c3c..c03227bafb0 100644 --- a/source/_components/binary_sensor.xiaomi_aqara.markdown +++ b/source/_components/binary_sensor.xiaomi_aqara.markdown @@ -13,12 +13,10 @@ ha_release: "0.50" ha_iot_class: "Local Push" --- - The `xiaomi aqara` binary sensor platform allows you to get data from your [Xiaomi](http://www.mi.com/en/) binary sensors. The requirement is that you have setup the [`xiaomi aqara` component](/components/xiaomi_aqara/). - ### {% linkable_title Type of sensors supported %} | Name | ZigBee entity | Model no. | States | Event | Event key | Event values | diff --git a/source/_components/binary_sensor.zigbee.markdown b/source/_components/binary_sensor.zigbee.markdown index 60f8aac30e1..876b9b95fb7 100644 --- a/source/_components/binary_sensor.zigbee.markdown +++ b/source/_components/binary_sensor.zigbee.markdown @@ -15,6 +15,8 @@ ha_iot_class: "Local Polling" A `zigbee` binary sensor in this context is a device connected to one of the digital input pins on a [ZigBee](http://www.zigbee.org/) module. The states reported by such a device are limited to `on` or `off`. By default, a binary sensor is considered `on` when the ZigBee device's digital input pin is held 'high' and considered `off` when it is held `low`. This behavior can be inverted by setting the `on_state` configuration variable to `low`. +## {% linkable_title Configuration %} + To enable a digital input pin as binary sensor in your installation, add the following lines to your `configuration.yaml`: ```yaml diff --git a/source/_components/blink.markdown b/source/_components/blink.markdown index 097e919cb0b..953c77c1375 100644 --- a/source/_components/blink.markdown +++ b/source/_components/blink.markdown @@ -129,4 +129,4 @@ homeassistant: ### {% linkable_title Other Services %} -In addition to the services mentioned above, there are generic `camera` and `alarm_control_panel` services available for use as well. The `camera.enable_motion_detection` and `camera.disable_motion_detection` services allow for individual cameras to be enabled and disabled, respectively, within the Blink system. The `alarm_control_panel.alarm_arm_away` and `alarm_control_panel.alarm_disarm` services allow for the whole system to be armed and disarmed, respectively. +In addition to the services mentioned above, there are generic `camera` and `alarm_control_panel` services available for use as well. The `camera.enable_motion_detection` and `camera.disable_motion_detection` services allow for individual cameras to be enabled and disabled, respectively, within the Blink system. The `alarm_control_panel.alarm_arm_away` and `alarm_control_panel.alarm_disarm` services allow for the whole system to be armed and disarmed, respectively. diff --git a/source/_components/bmw_connected_drive.markdown b/source/_components/bmw_connected_drive.markdown index 064d426cbb8..221e893d27e 100644 --- a/source/_components/bmw_connected_drive.markdown +++ b/source/_components/bmw_connected_drive.markdown @@ -23,6 +23,8 @@ This component provides the following platforms: - Lock: Control the lock of your car. - Sensors: Mileage, remaining range, remaining fuel, charging time remaining (electric cars), charging status (electric cars), remaining range electric (electric cars). + ## {% linkable_title Configuration %} + To enable this component in your installation, add the following to your `configuration.yaml` file: @@ -78,13 +80,13 @@ The vehicle can be locked and unlocked via the lock component that is created au The air condition of the vehicle can be activated with the service `bmw_connected_drive.activate_air_conditioning`. -What exactly is started here depends on the type of vehicle. It might range from just ventilation over auxiliary heating to real air conditioning. If your vehicle is equipped with auxiliary heating, only trigger this service if the vehicle is parked in a location where it is safe to use it (e.g., not in an underground parking or closed garage). +What exactly is started here depends on the type of vehicle. It might range from just ventilation over auxiliary heating to real air conditioning. If your vehicle is equipped with auxiliary heating, only trigger this service if the vehicle is parked in a location where it is safe to use it (e.g., not in an underground parking or closed garage). The vehicle is identified via the parameter `vin`. ### {% linkable_title Sound the horn %} -The service `bmw_connected_drive.sound_horn` sounds the horn of the vehicle. This option is not available in some countries (among which the UK). Use this feature responsibly, as it might annoy your neighbors. The vehicle is identified via the parameter `vin`. +The service `bmw_connected_drive.sound_horn` sounds the horn of the vehicle. This option is not available in some countries (among which the UK). Use this feature responsibly, as it might annoy your neighbors. The vehicle is identified via the parameter `vin`. ### {% linkable_title Flash the lights %} @@ -92,10 +94,10 @@ The service `bmw_connected_drive.light_flash` flashes the lights of the vehicle. ### {% linkable_title Update the state %} -The service `bmw_connected_drive.update_state` fetches the last state of the vehicles of all your accounts from the BMW server. This does *not* trigger an update from the vehicle; it gets the data from the BMW servers. So this service does *not* interact with your vehicles. +The service `bmw_connected_drive.update_state` fetches the last state of the vehicles of all your accounts from the BMW server. This does *not* trigger an update from the vehicle; it gets the data from the BMW servers. So this service does *not* interact with your vehicles. This service does not require any attributes. ## {% linkable_title Disclaimer %} -This software is not affiliated with or endorsed by BMW Group. +This software is not affiliated with or endorsed by BMW Group. diff --git a/source/_components/browser.markdown b/source/_components/browser.markdown index 7edd741593f..82741ab6fe0 100644 --- a/source/_components/browser.markdown +++ b/source/_components/browser.markdown @@ -12,9 +12,10 @@ ha_category: Utility ha_qa_scale: internal --- - The `browser` component provides a service to open URLs in the default browser on the host machine. +## {% linkable_title Configuration %} + To load this component, add the following lines to your `configuration.yaml`: ```yaml @@ -22,7 +23,7 @@ To load this component, add the following lines to your `configuration.yaml`: browser: ``` -#### {% linkable_title Service `browser/browse_url` %} +#### {% linkable_title Service `browser/browse_url` %} | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------- | diff --git a/source/_components/calendar.google.markdown b/source/_components/calendar.google.markdown index ffa9233da25..f47ee421ac3 100644 --- a/source/_components/calendar.google.markdown +++ b/source/_components/calendar.google.markdown @@ -177,7 +177,7 @@ Trigger as soon as an event starts: to: 'on' ``` -By using specific text in the event title, you can set conditions to initiate particular automation flows on designated events while other events will be ignored. +By using specific text in the event title, you can set conditions to initiate particular automation flows on designated events while other events will be ignored. For example, the actions following this condition will only be executed for events named 'vacation': diff --git a/source/_components/camera.amcrest.markdown b/source/_components/camera.amcrest.markdown index 73a6ca444f0..a4b5002bd7f 100644 --- a/source/_components/camera.amcrest.markdown +++ b/source/_components/camera.amcrest.markdown @@ -15,6 +15,8 @@ ha_release: 0.34 To get your [Amcrest](https://amcrest.com/) cameras working within Home Assistant, please follow the instructions for the general [Amcrest component](/components/amcrest). +## {% linkable_title Configuration %} + Once you have enabled the [Amcrest component](/components/amcrest), add the following to your `configuration.yaml` file: ```yaml diff --git a/source/_components/camera.android_ip_webcam.markdown b/source/_components/camera.android_ip_webcam.markdown index 8aa3455faa8..0084fcebdb1 100644 --- a/source/_components/camera.android_ip_webcam.markdown +++ b/source/_components/camera.android_ip_webcam.markdown @@ -13,9 +13,10 @@ ha_release: "0.40" ha_iot_class: "Local Polling" --- - The `android_ip_webcam` component adds a camera by default if you choose not to use the component but still want to see the video feed then the [`mjpeg` camera](/components/camera.mjpeg/) platform can be used. +## {% linkable_title Configuration %} + To enable only the camera in your installation, add the following to your `configuration.yaml` file: ```yaml @@ -24,4 +25,3 @@ camera: - platform: mjpeg mjpeg_url: http://IP_ADDRESS:8080/video ``` - diff --git a/source/_components/camera.arlo.markdown b/source/_components/camera.arlo.markdown index cd748d21b17..07b8fb3f726 100644 --- a/source/_components/camera.arlo.markdown +++ b/source/_components/camera.arlo.markdown @@ -17,6 +17,8 @@ To get your [Arlo](https://arlo.netgear.com/) cameras working within Home Assist This component is not yet able to live stream from your Arlo camera, but it will be able to playback the last video capture. +## {% linkable_title Configuration %} + Once you have enabled the [Arlo component](/components/arlo), add the following to your `configuration.yaml` file: ```yaml diff --git a/source/_components/camera.bloomsky.markdown b/source/_components/camera.bloomsky.markdown index 6c600b20a84..aec143513a8 100644 --- a/source/_components/camera.bloomsky.markdown +++ b/source/_components/camera.bloomsky.markdown @@ -13,7 +13,6 @@ ha_release: 0.13 ha_iot_class: "Local Polling" --- - The `bloomsky` camera component allows you to view the current photo created by the camera in the [BloomSky](https://www.bloomsky.com) weather station. This can work in concert with [BloomSky sensors](/components/sensor.bloomsky). ## {% linkable_title Configuration %} diff --git a/source/_components/camera.canary.markdown b/source/_components/camera.canary.markdown index 8e5f07f461f..6d46258424b 100644 --- a/source/_components/camera.canary.markdown +++ b/source/_components/camera.canary.markdown @@ -17,6 +17,8 @@ The `canary` camera platform allows you to watch the live stream of your [Canary To add `canary` camera to your installation, follow instructions in [Canary component](/components/canary/). Once you have [Canary component](/components/canary/) setup, your [Canary](https://canary.is) camera(s) should show up automatically. +## {% linkable_title Configuration %} + You can add the following to your `configuration.yaml` file to configure `canary` camera with optional settings: ```yaml @@ -25,8 +27,8 @@ camera: ``` {% configuration %} - ffmpeg_arguments: - description: Extra options to pass to `ffmpeg`, e.g., image quality or video filter options. More details in [FFmpeg component](/components/ffmpeg). - required: false - type: string +ffmpeg_arguments: + description: Extra options to pass to `ffmpeg`, e.g., image quality or video filter options. More details in [FFmpeg component](/components/ffmpeg). + required: false + type: string {% endconfiguration %} diff --git a/source/_components/camera.dispatcher.markdown b/source/_components/camera.dispatcher.markdown index b0f3c63b851..05ceb99e2ca 100644 --- a/source/_components/camera.dispatcher.markdown +++ b/source/_components/camera.dispatcher.markdown @@ -19,6 +19,8 @@ This platform is meant for developers only. The `dispatcher` camera platform allows developers to create virtual camera's. +## {% linkable_title Configuration %} + You would normally not add this camera to your configuration directly but have it be discovered by one of the components that uses it. ```yaml diff --git a/source/_components/camera.doorbird.markdown b/source/_components/camera.doorbird.markdown index ce23d946725..4c0734e2695 100644 --- a/source/_components/camera.doorbird.markdown +++ b/source/_components/camera.doorbird.markdown @@ -19,6 +19,8 @@ The `doorbird` implementation allows you to view the live video and previous ima You must have the [DoorBird component](/components/doorbird/) configured to use this camera.

+## {% linkable_title Configuration %} + To enable the camera, add the following to your `configuration.yaml` file: ```yaml diff --git a/source/_components/camera.ffmpeg.markdown b/source/_components/camera.ffmpeg.markdown index e87ea211844..86f1c261f05 100644 --- a/source/_components/camera.ffmpeg.markdown +++ b/source/_components/camera.ffmpeg.markdown @@ -13,9 +13,10 @@ ha_release: 0.26 ha_iot_class: "Local Polling" --- - The `ffmpeg` platform allows you to use any video feed as a camera in Home Assistant via [FFmpeg](http://www.ffmpeg.org/). This video source must support multiple simultaneous reads, because for every concurrent Home Assistant user, a connection will be made to the source every 10 seconds. Normally this should not be a problem. +## {% linkable_title Configuration %} + To enable your FFmpeg feed in your installation, add the following to your `configuration.yaml` file: ```yaml @@ -44,5 +45,4 @@ extra_arguments: You can control the image quality with [`extra_arguments`](https://www.ffmpeg.org/ffmpeg-codecs.html#jpeg2000) `-q:v 2-32` or with lossless option `-pred 1`. - If you are running into trouble with this sensor, please refer to the [Troubleshooting section](/components/ffmpeg/#troubleshooting). diff --git a/source/_components/camera.foscam.markdown b/source/_components/camera.foscam.markdown index 8215b0f2ffb..3a0cbb53fae 100644 --- a/source/_components/camera.foscam.markdown +++ b/source/_components/camera.foscam.markdown @@ -12,7 +12,6 @@ ha_category: Camera 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 %} diff --git a/source/_components/camera.generic.markdown b/source/_components/camera.generic.markdown index a5c9d503d68..49349dc4605 100644 --- a/source/_components/camera.generic.markdown +++ b/source/_components/camera.generic.markdown @@ -13,11 +13,12 @@ ha_release: pre 0.7 ha_iot_class: "depends" --- - The `generic` camera platform allows you to integrate any IP camera or other URL into Home Assistant. Templates can be used to generate the URLs on the fly. Home Assistant will serve the images via its server, making it possible to view your IP cameras while outside of your network. The endpoint is `/api/camera_proxy/camera.[name]`. +## {% linkable_title Configuration %} + To enable this camera in your installation, add the following to your `configuration.yaml` file: ```yaml diff --git a/source/_components/camera.local_file.markdown b/source/_components/camera.local_file.markdown index cb870409c10..c94de28a5b7 100644 --- a/source/_components/camera.local_file.markdown +++ b/source/_components/camera.local_file.markdown @@ -17,6 +17,8 @@ The `local_file` camera platform allows you to integrate an image file from disk The `local_file` camera can for example be used with various camera platforms that save a temporary images locally. It can also be used to display a graph that you render periodically and will then be displayed in Home Assistant. +## {% linkable_title Configuration %} + To enable this camera in your installation, add the following to your `configuration.yaml` file: ```yaml diff --git a/source/_components/camera.logi_circle.markdown b/source/_components/camera.logi_circle.markdown index beed202eafa..20a742ffaef 100644 --- a/source/_components/camera.logi_circle.markdown +++ b/source/_components/camera.logi_circle.markdown @@ -35,8 +35,8 @@ camera: scan_interval: description: How frequently to query for new camera stills, value are in seconds. required: false - default: 60 type: integer + default: 60 {% endconfiguration %} ### {% linkable_title Service `camera.logi_circle_livestream_record` %} diff --git a/source/_components/camera.markdown b/source/_components/camera.markdown index 499481eb098..0231195e04c 100644 --- a/source/_components/camera.markdown +++ b/source/_components/camera.markdown @@ -9,10 +9,9 @@ sharing: true footer: true --- - The camera component allows you to use IP cameras with Home Assistant. With a little additional work you could use [USB cameras](/blog/2016/06/23/usb-webcams-and-home-assistant/) as well. -### {% linkable_title Service %} +### {% linkable_title Services %} Once loaded, the `camera` platform will expose services that can be called to perform various actions. @@ -82,4 +81,3 @@ A simple way to test if you have set up your `camera` platform correctly, is to "entity_id": "camera.living_room_camera" } ``` - diff --git a/source/_components/camera.mjpeg.markdown b/source/_components/camera.mjpeg.markdown index f87595dfc6b..d4195ca7b54 100644 --- a/source/_components/camera.mjpeg.markdown +++ b/source/_components/camera.mjpeg.markdown @@ -16,6 +16,8 @@ ha_iot_class: "depends" The `mjpeg` camera platform allows you to integrate IP cameras which are capable to stream their video with MJPEG into Home Assistant. +## {% linkable_title Configuration %} + To enable this camera in your installation, add the following to your `configuration.yaml` file: diff --git a/source/_components/camera.mqtt.markdown b/source/_components/camera.mqtt.markdown index c7db3ae4ac2..177e89f8924 100644 --- a/source/_components/camera.mqtt.markdown +++ b/source/_components/camera.mqtt.markdown @@ -17,6 +17,8 @@ The `mqtt` camera platform allows you to integrate the content of an image file This can be used with an application or a service capable of sending images through MQTT, for example [Zanzito](https://play.google.com/store/apps/details?id=it.barbaro.zanzito). +## {% linkable_title Configuration %} + To enable this camera in your installation, add the following to your `configuration.yaml` file: ```yaml @@ -27,18 +29,18 @@ camera: ``` {% configuration %} - topic: - description: MQTT topic to subscribe to. - required: true - type: string - name: - description: Name of the camera. - required: false - type: string - unique_id: - description: > - An ID that uniquely identifies this camera. If two cameras have the same unique ID - Home Assistant will raise an exception. - required: false - type: string +topic: + description: MQTT topic to subscribe to. + required: true + type: string +name: + description: Name of the camera. + required: false + type: string +unique_id: + description: > + An ID that uniquely identifies this camera. If two cameras + have the same unique ID Home Assistant will raise an exception. + required: false + type: string {% endconfiguration %} diff --git a/source/_components/camera.neato.markdown b/source/_components/camera.neato.markdown index 3b959c0bc38..4027e94fd24 100644 --- a/source/_components/camera.neato.markdown +++ b/source/_components/camera.neato.markdown @@ -13,7 +13,6 @@ ha_release: 0.42 ha_iot_class: "Cloud Polling" --- - The `neato` camera platform allows you to view the latest cleaning map of your [Neato Botvac Connected](https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/botvac-connected/). To add `neato` camera to your installation, follow instructions in [Neato component](/components/neato/). diff --git a/source/_components/camera.netatmo.markdown b/source/_components/camera.netatmo.markdown index eb11c1a1a49..bc38d19196a 100644 --- a/source/_components/camera.netatmo.markdown +++ b/source/_components/camera.netatmo.markdown @@ -13,10 +13,10 @@ ha_release: 0.22 ha_iot_class: "Local Polling" --- -### {% linkable_title Basic Configuration %} - The `netatmo` camera platform is consuming the information provided by a [Netatmo](https://www.netatmo.com) camera. This component allows you to view the current photo created by the Camera. +### {% linkable_title Basic configuration %} + To enable the Netatmo camera, you have to set up [netatmo](/components/netatmo/), this will use discovery to add your camera. ### {% linkable_title Advanced configuration %} diff --git a/source/_components/camera.onvif.markdown b/source/_components/camera.onvif.markdown index 6d34a37788c..3a695d30fe6 100644 --- a/source/_components/camera.onvif.markdown +++ b/source/_components/camera.onvif.markdown @@ -12,9 +12,10 @@ ha_category: Camera ha_release: 0.47 --- - The `onvif` camera platform allows you to use an ONVIF camera in Home Assistant. This requires the [`ffmpeg` component](/components/ffmpeg/) to be already configured. +## {% linkable_title Configuration %} + To enable your ONVIF camera in your installation, add the following to your `configuration.yaml` file: ```yaml @@ -44,13 +45,13 @@ password: port: description: The port for the camera. required: false - default: 5000 type: integer + default: 5000 profile: description: Video profile that will be used to obtain the stream, more details below. required: false - default: 0 type: integer + default: 0 extra_arguments: description: "Extra options to pass to `ffmpeg`, e.g., image quality or video filter options. More details in [FFmpeg component](/components/ffmpeg)." required: false diff --git a/source/_components/camera.proxy.markdown b/source/_components/camera.proxy.markdown index e8a38d4b23f..d1c92138edf 100644 --- a/source/_components/camera.proxy.markdown +++ b/source/_components/camera.proxy.markdown @@ -11,13 +11,14 @@ ha_category: Camera ha_release: 0.65 --- - The `proxy` camera platform allows you to pass another camera's output through post-processing routines and generate a new camera with the post-processed output. The current post-processing supports resizing the image/MJPEG as well as limiting the maximum refresh rate. The current proxy capabilities are intended to reduce the camera bandwidth for slower internet connections. +## {% linkable_title Configuration %} + To enable this camera in your installation, you must first have an existing working camera configured in Home Assistant. Next, add the following to your `configuration.yaml` file: ```yaml @@ -30,47 +31,46 @@ camera: ``` {% configuration %} - entity_id: - description: The ID of another Home Assistant camera to post-process. - required: true - type: string - name: - description: This parameter allows you to override the name of your camera. - required: false - type: string - max_image_width: - description: The maximum width of single images taken from the camera (aspect ratio will be maintained). - required: false - type: integer - max_stream_width: - description: The maximum width of the MJPEG stream from the camera (aspect ratio will be maintained). - required: false - type: integer - image_quality: - description: The quality level used for resulting JPEG for snapshots. - required: false - type: integer - default: 75 - stream_quality: - description: The quality level used for resulting MJPEG streams. - required: false - type: integer - default: 75 - image_refresh_rate: - description: The minimum time in seconds between generating successive image snapshots. - required: false - type: float - force_resize: - description: Resize the image even if the resulting image would take up more bandwidth than the original. - required: false - type: boolean - cache_images: - description: Preserve the last image and re-send in the case the camera is not responding. - required: false - type: boolean +entity_id: + description: The ID of another Home Assistant camera to post-process. + required: true + type: string +name: + description: This parameter allows you to override the name of your camera. + required: false + type: string +max_image_width: + description: The maximum width of single images taken from the camera (aspect ratio will be maintained). + required: false + type: integer +max_stream_width: + description: The maximum width of the MJPEG stream from the camera (aspect ratio will be maintained). + required: false + type: integer +image_quality: + description: The quality level used for resulting JPEG for snapshots. + required: false + type: integer + default: 75 +stream_quality: + description: The quality level used for resulting MJPEG streams. + required: false + type: integer + default: 75 +image_refresh_rate: + description: The minimum time in seconds between generating successive image snapshots. + required: false + type: float +force_resize: + description: Resize the image even if the resulting image would take up more bandwidth than the original. + required: false + type: boolean +cache_images: + description: Preserve the last image and re-send in the case the camera is not responding. + required: false + type: boolean {% endconfiguration %} - ## {% linkable_title Examples %} Example of using a Camera proxy along with a Foscam camera: diff --git a/source/_components/camera.push.markdown b/source/_components/camera.push.markdown index be639978032..9794c37fbc7 100644 --- a/source/_components/camera.push.markdown +++ b/source/_components/camera.push.markdown @@ -19,7 +19,7 @@ Optionally the Push Camera can **buffer** a given number of images, creating an Images are cleared on new events, and events are separated by a soft (configurable) **timeout**. -## Integration with motionEye +## {% linkable_title Integration with motionEye %} The `push` camera can as an example be used with [motionEye](https://github.com/ccrisan/motioneye/wiki) a web frontend for the motion daemon. motionEye is usually configured to save/record files ***only*** when motion is detected. It provides a hook to run a command whenever an image is saved, which can be used together with cURL to send the motion detected images to the `push` camera, as shown in this example: @@ -57,25 +57,25 @@ camera: name: description: The name you would like to give to the camera. required: false - default: Push Camera type: string + default: Push Camera buffer: description: Number of images to buffer per event. Be conservative, large buffers will starve your system memory. required: false - default: 1 type: string + default: 1 timeout: description: Amount of time after which the event is considered to have finished. required: false - default: 5 seconds type: time + default: 5 seconds token: description: User provided token acting as access control, should be a large string (more then 8 chars). Required if you can't use HA new auth system (0.77). - required: false + required: false type: string field: description: HTTP POST field containing the image file required: false - default: image type: string + default: image {% endconfiguration %} diff --git a/source/_components/camera.ring.markdown b/source/_components/camera.ring.markdown index 98d03ff0e65..9236be6f4fb 100644 --- a/source/_components/camera.ring.markdown +++ b/source/_components/camera.ring.markdown @@ -33,8 +33,8 @@ ffmpeg_arguments: scan_interval: description: How frequently to query for new video in seconds. required: false - default: 90 type: integer + default: 90 {% endconfiguration %} **Note:** To be able to playback the last capture, it is required to install the `ffmpeg` component. Make sure to follow the steps mentioned at [FFMPEG](/components/ffmpeg/) documentation. diff --git a/source/_components/camera.rpi_camera.markdown b/source/_components/camera.rpi_camera.markdown index 0cc4eaa01c0..f7148f19775 100644 --- a/source/_components/camera.rpi_camera.markdown +++ b/source/_components/camera.rpi_camera.markdown @@ -13,7 +13,6 @@ ha_iot_class: "Local Polling" ha_release: 0.17 --- - The `rpi_camera` platform allows you to integrate the Raspberry Pi camera into Home Assistant. This component uses the application [`raspistill`](https://www.raspberrypi.org/documentation/usage/camera/raspicam/raspistill.md) to store the image from camera. ## {% linkable_title Configuration %} @@ -30,49 +29,48 @@ camera: image_width: description: Set the image width. required: false - default: 640 type: integer + default: 640 name: description: Name of the camera. required: false - default: Raspberry Pi Camera type: string + default: Raspberry Pi Camera image_height: description: Set the image height. required: false - default: 480 type: integer + default: 480 image_quality: description: Set the image quality (from 0 to 100). required: false - default: 7 type: integer + default: 7 image_rotation: description: Set image rotation (0-359). required: false - default: 0 type: integer + default: 0 horizontal_flip: description: Set horizontal flip (0 to disable, 1 to enable). required: false - default: 0 type: integer + default: 0 vertical_flip: description: Set vertical flip (0 to disable, 1 to enable). required: false - default: 0 type: integer + default: 0 timelapse: description: Takes a picture every this many milliseconds (thousands of a second) - the default means one picture a second. required: false - default: 1000 type: integer + default: 1000 file_path: description: Save the picture in a custom file path. required: false - default: A temporary file is used. type: string + default: A temporary file is used. {% endconfiguration %} - -The given **file_path** must be an existing file because the camera platform setup performs a writeable check on it. Also, keep in mind that the path should be [whitelisted](/docs/configuration/basic/). +The given **file_path** must be an existing file because the camera platform setup performs a writeable check on it. Also, keep in mind that the path should be [whitelisted](/docs/configuration/basic/). diff --git a/source/_components/camera.synology.markdown b/source/_components/camera.synology.markdown index 78010327625..2e0e232a0cb 100644 --- a/source/_components/camera.synology.markdown +++ b/source/_components/camera.synology.markdown @@ -13,7 +13,6 @@ ha_release: 0.31 ha_iot_class: "Local Polling" --- -  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. ## {% linkable_title Configuration %} @@ -33,8 +32,8 @@ camera: name: description: A name for this Synology camera. required: false - default: Synology Camera type: string + default: Synology Camera url: description: The URL to your Synology, including port. required: true @@ -50,8 +49,8 @@ password: timeout: description: The timeout in seconds used when connecting to the Surveillance Station. required: false - default: 5 type: integer + default: 5 whitelist: description: A list of which cameras you want to add, the names must be the same as in Surveillance Station. If omitted all cameras are added. required: false @@ -59,8 +58,8 @@ whitelist: verify_ssl: description: Verify SSL/TLS certificate for HTTPS request. required: false - default: true type: boolean + default: true {% endconfiguration %} ## {% linkable_title Full example %} diff --git a/source/_components/camera.usps.markdown b/source/_components/camera.usps.markdown index 5ed58ee5624..e589a349a57 100644 --- a/source/_components/camera.usps.markdown +++ b/source/_components/camera.usps.markdown @@ -13,13 +13,14 @@ ha_release: 0.52 ha_iot_class: "Cloud Polling" --- - The `usps` camera component allows you to view the mail piece images made available through USPS via the Informed Delivery service. You must "Opt-In" to [Informed Delivery](https://informeddelivery.usps.com/box/pages/intro/start.action) to see mail images. This works in concert with [USPS sensors](/components/sensor.usps).

You must have the [USPS component](/components/usps/) configured to use this camera. The camera will be setup if the `usps` component is configured and the required configuration is set.

+## {% linkable_title Configuration %} + To customize the interval that mail images are rotated in the mail camera you can edit your `configuration.yaml` file with the following settings: ```yaml # Example configuration.yaml entry diff --git a/source/_components/camera.uvc.markdown b/source/_components/camera.uvc.markdown index d83f1457e87..cd86a1214cf 100644 --- a/source/_components/camera.uvc.markdown +++ b/source/_components/camera.uvc.markdown @@ -56,4 +56,3 @@ password: type: string default: ubnt {% endconfiguration %} - diff --git a/source/_components/camera.verisure.markdown b/source/_components/camera.verisure.markdown index 35b4c25e4e7..e3980f71748 100644 --- a/source/_components/camera.verisure.markdown +++ b/source/_components/camera.verisure.markdown @@ -13,8 +13,6 @@ ha_release: 0.31 ha_iot_class: "Local Polling" --- - The `verisure` camera platform allows you to control your [Verisure](https://www.verisure.com/) cameras. The requirement is that you have setup your [Verisure hub](/components/verisure/). - diff --git a/source/_components/camera.xeoma.markdown b/source/_components/camera.xeoma.markdown index e54e24f3b37..afb89f1877d 100644 --- a/source/_components/camera.xeoma.markdown +++ b/source/_components/camera.xeoma.markdown @@ -15,6 +15,8 @@ ha_release: 0.62 The `Xeoma` camera platform allows you to view the video feeds from a [Xeoma](http://felenasoft.com/xeoma) video surveillance server. +## {% linkable_title Configuration %} + To enable Xeoma camera feeds, add the following lines to your `configuration.yaml`: ```yaml @@ -40,8 +42,8 @@ password: new_version: description: Set to false if the Xeoma server version is 17.5 or earlier. required: false - default: true type: boolean + default: true cameras: description: List of customizations for individual Xeoma cameras. required: false @@ -54,16 +56,16 @@ cameras: name: description: The name to display in the frontend for this camera. required: false - default: The `image_name` for this camera. type: string + default: The `image_name` for this camera. hide: description: Don't show this camera in Home Assistant. required: false - default: false type: boolean + default: false {% endconfiguration %} -## {% linkable_title Full examples %} +## {% linkable_title Full example %} ```yaml # Example configuration.yaml entry diff --git a/source/_components/camera.xiaomi.markdown b/source/_components/camera.xiaomi.markdown index 05e213825de..0dc5777f35a 100644 --- a/source/_components/camera.xiaomi.markdown +++ b/source/_components/camera.xiaomi.markdown @@ -76,16 +76,15 @@ password: path: description: The path to the raw MP4 files. required: false - default: /media/mmcblk0p1/record type: string + default: /media/mmcblk0p1/record username: description: The user that can access the FTP server. required: false - default: root type: string + default: root ffmpeg_arguments: - description: > - Extra options to pass to `ffmpeg` + description: Extra options to pass to `ffmpeg`. required: false type: string {% endconfiguration %} diff --git a/source/_components/camera.yi.markdown b/source/_components/camera.yi.markdown index dada5b76b48..0fce50e8b96 100644 --- a/source/_components/camera.yi.markdown +++ b/source/_components/camera.yi.markdown @@ -81,13 +81,13 @@ password: path: description: The path to the raw MP4 files. required: false - default: /media/mmcblk0p1/record type: string + default: /media/mmcblk0p1/record username: description: The user that can access the FTP server. required: false - default: root type: string + default: root ffmpeg_arguments: description: Extra options to pass to `ffmpeg` (e.g., image quality or video filter options). required: false diff --git a/source/_components/camera.zoneminder.markdown b/source/_components/camera.zoneminder.markdown index d1fc230ecc4..51a00ef3d17 100644 --- a/source/_components/camera.zoneminder.markdown +++ b/source/_components/camera.zoneminder.markdown @@ -13,13 +13,14 @@ ha_release: 0.39 ha_iot_class: "Local Polling" --- - The `zoneminder` camera platform lets you monitor the current stream of your [ZoneMinder](https://www.zoneminder.com) cameras.

You must have the [ZoneMinder component](/components/zoneminder/) configured to view the camera stream.

+## {% linkable_title Configuration %} + To set it up, add the following information to your `configuration.yaml` file: ```yaml diff --git a/source/_components/canary.markdown b/source/_components/canary.markdown index d9805b5edff..8f43c61d53b 100644 --- a/source/_components/canary.markdown +++ b/source/_components/canary.markdown @@ -29,19 +29,19 @@ canary: ``` {% configuration %} - username: - description: The username for accessing your Canary account. - required: true - type: string - password: - description: The password for accessing your Canary account. - required: true - type: string - timeout: - description: Timeout to wait for connections. - required: false - type: integer - default: 10 +username: + description: The username for accessing your Canary account. + required: true + type: string +password: + description: The password for accessing your Canary account. + required: true + type: string +timeout: + description: Timeout to wait for connections. + required: false + type: integer + default: 10 {% endconfiguration %} Once loaded, your front end will have the following components: diff --git a/source/_components/device_tracker.gpslogger.markdown b/source/_components/device_tracker.gpslogger.markdown index 69d5e094682..17022f91b50 100644 --- a/source/_components/device_tracker.gpslogger.markdown +++ b/source/_components/device_tracker.gpslogger.markdown @@ -15,7 +15,7 @@ The `gpslogger` device tracker platform allows you to detect presence using [GPS ## {% linkable_title Auth change release 0.77 and above %} -Since release 0.77, we now have long-lived access tokens. These are setup under your profile. +Since release 0.77, we now have long-lived access tokens. These are setup under your profile and configured in the GPSLogger application on your smartphone as explained below. ```yaml # Example configuration.yaml entry @@ -80,7 +80,7 @@ Add the above URL after you modified it with your settings into the **URL** fiel - Use the domain that Home Assistant is available on the internet (or the public IP address if you have a static IP address). This can be a local IP address if you are using an always on VPN from your mobile device to your home network. - Only remove `PORT` if your Home Assistant instance is using port 443. Otherwise set it to the port you're using. - For Home Assistant only the above URL, as written, will work - do not add, remove, or change the order of any of the parameters. -- **0.77+** If you are using Long-Lived access tokens, then add `Authentication: Bearer LLAT` to the HTTP Headers setting +- **0.77+** If you are using Long-Lived access tokens, then add `Authentication: Bearer LLAT` to the HTTP Headers setting (replace `LLAT` with your Long Lived Access Token). - **<0.77** Make sure to include your [API password](/components/http/) if you have configured a password. Add `&api_password=YOUR_PASSWORD` to the end of the URL. - You can change the name of your device name by replacing `&device=%SER` with `&device=DEVICE_NAME`. diff --git a/source/_components/media_player.soundtouch.markdown b/source/_components/media_player.soundtouch.markdown index 463914f2366..c70eba92446 100644 --- a/source/_components/media_player.soundtouch.markdown +++ b/source/_components/media_player.soundtouch.markdown @@ -43,11 +43,22 @@ media_player: name: Soundtouch kitchen ``` -Configuration variables: - -- **host** (*Required*): The host name or address of the Soundtouch device. -- **name** (*Required*): The name of the device used in the frontend. -- **port** (*Optional*): The port number. Defaults to 8090. +{% configuration %} +host: + description: The host name or address of the Soundtouch device. + required: true + type: string +name: + description: The name of the device used in the frontend. + required: true + default: Bose Soundtouch + type: string +port: + description: The port number. + required: false + default: 8090 + type: integer +{% endconfiguration %} You can switch between one of your 6 pre-configured presets using ```media_player.play_media``` diff --git a/source/_components/media_player.squeezebox.markdown b/source/_components/media_player.squeezebox.markdown index 26a617832de..147b402f5ed 100644 --- a/source/_components/media_player.squeezebox.markdown +++ b/source/_components/media_player.squeezebox.markdown @@ -25,12 +25,25 @@ media_player: host: IP_ADDRESS ``` -Configuration variables: - -- **host** (*Required*): The host name or address of the Logitech Media Server, eg. 192.168.1.21. -- **port** (*Optional*): Web interface port to Logitech Media Server. Defaults to 9000. -- **username** (*Optional*): The username, if password protection is enabled. -- **password** (*Optional*): The password, if password protection is enabled. +{% configuration %} +host: + description: The host name or address of the Logitech Media Server, eg. 192.168.1.21. + required: true + type: string +port: + description: The web interface port to Logitech Media Server. + required: false + default: 9000 + type: integer +username: + description: The username, if password protection is enabled. + required: false + type: string +password: + description: The password, if password protection is enabled. + required: false + type: string +{% endconfiguration %}

This platform now uses the web interface of the Logitech Media Server to send commands. The default port of the web interface is 9000. It is the same port that you use to access the LMS through your web browser. Originally, this platform used the telnet interface, which defaults to 9090. If you previously specified the port in your configuration file, you will likely need to update it.

diff --git a/source/_components/notify.clicksend.markdown b/source/_components/notify.clicksend.markdown index 8d619617b42..ee70de003d1 100644 --- a/source/_components/notify.clicksend.markdown +++ b/source/_components/notify.clicksend.markdown @@ -62,7 +62,7 @@ sender: description: The name or number of the sender. required: false type: string - default: recipient + default: 'hass' {% endconfiguration %} To use notifications, please see the [getting started with automation page](/getting-started/automation/). diff --git a/source/_components/proximity.markdown b/source/_components/proximity.markdown index 5d1ed90168c..36046ef9135 100644 --- a/source/_components/proximity.markdown +++ b/source/_components/proximity.markdown @@ -43,7 +43,7 @@ proximity: ignored_zones: - twork devices: - - device_tracker.nwaring_nickmobile + - device_tracker.car1 tolerance: 50 unit_of_measurement: mi ``` @@ -63,20 +63,20 @@ To add multiple proximity components, simply use a list in your `configuration.y proximity: home: ignored_zones: - - twork - - elschool + - work + - school devices: - - device_tracker.nwaring_nickmobile - - device_tracker.eleanorsiphone - - device_tracker.tsiphone + - device_tracker.car1 + - device_tracker.iphone1 + - device_tracker.iphone2 tolerance: 50 unit_of_measurement: mi home3: devices: - - device_tracker.tsiphone + - device_tracker.iphone1 tolerance: 50 work: devices: - - device_tracker.elanorsiphone + - device_tracker.iphone2 tolerance: 10 ``` diff --git a/source/_components/sensor.mitemp_bt.markdown b/source/_components/sensor.mitemp_bt.markdown index bf54f976824..d7bdbccaffe 100644 --- a/source/_components/sensor.mitemp_bt.markdown +++ b/source/_components/sensor.mitemp_bt.markdown @@ -19,12 +19,12 @@ The `mitemp_bt` sensor platform allows one to monitor room temperature and humid Depending on the operating system you're running, you have to configure the proper Bluetooth backend on your system: -- On [Hass.io](/hassio/installation/): mitemp_bt will work out of the box. +- On [Hass.io](/hassio/installation/): `mitemp_bt` will work out of the box as long as the host supports Bluetooth (like the Raspberry Pi does). - On a [generic Docker installation](https://www.home-assistant.io/docs/installation/docker/): Works out of the box with `--net=host` and properly configured Bluetooth on the host. - On other Linux systems: - Preferred solution: Install the `bluepy` and `btlewrap` library (via pip). When using a virtual environment, make sure to use install the library in the right one. -    - Fallback solution: Install `btlewrap` library (via pip) and `gatttool` via your package manager. Depending on the distribution, the package name might be: `bluez`, `bluetooth`, `bluez-deprecated` -- Windows and MacOS are currently not supported by the btlewrap library. + - Fallback solution: Install `btlewrap` library (via pip) and `gatttool` via your package manager. Depending on the distribution, the package name might be: `bluez`, `bluetooth` or `bluez-deprecated`. +- Windows and MacOS are currently not supported by the `btlewrap` library. ## {% linkable_title Configuration %} @@ -114,6 +114,8 @@ adapter: Note that by default the sensor is only polled once every 5 minutes. This means with the `median: 3` setting will take as least 15 minutes before the sensor will report a value after a Home Assistant restart. Even though the hardware is able to provide new values every second, room temperatures don't change that quickly. Reducing polling intervals will have a negative effect on the battery life. +## {% linkable_title Full example %} + A full configuration example could look like the one below: ```yaml diff --git a/source/_components/tado.markdown b/source/_components/tado.markdown index cfb7294289c..f78c99ae627 100644 --- a/source/_components/tado.markdown +++ b/source/_components/tado.markdown @@ -15,6 +15,8 @@ ha_iot_class: "Cloud Polling" The `tado` component platform is used as an interface to the [my.tado.com](https://my.tado.com/webapp/#/account/sign-in) website. It adds climate devices for every tado zone and sensors for some additional information of the zones. +## {% linkable_title Configuration %} + To use your tado thermostats in your installation, add the following to your `configuration.yaml` file: ```yaml @@ -26,11 +28,11 @@ tado: {% configuration %} username: - description: Username for my.tado.com. + description: Your username for my.tado.com. required: true type: string password: - description: Password for my.tado.com. + description: Your password for my.tado.com. required: true type: string {% endconfiguration %} diff --git a/source/_components/tahoma.markdown b/source/_components/tahoma.markdown index 03734815e39..323d51bee5a 100644 --- a/source/_components/tahoma.markdown +++ b/source/_components/tahoma.markdown @@ -13,9 +13,10 @@ ha_release: 0.59 ha_iot_class: "Cloud Polling" --- - The `Tahoma` component platform is used as an interface to the [tahomalink.com](https://www.tahomalink.com) website. It adds covers, scenes and a sun sensor from the Tahoma platform. +## {% linkable_title Configuration %} + To use your Tahoma devices in your installation, add the following to your `configuration.yaml` file: ```yaml @@ -28,15 +29,15 @@ tahoma: {% configuration %} username: - description: Username for tahomalink.com + description: Your username for tahomalink.com. required: true type: string password: - description: Password for tahomalink.com + description: Your password for tahomalink.com. required: true type: string exclude: - description: Excludes devices + description: List of devices to exclude. required: false type: list {% endconfiguration %} diff --git a/source/_components/telegram_bot.broadcast.markdown b/source/_components/telegram_bot.broadcast.markdown index 895e5b3cd72..4b820fac4a4 100644 --- a/source/_components/telegram_bot.broadcast.markdown +++ b/source/_components/telegram_bot.broadcast.markdown @@ -14,11 +14,12 @@ ha_release: 0.48 Telegram implementation to support **sending messages only**. Your Home Assistant instance does not have to be exposed to the Internet and there is no polling to receive messages sent to the bot. +## {% linkable_title Configuration %} + To integrate this into Home Assistant, add the following section to your `configuration.yaml` file: ```yaml # Example configuration.yaml entry - telegram_bot: - platform: broadcast api_key: YOUR_API_KEY @@ -29,7 +30,7 @@ telegram_bot: {% configuration %} allowed_chat_ids: - description: A list of user in the `user_id` Telegram format enabled to interact to webhook + description: A list of users in the `user_id` Telegram format that are authorized to interact with the webhook. required: true type: list api_key: @@ -37,16 +38,16 @@ api_key: required: true type: string parse_mode: - description: "Default parser for messages if not explicit in message data: 'html' or 'markdown'." + description: Default parser for messages if not explicit in message data, either `html` or `markdown`. required: false - default: markdown type: string + default: "`markdown`" proxy_url: - description: Proxy url if working behind one (`socks5://proxy_ip:proxy_port`) + description: Proxy url if working behind one (`socks5://proxy_ip:proxy_port`). required: false type: string proxy_params: - description: Proxy configuration parameters, as dict, if working behind a proxy (`username`, `password`, etc.) + description: Proxy configuration parameters, as dict, if working behind a proxy (`username`, `password`, etc.). required: false type: string {% endconfiguration %} diff --git a/source/_components/telegram_bot.polling.markdown b/source/_components/telegram_bot.polling.markdown index 2befc8abb8f..4b9df18396a 100644 --- a/source/_components/telegram_bot.polling.markdown +++ b/source/_components/telegram_bot.polling.markdown @@ -16,11 +16,12 @@ Telegram chatbot polling implementation. One of two bot implementations supported by Telegram. Your Home Assistant does not have to be exposed to the internet. +## {% linkable_title Configuration %} + To integrate this into Home Assistant, add the following section to your `configuration.yaml` file: ```yaml # Example configuration.yaml entry - telegram_bot: - platform: polling api_key: YOUR_API_KEY @@ -31,7 +32,7 @@ telegram_bot: {% configuration %} allowed_chat_ids: - description: A list of user in the `user_id` Telegram format enabled to interact to webhook + description: A list of users in the `user_id` Telegram format that are authorized to interact with the webhook. required: true type: list api_key: @@ -39,16 +40,16 @@ api_key: required: true type: string parse_mode: - description: "Default parser for messages if not explicit in message data: 'html' or 'markdown'." + description: Default parser for messages if not explicit in message data, either `html` or `markdown`. required: false - default: markdown type: string + default: "`markdown`" proxy_url: - description: Proxy url if working behind one (`socks5://proxy_ip:proxy_port`) + description: Proxy url if working behind one (`socks5://proxy_ip:proxy_port`). required: false type: string proxy_params: - description: Proxy configuration parameters, as dict, if working behind a proxy (`username`, `password`, etc.) + description: Proxy configuration parameters, as dict, if working behind a proxy (`username`, `password`, etc.). required: false type: string {% endconfiguration %} diff --git a/source/_components/telegram_bot.webhooks.markdown b/source/_components/telegram_bot.webhooks.markdown index 31b20f6b576..ffe92026d6f 100644 --- a/source/_components/telegram_bot.webhooks.markdown +++ b/source/_components/telegram_bot.webhooks.markdown @@ -18,6 +18,8 @@ Using Telegrams `setWebhook` method your bot's webhook URL should be set to `htt This is one of two bot implementations supported by Telegram. Described by Telegram as the preferred implementation but requires your Home Assistant instance to be exposed to the internet. +## {% linkable_title Configuration %} + To integrate this into Home Assistant, add the following section to your `configuration.yaml` file: ```yaml @@ -43,33 +45,35 @@ api_key: description: The API token of your bot. required: true type: string -trusted_networks: - description: Telegram server access ACL as list. - required: false - default: 149.154.167.197-233 - type: string parse_mode: - description: "Default parser for messages if not explicit in message data: 'html' or 'markdown'." + description: Default parser for messages if not explicit in message data, either `html` or `markdown`. required: false default: markdown type: string proxy_url: - description: Proxy url if working behind one (`socks5://proxy_ip:proxy_port`) + description: Proxy url if working behind one (`socks5://proxy_ip:proxy_port`). required: false type: string proxy_params: - description: Proxy configuration parameters, as dict, if working behind a proxy (`username`, `password`, etc.) + description: Proxy configuration parameters, as dict, if working behind a proxy (`username`, `password`, etc.). required: false type: string url: description: Allow to overwrite the `base_url` from the [`http`](/components/http/) component for different configurations (`https://:`). required: false type: string +trusted_networks: + description: Telegram server access ACL as list. + required: false + type: string + default: 149.154.167.197-233 {% endconfiguration %} To get your `chat_id` and `api_key` follow the instructions [here](/components/notify.telegram). As well as authorizing the chat, if you have added your bot to a group you will also need to authorize any user that will be interacting with the webhook. When an unauthorized user tries to interact with the webhook Home Assistant will raise an error ("Incoming message is not allowed"), you can easily obtain the users id by looking in the "from" section of this error message. -Full configuration sample: +## {% linkable_title Full configuration example %} + +The configuration sample below shows how an entry can look like: ```yaml # Example configuration.yaml entry diff --git a/source/_components/tellduslive.markdown b/source/_components/tellduslive.markdown index 1b441341db4..4af2502e318 100644 --- a/source/_components/tellduslive.markdown +++ b/source/_components/tellduslive.markdown @@ -21,6 +21,8 @@ If you are upgrading from 0.58 or older, you need to remove all Telldus configur Home Assistant will automatically discover the presence of a Tellstick Net or Tellstick ZNet on your local network if the [discovery]({{site_root}}/components/discovery/) component is enabled. When discovery and the key exchange with Telldus Live have been completed, you will be presented with an option to integrate with the cloud or local API for direct communication with your hardware in your LAN. Local API supports only one device at this stage. Local API is only supported with the Znet Lite products, the older hardware (such as Tellstick Net) does not support local API. +## {% linkable_title Configuration %} + To manually integrate your Telldus Live with Home Assistant, e.g., if your device is on another network or in another location, add the following section to your `configuration.yaml` file: ```yaml @@ -34,10 +36,10 @@ host: required: false type: string update_interval: - description: Interval (in seconds) for polling the Telldus Live server (or the local server). + description: Interval (in seconds) for polling the Telldus Live server (or the local server). Minimal value can't be less then 300. required: false - default: 60 type: integer + default: 60 {% endconfiguration %} The component will offer configuration through the Home Assistant user interface where it will let you associate it with your Telldus Live account. diff --git a/source/_components/tellstick.markdown b/source/_components/tellstick.markdown index 232fd9e1525..36bdec9e609 100644 --- a/source/_components/tellstick.markdown +++ b/source/_components/tellstick.markdown @@ -11,7 +11,6 @@ logo: telldus_tellstick.png ha_category: Hub --- - The `tellstick` component integrates [TellStick](http://www.telldus.se/products/tellstick) devices into Home Assistant. This integration allows users to add switches, lights, and sensors which are communicating with 433 MHz. There are a number of vendors (Capidi Elro, Intertechno, Nexa, Proove, Sartano, and Viking) who are selling products that work with TellStick. For more details, please check the TellStick [protocol list](http://developer.telldus.com/wiki/TellStick_conf). ## {% linkable_title Configuration %} @@ -23,6 +22,8 @@ To get started, add the devices to your `configuration.yaml` file. tellstick: ``` +For Hass.io users there is a [TellStick add-on](/addons/tellstick/) available. + ```yaml # Example configuration.yaml entry for Hass.io with the TellStick add-on tellstick: @@ -35,6 +36,7 @@ signal_repetitions: description: Because the TellStick sends its actions via radio and from most receivers it's impossible to know if the signal was received or not. Therefore you can configure the switch and light to try to send each signal repeatedly. required: false type: integer + default: 1 host: description: If you run TellStick on another server or with the Hass.io add-on. required: inclusive diff --git a/source/_components/tesla.markdown b/source/_components/tesla.markdown index c004585e369..5c09dd4f6bf 100644 --- a/source/_components/tesla.markdown +++ b/source/_components/tesla.markdown @@ -13,7 +13,6 @@ ha_release: 0.53 ha_iot_class: "Cloud Polling" --- - The `Tesla` component offers integration with the [Tesla](https://auth.tesla.com/login) cloud service and provides presence detection as well as sensors such as charger state and temperature. This component provides the following platforms: @@ -24,6 +23,8 @@ This component provides the following platforms: - Climate - HVAC control. Allow you to control (turn on/off, set target temperature) your Tesla's HVAC system. - Switch - Charger and max range switch. Allow you to start/stop charging and set max range charging. + ## {% linkable_title Configuration %} + To use Tesla in your installation, add the following to your `configuration.yaml` file: ```yaml @@ -45,6 +46,6 @@ password: scan_interval: description: API polling interval. Minimal value can't be less then 300. required: false - default: 300 type: integer + default: 300 {% endconfiguration %} diff --git a/source/_components/thethingsnetwork.markdown b/source/_components/thethingsnetwork.markdown index 328022f6cc8..f7cc6574a3f 100644 --- a/source/_components/thethingsnetwork.markdown +++ b/source/_components/thethingsnetwork.markdown @@ -23,7 +23,7 @@ The Things network support various integrations to make the data available: | [Storage](https://www.thethingsnetwork.org/docs/applications/storage/) | [`thethingsnetwork`](/components/sensor.thethingsnetwork/) | | [HTTP](https://www.thethingsnetwork.org/docs/applications/http/) | | -### {% linkable_title Setup %} +## {% linkable_title Setup %} Visit the [The Things Network Console](https://console.thethingsnetwork.org/) website, log in with your The Things Network credentials, choose your application from **Applications**. @@ -41,6 +41,8 @@ You need an access key to be able to read the data from your application. Access keys

+## {% linkable_title Configuration %} + To enable this component, add the following lines to your `configuration.yaml`: ```yaml @@ -51,13 +53,12 @@ thethingsnetwork: ``` {% configuration %} - app_id: - description: The Application ID. - required: true - type: string - access_key: - description: The access key. - required: true - type: string +app_id: + description: The Application ID. + required: true + type: string +access_key: + description: The access key. + required: true + type: string {% endconfiguration %} - diff --git a/source/_components/thingspeak.markdown b/source/_components/thingspeak.markdown index b18969ca64e..6bcabe6fe9e 100644 --- a/source/_components/thingspeak.markdown +++ b/source/_components/thingspeak.markdown @@ -15,6 +15,8 @@ ha_release: 0.32 The `thingspeak` components makes Home Assistant communicate with the [ThingSpeak API](https://thingspeak.com/). For now, it records exactly one entity at once, which is great for testing purposes. For long-time storage you should rely on the [InfluxDB component](/components/influxdb/). +## {% linkable_title Configuration %} + You will have to create a [new channel](https://thingspeak.com/channels/new) on ThingSpeak and grab your Write API Key from the "API Keys" tab of the channel you want to use. To setup the ThingSpeak component in your installation, add the following to your `configuration.yaml` file: diff --git a/source/_components/tibber.markdown b/source/_components/tibber.markdown index d201d5e7f34..e824ddcb5bf 100644 --- a/source/_components/tibber.markdown +++ b/source/_components/tibber.markdown @@ -14,7 +14,6 @@ ha_qa_scale: silver ha_iot_class: "Cloud Polling" --- - The `tibber` component provides a sensor with the current electricity price if you are a [Tibber](https://tibber.com/) customer. If you have a Tibber Pulse it will also show the electricity consumption in real time. @@ -34,8 +33,8 @@ tibber: ``` {% configuration %} - access_token: - description: Your Tibber API token. - required: true - type: string +access_token: + description: Your Tibber API token. + required: true + type: string {% endconfiguration %} diff --git a/source/_components/timer.markdown b/source/_components/timer.markdown index dad6227958e..946e20cd8d9 100644 --- a/source/_components/timer.markdown +++ b/source/_components/timer.markdown @@ -21,6 +21,8 @@ When a timer finishes or gets canceled the corresponding events are fired. This With the current implementation timers don't persist over restarts. After a restart they will be idle again, together with their initial configuration.

+## {% linkable_title Configuration %} + To add a timer to your installation, add the following to your `configuration.yaml` file: ```yaml @@ -30,12 +32,26 @@ timer: duration: '00:01:00' ``` -Configuration variables: - -- **[alias]** (*Required*): Alias for the timer. Multiple entries are allowed. - - **name** (*Optional*): Friendly name of the timer. - - **duration** (*Optional*): Initial duration in seconds or `00:00:00` when Home Assistant starts. Defaults to 0. - - **icon** (*Optional*): Set a custom icon for the state card. +{% configuration %} +"[alias]": + description: Alias for the timer. Multiple entries are allowed. + required: true + type: map + keys: + name: + description: Friendly name of the timer. + required: false + type: string + duration: + description: Initial duration in seconds or `00:00:00` when Home Assistant starts. + required: false + type: [integer, time] + default: 0 + icon: + description: Set a custom icon for the state card. + required: false + type: icon +{% endconfiguration %} Pick an icon that you can find on [materialdesignicons.com](https://materialdesignicons.com/) to use for your timer and prefix the name with `mdi:`. For example `mdi:car`, `mdi:ambulance`, or `mdi:motorbike`. @@ -82,7 +98,6 @@ Manually finish a running timer earlier than scheduled. If no `entity_id` is giv | ---------------------- | -------- | ----------- | | `entity_id` | yes | Name of the entity to take action, e.g., `timer.timer0`. | - ### {% linkable_title Use the service %} Select service developer tool icon **Services** from the **Developer Tools**. Choose **timer** from the list of **Domains**, select the **Service**, enter something like the sample below into the **Service Data** field, and hit **CALL SERVICE**. @@ -95,7 +110,7 @@ Select serv
 
 ## {% linkable_title Examples %}
 
-Set a timer called `test` to a duration of 30 seconds. 
+Set a timer called `test` to a duration of 30 seconds.
 
 ```yaml
 # Example configuration.yaml entry
@@ -110,8 +125,8 @@ timer:
 # Example automations.yaml entry
 - alias: Timerswitch
   id: +## {% linkable_title Configuration %} + To add `neato` vacuum to your installation, please follow instructions in [Neato component](/components/neato/). Currently supported services are: diff --git a/source/_components/vacuum.roomba.markdown b/source/_components/vacuum.roomba.markdown index 2186f1666aa..d7a242c9ce7 100644 --- a/source/_components/vacuum.roomba.markdown +++ b/source/_components/vacuum.roomba.markdown @@ -18,6 +18,8 @@ The `roomba` component allows you to control your [iRobot Roomba](http://www.iro This platform has only been tested with an iRobot Roomba 980 but should work find with any Wi-Fi enabled Roomba like the 690, 890 or the 960.

+## {% linkable_title Configuration %} + To add your Roomba vacuum to your installation, add the following to your `configuration.yaml` file: ```yaml @@ -31,7 +33,7 @@ vacuum: {% configuration %} host: - description: Hostname or IP address of the Roomba. + description: The hostname or IP address of the Roomba. required: true type: string username: @@ -45,18 +47,18 @@ password: name: description: The name of the vacuum. required: false - default: Roomba type: string + default: Roomba certificate: description: Path to your certificate store. required: false - default: /etc/ssl/certs/ca-certificates.crt type: string + default: /etc/ssl/certs/ca-certificates.crt continuous: description: Whether to operate in continuous mode. required: false - default: true type: boolean + default: true {% endconfiguration %}

diff --git a/source/_components/vacuum.xiaomi_miio.markdown b/source/_components/vacuum.xiaomi_miio.markdown index 41952960fb7..892462db07b 100644 --- a/source/_components/vacuum.xiaomi_miio.markdown +++ b/source/_components/vacuum.xiaomi_miio.markdown @@ -26,6 +26,8 @@ Currently supported services are: - `set_fan_speed` - remote control of your robot. +## {% linkable_title Configuration %} + Please follow [Retrieving the Access Token](/components/vacuum.xiaomi_miio/#retrieving-the-access-token) to retrieve the API token used in `configuration.yaml`. @@ -41,18 +43,19 @@ vacuum: ``` {% configuration %} - host: - description: The IP address of your robot. - required: true - type: string - token: - description: The API token of your robot. - required: true - type: string - name: - description: The name of your robot. - required: false - type: string +host: + description: The IP address of your robot. + required: true + type: string +token: + description: The API token of your robot. + required: true + type: string +name: + description: The name of your robot. + required: false + type: string + default: Xiaomi Vacuum cleaner {% endconfiguration %} ## {% linkable_title Platform Services %} @@ -133,7 +136,7 @@ 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 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. +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.30](https://www.apkmirror.com/apk/xiaomi-inc/mihome/mihome-5-0-30-release/) is confirmed as working for the following Android methods. Using older version than 5.0.30 is not recommended as it might lack support for some newer devices like the Roborock S50. The iPhone app still stores the token in the sqlite db as of v4.7.18 (July 17, 2018). @@ -185,6 +188,7 @@ To fetch the token follow these instructions depending on your mobile phone plat 5. Click "Extract Token" 6. On the phone, you must confirm the backup. DO NOT enter any password and press the button to make the backup. 7. Once you have confirmed the backup the token extraction will begin, it should appear in the MiToolKit shortly. +8. If you don't get a token, close MiToolKit completely, delete the folder MiToolkit\apps\com.xiaomi.smarthome and relaunch MiToolKit to force recreate a new backup (sometimes the files would not be overwritten before deleting the old ones) #### {% linkable_title Linux and Android (not rooted) %} diff --git a/source/_components/velux.markdown b/source/_components/velux.markdown index 171b0f5c422..2a6731b25e3 100644 --- a/source/_components/velux.markdown +++ b/source/_components/velux.markdown @@ -15,6 +15,8 @@ ha_iot_class: "Local Polling" [Velux](http://www.velux.com) integration for Home Assistant allows you to connect to a Velux KLF 200 interface, to control [io-homecontrol](http://www.io-homecontrol.com) devices like windows and blinds. The module allows you to start scenes configured within KLF 200. +## {% linkable_title Configuration %} + A `velux` section must be present in the `configuration.yaml` file and contain the following options as required: ```yaml diff --git a/source/_components/vera.markdown b/source/_components/vera.markdown index df3f6e31c62..94de436693d 100644 --- a/source/_components/vera.markdown +++ b/source/_components/vera.markdown @@ -16,6 +16,8 @@ The [Vera](http://getvera.com) hub is a controller mainly connecting to Z-Wave d Switches, Lights (inc Dimmers), Locks, Sensors, Binary sensors, and Scenes are supported - and will be automatically added when HA connects to your Vera controller. +## {% linkable_title Configuration %} + To use Vera devices in your installation, add the following to your configuration.yaml file using the IP and port number of your Vera controller: ```yaml @@ -34,7 +36,7 @@ vera_controller_url: It is recommended to assign a static IP address to your Vera Controller. This ensures that it won't change IP addresses, so you won't have to change the `vera_controller_url` if it reboots and comes up with a different IP address. See your router's manual for details on how to set this up. If you need the MAC address of your Vera, check the label on the bottom.

-### {% linkable_title Configure devices %} +### {% linkable_title Configure devices %} By default your switches will be added to Home Assistant as switches, however, if some of them are light switches, you can tell Home Assistant this using the optional `lights` parameter as shown below. @@ -51,6 +53,6 @@ vera: lights: [15, 17, 19, 21, 22, 24, 26, 43, 64, 70, 87] ``` -### {% linkable_title Using Z-Wave devices in automation %} +### {% linkable_title Using Z-Wave devices in automation %} If you want to use a Z-Wave device from the Vera controller in Home Assistant automation, you'll need the entity id. In the Home Assistant UI you'll find all entities listed under the service developer tool icon icon of the Developer Tools section. Look for entities that contain 'Vera Device Id' in their attributes, and you'll find the entity id on the left. diff --git a/source/_components/verisure.markdown b/source/_components/verisure.markdown index 49dd80958e1..5e14d2236d2 100644 --- a/source/_components/verisure.markdown +++ b/source/_components/verisure.markdown @@ -24,6 +24,8 @@ We support: * [Locks](/components/lock.verisure/) * [Door & Window](/components/binary_sensor.verisure/) + ## {% linkable_title Configuration %} + To integrate Verisure with Home Assistant, add the following section to your `configuration.yaml` file: ```yaml @@ -43,45 +45,45 @@ password: required: true type: string alarm: - description: Set to true to show alarm, false to disable. + description: Set to `true` to show alarm, `false` to disable. required: false - default: true type: boolean + default: true hygrometers: - description: Set to true to show hygrometers, false to disable. + description: Set to `true` to show hygrometers, `false` to disable. required: false - default: true type: boolean + default: true smartplugs: - description: Set to true to show smartplugs, false to disable. + description: Set to `true` to show smartplugs, `false` to disable. required: false - default: true type: boolean + default: true locks: - description: Set to true to show locks, false to disable. + description: Set to `true` to show locks, `false` to disable. required: false - default: true type: boolean + default: true thermometers: - description: Set to true to show thermometers, false to disable. + description: Set to `true` to show thermometers, `false` to disable. required: false - default: true type: boolean + default: true mouse: - description: Set to true to show mouse detectors, false to disable. + description: Set to `true` to show mouse detectors, `false` to disable. required: false - default: true type: boolean + default: true door_window: - description: Set to true to show mouse detectors, false to disable. + description: Set to `true` to show mouse detectors, `false` to disable. required: false - default: true type: boolean + default: true code_digits: description: Number of digits in PIN code. required: false - default: 4 type: integer + default: 4 giid: description: The GIID of your installation (If you have more then one alarm system). To find the GIID for your systems run 'python verisure.py EMAIL PASSWORD installations'. required: false diff --git a/source/_components/volvooncall.markdown b/source/_components/volvooncall.markdown index d4028a46e4b..3ed8aa1e092 100644 --- a/source/_components/volvooncall.markdown +++ b/source/_components/volvooncall.markdown @@ -13,7 +13,6 @@ ha_release: 0.39 ha_iot_class: "Cloud Polling" --- - The `volvooncall` component offers integration with the [Volvo On Call](http://www.volvocars.com/intl/own/connectivity/volvo-on-call) cloud service and offers presence detection as well as sensors such as odometer and fuel level. ## {% linkable_title Configuration %} @@ -90,6 +89,6 @@ resources: scandinavian_miles: description: If set to true, Scandinavian miles ("mil") are used for distances and fuel range. required: false - defaults: false type: boolean + default: false {% endconfiguration %} diff --git a/source/_components/vultr.markdown b/source/_components/vultr.markdown index c9d149b63ed..f5313ff065e 100644 --- a/source/_components/vultr.markdown +++ b/source/_components/vultr.markdown @@ -14,9 +14,10 @@ logo: vultr.png ha_iot_class: "Cloud Polling" --- - The `vultr` component allows you to access information about and interact with your [Vultr](https://www.vultr.com) subscriptions (Virtual Private Servers) from Home Assistant. +## {% linkable_title Configuration %} + Obtain your API key from your [Vultr Account](https://my.vultr.com/settings/#settingsapi).

@@ -37,4 +38,3 @@ api_key: required: true type: string {% endconfiguration %} - diff --git a/source/_components/wake_on_lan.markdown b/source/_components/wake_on_lan.markdown index 87603ad2338..da7e5831afb 100644 --- a/source/_components/wake_on_lan.markdown +++ b/source/_components/wake_on_lan.markdown @@ -37,7 +37,6 @@ Send a _magic packet_ to wake up a device with 'Wake-On-LAN' capabilities. | `mac` | no | MAC address of the device to wake up. | | `broadcast_address` | yes | Optional broadcast IP where to send the magic packet. | - Sample service data: ```json @@ -45,4 +44,3 @@ Sample service data: "mac":"00:40:13:ed:f1:32" } ``` - diff --git a/source/_components/waterfurnace.markdown b/source/_components/waterfurnace.markdown index 15a88eb8565..bc45420f464 100644 --- a/source/_components/waterfurnace.markdown +++ b/source/_components/waterfurnace.markdown @@ -53,10 +53,8 @@ unit: type: string {% endconfiguration %} - #### {% linkable_title Limitations %} The WebSocket interface used by this module requires active polling, otherwise the server side shuts down the connection. By default, this polling is happening every 10 seconds. All sensors are updated during every polling cycle. While this is communicating with a thermostat, geothermal systems operate most efficiently when setbacks are not used, and the home is kept at a constant temperature. It remains useful to collect the data from the system to understand its performance, but a full climate interface won't be implemented. - diff --git a/source/_components/watson_iot.markdown b/source/_components/watson_iot.markdown index b5c30202d49..0014d5e24da 100644 --- a/source/_components/watson_iot.markdown +++ b/source/_components/watson_iot.markdown @@ -83,7 +83,6 @@ include: type: list {% endconfiguration %} - ## {% linkable_title Examples %} ### {% linkable_title Full configuration %} diff --git a/source/_components/weather.bom.markdown b/source/_components/weather.bom.markdown index fe26c58337a..025dcd50dd1 100644 --- a/source/_components/weather.bom.markdown +++ b/source/_components/weather.bom.markdown @@ -33,8 +33,8 @@ name: station: description: "The station ID string. See the [`sensor.bom` docs](/components/sensor.bom/) for details on how to find the ID of a station." required: optional - default: The closest station type: string + default: The closest station {% endconfiguration %}

diff --git a/source/_components/weather.buienradar.markdown b/source/_components/weather.buienradar.markdown index 8ec59346cc8..505c84bae90 100644 --- a/source/_components/weather.buienradar.markdown +++ b/source/_components/weather.buienradar.markdown @@ -41,12 +41,14 @@ longitude: required: false type: float forecast: - description: "'True' to add a temperature forecast, 'False' to suppress it." + description: "`true` to add a temperature forecast, `false` to suppress it." required: false - default: true type: boolean + default: true {% endconfiguration %} +### {% linkable_title Full configuration %} + A full configuration example: ```yaml diff --git a/source/_components/weather.ipma.markdown b/source/_components/weather.ipma.markdown index 02141227ead..68f4cf67a88 100644 --- a/source/_components/weather.ipma.markdown +++ b/source/_components/weather.ipma.markdown @@ -22,23 +22,23 @@ To add the IPMA weather platform to your installation, add the following to your ```yaml # Example configuration.yaml entry weather: - - platform: ipma + - platform: ipma ``` {% configuration %} name: description: The name you would like to give to the weather station. - required: false - default: The name of the used station + required: false type: string + default: The name of the used station latitude: description: Latitude of the location for which you want weather information. - required: false - default: Home Assistant global latitude configuration + required: false type: string + default: Home Assistant global latitude configuration longitude: description: Longitude of the location for which you want weather information. - required: false - default: Home Assistant global longitude configuration + required: false type: string + default: Home Assistant global longitude configuration {% endconfiguration %} diff --git a/source/_components/weather.markdown b/source/_components/weather.markdown index e558c1a29bc..fa199a2d666 100644 --- a/source/_components/weather.markdown +++ b/source/_components/weather.markdown @@ -9,7 +9,7 @@ sharing: true footer: true --- -The `weather` platforms are gathering meteorological information from web services and display the conditions and other details about the weather at the given location. +The `weather` platforms are gathering meteorological information from web services and display the conditions and other details about the weather at the given location. Home Assistant currently supports free web services and such which require a registration. Please check the sidebar for a full list of supported `weather` platforms. @@ -32,4 +32,3 @@ The `weather` platform only knows the below listed conditions. The reason for th - 'windy' - 'windy-variant' - 'exceptional': - diff --git a/source/_components/weather.met.markdown b/source/_components/weather.met.markdown index 1c31f4a0357..3cdd8145b8c 100644 --- a/source/_components/weather.met.markdown +++ b/source/_components/weather.met.markdown @@ -24,7 +24,6 @@ weather: - platform: met ``` - {% configuration %} latitude: description: Manually specify latitude. By default the value will be taken from the Home Assistant configuration. diff --git a/source/_components/weather.metoffice.markdown b/source/_components/weather.metoffice.markdown index 1d38510de48..37d41463dbd 100644 --- a/source/_components/weather.metoffice.markdown +++ b/source/_components/weather.metoffice.markdown @@ -34,8 +34,8 @@ api_key: name: description: Additional name for the weather component in Home Assistant. required: false - default: Met Office type: string + default: Met Office latitude: description: "Latitude coordinate to monitor weather of (required if **longitude** is specified), defaults to coordinates defined in your `configuration.yaml`." required: inclusive @@ -50,4 +50,3 @@ longitude: This platform is an alternative to the [`metoffice`](/components/sensor.metoffice/) sensor. The weather platform is easier to configure but less customizable.

- diff --git a/source/_components/weather.openweathermap.markdown b/source/_components/weather.openweathermap.markdown index f0d9d1f93bb..1d83077ef80 100644 --- a/source/_components/weather.openweathermap.markdown +++ b/source/_components/weather.openweathermap.markdown @@ -30,29 +30,29 @@ weather: {% configuration %} api_key: - required: true description: Your API key for [OpenWeatherMap](http://openweathermap.org/). + required: true type: string name: - required: false description: Name to use in the frontend. + required: false + type: string default: OpenWeatherMap - type: string mode: - required: false description: "Can specify `hourly` or `daily`. Select `hourly` for a three-hour forecast or `daily` for daily forecast." - default: "`hourly`" + required: false type: string + default: "`hourly`" latitude: - required: false description: Latitude of the location to display the weather. - default: "The latitude in your `configuration.yaml` file." - type: float -longitude: required: false - description: Longitude of the location to display the weather. - default: "The longitude in your `configuration.yaml` file." type: float + default: "The latitude in your `configuration.yaml` file." +longitude: + description: Longitude of the location to display the weather. + required: false + type: float + default: "The longitude in your `configuration.yaml` file." {% endconfiguration %}

diff --git a/source/_components/weather.yweather.markdown b/source/_components/weather.yweather.markdown index 055f9daa0ec..7f9744a3938 100644 --- a/source/_components/weather.yweather.markdown +++ b/source/_components/weather.yweather.markdown @@ -12,7 +12,6 @@ ha_category: Weather ha_release: 0.47 --- - The `yweather` platform uses [Yahoo Weather](https://www.yahoo.com/news/weather/) as a source for current meteorological data. This component will show you the condition and temperatures for max. 10 days.

@@ -39,8 +38,8 @@ woeid: name: description: The name of the sensor. To easily recognize each sensor when adding more than one Yahoo weather sensor, it is recommended to use the name option. required: false - default: yweather type: string + default: yweather {% endconfiguration %}

diff --git a/source/_components/weather.zamg.markdown b/source/_components/weather.zamg.markdown index dd62ceec3dc..486f6d7fded 100644 --- a/source/_components/weather.zamg.markdown +++ b/source/_components/weather.zamg.markdown @@ -29,23 +29,23 @@ weather: {% configuration %} station_id: - required: false description: The ID number for a supported ZAMG station. + required: false type: string name: - required: false description: A name for the weather platform. + required: false type: string latitude: - required: false description: "Latitude coordinate to monitor weather of (required if **longitude** is specified)." - default: "Defaults to coordinates defined in your `configuration.yaml` file." - type: float -longitude: required: false - description: "Longitude coordinate to monitor weather of (required if **latitude** is specified)." - default: "Defaults to coordinates defined in your `configuration.yaml` file." type: float + default: "Defaults to coordinates defined in your `configuration.yaml` file." +longitude: + description: "Longitude coordinate to monitor weather of (required if **latitude** is specified)." + required: false + type: float + default: "Defaults to coordinates defined in your `configuration.yaml` file." {% endconfiguration %}

diff --git a/source/_components/weblink.markdown b/source/_components/weblink.markdown index e145d62e1be..4e05396cdf1 100644 --- a/source/_components/weblink.markdown +++ b/source/_components/weblink.markdown @@ -15,6 +15,8 @@ ha_qa_scale: internal The `weblink` component allows you to display links in the Home Assistant frontend. +## {% linkable_title Configuration %} + To use this component in your installation, add something like the following to your `configuration.yaml` file: ```yaml diff --git a/source/_components/websocket_api.markdown b/source/_components/websocket_api.markdown index 4457f2feeac..ca35aeb0678 100644 --- a/source/_components/websocket_api.markdown +++ b/source/_components/websocket_api.markdown @@ -18,6 +18,8 @@ The `websocket_api` component set up a WebSocket API and allows one to interact It is HIGHLY recommended that you set the `api_password`, especially if you are planning to expose your installation to the internet.

+## {% linkable_title Configuration %} + ```yaml # Example configuration.yaml entry websocket_api: diff --git a/source/_components/wemo.markdown b/source/_components/wemo.markdown index af752d9e99a..71f734402ab 100644 --- a/source/_components/wemo.markdown +++ b/source/_components/wemo.markdown @@ -15,6 +15,8 @@ ha_release: pre 0.7 The `wemo` component is the main component to integrate various [Belkin WeMo](http://www.belkin.com/us/Products/home-automation/c/wemo-home-automation/) devices with Home Assistant. +## {% linkable_title Configuration %} + Supported devices will be automatically discovered if the discovery component is enabled. Loading the `wemo` component will scan the local network for WeMo devices, even if you are not using the discovery component ```yaml diff --git a/source/_components/wink.markdown b/source/_components/wink.markdown index ade545e1374..b26f93bf50c 100644 --- a/source/_components/wink.markdown +++ b/source/_components/wink.markdown @@ -78,8 +78,8 @@ client_secret: local_control: description: If set to `true` state changes for lights, locks and switches will be issued to the local hub. required: false - default: false type: boolean + default: false {% endconfiguration %} Local control: diff --git a/source/_components/wirelesstag.markdown b/source/_components/wirelesstag.markdown index d4e229d4a16..bd92d2ee6ce 100644 --- a/source/_components/wirelesstag.markdown +++ b/source/_components/wirelesstag.markdown @@ -15,6 +15,8 @@ ha_release: 0.68 The `wirelesstag` implementation allows you to integrate your [wirelesstag.net](http://wirelesstag.net) sensors tags in Home Assistant. +## {% linkable_title Configuration %} + To enable tags set up with your [wirelesstag.net](http://wirelesstag.net) account, add the following to your `configuration.yaml` file: ```yaml @@ -25,14 +27,14 @@ wirelesstag: ``` {% configuration %} - username: - description: Username for your [wirelesstag.net](http://wirelesstag.net) account. - required: true - type: string - password: - description: Password for your [wirelesstag.net](http://wirelesstag.net) account. - required: true - type: string +username: + description: Username for your wirelesstag.net account. + required: true + type: string +password: + description: Password for your wirelesstag.net account. + required: true + type: string {% endconfiguration %} Finish your configuration by visiting the [WirelessTag binary sensor](/components/binary_sensor.wirelesstag/), [WirelessTag sensor](/components/sensor.wirelesstag/), or [WirelessTag switch](/components/switch.wirelesstag/) documentation. @@ -44,4 +46,4 @@ Finish your configuration by visiting the [WirelessTag binary sensor](/component

Tags Manager supports local push notifications for `http` schema only. So if your hass uses `https`, local push notifications are disabled and data is received via cloud polling. -

\ No newline at end of file +

diff --git a/source/_components/xiaomi_aqara.markdown b/source/_components/xiaomi_aqara.markdown index 5c6fa1016ba..c01577030b0 100644 --- a/source/_components/xiaomi_aqara.markdown +++ b/source/_components/xiaomi_aqara.markdown @@ -92,38 +92,38 @@ xiaomi_aqara: ``` {% configuration %} - gateways: - description: A list of gateways to set up. - required: true - type: map - keys: - mac: - description: The MAC address of your gateway. *Optional if only using one gateway.* - required: false - type: string - key: - description: The key of your gateway. *Optional if only using sensors and/or binary sensors.* - required: false - type: string - host: - description: The host/IP address of the gateway. If this parameter is used the multicast discovery of the gateway is skipped. - required: false - type: string - disable: - description: Disable the gateway. This is only useful if you don't want to integrate a specific gateway. - required: false - type: boolean - default: false - discovery_retry: - description: Number of times that Home Assistant should try to reconnect to the gateway. - required: false - type: integer - default: 3 - interface: - description: Which network interface to use. - required: false - type: string - default: any +gateways: + description: A list of gateways to set up. + required: true + type: map + keys: + mac: + description: The MAC address of your gateway. *Optional if only using one gateway.* + required: false + type: string + key: + description: The key of your gateway. *Optional if only using sensors and/or binary sensors.* + required: false + type: string + host: + description: The host/IP address of the gateway. If this parameter is used the multicast discovery of the gateway is skipped. + required: false + type: string + disable: + description: Disable the gateway. This is only useful if you don't want to integrate a specific gateway. + required: false + type: boolean + default: false +discovery_retry: + description: Number of times that Home Assistant should try to reconnect to the gateway. + required: false + type: integer + default: 3 +interface: + description: Which network interface to use. + required: false + type: string + default: any {% endconfiguration %} ### {% linkable_title Services %} @@ -274,4 +274,3 @@ That means that Home Assistant is not getting any response from your Xiaomi gate - If you are using Home Assistant in [Docker](/docs/installation/docker/), make sure to use `--net=host`. - If you receive an `{"error":"Invalid key"}` in your log while trying to control the gateway light, you should generate the key again using an Android Phone or alternatively an emulator such as [bluestacks](https://www.bluestacks.com). In some instances there is an issue with keys being generated using the iOS application. - If the required library "PyXiaomiGateway" cannot be installed you will need to install some missing system dependencies `python3-dev`, `libssl-dev`, `libffi-dev` manually (e.g., `$ sudo apt-get install python3-dev libssl-dev libffi-dev`). - diff --git a/source/_components/zabbix.markdown b/source/_components/zabbix.markdown index 1056bef232c..fe317fce810 100644 --- a/source/_components/zabbix.markdown +++ b/source/_components/zabbix.markdown @@ -34,13 +34,13 @@ host: path: description: Path to your Zabbix install. required: false - default: "`/zabbix/`" type: string + default: "`/zabbix/`" ssl: description: Set to `True` if your Zabbix installation is using SSL. required: false - default: false type: boolean + default: false username: description: Your Zabbix username. required: false diff --git a/source/_components/zeroconf.markdown b/source/_components/zeroconf.markdown index d1459fdd1b1..d2e8908adea 100644 --- a/source/_components/zeroconf.markdown +++ b/source/_components/zeroconf.markdown @@ -14,6 +14,8 @@ ha_release: 0.18 The `zeroconf` component exposes your Home Assistant to the local network using [Zeroconf](https://en.wikipedia.org/wiki/Zero-configuration_networking). Zeroconf is also sometimes known as Bonjour, Rendezvous, and Avahi. +## {% linkable_title Configuration %} + To integrate this into Home Assistant, add the following section to your `configuration.yaml` file: ```yaml @@ -21,7 +23,7 @@ To integrate this into Home Assistant, add the following section to your `config zeroconf: ``` -The registration will include meta-data about the Home Assistant instance, including a base URL that can be used to access Home Assistant, the currently running Home Assistant version, and whether an API password is needed to access the instance. The examples below show two ways to retrieve the details for testing. +The registration will include meta-data about the Home Assistant instance, including a base URL that can be used to access Home Assistant, the currently running Home Assistant version, and whether an API password is needed to access the instance. The examples below show two ways to retrieve the details for testing. ```bash $ avahi-browse -alr @@ -39,6 +41,6 @@ Browsing domain 'local' on -1.-1 ... Browsing for services of type '_home-assistant._tcp' in domain 'local' on 4.0 ... Found service 'Home' of type '_home-assistant._tcp' in domain 'local' on 4.0. Service data for service 'Home' of type '_home-assistant._tcp' in domain 'local' on 4.0: - Host Home._home-assistant._tcp.local (192.168.0.70), port 8123, TXT data: + Host Home._home-assistant._tcp.local (192.168.0.70), port 8123, TXT data: ['requires_api_password=true', 'base_url=http://192.168.0.70:8123', 'version=0.41.0'] ``` diff --git a/source/_components/zha.markdown b/source/_components/zha.markdown index 477b89178c7..b7969749bf9 100644 --- a/source/_components/zha.markdown +++ b/source/_components/zha.markdown @@ -31,6 +31,8 @@ Known working ZigBee radios: - [Elelabs ZigBee USB Adapter](https://elelabs.com/products/elelabs_usb_adapter.html) - [Elelabs ZigBee Raspberry Pi Shield](https://elelabs.com/products/elelabs_zigbee_shield.html) +## {% linkable_title Configuration %} + To configure the component, a `zha` section must be present in the `configuration.yaml`, and the path to the serial device for the radio and path to the database which will persist your network data is required. @@ -45,8 +47,8 @@ zha: radio_type: description: One of `ezsp` or `xbee`. required: false - default: ezsp type: string + default: ezsp usb_path: description: Path to the serial device for the radio. required: true @@ -54,8 +56,8 @@ usb_path: baudrate: description: Baud rate of the serial device. required: false - default: 57600 type: integer + default: 57600 database_path: description: _Full_ path to the database which will keep persistent network data. required: true diff --git a/source/_components/zigbee.markdown b/source/_components/zigbee.markdown index e2b3b2429bd..62e2f5aec44 100644 --- a/source/_components/zigbee.markdown +++ b/source/_components/zigbee.markdown @@ -22,6 +22,8 @@ There is currently support for the following device types within Home Assistant: - [Light](../light.zigbee) (digital output pins) - [Switch](../switch.zigbee) (digital output pins) +## {% linkable_title Configuration %} + The local ZigBee device (assuming XBee) must have an up to date Router or Coordinator API firmware installed. A `zigbee` section must be present in the `configuration.yaml` file and contain the following options as required: @@ -35,13 +37,13 @@ zigbee: device: description: The serial port to which the local ZigBee device is connected. required: false - default: "/dev/ttyUSB0" type: string + default: "`/dev/ttyUSB0`" baud: description: The baud rate at which to communicate with the local ZigBee device. required: false - default: 9600 type: integer + default: 9600 {% endconfiguration %} To find the possible serial port names of your device, run: diff --git a/source/_components/zone.markdown b/source/_components/zone.markdown index 1e5125b71c1..caeb22e761a 100644 --- a/source/_components/zone.markdown +++ b/source/_components/zone.markdown @@ -53,8 +53,8 @@ longitude: radius: description: The radius of the zone in meters. required: false - default: 100 type: integer + default: 100 icon: description: The icon to show instead of name. required: false @@ -62,8 +62,8 @@ icon: passive: description: To only use the zone for automation and hide it from the frontend and not use the zone for device tracker name. required: false - default: false type: boolean + default: false {% endconfiguration %} To find the latitude/longitude of a certain place you can use [Google Maps](https://www.google.com/maps/) or [Bing Maps](https://www.bing.com/maps). Just right click and copy the coordinates from there (Bing) or click on the "What is here?" (Google) diff --git a/source/_components/zoneminder.markdown b/source/_components/zoneminder.markdown index 68101f805eb..614a5ce022b 100644 --- a/source/_components/zoneminder.markdown +++ b/source/_components/zoneminder.markdown @@ -16,6 +16,8 @@ ha_iot_class: "Local Polling" The ZoneMinder component sets up the integration with your [ZoneMinder](https://www.zoneminder.com) instance so that [cameras](/components/camera.zoneminder/), [sensors](/components/sensor.zoneminder/), and [switches](/components/switch.zoneminder) can use it. +## {% linkable_title Configuration %} + ```yaml # Example configuration.yaml entry zoneminder: @@ -30,23 +32,23 @@ host: path: description: Path to your ZoneMinder install. required: false - default: "`/zm/`" type: string + default: "`/zm/`" path_zms: description: Path to the CGI script for streaming. This should match `PATH_ZMS` in ZM's "Paths" settings. required: false - default: "`/zm/cgi-bin/nph-zms`" type: string + default: "`/zm/cgi-bin/nph-zms`" ssl: description: Set to `true` if your ZoneMinder installation is using SSL. required: false - default: false type: boolean + default: false verify_ssl: description: Verify the certification of the endpoint. required: false - default: true type: boolean + default: true username: description: Your ZoneMinder username. required: false diff --git a/source/_components/zwave.markdown b/source/_components/zwave.markdown index 9dd4811b3e4..33c11eeccd3 100644 --- a/source/_components/zwave.markdown +++ b/source/_components/zwave.markdown @@ -15,6 +15,8 @@ ha_iot_class: "Local Push" The [Z-Wave](http://www.z-wave.com/) integration for Home Assistant allows you to observe and control connected Z-Wave devices. Please see the [Z-Wave getting started section](/docs/z-wave/) for in-depth documentation on how to use and setup the Z-Wave component. +## {% linkable_title Configuration %} + If you have setup the requirements, then add the following entry `configuration.yaml` file: ```yaml diff --git a/source/_docs/configuration/packages.markdown b/source/_docs/configuration/packages.markdown index 5cb76f6b4f2..0be17c08a0e 100644 --- a/source/_docs/configuration/packages.markdown +++ b/source/_docs/configuration/packages.markdown @@ -10,7 +10,7 @@ footer: true redirect_from: /topics/packages/ --- -Packages in Home Assistant provides a way to bundle different component's configuration together. We already learned about the two configuration styles (specifying platforms entries together or individually) on the [adding devices](/docs/configuration/devices/) page. Both of these configuration methods require you to create the component key in the main `configuration.yaml` file. With packages we have a way to include different components, or different configuration parts using any of the `!include` directives introduced in [splitting the configuration](/docs/configuration/splitting_configuration). +Packages in Home Assistant provide a way to bundle different component's configuration together. We already learned about the two configuration styles (specifying platforms entries together or individually) on the [adding devices](/docs/configuration/devices/) page. Both of these configuration methods require you to create the component key in the main `configuration.yaml` file. With packages we have a way to include different components, or different configuration parts using any of the `!include` directives introduced in [splitting the configuration](/docs/configuration/splitting_configuration). Packages are configured under the core `homeassistant/packages` in the configuration and take the format of a package name (no spaces, all lower case) followed by a dictionary with the package config. For example, package `pack_1` would be created as: diff --git a/source/docs/index.markdown b/source/docs/index.markdown index cbc6b8e364c..5daf1ae6832 100644 --- a/source/docs/index.markdown +++ b/source/docs/index.markdown @@ -9,7 +9,7 @@ sharing: true footer: true --- -The documentation covers from beginner to advanced topic around the installation, the setup, the configuration, and the usage of Home Assistant. +The documentation covers beginner to advanced topics around the installation, setup, configuration, and usage of Home Assistant.