Как я могу опубликовать данные MQTT на пустой веб-странице - PullRequest
0 голосов
/ 17 июня 2019

Я хотел бы разместить данные, полученные через MQTT, на пустой веб-странице HTML, чтобы единственным содержимым этой веб-страницы был исходный файл msg.payload, отправленный через MQTT. Для этого я создал поток ниже.

Image of Node-Red flow

Я пытался использовать функции GET и POST, а также пробовал использовать функцию websocket, но безуспешно, я надеюсь, что кто-то может сказать мне, где я иду не так. Предполагаемая веб-страница - это просто веб-страница, отображающая значение температуры.

Edit: Picture of what happened when i attempted to use the GET function, after setting global.temp as the msg.payload

1 Ответ

1 голос
/ 17 июня 2019

Вы, кажется, очень близки.Один простой способ, как показано ниже.

Сначала вы сохраняете полезную нагрузку в переменную контекста потока.Я использовал узлы инъекции, но вы замените его узлом MQTT.

Во-вторых, вы используете HTTP-узел в узле для запуска потока, который будет читать переменную контекста потока в msg.payload.

КогдаВы указываете свой браузер на конечную точку /mytemp, вы увидите температуру.

[{"id":"6eba3ed8.e29ba","type":"tab","label":"Flow 4","disabled":false,"info":""},{"id":"a35c9258.340b1","type":"debug","z":"6eba3ed8.e29ba","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":570,"y":120,"wires":[]},{"id":"fb8bcf33.015ee","type":"http in","z":"6eba3ed8.e29ba","name":"/mytemp","url":"/mytemp","method":"get","upload":false,"swaggerDoc":"","x":180,"y":220,"wires":[["7bb7b19.2efd75"]]},{"id":"7bb7b19.2efd75","type":"change","z":"6eba3ed8.e29ba","name":"mytemp","rules":[{"t":"set","p":"payload","pt":"msg","to":"mytemp","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":340,"y":220,"wires":[["8b54468f.82d758","2b02d89.dfec028"]]},{"id":"8b54468f.82d758","type":"debug","z":"6eba3ed8.e29ba","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":550,"y":280,"wires":[]},{"id":"a691c7d8.da5d78","type":"inject","z":"6eba3ed8.e29ba","name":"","topic":"","payload":"21","payloadType":"num","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":190,"y":120,"wires":[["3af6ea2f.2c0476"]]},{"id":"3af6ea2f.2c0476","type":"change","z":"6eba3ed8.e29ba","name":"flow.mytemp","rules":[{"t":"set","p":"mytemp","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":370,"y":120,"wires":[["a35c9258.340b1"]]},{"id":"2b02d89.dfec028","type":"http response","z":"6eba3ed8.e29ba","name":"","statusCode":"","headers":{},"x":570,"y":220,"wires":[]},{"id":"2f1ab064.3b768","type":"inject","z":"6eba3ed8.e29ba","name":"","topic":"","payload":"33","payloadType":"num","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":190,"y":160,"wires":[["3af6ea2f.2c0476"]]}]

enter image description here

...