var instance = require('aedes')();
|
var server = require('net').createServer(instance.handle);
|
var port = 1883;
|
|
instance.subscribe('#', function(packet, cb) {
|
const { topic } = packet;
|
console.log("subscribe");
|
console.log(packet);
|
if (!topic.startsWith('$SYS') && !topic.endsWith('_reply')) {
|
const message = JSON.parse(packet.payload.toString());
|
const payload = JSON.stringify({
|
id: message.id,
|
code: 200
|
});
|
instance.publish({
|
cmd: 'publish',
|
qos: 0,
|
topic: packet.topic + '_reply',
|
payload: new Buffer(payload),
|
retain: false
|
});
|
}
|
cb();
|
});
|
|
|
// instance.keepaliveTimeout('#',(packet, cb)=>{
|
// console.log("keepaliveTimeout");
|
// cb();
|
// });
|
|
server.listen(port, function() {
|
console.log('server listening on port', port);
|
});
|