Add example for JSON-formatted payload

This commit is contained in:
Fabian Affolter 2018-09-21 22:35:12 +02:00
parent 5579effea9
commit 3984d1674c
No known key found for this signature in database
GPG Key ID: E23CD2DD36A4397F

View File

@ -10,7 +10,7 @@ footer: true
logo: mqtt.png
---
The MQTT component will register the service `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.
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.
```json
{
@ -19,10 +19,20 @@ The MQTT component will register the service `publish` which allows publishing m
}
```
{% raw %}
```json
{
"topic": "home-assistant/light/1/state",
"payload_template": "{% raw %}{{ states('device_tracker.paulus') }}{% endraw %}"
"payload_template": "{{ states('device_tracker.paulus') }}"
}
```
{% endraw %}
`payload` must be a string. If you want to send JSON then you need to format/escape it properly. Like:
```json
{
"topic": "home-assistant/light/1/state",
"payload":"{\"Status\":\"off\", \"Data\":\"something\"}"
}
```