A simple web interface which is able to subscribe to a MQTT topic and display the information.
The screenshot shows an example how to keep track on what's going in your apartment or your house. It's not about controlling, this setup is about observing various states.
What to see mqtt-panel in action -> http://youtu.be/Qb0UJa9kf2g
The web page is using bootstrap with jQuery.
Clone the mqtt-panel repository
git clone [email protected]:fabaff/mqtt-panel.git
###Dependencies
mqtt-panel depends on a couple of additional pieces:
If you are using Fedora, just use dnf to install node.
$ sudo dnf -y install node npm python-paho-mqtt
then
$ npm install mqtt socket.io
A MQTT broker/server is needed to run on localhost on port 1883.
- hbmqtt - MQTT broker with build-in websockets capabilities
- mosca - A multi-transport MQTT broker for node.js
- mosquitto - An Open Source MQTT v3.1 broker
- Make sure that your MQTT broker/server is running and listening. Use
./server-mqtt.pyfor the websockets example or setup your MQTT broker for websockets support. - Launch
./runner.shwhich will start the node server incl. the web socket on port 3000. - Start the
./test-messages.pyscript to publish test messages if you have no other source for messages. - Open
index.htmlfor the node version orindex-ws.htmlfor the websockets with your browser.
For manually sending messages to your MQTT broker/server you can use
mosquitto_pub from mosquitto.
$ mosquitto_pub -h localhost -d -t home/front/door -m "false"
To check if the messages are are ok, subscribe to the topic home/# with
mosquitto_sub.
$ mosquitto_sub -h localhost -d -t home/#
mqtt-panel was inspired by the ideas of:
mqtt-panel licensed under MIT, for more details check LICENSE.
