Skip to content

Instantly share code, notes, and snippets.

@janjongboom
Created September 8, 2015 07:12
Show Gist options
  • Save janjongboom/3a02fa7daf8a10510e5e to your computer and use it in GitHub Desktop.
Save janjongboom/3a02fa7daf8a10510e5e to your computer and use it in GitHub Desktop.
LoRa Customer Server in node
var net = require('net');
var server = net.createServer(function(socket) {
console.log('Listening yo');
socket.on('data', function(data) {
if (data.length === 1 && data[0] === 0x00) {
return; // some sort of ping?
}
// so all messages end with 0x00 so skip that
var obj = data.toString('utf8', 0, data.length - 1);
try {
obj = JSON.parse(obj);
}
catch (ex) {
return console.error('Could not parse message', data,
data.toString('utf8'), ex);
}
if (obj.app && obj.app.dir === 'up') {
console.log('Received upstream message from', obj.app.moteeui,
'(app=' + obj.app.appeui + '), on channel',
obj.app.userdata.port,
new Buffer(obj.app.userdata.payload, 'base64'));
}
else {
console.log('Unknown message', obj);
}
});
});
server.listen(5000, '0.0.0.0');
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment