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
mqtt-panel
is using the listed projects to provide its functionality:
If you are using Fedora and want to generate MQTT messages, install the
paho-mqtt
Python bindings.
$ sudo dnf -y install python-paho-mqtt
A MQTT broker/server is needed to run on localhost on port 3000 and providing websocket support.
- 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. Or run
./mqtt-server.py
to usemqtt-panel
with hbmqtt (make sure that you installed it withpip3 install hbmqtt
). - Adjust
var host = '127.0.0.1';
andvar port = 3000;
in the fileindex.html
to match your setup. - Open
index.html
.
If you are using Fedora, just use dnf
to install node
.
$ sudo dnf -y install node npm
then
$ npm install mqtt socket.io
- Launch
./runner.sh
which will start the node server on port 3000 for the standard node.js example. - Adjust
var host = '127.0.0.1';
andvar port = 3000;
in the fileindex.html
to match your setup. - Open
index-node.html
with your browser.
Start the ./test-messages.py
script to publish test messages if you have
no other source for messages. Depending on your broker you may need to set
the supported version. On line 33: protocol=mqtt.MQTTv311
For manually sending messages to your MQTT broker/server you can use
mosquitto_pub
from mosquitto
or hbmqtt_pub
.
$ mosquitto_pub -V mqttv311 -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 -V mqttv311 -h localhost -d -t home/#
mqtt-panel
was inspired by the ideas of:
mqtt-panel
licensed under MIT, for more details check LICENSE.