me

mqtt-exec

Execute shell command on MQTT messages

Showing:

Popularity

Downloads/wk

2

GitHub Stars

26

Maintenance

Last Commit

2yrs ago

Contributors

1

Package

Dependencies

5

Size (min+gzip)

65.2KB

License

Type Definitions

Tree-Shakeable

No?

Categories

Readme

mqtt-exec

A simple MQTT agent based on node.js that subscribes to a given list of MQTT topics on the specified broker and executes a given shell script/command whenever a message arrives. It can also be used in combination with a Home Automation Framework like Home.Pi

Setup

npm install mqtt-exec -g

Start broker

Start the MQTT broker with

mosquitto

Configuration

Create/Modify configuration "config.json"

{
  "/home/devices/livingroom/ligh1/value/set":  { "true"  : "sudo /home/pi/rcswitch-pi/sendRev B 1 1", 
                                                 "false" : "sudo /home/pi/rcswitch-pi/sendRev B 1 0" },
  "/home/devices/livingroom/ligh2/value/set":  { "true"  : "sudo /home/pi/rcswitch-pi/sendRev B 3 1", 
                                                 "false" : "sudo /home/pi/rcswitch-pi/sendRev B 3 0"}                     
}

Start application

Start application with the path to the config file and the URL of the MQTT broker

mqtt-exec -c /path/to/config.json -h mqtt://localhost:1883

or run it in the backround with logging to a file

nohup mqtt-exec -c /path/to/config.json > mqtt-exec.log  &

You can also set the MQTT broker url as environment variable

export MQTT_BROKER_URL=mqtt://localhost:1883

Simulate the execution of a command

mosquitto_pub -d -t home/devices/light1/value/set -m "true"

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100