A Node.js library for the integration of local resources to the Internet of Things (IoT)
Many businesses that produce digital goods and services are moving or are considering to move their applications to the cloud in order to scale geographically, to reduce maintenance costs and to allow their staff and clients to access their systems from any device with Internet access. In order to fill the gap between the local resources, sources of the data, and the web/cloud applications it is necessary either to give an Internet connection and network management logic to each device, or to connect them to an IoT gateway that manages the network access and relay application requests and device data to their intended targets.
The gateway option is the most practical and cost effective way to go for contexts where the resources are clustered or not too distant from each other. Although there are already many off-the-shelf IoT gateway hardware in the market, developing, customizing and scaling the software component remains a big challenge, since it implies the integration of disparate devices that may have proprietary communication protocols.
Hypergate is a Node.js library for developing the software of IoT gateways. This means that it can be used as a framework for building solutions that bridge the gap between web or cloud applications and instruments, local databases, sensors, legacy hardware, or virtually any non-IoT ready device.
With Hypergate it’s possible to integrate new devices or resources with independent and specific applications or plugins, which don’t need to manage the network connectivity and can be agnostic of the underlying IoT protocols. A plugin only needs to understand the data and command protocol and to translate it into JSON messages to exchange with the main gateway application through standard I/O streams, a JSON file or a local socket connection. The plugins to be used by the gateway application and their settings can be specified to Hypergate by means of a simple JSON string.
Hypergate provides protocol-specific modules or web interfaces for the most popular IoT protocols like Websockets, HTTP REST and MQTT, so that it’s easy to connect your gateway application to your cloud and web services without having to reinvent the wheel. It’s only necessary to specify the specific network settings like endpoints and credentials, and all the messages from/to the cloud will be converted in commands/events that Hypergate use to manage and communicate with the plugins and therefore with the local resources.
Hypergate allows you to integrate one type of device at a time while giving very simple requirements to your plugin developer who will be free to use any programming language and development tools. You can also use more than one web interface at a time and develop your own interfaces that might fit better to your needs.
- Robust and flexible Node.js library;
- Integration of devices to cloud based applications with simple plugins that can be independent compiled applications or scripts;
- Plugins can be also used for managing the gateway itself;
- Web interface modules for the most popular IoT protocols which can be used in parallel;
- API that allows to easily integrate a custom web interface for any message-centric protocol.
Software developers, system integrators and IoT architects.
Biomedical services, building automation, smart environments.