Improve mqtt.publish service documentation (#8562)

Current documentation doesn't mention the qos or retain attributes.
This commit is contained in:
Martin Eberhardt 2019-02-14 10:16:12 +01:00 committed by Franck Nijhof
parent 7750921c81
commit 0660f3b349

View File

@ -12,6 +12,20 @@ logo: mqtt.png
The MQTT component will register the service `mqtt.publish` which allows publishing messages to MQTT topics. There are two ways of specifying your payload. You can either use `payload` to hard-code a payload or use `payload_template` to specify a [template](/topics/templating/) that will be rendered to generate the payload.
### {% linkable_title Service `mqtt.publish` %}
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `topic` | no | Topic to publish payload to.
| `payload` | yes | Payload to publish.
| `payload_template` | yes | Template to render as payload value. Ignored if payload given.
| `qos` | yes | Quality of Service to use.
| `retain` | yes | If message should have the retain flag set. (default: false)
<p class='note'>
You need to include either payload or payload_template, but not both.
</p>
```json
{
"topic": "home-assistant/light/1/command",
@ -36,3 +50,14 @@ The MQTT component will register the service `mqtt.publish` which allows publish
"payload":"{\"Status\":\"off\", \"Data\":\"something\"}"
}
```
Example of how to use `qos` and `retain`:
```json
{
"topic": "home-assistant/light/1/command",
"payload": "on",
"qos": 2,
"retain": true
}
```