Data Access and Connectivity
As described in Everything is a Thing, the IoTHub provides full support for several technologies oriented to industrial automation. There are two key pieces for establishing a reliable communication between the IoTHub and the devices:
the IoTHub Gateway and
the Agents
The Gateway of the IoTHub provides a high performant and scalable way of communication based on gRPC (a novel protocol for remote procedure calls). This allows the IoTHub to provide a continued data-flow for incoming and outgoing data.
For this task, the Gateway exchanges information with different Agents, which are external applications establishing direct data-exchange with the devices. In particular, each agent is a technology-specific program that allows full control over multiple (hundreds or thousands) devices connected at the same time, enabling the user to have full control over the operations, configuration, state, and data of the devices.
Moreover, for advanced users, the IoTHub provides a RESTful API and a WebSocket API, raising the control of the users over the IoTHub features.