Self-hosted middleware
The LTE Middleware (also called the IoT uplink gateway) is a Node.js service you can run in your own environment. It is the same component ioThings uses to receive LTE device traffic: it accepts uplinks, validates and decodes them, and forwards a readable message to your application.
Self-hosting is useful when device traffic should stay in your infrastructure, or when you want to provide your own Key Service and/or Downlink Service instead of using the ioThings backend.
What it does
- Listens for device uplinks over HTTP and/or UDP.
- Looks up each device’s security key from a database or an HTTP Key Service (yours or ioThings).
- Validates, decrypts if needed, and decodes the message.
- Forwards the decoded uplink as JSON to an HTTP(S) endpoint you configure.
- Acknowledges confirmed uplinks, and can send queued configuration downlinks when a device is already online for an uplink.
You do not have to run every piece yourself. For example, you can self-host the Middleware and still use the ioThings Key Service, or run the Middleware, keys, and downlinks entirely on your side.
Getting started
Setup, configuration, and how to run the service (locally or with Docker) are described in the lte-server README.
How the Middleware talks to your Key Service, forwarding endpoint, and optional Downlink Service is described in the integrator-guide.