Build JSON packet forwarder message for an uplink (rxpk) which will be sent Virtual LoRa packet forwarder.
In LoRaWAN, you will need real gateways and real devices for your real test case. However, it's simpler to using just simulated gateway and simulated devices in order to choose best LoRaWAN Network Server fulfills your real requirements.
lora-packet
is a nice module to generate LoRaWAN uplink/downlink payloads, but in order to send them to a Network Server, Semtech UDP Packet Forwarder protocol is required.
- Node.js v8.x
npm install --save packet-forwarder-json-builder
Compose messages to remote Network Server using Packet Forwarder protocol.
Supported messages:
- Uplink
- Join-request
const jsonBuilder = require('packet-forwarder-json-builder')
const payload = Buffer.from('test')
const scenario = {
gateway: {},
device: {
seqno: 1,
addr: '899d555c',
appSKey: 'db1ce62ae4a266a6aad58da0a6ef413b',
nwkSKey: '33d356771bc0840d2ebf37e9585c800c'
}
}
console.log(jsonBuilder.uplink(payload, scenario))
// {
// rxpk: [{
// time: '2018-05-14T21:00:06.324Z',
// tmst: 1526331621,
// chan: null,
// codr: '4/5',
// data: 'QFxVnYkgAQABAzcL0/TBBww=',
// datr: 'SF8BW125',
// freq: 868300000,
// lsnr: 12,
// modu: 'LORA',
// rfch: 0,
// rssi: -97,
// size: 17,
// stat: 0,
// tmms: null
// }]
// }
Clone repository, install dependencies and run tests npm test
.
Add additional notes about how to deploy this on a live system
Respect standard
rules.
We use SemVer for versioning.
- Antonio Bustos - Initial work - antoniobusrod
This project is licensed under the MIT License - see the LICENSE file for details