Created
February 2, 2020 22:36
-
-
Save lucasrpb/6ecff2aef784b2b362ab02b8222c2d8f to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Test file for using the Raspberry Pi and Johnny-Five | |
const five = require('johnny-five'); | |
const raspi = require('raspi-io').RaspiIO; | |
// Make a new `Board()` instance and use raspi-io | |
const board = new five.Board({ | |
io: new raspi() | |
}); | |
var mosca = require('mosca'); | |
var led = null; | |
//Run Board | |
board.on('ready', function() { | |
// LED Pin variable | |
led = new five.Led('P1-13'); | |
console.log("led is ready"); | |
// When this script is stopped, turn the LED off | |
// This is just for convenience | |
this.on('exit', function() { | |
led.stop().off(); | |
}); | |
}); | |
var ascoltatore = { | |
//using ascoltatore | |
type: 'mongo', | |
url: 'mongodb://localhost:27017/mqtt', | |
pubsubCollection: 'ascoltatori', | |
mongo: {} | |
}; | |
const params = process.argv; | |
const port = parseInt(params[2]); | |
var settings = { | |
port: port, | |
// backend: ascoltatore | |
}; | |
var server = new mosca.Server(settings); | |
server.on('ready', function(){ | |
console.log('Mosca server is up and running'); | |
}); | |
server.on('clientConnected', function(client) { | |
console.log('client connected', client.id); | |
}); | |
// fired when a message is received | |
server.on('published', function(packet, client) { | |
if(packet.topic == '1/command'){ | |
var stringBuf = packet.payload.toString('utf-8'); | |
var obj = JSON.parse(stringBuf); | |
console.log("published", obj); | |
if(led != null && obj.data != null && obj.data.status != null) | |
switch(obj.data.status) { | |
case 1: | |
led.on(); | |
console.log("led is on"); | |
break; | |
case 0: | |
led.stop().off(); | |
console.log("led is off", port); | |
break; | |
case 2: | |
led.blink(500); | |
console.log("led is blinking!", port); | |
break; | |
} | |
} | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment