- Decrypt and encrypt Lora packet
- Authentification by OTAA and ABP via Aloes device-manager
- MQTT flow triggered by LoraWan server events
- Decode payload received/sent with CayenneLPP
LoraWan MQTT API build upon :
-
/. --> Main application configuration, dependencies list, and launch scripts
-
/deploy --> contains environment variables ( hidden files )
-
/docs --> contains static site assets and configuration ( JSDoc & Vuepress)
-
/log --> contains logs from PM2
-
/src --> contains source code
Edit your config in .env_sample and save it as .env.
You can override these by populating deploy with files corresponding to an environment ( eg: .env_production ... ), and via pm2 ecosystem.config.json .
$ npm install -g pm2
$ npm install $ npm run lint $ npm run start:devWith JSDoc and Vuepress
$ npm run docs:dev$ npm run docs:build
$ npm run docs:servePlease remember to update .env and / or ecosystem.config.json files to match your enviroment.
$ npm run deploy:prod- Access to server with SSH :
$ ssh-keygen -f ~/.ssh/server_name -t rsa -C <email_address> -b 4096
$ ssh-copy-id -i ~/.ssh/server_name user@server_uri- Creating environment :
$ pm2 deploy ecosystem.config.js production setup- Updating environment :
$ pm2 deploy ecosystem.config.js production updateBe sure to commit your changes on the right branch before each setup and update: ( master for production env, and staging for dev/staging env )
$ git checkout master
$ git add .
$ git commit .
$ git push