diff --git a/source/_integrations/rest.markdown b/source/_integrations/rest.markdown
index 77cdd9402f2..ecb7d3d5e0a 100644
--- a/source/_integrations/rest.markdown
+++ b/source/_integrations/rest.markdown
@@ -108,7 +108,7 @@ json_attributes:
description: A list of keys to extract values from a JSON dictionary result and then set as sensor attributes. If the endpoint returns XML with the "text/xml" content type, it will automatically be converted to JSON according to this [specification](https://www.xml.com/pub/a/2006/05/31/converting-between-xml-and-json.html)
required: false
type: [string, list]
-json_path_attributes:
+json_attributes_path:
description: A [JSONPath](https://goessner.net/articles/JsonPath/) that references the location of the `json_attributes` in the JSON content.
required: false
type: string
diff --git a/source/_integrations/sensor.mqtt.markdown b/source/_integrations/sensor.mqtt.markdown
index f2629506fc8..5da58677dec 100644
--- a/source/_integrations/sensor.mqtt.markdown
+++ b/source/_integrations/sensor.mqtt.markdown
@@ -22,90 +22,23 @@ sensor:
```
{% configuration %}
-state_topic:
- description: The MQTT topic subscribed to receive sensor values.
- required: true
- type: string
-name:
- description: The name of the MQTT sensor.
- required: false
- type: string
- default: MQTT Sensor
-qos:
- description: The maximum QoS level of the state topic.
- required: false
- type: integer
- default: 0
-unit_of_measurement:
- description: Defines the units of measurement of the sensor, if any.
- required: false
- type: string
-icon:
- description: The icon for the sensor.
- required: false
- type: icon
-expire_after:
- description: Defines the number of seconds after the value expires if it's not updated.
- required: false
- type: integer
- default: 0
-value_template:
- description: "Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract the value."
- required: false
- type: template
-force_update:
- description: Sends update events even if the value hasn't changed. Useful if you want to have meaningful value graphs in history.
- reqired: false
- type: boolean
- default: false
availability_topic:
description: The MQTT topic subscribed to receive availability (online/offline) updates.
required: false
type: string
-payload_available:
- description: The payload that represents the available state.
- required: false
- type: string
- default: online
-payload_not_available:
- description: The payload that represents the unavailable state.
- required: false
- type: string
- default: offline
-json_attributes_topic:
- description: The MQTT topic subscribed to receive a JSON dictionary payload and then set as sensor attributes. Implies `force_update` of the current sensor state when a message is received on this topic.
- required: false
- type: string
-json_attributes_template:
- description: "Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract the JSON dictionary from messages received on the `json_attributes_topic`."
- required: false
- type: template
-json_attributes:
- description: (Deprecated, replaced by json_attributes_topic) A list of keys to extract values from a JSON dictionary payload and then set as sensor attributes.
- required: false
- type: [string, list]
-unique_id:
- description: "An ID that uniquely identifies this sensor. If two sensors have the same unique ID, Home Assistant will raise an exception."
- required: false
- type: string
-device_class:
- description: The [type/class](/integrations/sensor/#device-class) of the sensor to set the icon in the frontend.
- required: false
- type: device_class
- default: None
device:
description: "Information about the device this sensor is a part of to tie it into the [device registry](https://developers.home-assistant.io/docs/en/device_registry_index.html). Only works through [MQTT discovery](/docs/mqtt/discovery/) and when [`unique_id`](#unique_id) is set."
required: false
type: map
keys:
- identifiers:
- description: A list of IDs that uniquely identify the device. For example a serial number.
- required: false
- type: [string, list]
connections:
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.'
required: false
type: list
+ identifiers:
+ description: A list of IDs that uniquely identify the device. For example a serial number.
+ required: false
+ type: [string, list]
manufacturer:
description: The manufacturer of the device.
required: false
@@ -122,6 +55,73 @@ device:
description: The firmware version of the device.
required: false
type: string
+device_class:
+ description: The [type/class](/integrations/sensor/#device-class) of the sensor to set the icon in the frontend.
+ required: false
+ type: device_class
+ default: None
+expire_after:
+ description: Defines the number of seconds after the value expires if it's not updated.
+ required: false
+ type: integer
+ default: 0
+force_update:
+ description: Sends update events even if the value hasn't changed. Useful if you want to have meaningful value graphs in history.
+ reqired: false
+ type: boolean
+ default: false
+icon:
+ description: The icon for the sensor.
+ required: false
+ type: icon
+json_attributes:
+ description: (Deprecated, replaced by json_attributes_topic) A list of keys to extract values from a JSON dictionary payload and then set as sensor attributes.
+ required: false
+ type: [string, list]
+json_attributes_template:
+ description: "Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract the JSON dictionary from messages received on the `json_attributes_topic`."
+ required: false
+ type: template
+json_attributes_topic:
+ description: The MQTT topic subscribed to receive a JSON dictionary payload and then set as sensor attributes. Implies `force_update` of the current sensor state when a message is received on this topic.
+ required: false
+ type: string
+name:
+ description: The name of the MQTT sensor.
+ required: false
+ type: string
+ default: MQTT Sensor
+payload_available:
+ description: The payload that represents the available state.
+ required: false
+ type: string
+ default: online
+payload_not_available:
+ description: The payload that represents the unavailable state.
+ required: false
+ type: string
+ default: offline
+qos:
+ description: The maximum QoS level of the state topic.
+ required: false
+ type: integer
+ default: 0
+state_topic:
+ description: The MQTT topic subscribed to receive sensor values.
+ required: true
+ type: string
+unique_id:
+ description: "An ID that uniquely identifies this sensor. If two sensors have the same unique ID, Home Assistant will raise an exception."
+ required: false
+ type: string
+unit_of_measurement:
+ description: Defines the units of measurement of the sensor, if any.
+ required: false
+ type: string
+value_template:
+ description: "Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract the value."
+ required: false
+ type: template
{% endconfiguration %}
## Examples
diff --git a/source/_integrations/slack.markdown b/source/_integrations/slack.markdown
index e89f5ed0376..331fcce2ebc 100644
--- a/source/_integrations/slack.markdown
+++ b/source/_integrations/slack.markdown
@@ -15,9 +15,9 @@ The `slack` platform allows you to deliver notifications from Home Assistant to
1. Create a [new app](https://api.slack.com/apps) under your Slack.com account
2. Click the `OAuth & Permissions` link in the sidebar, under the Features heading
-2. In the Scopes section, add the `chat:write:user` scope, `Send messages as user`
-3. Scroll up to `OAuth Tokens & Redirect URLs` and click `Install App`
-4. Copy your `OAuth Access Token` and put that key into your `configuration.yaml` file -- see below
+3. In the Scopes section, add the `chat:write:user` scope, `Send messages as user`. If you wish to also be able to include files, you will need to include `files:write:user`. If you get a `missing_scope` error when trying to send a message, check these permissions.
+4. Scroll up to `OAuth Tokens & Redirect URLs` and click `Install App`
+5. Copy your `OAuth Access Token` and put that key into your `configuration.yaml` file -- see below
@@ -132,6 +132,19 @@ Example for posting formatted attachment:
}
```
+You can also use YAML to send messages from your automations
+
+```yaml
+
+ - service: notify.slack
+ data:
+ message: "Latest notification"
+ title: "Latest image"
+ target: ["#home-assistant"]
+ data:
+ file:
+ path: "/myfile.jpg"
+```
Please note that both `message` is a required key, but is always shown, so use an empty (`""`) string for `message` if you don't want the extra text.
To use notifications, please see the [getting started with automation page](/getting-started/automation/).
diff --git a/source/_integrations/surepetcare.markdown b/source/_integrations/surepetcare.markdown
index af8beb7d840..ca7cf321659 100644
--- a/source/_integrations/surepetcare.markdown
+++ b/source/_integrations/surepetcare.markdown
@@ -50,16 +50,16 @@ surepetcare:
required: true
type: string
feeders:
- description: The Sure Petcare flaps
+ description: The Sure Petcare feeders
required: true
type: map
keys:
id:
- description: The Sure Petcare id of a flap
+ description: The Sure Petcare id of a feeder
required: true
type: integer
name:
- description: A name for the flap
+ description: A name for the feeder
required: true
type: string
pets:
diff --git a/source/_integrations/switch.mqtt.markdown b/source/_integrations/switch.mqtt.markdown
index 001b70f7d3f..a2ad182a842 100644
--- a/source/_integrations/switch.mqtt.markdown
+++ b/source/_integrations/switch.mqtt.markdown
@@ -28,97 +28,27 @@ switch:
```
{% configuration %}
-command_topic:
- description: The MQTT topic to publish commands to change the switch state.
- required: false
- type: string
-name:
- description: The name to use when displaying this switch.
- required: false
- type: string
- default: MQTT Switch
-icon:
- description: Icon for the switch.
- required: false
- type: icon
-state_topic:
- description: The MQTT topic subscribed to receive state updates.
- required: false
- type: string
-state_on:
- description: The payload that represents the on state.
- required: false
- type: string
- default: "`payload_on` if defined, else ON"
-state_off:
- description: The payload that represents the off state.
- required: false
- type: string
- default: "`payload_off` if defined, else OFF"
availability_topic:
description: The MQTT topic subscribed to receive availability (online/offline) updates.
required: false
type: string
-payload_on:
- description: The payload that represents enabled state.
+command_topic:
+ description: The MQTT topic to publish commands to change the switch state.
required: false
type: string
- default: "ON"
-payload_off:
- description: The payload that represents disabled state.
- required: false
- type: string
- default: "OFF"
-payload_available:
- description: The payload that represents the available state.
- required: false
- type: string
- default: online
-payload_not_available:
- description: The payload that represents the unavailable state.
- required: false
- type: string
- default: offline
-optimistic:
- description: Flag that defines if switch works in optimistic mode.
- required: false
- type: boolean
- default: "`true` if no `state_topic` defined, else `false`."
-qos:
- description: The maximum QoS level of the state topic. Default is 0 and will also be used to publishing messages.
- required: false
- type: integer
- default: 0
-retain:
- description: If the published message should have the retain flag on or not.
- required: false
- type: boolean
- default: false
-value_template:
- description: "Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the payload."
- required: false
- type: string
-json_attributes_topic:
- description: The MQTT topic subscribed to receive a JSON dictionary payload and then set as sensor attributes. Usage example can be found in [MQTT sensor](/integrations/sensor.mqtt/#json-attributes-topic-configuration) documentation.
- required: false
- type: string
-json_attributes_template:
- description: "Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract the JSON dictionary from messages received on the `json_attributes_topic`. Usage example can be found in [MQTT sensor](/integrations/sensor.mqtt/#json-attributes-template-configuration) documentation."
- required: false
- type: template
device:
description: "Information about the device this switch is a part of to tie it into the [device registry](https://developers.home-assistant.io/docs/en/device_registry_index.html). Only works through [MQTT discovery](/docs/mqtt/discovery/) and when [`unique_id`](#unique_id) is set."
required: false
type: map
keys:
- identifiers:
- description: A list of IDs that uniquely identify the device. For example a serial number.
- required: false
- type: [string, list]
connections:
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.'
required: false
type: list
+ identifiers:
+ description: A list of IDs that uniquely identify the device. For example a serial number.
+ required: false
+ type: [string, list]
manufacturer:
description: The manufacturer of the device.
required: false
@@ -135,6 +65,76 @@ device:
description: The firmware version of the device.
required: false
type: string
+icon:
+ description: Icon for the switch.
+ required: false
+ type: icon
+json_attributes_template:
+ description: "Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract the JSON dictionary from messages received on the `json_attributes_topic`. Usage example can be found in [MQTT sensor](/integrations/sensor.mqtt/#json-attributes-template-configuration) documentation."
+ required: false
+ type: template
+json_attributes_topic:
+ description: The MQTT topic subscribed to receive a JSON dictionary payload and then set as sensor attributes. Usage example can be found in [MQTT sensor](/integrations/sensor.mqtt/#json-attributes-topic-configuration) documentation.
+ required: false
+ type: string
+name:
+ description: The name to use when displaying this switch.
+ required: false
+ type: string
+ default: MQTT Switch
+optimistic:
+ description: Flag that defines if switch works in optimistic mode.
+ required: false
+ type: boolean
+ default: "`true` if no `state_topic` defined, else `false`."
+payload_available:
+ description: The payload that represents the available state.
+ required: false
+ type: string
+ default: online
+payload_not_available:
+ description: The payload that represents the unavailable state.
+ required: false
+ type: string
+ default: offline
+payload_off:
+ description: The payload that represents disabled state.
+ required: false
+ type: string
+ default: "OFF"
+payload_on:
+ description: The payload that represents enabled state.
+ required: false
+ type: string
+ default: "ON"
+qos:
+ description: The maximum QoS level of the state topic. Default is 0 and will also be used to publishing messages.
+ required: false
+ type: integer
+ default: 0
+retain:
+ description: If the published message should have the retain flag on or not.
+ required: false
+ type: boolean
+ default: false
+state_off:
+ description: The payload that represents the off state.
+ required: false
+ type: string
+ default: "`payload_off` if defined, else OFF"
+state_on:
+ description: The payload that represents the on state.
+ required: false
+ type: string
+ default: "`payload_on` if defined, else ON"
+state_topic:
+ description: The MQTT topic subscribed to receive state updates.
+ required: false
+ type: string
+value_template:
+ description: "Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the payload."
+ required: false
+ type: string
{% endconfiguration %}
diff --git a/source/_integrations/switcher_kis.markdown b/source/_integrations/switcher_kis.markdown
index 57af9f7ec7f..ed8d80d040c 100644
--- a/source/_integrations/switcher_kis.markdown
+++ b/source/_integrations/switcher_kis.markdown
@@ -24,12 +24,6 @@ To retrieve your device's details, please follow the instructions [here](https:/
Please note, for the Switcher-V2-Python script to run successfully, you need to configure your device to work locally.
-
-
- Please note, on the original script repository, users recently reported difficulties controlling the device after upgrading the firmware to the new 3.0 version.As this integration is based on that script, please do not upgrade to version 3.0 until this issue is resolved. You can follow the issue [here](https://github.com/NightRang3r/Switcher-V2-Python/issues/3).
-
-
-
```yaml
switcher_kis:
phone_id: 'REPLACE_WITH_PHONE_ID'
diff --git a/source/_integrations/telegram.markdown b/source/_integrations/telegram.markdown
index a19eea2668c..90bd1146983 100644
--- a/source/_integrations/telegram.markdown
+++ b/source/_integrations/telegram.markdown
@@ -14,7 +14,7 @@ The `telegram` platform uses [Telegram](https://web.telegram.org) to deliver not
The requirements are:
- You need a [Telegram bot](https://core.telegram.org/bots). Please follow those [instructions](https://core.telegram.org/bots#6-botfather) to create one and get the token for your bot. Keep in mind that bots are not allowed to contact users. You need to make the first contact with your user. Meaning that you need to send a message to the bot from your user.
-- You need to configure a [Telegram bot in Home Assistant](/integrations/telegram_chatbot) and define there your API key and the allowed chat ids to interact with.
+- You need to configure a [Telegram bot in Home Assistant](/integrations/telegram_bot) and define there your API key and the allowed chat ids to interact with.
- The `chat_id` of an allowed user.
**Method 1:** You can get your `chat_id` by sending any message to the [GetIDs bot](https://t.me/getidsbot).
@@ -87,7 +87,7 @@ notify:
```
Refer to the platforms mentioned in the
-[Telegram chatbot page](/integrations/telegram_chatbot/) for
+[Telegram chatbot page](/integrations/telegram_bot/) for
`telegram_bot` configuration.
{% configuration %}
diff --git a/source/_integrations/telegram_chatbot.markdown b/source/_integrations/telegram_bot.markdown
similarity index 99%
rename from source/_integrations/telegram_chatbot.markdown
rename to source/_integrations/telegram_bot.markdown
index 0a7fd78863a..78c58ada43d 100644
--- a/source/_integrations/telegram_chatbot.markdown
+++ b/source/_integrations/telegram_bot.markdown
@@ -1,6 +1,6 @@
---
-title: "Telegram chatbot"
-description: "Telegram chatbot support"
+title: "Telegram bot"
+description: "Telegram bot support"
logo: telegram.png
ha_category:
- Hub
diff --git a/source/_integrations/updater.markdown b/source/_integrations/updater.markdown
index aa6593e9a59..67ccdab88d9 100644
--- a/source/_integrations/updater.markdown
+++ b/source/_integrations/updater.markdown
@@ -14,12 +14,6 @@ The `updater` binary sensor will check daily for new releases. The state will be
The updater integration will also collect basic information about the running Home Assistant instance and its environment. The information includes the current Home Assistant version, the time zone, Python version and operating system information. No identifiable information (i.e., IP address, GPS coordinates, etc.) will ever be collected. If you are concerned about your privacy, you are welcome to scrutinize the Python [source code](https://github.com/home-assistant/home-assistant/tree/dev/homeassistant/components/updater).
-
-
-The `updater` binary sensor will wait one hour after startup until it performs the first update. For this period it will be in the state `unavailable`. After that it will check once a day for new releases.
-
-
-
## Configuration
This integration is by default enabled, unless you've disabled or removed the [`default_config:`](https://www.home-assistant.io/integrations/default_config/) line from your configuration. If that is the case, the following example shows you how to enable this integration manually:
diff --git a/source/_integrations/vacuum.mqtt.markdown b/source/_integrations/vacuum.mqtt.markdown
index e7d8048fbfe..fbaa940c1cb 100644
--- a/source/_integrations/vacuum.mqtt.markdown
+++ b/source/_integrations/vacuum.mqtt.markdown
@@ -29,55 +29,84 @@ vacuum:
Legacy MQTT vacuum configuration section.
{% configuration %}
+availability_topic:
+ description: The MQTT topic subscribed to receive availability (online/offline) updates.
+ required: false
+ type: string
+battery_level_template:
+ description: Defines a [template](/topics/templating/) to define the battery level of the vacuum. This is required if `battery_level_topic` is set.
+ required: false
+ type: string
+battery_level_topic:
+ description: The MQTT topic subscribed to receive battery level values from the vacuum.
+ required: false
+ type: string
+charging_template:
+ description: Defines a [template](/topics/templating/) to define the charging state of the vacuum. This is required if `charging_topic` is set.
+ required: false
+ type: string
+charging_topic:
+ description: The MQTT topic subscribed to receive charging state values from the vacuum.
+ required: false
+ type: string
+cleaning_template:
+ description: Defines a [template](/topics/templating/) to define the cleaning state of the vacuum. This is required if `cleaning_topic` is set.
+ required: false
+ type: string
+cleaning_topic:
+ description: The MQTT topic subscribed to receive cleaning state values from the vacuum.
+ required: false
+ type: string
+command_topic:
+ description: The MQTT topic to publish commands to control the vacuum.
+ required: false
+ type: string
+docked_template:
+ description: Defines a [template](/topics/templating/) to define the docked state of the vacuum. This is required if `docked_topic` is set.
+ required: false
+ type: string
+docked_topic:
+ description: The MQTT topic subscribed to receive docked state values from the vacuum.
+ required: false
+ type: string
+error_template:
+ description: Defines a [template](/topics/templating/) to define potential error messages emitted by the vacuum. This is required if `error_topic` is set.
+ required: false
+ type: string
+error_topic:
+ description: The MQTT topic subscribed to receive error messages from the vacuum.
+ required: false
+ type: string
+fan_speed_list:
+ description: List of possible fan speeds for the vacuum.
+ required: false
+ type: [string, list]
+fan_speed_template:
+ description: Defines a [template](/topics/templating/) to define the fan speed of the vacuum. This is required if `fan_speed_topic` is set.
+ required: false
+ type: string
+fan_speed_topic:
+ description: The MQTT topic subscribed to receive fan speed values from the vacuum.
+ required: false
+ type: string
+json_attributes_template:
+ description: "Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract the JSON dictionary from messages received on the `json_attributes_topic`. Usage example can be found in [MQTT sensor](/integrations/sensor.mqtt/#json-attributes-template-configuration) documentation."
+ required: false
+ type: template
+json_attributes_topic:
+ description: The MQTT topic subscribed to receive a JSON dictionary payload and then set as sensor attributes. Usage example can be found in [MQTT sensor](/integrations/sensor.mqtt/#json-attributes-topic-configuration) documentation.
+ required: false
+ type: string
name:
description: The name of the vacuum.
required: false
type: string
default: MQTT Vacuum
-schema:
- description: The schema to use.
+payload_available:
+ description: The payload that represents the available state.
required: false
type: string
- default: legacy
-supported_features:
- description: List of features that the vacuum supports (possible values are `turn_on`, `turn_off`, `pause`, `stop`, `return_home`, `battery`, `status`, `locate`, `clean_spot`, `fan_speed`, `send_command`)."
- required: false
- type: [string, list]
- default: "`turn_on`, `turn_off`, `stop`, `return_home`, `status`, `battery`, `clean_spot`"
-command_topic:
- description: The MQTT topic to publish commands to control the vacuum.
- required: false
- type: string
-qos:
- description: The maximum QoS level of the state topic.
- required: false
- type: integer
- default: 0
-retain:
- description: If the published message should have the retain flag on or not.
- required: false
- type: boolean
- default: false
-payload_turn_on:
- description: The payload to send to the `command_topic` to begin the cleaning cycle.
- required: false
- type: string
- default: turn_on
-payload_turn_off:
- description: The payload to send to the `command_topic` to turn the vacuum off.
- required: false
- type: string
- default: turn_off
-payload_return_to_base:
- description: The payload to send to the `command_topic` to tell the vacuum to return to base.
- required: false
- type: string
- default: return_to_base
-payload_stop:
- description: The payload to send to the `command_topic` to stop the vacuum.
- required: false
- type: string
- default: stop
+ default: online
payload_clean_spot:
description: The payload to send to the `command_topic` to begin a spot cleaning cycle.
required: false
@@ -88,93 +117,64 @@ payload_locate:
required: false
type: string
default: locate
+payload_not_available:
+ description: The payload that represents the unavailable state.
+ required: false
+ type: string
+ default: offline
+payload_return_to_base:
+ description: The payload to send to the `command_topic` to tell the vacuum to return to base.
+ required: false
+ type: string
+ default: return_to_base
payload_start_pause:
description: The payload to send to the `command_topic` to start or pause the vacuum.
required: false
type: string
default: start_pause
-battery_level_topic:
- description: The MQTT topic subscribed to receive battery level values from the vacuum.
+payload_stop:
+ description: The payload to send to the `command_topic` to stop the vacuum.
required: false
type: string
-battery_level_template:
- description: Defines a [template](/topics/templating/) to define the battery level of the vacuum. This is required if `battery_level_topic` is set.
+ default: stop
+payload_turn_off:
+ description: The payload to send to the `command_topic` to turn the vacuum off.
required: false
type: string
-charging_topic:
- description: The MQTT topic subscribed to receive charging state values from the vacuum.
+ default: turn_off
+payload_turn_on:
+ description: The payload to send to the `command_topic` to begin the cleaning cycle.
required: false
type: string
-charging_template:
- description: Defines a [template](/topics/templating/) to define the charging state of the vacuum. This is required if `charging_topic` is set.
+ default: turn_on
+qos:
+ description: The maximum QoS level of the state topic.
+ required: false
+ type: integer
+ default: 0
+retain:
+ description: If the published message should have the retain flag on or not.
+ required: false
+ type: boolean
+ default: false
+schema:
+ description: The schema to use.
required: false
type: string
-cleaning_topic:
- description: The MQTT topic subscribed to receive cleaning state values from the vacuum.
- required: false
- type: string
-cleaning_template:
- description: Defines a [template](/topics/templating/) to define the cleaning state of the vacuum. This is required if `cleaning_topic` is set.
- required: false
- type: string
-docked_topic:
- description: The MQTT topic subscribed to receive docked state values from the vacuum.
- required: false
- type: string
-docked_template:
- description: Defines a [template](/topics/templating/) to define the docked state of the vacuum. This is required if `docked_topic` is set.
- required: false
- type: string
-error_topic:
- description: The MQTT topic subscribed to receive error messages from the vacuum.
- required: false
- type: string
-error_template:
- description: Defines a [template](/topics/templating/) to define potential error messages emitted by the vacuum. This is required if `error_topic` is set.
- required: false
- type: string
-fan_speed_topic:
- description: The MQTT topic subscribed to receive fan speed values from the vacuum.
- required: false
- type: string
-fan_speed_template:
- description: Defines a [template](/topics/templating/) to define the fan speed of the vacuum. This is required if `fan_speed_topic` is set.
+ default: legacy
+send_command_topic:
+ description: The MQTT topic to publish custom commands to the vacuum.
required: false
type: string
set_fan_speed_topic:
description: The MQTT topic to publish commands to control the vacuum's fan speed.
required: false
type: string
-fan_speed_list:
- description: List of possible fan speeds for the vacuum.
+supported_features:
+ description: List of features that the vacuum supports (possible values are `turn_on`, `turn_off`, `pause`, `stop`, `return_home`, `battery`, `status`, `locate`, `clean_spot`, `fan_speed`, `send_command`)."
required: false
type: [string, list]
-send_command_topic:
- description: The MQTT topic to publish custom commands to the vacuum.
- required: false
- type: string
-availability_topic:
- description: The MQTT topic subscribed to receive availability (online/offline) updates.
- required: false
- type: string
-payload_available:
- description: The payload that represents the available state.
- required: false
- type: string
- default: online
-payload_not_available:
- description: The payload that represents the unavailable state.
- required: false
- type: string
- default: offline
-json_attributes_topic:
- description: The MQTT topic subscribed to receive a JSON dictionary payload and then set as sensor attributes. Usage example can be found in [MQTT sensor](/integrations/sensor.mqtt/#json-attributes-topic-configuration) documentation.
- required: false
- type: string
-json_attributes_template:
- description: "Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract the JSON dictionary from messages received on the `json_attributes_topic`. Usage example can be found in [MQTT sensor](/integrations/sensor.mqtt/#json-attributes-template-configuration) documentation."
- required: false
- type: template
+ default: "`turn_on`, `turn_off`, `stop`, `return_home`, `status`, `battery`, `clean_spot`"
{% endconfiguration %}
### Legacy configuration example
@@ -260,50 +260,32 @@ MQTT payload:
State MQTT vacuum configuration section.
{% configuration %}
+availability_topic:
+ description: The MQTT topic subscribed to receive availability (online/offline) updates.
+ required: false
+ type: string
+command_topic:
+ description: The MQTT topic to publish commands to control the vacuum.
+ required: false
+ type: string
+fan_speed_list:
+ description: List of possible fan speeds for the vacuum.
+ required: false
+ type: [string, list]
+json_attributes_topic:
+ description: The MQTT topic subscribed to receive a JSON dictionary payload and then set as sensor attributes. Usage example can be found in [MQTT sensor](/integrations/sensor.mqtt/#json-attributes-topic-configuration) documentation.
+ required: false
+ type: string
name:
description: The name of the vacuum.
required: false
type: string
default: MQTT Vacuum
-schema:
- description: The schema to use.
+payload_available:
+ description: The payload that represents the available state.
required: false
type: string
- default: legacy
-supported_features:
- description: "List of features that the vacuum supports (possible values are `start`, `stop`, `pause`, `return_home`, `battery`, `status`, `locate`, `clean_spot`, `fan_speed`, `send_command`)."
- required: false
- type: [string, list]
- default: "`start`, `stop`, `return_home`, `status`, `battery`, `clean_spot`"
-command_topic:
- description: The MQTT topic to publish commands to control the vacuum.
- required: false
- type: string
-qos:
- description: The maximum QoS level of the state topic.
- required: false
- type: integer
- default: 0
-retain:
- description: If the published message should have the retain flag on or not.
- required: false
- type: boolean
- default: false
-payload_start:
- description: "The payload to send to the `command_topic` to begin the cleaning cycle."
- required: false
- type: string
- default: start
-payload_stop:
- description: "The payload to send to the `command_topic` to stop cleaning."
- required: false
- type: string
- default: stop
-payload_return_to_base:
- description: The payload to send to the `command_topic` to tell the vacuum to return to base.
- required: false
- type: string
- default: return_to_base
+ default: online
payload_clean_spot:
description: The payload to send to the `command_topic` to begin a spot cleaning cycle.
required: false
@@ -314,47 +296,65 @@ payload_locate:
required: false
type: string
default: locate
+payload_not_available:
+ description: The payload that represents the unavailable state.
+ required: false
+ type: string
+ default: offline
payload_pause:
description: The payload to send to the `command_topic` to pause the vacuum.
required: false
type: string
default: pause
-state_topic:
- description: The MQTT topic subscribed to receive state messages from the vacuum. State topic is extracting JSON if no `value_template` is defined.
+payload_return_to_base:
+ description: The payload to send to the `command_topic` to tell the vacuum to return to base.
required: false
type: string
-value_template:
- description: "Defines a [template](/topics/templating/) to extract possible states from the vacuum."
+ default: return_to_base
+payload_start:
+ description: "The payload to send to the `command_topic` to begin the cleaning cycle."
+ required: false
+ type: string
+ default: start
+payload_stop:
+ description: "The payload to send to the `command_topic` to stop cleaning."
+ required: false
+ type: string
+ default: stop
+qos:
+ description: The maximum QoS level of the state topic.
+ required: false
+ type: integer
+ default: 0
+retain:
+ description: If the published message should have the retain flag on or not.
+ required: false
+ type: boolean
+ default: false
+schema:
+ description: The schema to use.
+ required: false
+ type: string
+ default: legacy
+send_command_topic:
+ description: The MQTT topic to publish custom commands to the vacuum.
required: false
type: string
set_fan_speed_topic:
description: The MQTT topic to publish commands to control the vacuum's fan speed.
required: false
type: string
-fan_speed_list:
- description: List of possible fan speeds for the vacuum.
+state_topic:
+ description: The MQTT topic subscribed to receive state messages from the vacuum. State topic is extracting JSON if no `value_template` is defined.
+ required: false
+ type: string
+supported_features:
+ description: "List of features that the vacuum supports (possible values are `start`, `stop`, `pause`, `return_home`, `battery`, `status`, `locate`, `clean_spot`, `fan_speed`, `send_command`)."
required: false
type: [string, list]
-send_command_topic:
- description: The MQTT topic to publish custom commands to the vacuum.
- required: false
- type: string
-availability_topic:
- description: The MQTT topic subscribed to receive availability (online/offline) updates.
- required: false
- type: string
-payload_available:
- description: The payload that represents the available state.
- required: false
- type: string
- default: online
-payload_not_available:
- description: The payload that represents the unavailable state.
- required: false
- type: string
- default: offline
-json_attributes_topic:
- description: The MQTT topic subscribed to receive a JSON dictionary payload and then set as sensor attributes. Usage example can be found in [MQTT sensor](/integrations/sensor.mqtt/#json-attributes-topic-configuration) documentation.
+ default: "`start`, `stop`, `return_home`, `status`, `battery`, `clean_spot`"
+value_template:
+ description: "Defines a [template](/topics/templating/) to extract possible states from the vacuum."
required: false
type: string
{% endconfiguration %}
diff --git a/source/_integrations/zha.markdown b/source/_integrations/zha.markdown
index 827fef5fa1e..aa7c32cb432 100644
--- a/source/_integrations/zha.markdown
+++ b/source/_integrations/zha.markdown
@@ -20,7 +20,7 @@ ha_codeowners:
- '@adminiuga'
---
-[Zigbee Home Automation](https://zigbee.org/zigbee-for-developers/applicationstandards/zigbeehomeautomation/)
+[Zigbee Home Automation](https://zigbeealliance.org)
integration for Home Assistant allows you to connect many off-the-shelf Zigbee based devices to Home Assistant, using one of the available Zigbee radio modules that is compatible with [zigpy](https://github.com/zigpy/zigpy) (an open source Python library implementing a Zigbee stack, which in turn relies on separate libraries which can each interface a with Zigbee radio module a different manufacturer).
There is currently support for the following device types within Home Assistant:
@@ -35,7 +35,7 @@ There is currently support for the following device types within Home Assistant:
## ZHA exception and deviation handling
-Zigbee devices that deviate from or do not fully conform to the standard specifications set by the [Zigbee Alliance](https://www.zigbee.org) may require the development of custom [ZHA Device Handlers](https://github.com/dmulcahey/zha-device-handlers) (ZHA custom quirks handler implementation) to for all their functions to work properly with the ZHA integration in Home Assistant. These ZHA Device Handlers for Home Assistant can thus be used to parse custom messages to and from Zigbee devices.
+Zigbee devices that deviate from or do not fully conform to the standard specifications set by the [Zigbee Alliance](https://zigbeealliance.org) may require the development of custom [ZHA Device Handlers](https://github.com/dmulcahey/zha-device-handlers) (ZHA custom quirks handler implementation) to for all their functions to work properly with the ZHA integration in Home Assistant. These ZHA Device Handlers for Home Assistant can thus be used to parse custom messages to and from Zigbee devices.
The custom quirks implementations for zigpy implemented as ZHA Device Handlers for Home Assistant are a similar concept to that of [Hub-connected Device Handlers for the SmartThings Classics platform](https://docs.smartthings.com/en/latest/device-type-developers-guide/) as well as that of [Zigbee-Shepherd Converters as used by Zigbee2mqtt](https://www.zigbee2mqtt.io/how_tos/how_to_support_new_devices.html), meaning they are each virtual representations of a physical device that expose additional functionality that is not provided out-of-the-box by the existing integration between these platforms.
@@ -78,7 +78,7 @@ Use the plus button in the bottom right to add a new integration called **ZHA**.
In the popup:
- USB Device Path - on a Linux system will be something like `/dev/ttyUSB0`
-- Radio type - select device type `ezsp`, `deconz` or `xbee`
+- Radio type - select device type `ezsp`, `deconz`, `ti_cc`, `xbee` or `zigate`
- Submit
The success dialog will appear or an error will be displayed in the popup. An error is likely if Home Assistant can't access the USB device or your device is not up to date (see troubleshooting).
@@ -87,7 +87,7 @@ The success dialog will appear or an error will be displayed in the popup. An er
To configure the component, select ZHA on the Integrations page and provide the path to your Zigbee USB stick.
-Or, you can manually confiure `zha` section in `configuration.yaml`. The path to the database which will persist your network data is required.
+Or, you can manually configure `zha` section in `configuration.yaml`. The path to the database which will persist your network data is required.
```yaml
# Example configuration.yaml entry
@@ -104,7 +104,7 @@ If you are use ZiGate, you have to use some special usb_path configuration:
{% configuration %}
radio_type:
- description: One of `ezsp`, `xbee`, `deconz` or `zigate`.
+ description: One of `deconz`, `ezsp`, `ti_cc`, `xbee` or `zigate`.
required: false
type: string
default: ezsp
diff --git a/source/_posts/2017-04-22-ikea-tradfri--spotify.markdown b/source/_posts/2017-04-22-ikea-tradfri--spotify.markdown
index dda9b5bb667..deb6f410341 100644
--- a/source/_posts/2017-04-22-ikea-tradfri--spotify.markdown
+++ b/source/_posts/2017-04-22-ikea-tradfri--spotify.markdown
@@ -472,7 +472,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
[switch.tplink docs]: /integrations/tplink
[switch.wake_on_lan docs]: /integrations/wake_on_lan#switch
[switch.wemo docs]: /integrations/wemo
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[telegram_bot.polling docs]: /integrations/telegram_polling
[telegram_bot.webhooks docs]: /integrations/telegram_webhooks
[tts.google docs]: /integrations/google_translate
@@ -493,7 +493,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
[cover.zwave docs]: /integrations/zwave#cover
[recorder docs]: /integrations/recorder/
[switch.wemo docs]: /integrations/wemo
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[telegram_bot.webhooks docs]: /integrations/telegram_webhooks
[wemo docs]: /integrations/wemo/
[#7271]: https://github.com/home-assistant/home-assistant/pull/7271
diff --git a/source/_posts/2017-05-06-zigbee-opencv-dlib.markdown b/source/_posts/2017-05-06-zigbee-opencv-dlib.markdown
index d67e2ddd53d..ea557720d74 100644
--- a/source/_posts/2017-05-06-zigbee-opencv-dlib.markdown
+++ b/source/_posts/2017-05-06-zigbee-opencv-dlib.markdown
@@ -486,7 +486,7 @@ influxdb:
[switch.thinkingcleaner docs]: /integrations/thinkingcleaner#switch
[switch.wemo docs]: /integrations/wemo
[switch.zha docs]: /integrations/zha
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[telegram_bot.polling docs]: /integrations/telegram_polling
[telegram_bot.webhooks docs]: /integrations/telegram_webhooks
[updater docs]: /integrations/updater/
diff --git a/source/_posts/2017-05-20-automation-editor-zwave-panel-ocr.markdown b/source/_posts/2017-05-20-automation-editor-zwave-panel-ocr.markdown
index fd7684ca022..8bf09909cb9 100644
--- a/source/_posts/2017-05-20-automation-editor-zwave-panel-ocr.markdown
+++ b/source/_posts/2017-05-20-automation-editor-zwave-panel-ocr.markdown
@@ -413,9 +413,9 @@ Experiencing issues introduced by this release? Please report them in our [issue
[sensor.wunderground docs]: /integrations/wunderground
[sun docs]: /integrations/sun/
[switch.rpi_pfio docs]: /integrations/rpi_pfio#switch
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[telegram_bot.polling docs]: /integrations/telegram_polling
-[telegram_bot.services.yaml docs]: /integrations/telegram_chatbot/#notification-services
+[telegram_bot.services.yaml docs]: /integrations/telegram_bot/#notification-services
[telegram_bot.webhooks docs]: /integrations/telegram_webhooks
[tradfri docs]: /integrations/tradfri/
[vera docs]: /integrations/vera/
@@ -434,5 +434,5 @@ Experiencing issues introduced by this release? Please report them in our [issue
[device_tracker.ubus docs]: /integrations/ubus
[hassio docs]: /integrations/hassio/
[media_player.volumio docs]: /integrations/volumio
-[telegram_bot.__init__ docs]: /integrations/telegram_chatbot/
+[telegram_bot.__init__ docs]: /integrations/telegram_bot/
[discord]: https://discord.gg/c5DvZ4e
diff --git a/source/_posts/2017-06-04-release-46.markdown b/source/_posts/2017-06-04-release-46.markdown
index e9de42940d8..2f402e7a76b 100644
--- a/source/_posts/2017-06-04-release-46.markdown
+++ b/source/_posts/2017-06-04-release-46.markdown
@@ -369,7 +369,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
[switch.broadlink docs]: /integrations/broadlink#switch
[switch.rachio docs]: /integrations/rachio#switch
[switch.rflink docs]: /integrations/switch.rflink/
-[telegram_bot.__init__ docs]: /integrations/telegram_chatbot/
+[telegram_bot.__init__ docs]: /integrations/telegram_bot/
[telegram_bot.polling docs]: /integrations/telegram_polling
[telegram_bot.webhooks docs]: /integrations/telegram_webhooks
[tellduslive docs]: /integrations/tellduslive/
diff --git a/source/_posts/2017-06-17-release-47.markdown b/source/_posts/2017-06-17-release-47.markdown
index af58001c4d2..a1463d5f2e7 100644
--- a/source/_posts/2017-06-17-release-47.markdown
+++ b/source/_posts/2017-06-17-release-47.markdown
@@ -547,7 +547,7 @@ automation:
[switch.raspihats docs]: /integrations/raspihats#switch
[switch.rest docs]: /integrations/switch.rest/
[switch.template docs]: /integrations/switch.template/
-[telegram_bot.__init__ docs]: /integrations/telegram_chatbot/
+[telegram_bot.__init__ docs]: /integrations/telegram_bot/
[telegram_bot.polling docs]: /integrations/telegram_polling
[telegram_bot.webhooks docs]: /integrations/telegram_webhooks
[updater docs]: /integrations/updater/
diff --git a/source/_posts/2017-07-02-release-48.markdown b/source/_posts/2017-07-02-release-48.markdown
index e3d54c7e025..651d975d5fd 100644
--- a/source/_posts/2017-07-02-release-48.markdown
+++ b/source/_posts/2017-07-02-release-48.markdown
@@ -504,7 +504,7 @@ light:
[switch.verisure docs]: /integrations/verisure
[switch.wake_on_lan docs]: /integrations/wake_on_lan#switch
[tado docs]: /integrations/tado/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[telegram_bot.webhooks docs]: /integrations/telegram_webhooks
[tellduslive docs]: /integrations/tellduslive/
[tts docs]: /integrations/tts/
diff --git a/source/_posts/2017-07-16-release-49.markdown b/source/_posts/2017-07-16-release-49.markdown
index e7d2c1100b2..6f8201c8916 100644
--- a/source/_posts/2017-07-16-release-49.markdown
+++ b/source/_posts/2017-07-16-release-49.markdown
@@ -488,7 +488,7 @@ amcrest:
[@maikelwever]: https://github.com/maikelwever
[@ypollart]: https://github.com/ypollart
[binary_sensor.rfxtrx docs]: /integrations/binary_sensor.rfxtrx/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[#8545]: https://github.com/home-assistant/home-assistant/pull/8545
[#8571]: https://github.com/home-assistant/home-assistant/pull/8571
[#8601]: https://github.com/home-assistant/home-assistant/pull/8601
diff --git a/source/_posts/2017-08-12-release-51.markdown b/source/_posts/2017-08-12-release-51.markdown
index 8ce4edd2269..76f8cd2fb65 100644
--- a/source/_posts/2017-08-12-release-51.markdown
+++ b/source/_posts/2017-08-12-release-51.markdown
@@ -442,7 +442,7 @@ vacuum:
[switch.rainmachine docs]: /integrations/rainmachine#switch
[switch.wink docs]: /integrations/wink#switch
[switch.xiaomi_vacuum docs]: /integrations/vacuum.xiaomi_miio/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[updater docs]: /integrations/updater/
[vacuum docs]: /integrations/vacuum/
[vacuum.demo docs]: /integrations/vacuum.demo/
diff --git a/source/_posts/2017-09-09-release-53.markdown b/source/_posts/2017-09-09-release-53.markdown
index 27abd107487..d0c05471051 100644
--- a/source/_posts/2017-09-09-release-53.markdown
+++ b/source/_posts/2017-09-09-release-53.markdown
@@ -439,7 +439,7 @@ frontend:
[switch.rest docs]: /integrations/switch.rest/
[switch.rfxtrx docs]: /integrations/switch.rfxtrx/
[switch.knx docs]: /integrations/switch.knx/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[tesla docs]: /integrations/tesla/
[tradfri docs]: /integrations/tradfri/
[volvooncall docs]: /integrations/volvooncall/
diff --git a/source/_posts/2017-10-21-release-56.markdown b/source/_posts/2017-10-21-release-56.markdown
index fd8ac7e6a77..b25ba71446f 100644
--- a/source/_posts/2017-10-21-release-56.markdown
+++ b/source/_posts/2017-10-21-release-56.markdown
@@ -527,7 +527,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
[switch.tplink docs]: /integrations/tplink
[switch.wink docs]: /integrations/wink#switch
[switch.xiaomi_miio docs]: /integrations/switch.xiaomi_miio/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[tesla docs]: /integrations/tesla/
[toon docs]: /integrations/toon/
[tradfri docs]: /integrations/tradfri/
diff --git a/source/_posts/2017-11-18-release-58.markdown b/source/_posts/2017-11-18-release-58.markdown
index 23d5576758f..c95fc35b056 100644
--- a/source/_posts/2017-11-18-release-58.markdown
+++ b/source/_posts/2017-11-18-release-58.markdown
@@ -469,7 +469,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
[switch.snmp docs]: /integrations/snmp#switch
[switch.xiaomi_miio docs]: /integrations/switch.xiaomi_miio/
[system_log docs]: /integrations/system_log/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[telegram_bot.polling docs]: /integrations/telegram_polling
[tradfri docs]: /integrations/tradfri/
[tts docs]: /integrations/tts/
diff --git a/source/_posts/2018-01-14-release-61.markdown b/source/_posts/2018-01-14-release-61.markdown
index fba4b0fd1a8..eed5ed65952 100644
--- a/source/_posts/2018-01-14-release-61.markdown
+++ b/source/_posts/2018-01-14-release-61.markdown
@@ -760,7 +760,7 @@ Note however, that this feature was replaced by a new ignore_string config optio
[switch.transmission docs]: /integrations/transmission
[switch.xiaomi_miio docs]: /integrations/switch.xiaomi_miio/
[tahoma docs]: /integrations/tahoma/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[timer docs]: /integrations/timer/
[tts.baidu docs]: /integrations/baidu
[tts.marytts docs]: /integrations/marytts
diff --git a/source/_posts/2018-02-26-release-64.markdown b/source/_posts/2018-02-26-release-64.markdown
index f4dc9ccad3a..e58b5fcdeae 100644
--- a/source/_posts/2018-02-26-release-64.markdown
+++ b/source/_posts/2018-02-26-release-64.markdown
@@ -576,7 +576,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
[switch.smappee docs]: /integrations/smappee
[switch.xiaomi_miio docs]: /integrations/switch.xiaomi_miio/
[tahoma docs]: /integrations/tahoma/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[vacuum.xiaomi_miio docs]: /integrations/vacuum.xiaomi_miio/
[vera docs]: /integrations/vera/
[weather.buienradar docs]: /integrations/buienradar
diff --git a/source/_posts/2018-03-30-release-66.markdown b/source/_posts/2018-03-30-release-66.markdown
index bf0ec721ad6..939ae2a063f 100644
--- a/source/_posts/2018-03-30-release-66.markdown
+++ b/source/_posts/2018-03-30-release-66.markdown
@@ -550,7 +550,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
[switch.vesync docs]: /integrations/vesync#switches
[switch.xiaomi_miio docs]: /integrations/switch.xiaomi_miio/
[switch.zha docs]: /integrations/zha
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[upcloud docs]: /integrations/upcloud/
[vacuum.xiaomi_miio docs]: /integrations/vacuum.xiaomi_miio/
[weather.darksky docs]: /integrations/weather.darksky/
diff --git a/source/_posts/2018-05-18-release-70.markdown b/source/_posts/2018-05-18-release-70.markdown
index 1fde7339710..60cd476658b 100644
--- a/source/_posts/2018-05-18-release-70.markdown
+++ b/source/_posts/2018-05-18-release-70.markdown
@@ -432,7 +432,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
[switch.tahoma docs]: /integrations/tahoma
[system_log docs]: /integrations/system_log/
[tahoma docs]: /integrations/tahoma/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[tts docs]: /integrations/tts/
[updater docs]: /integrations/updater/
[weather.bom docs]: /integrations/bom
diff --git a/source/_posts/2018-09-15-release-78.markdown b/source/_posts/2018-09-15-release-78.markdown
index 92655fe1979..ddebd0a075c 100644
--- a/source/_posts/2018-09-15-release-78.markdown
+++ b/source/_posts/2018-09-15-release-78.markdown
@@ -480,7 +480,7 @@ The configuration value type should no longer be used. ([@endor-force] - [#15935
[switch.tahoma docs]: /integrations/tahoma
[switch.tplink docs]: /integrations/tplink
[tahoma docs]: /integrations/tahoma/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[tts docs]: /integrations/tts/
[upnp docs]: /integrations/upnp/
[vacuum docs]: /integrations/vacuum/
diff --git a/source/_posts/2018-10-12-release-80.markdown b/source/_posts/2018-10-12-release-80.markdown
index fa54d4a3f93..4351081033e 100644
--- a/source/_posts/2018-10-12-release-80.markdown
+++ b/source/_posts/2018-10-12-release-80.markdown
@@ -80,7 +80,7 @@ On the devices side, we got basic support for the new IKEA TRÅDFRI switches, Ho
[camera.blink docs]: /integrations/blink
[cloud docs]: /integrations/cloud/
[sensor.blink docs]: /integrations/blink
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
## Release 0.80.3 - October 18
@@ -709,7 +709,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
[switch.tradfri docs]: /integrations/tradfri
[switch.volvooncall docs]: /integrations/volvooncall
[switch.xiaomi_aqara docs]: /integrations/switch.xiaomi_aqara/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[tibber docs]: /integrations/tibber/
[timer docs]: /integrations/timer/
[tradfri docs]: /integrations/tradfri/
diff --git a/source/_posts/2018-10-29-release-81.markdown b/source/_posts/2018-10-29-release-81.markdown
index 8ac74a3bdb7..17466e657ec 100644
--- a/source/_posts/2018-10-29-release-81.markdown
+++ b/source/_posts/2018-10-29-release-81.markdown
@@ -843,7 +843,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
[switch.xiaomi_aqara docs]: /integrations/switch.xiaomi_aqara/
[switch.xiaomi_miio docs]: /integrations/switch.xiaomi_miio/
[switch.zwave docs]: /integrations/zwave
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[tts docs]: /integrations/tts/
[twilio docs]: /integrations/twilio/
[unifi docs]: /integrations/unifi/
diff --git a/source/_posts/2018-11-08-release-82.markdown b/source/_posts/2018-11-08-release-82.markdown
index cdc29a83f86..1f95b61a1a3 100644
--- a/source/_posts/2018-11-08-release-82.markdown
+++ b/source/_posts/2018-11-08-release-82.markdown
@@ -678,7 +678,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
[switch.xiaomi_aqara docs]: /integrations/switch.xiaomi_aqara/
[switch.xiaomi_miio docs]: /integrations/switch.xiaomi_miio/
[switch.zigbee docs]: /integrations/zigbee#switch
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[tts docs]: /integrations/tts/
[twilio docs]: /integrations/twilio/
[updater docs]: /integrations/updater/
diff --git a/source/_posts/2019-03-13-release-89.markdown b/source/_posts/2019-03-13-release-89.markdown
index 906e336ab93..d407e4730cc 100644
--- a/source/_posts/2019-03-13-release-89.markdown
+++ b/source/_posts/2019-03-13-release-89.markdown
@@ -713,7 +713,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
[switch.tplink docs]: /integrations/tplink
[system_log docs]: /integrations/system_log/
[tahoma docs]: /integrations/tahoma/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[tellduslive docs]: /integrations/tellduslive/
[tibber docs]: /integrations/tibber/
[toon docs]: /integrations/toon/
diff --git a/source/_posts/2019-04-03-release-91.markdown b/source/_posts/2019-04-03-release-91.markdown
index 1369598da4b..907e0548259 100644
--- a/source/_posts/2019-04-03-release-91.markdown
+++ b/source/_posts/2019-04-03-release-91.markdown
@@ -831,7 +831,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
[switch docs]: /integrations/switch/
[switchbot docs]: /integrations/switchbot/
[systemmonitor docs]: /integrations/systemmonitor/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[tellduslive docs]: /integrations/tellduslive/
[tfiac docs]: /integrations/tfiac/
[tibber docs]: /integrations/tibber/
diff --git a/source/_posts/2019-04-24-release-92.markdown b/source/_posts/2019-04-24-release-92.markdown
index 3f74e2d99e3..421882711cf 100644
--- a/source/_posts/2019-04-24-release-92.markdown
+++ b/source/_posts/2019-04-24-release-92.markdown
@@ -1076,7 +1076,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
[stream docs]: /integrations/stream/
[supla docs]: /integrations/supla/
[switch docs]: /integrations/switch/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[tellduslive docs]: /integrations/tellduslive/
[tplink docs]: /integrations/tplink/
[trend docs]: /integrations/trend/
diff --git a/source/_posts/2019-05-16-release-93.markdown b/source/_posts/2019-05-16-release-93.markdown
index 11b761ad1a0..92b8925b8d5 100644
--- a/source/_posts/2019-05-16-release-93.markdown
+++ b/source/_posts/2019-05-16-release-93.markdown
@@ -853,7 +853,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
[systemmonitor docs]: /integrations/systemmonitor/
[tapsaff docs]: /integrations/tapsaff/
[ted5000 docs]: /integrations/ted5000/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[tellduslive docs]: /integrations/tellduslive/
[tensorflow docs]: /integrations/tensorflow/
[thethingsnetwork docs]: /integrations/thethingsnetwork/
diff --git a/source/_posts/2020-01-15-release-104.markdown b/source/_posts/2020-01-15-release-104.markdown
index f396523a3e1..d91968f4dda 100644
--- a/source/_posts/2020-01-15-release-104.markdown
+++ b/source/_posts/2020-01-15-release-104.markdown
@@ -2028,7 +2028,7 @@ Make sure to fill in all fields of the issue template, that is helping us a lot!
[tado docs]: /integrations/tado/
[tahoma docs]: /integrations/tahoma/
[tank_utility docs]: /integrations/tank_utility/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[tellduslive docs]: /integrations/tellduslive/
[template docs]: /integrations/template/
[tesla docs]: /integrations/tesla/
diff --git a/source/_posts/2020-02-26-release-106.markdown b/source/_posts/2020-02-26-release-106.markdown
index ae5db35adb7..b99b6aaf523 100644
--- a/source/_posts/2020-02-26-release-106.markdown
+++ b/source/_posts/2020-02-26-release-106.markdown
@@ -228,7 +228,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
input_type: discrete_input
```
-- **Tado** - Adding support of multiple Tado accounts has changed the unique ID generation of sensor and climate devices, and now includes the ID of the home.
+- **Tado** - Adding support of multiple Tado accounts has changed the unique ID generation of sensor and climate devices, and now includes the ID of the home. As a result you will see new entity ID's for `sensor` and `climate` devices.
In addition, support for water heater zones has been added. Tado hot water zones with temperature control previously created a climate entity, e.g., `climate.hot_water`, and these will be replaced by a `water_heater.hot_water` entity. This change is not breaking for hot water zones without temperature control as they do not have a climate zone.
@@ -333,6 +333,56 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Updated frontend to 20200220.4 ([@bramkragten] - [#32205]) ([frontend docs]) (beta fix)
- Remove deprecated Hue options (fixes CI) ([@frenck] - [#32027]) ([hue docs]) (breaking change) (beta fix)
+## Release 0.106.1 - February 27
+
+- Add missing translations for light actions ([@emontnemery] - [#32216]) ([light docs])
+- Mark clients away if they have never been seen. ([@lociii] - [#32222]) ([unifi docs])
+- Fix DSMR 5 ([@dupondje] - [#32233]) ([dsmr docs])
+- Bump simplisafe-python to 9.0.0 ([@bachya] - [#32215]) ([simplisafe docs])
+- Bump simplisafe-python to 9.0.2 ([@bachya] - [#32273]) ([simplisafe docs])
+- deCONZ - Race condition on slower systems ([@Kane610] - [#32274]) ([deconz docs])
+- Catch more Hue errors ([@balloob] - [#32275]) ([hue docs])
+
+[#32215]: https://github.com/home-assistant/home-assistant/pull/32215
+[#32216]: https://github.com/home-assistant/home-assistant/pull/32216
+[#32222]: https://github.com/home-assistant/home-assistant/pull/32222
+[#32233]: https://github.com/home-assistant/home-assistant/pull/32233
+[#32273]: https://github.com/home-assistant/home-assistant/pull/32273
+[#32274]: https://github.com/home-assistant/home-assistant/pull/32274
+[#32275]: https://github.com/home-assistant/home-assistant/pull/32275
+[@Kane610]: https://github.com/Kane610
+[@bachya]: https://github.com/bachya
+[@balloob]: https://github.com/balloob
+[@dupondje]: https://github.com/dupondje
+[@emontnemery]: https://github.com/emontnemery
+[@lociii]: https://github.com/lociii
+[deconz docs]: /integrations/deconz/
+[dsmr docs]: /integrations/dsmr/
+[hue docs]: /integrations/hue/
+[light docs]: /integrations/light/
+[simplisafe docs]: /integrations/simplisafe/
+[unifi docs]: /integrations/unifi/
+
+## Release 0.106.2 - February 28
+
+- Updated frontend to 20200220.5 ([@bramkragten] - [#32312]) ([frontend docs])
+- revent saving/deleting Lovelace config in safe mode ([@balloob] - [#32319]) ([lovelace docs])
+- UniFi - Temporary workaround to get device tracker to mark cli… ([@Kane610] - [#32321]) ([unifi docs])
+- Ensure rest sensors are marked unavailable when http requests… ([@bdraco] - [#32309]) ([rest docs])
+
+[#32309]: https://github.com/home-assistant/home-assistant/pull/32309
+[#32312]: https://github.com/home-assistant/home-assistant/pull/32312
+[#32319]: https://github.com/home-assistant/home-assistant/pull/32319
+[#32321]: https://github.com/home-assistant/home-assistant/pull/32321
+[@Kane610]: https://github.com/Kane610
+[@balloob]: https://github.com/balloob
+[@bdraco]: https://github.com/bdraco
+[@bramkragten]: https://github.com/bramkragten
+[frontend docs]: /integrations/frontend/
+[lovelace docs]: /integrations/lovelace/
+[rest docs]: /integrations/rest/
+[unifi docs]: /integrations/unifi/
+
## All changes
- Change scan_interval defaults for Tesla ([@alandtse] - [#31194]) ([tesla docs]) (breaking change)
@@ -1097,7 +1147,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
[system_log docs]: /integrations/system_log/
[tado docs]: /integrations/tado/
[tahoma docs]: /integrations/tahoma/
-[telegram_bot docs]: /integrations/telegram_chatbot/
+[telegram_bot docs]: /integrations/telegram_bot/
[template docs]: /integrations/template/
[tensorflow docs]: /integrations/tensorflow/
[tesla docs]: /integrations/tesla/
diff --git a/source/_posts/2020-02-28-community-highlights.markdown b/source/_posts/2020-02-28-community-highlights.markdown
new file mode 100644
index 00000000000..2b511862628
--- /dev/null
+++ b/source/_posts/2020-02-28-community-highlights.markdown
@@ -0,0 +1,100 @@
+---
+title: "Community Highlights: 4th edition"
+description: "3D All the things!"
+date: 2020-02-28 00:00:00
+date_formatted: "February 28, 2020"
+author: Franck Nijhof
+author_twitter: frenck
+categories: Community
+og_image: /images/blog/2020-02-28-community-highlights/social.png
+---
+
+For the 4th edition, I thought it fitted to devote the community highlights to 3D!
+
+_That is actually a lie, the [3rd edition](/blog/2020/02/19/community-highlights/)
+would have been much more fitting, but was hijacked by Paulus ;)
+At least it's my 3rd community highlight writeup, so that counts, right?_
+
+Ready for some highly inspiring and mind-blowing 3D creations?
+
+## 3D home navigation and control, using Unity
+
+Are you sure you ready? Because Harrie de Groot created a fully navigatable
+3D model of his home using Unity, accessible from within Home Assistant.
+
+You really **need** to watch the video below now...
+
+
+
+
+
+Well done, Harrie! That looks slick!
+
+More details on his creation can be found on the
+[Home Assistant Community Forum](https://community.home-assistant.io/t/3d-home-navigation-control-unity-home-assistant/174972).
+
+## 3D printed interactive floorplan
+
+If you have been around a bit, you might have come across a screenshot of
+someone with an interactive floorplan in Home Assistant. [Ryan Connolly](https://twitter.com/rynam0)
+took that idea straight into the real world by 3D printing his floorplan,
+wired it, and hooked it up Home Assistant.
+
+Talking about taking things into another dimension...
+
+
+
+### Getting started with your own 3D floorplan
+
+Ok, so the above two, rather impressive, listings might be a bit out of reach
+for the most of us. Still, with some help, you could still achieve some pretty
+nice looking 3D floorplans. [Aaron Godfrey](https://github.com/boralyl) wrote a
+couple of excellent blog posts on this.
+
+In his [first blog post](https://aarongodfrey.dev/home%20automation/floorplan-in-home-assistant/),
+Aaron shows you what his floorplan looks like
+
+
+
+
+
+He followed up with two blog posting on how to achieve this:
+
+- [Tips for creating a Floorplan in Sweet Home 3D](https://aarongodfrey.dev/home%20automation/tips_for_creating_a_3d_floorplan_using_sweethome3d/)
+- [Creating an Interactive 3D Floorplan in Home Assistant](https://aarongodfrey.dev/home%20automation/creating-a-3d-floorplan-in-home-assistant/)
+
+### Bonus tip: HomeByMe
+
+I've personally got recommended a tool for creating a 3D floorplan with a tool
+that is generally lesser-known, but actually pretty awesome! [HomeByMe](https://home.by.me/en/)
+
+

+
+This is a result of a 3D floorplan created with [HomeByMe](https://home.by.me/en/).
+
+It works fully in the browser and I enjoyed the experience using that.
+So credits where credits due: Thanks for recommending me this sweet little
+gem [Andrea Donno](https://www.twitter.com/andreadonno)!
+
+## Got a tip for the next edition?
+
+Have you seen (or made) something awesome, interesting, unique, amazing, inspirational, unusual or funny, using Home Assistant?
+
+[Click here to send us your Community Highlight suggestion](/suggest-community-highlight).
+
+Also, don't forget to share your creations with us via Social Media:
+
+- Twitter it! Be sure to mention [@home_assistant][twitter]
+- Share it on our [Facebook group][facebook-group]
+- Post it to our [subreddit][reddit]
+- Tag [@homeasssistant][instagram] on Instagram
+- Or via chat, drop us a line in the [#lounge at Discord][chat]
+
+See you next edition!
+
+[chat]: https://www.home-assistant.io/join-chat
+[facebook-group]: https://www.facebook.com/groups/HomeAssistant/
+[instagram]: https://www.instagram.com/homeassistant/
+[reddit]: https://www.reddit.com/r/homeassistant
+[twitter]: https://www.twitter.com/home_assistant
diff --git a/source/_redirects b/source/_redirects
index ffa54f21dfc..d72d70b8a8e 100644
--- a/source/_redirects
+++ b/source/_redirects
@@ -1885,7 +1885,7 @@
/components/ted5000 /integrations/ted5000
/components/teksavvy /integrations/teksavvy
/components/telegram /integrations/telegram
-/components/telegram_bot /integrations/telegram_chatbot
+/components/telegram_bot /integrations/telegram_bot
/components/tellduslive /integrations/tellduslive
/components/tellstick /integrations/tellstick
/components/telnet /integrations/telnet
@@ -2036,6 +2036,7 @@
# Breaking changes
/integrations/switch.pca /integrations/elv
+/integrations/telegram_chatbot /integrations/telegram_bot
# Moved documentation
/docs/ecosystem/ios/ https://companion.home-assistant.io/
diff --git a/source/images/blog/2020-02-28-community-highlights/homebyme.png b/source/images/blog/2020-02-28-community-highlights/homebyme.png
new file mode 100644
index 00000000000..f0d0edc79e5
Binary files /dev/null and b/source/images/blog/2020-02-28-community-highlights/homebyme.png differ
diff --git a/source/images/blog/2020-02-28-community-highlights/social.png b/source/images/blog/2020-02-28-community-highlights/social.png
new file mode 100644
index 00000000000..841b721690a
Binary files /dev/null and b/source/images/blog/2020-02-28-community-highlights/social.png differ
diff --git a/source/images/supported_brands/velbus.png b/source/images/supported_brands/velbus.png
index 76b24398b3f..072f9dbc98e 100644
Binary files a/source/images/supported_brands/velbus.png and b/source/images/supported_brands/velbus.png differ