iot-gateway-compression-gzip-nodejs
v0.2.1
Published
NodeJS GZip Compression Module for Azure IoT Gateway
Downloads
15
Maintainers
Readme
iot-gateway-compression-gzip-nodejs
NodeJS GZip Compression Module for Azure IoT Gateway
Using this module, developers can build Azure IoT Gateway solutions that send and receive compressed messages to/from Azure IoT Hub. Additionally, this same module can be imported and leveraged on the cloud side, through Azure Functions, to provide similar compression and decompression functionality. When using with the Gateway, compression and decompression modules come with the proper interface to read and re-publish messages to the gateway's message broker.
Installation
npm install iot-gateway-compression-gzip-nodejs --save
Usage
Gateway
Add the following module to the modules
section of your gateway JSON configuration file:
{
"modules": [
{
"name": "compressor",
"loader": {
"name": "node",
"entrypoint": {
"main.path": ".\node_modules\iot-gateway-compression-gzip-nodejs\(de)compressor.js"
}
},
"args": null
},
...
Then in the links
section, patch the module into the message flow:
],
"links": [
{"source": "{reader_module}", "sink": "(de)compressor"},
{"source": "(de)compressor", "sink": "{writer_module}"},
...
]
}
Azure Function
Add the package to your function, instructions here then import the module
var (de)compressor = require('(de)compressor');
and then in your code simply call
(de)compress({Buffer}, {callback});
Tests
npm test
License
This project is licensed under the MIT License.
Contributing
When contributing to this repository, please create a GitHub issue to discuss the change you would like to make.
Please note we have a code of conduct, please follow it in all your interactions with the project.
Release History
- 0.2.1 Pulled (de)compress function out for Azure Function use.
- 0.2.0 Added decompression capabilities.
- 0.1.2 ReadMe Updates, removed base64 encoding of compressed messages.
- 0.1.1 URL Updates
- 0.1.0 Initial release