Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/ash
- # MQTT SETTINGS
- host="broker.shiftr.io"
- user="<user>"
- password="<password>"
- port=1883
- topic="<topic>"
- #ONION OMEGA2 GPIO PID SETTING
- io_pid=0
- gpioctl dirout $io_pid > /dev/null
- p="backpipe"
- ctrl_c() {
- echo "Cleaning up..."
- pid=$(cat pidfile)
- rm -f $p;rm cmds;rm pidfile;kill $pid 2>/dev/null
- if [[ "$?" -eq "0" ]];
- then
- echo "Exit success";exit 0
- else
- exit 1
- fi
- }
- listen(){
- ([ ! -p "$p" ]) && mkfifo $p
- (mosquitto_sub -h $host -u $user -P $password -p $port -t $topic >$p) &
- echo "$!" > pidfile
- while read line <$p
- do
- echo $line > cmds
- if grep -q "toogle" cmds; then
- gpioctl dirout-high 0 > /dev/null && sleep 1 && gpioctl dirout-low 0 > /dev/null
- fi
- done
- }
- trap ctrl_c INT
- listen
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement