Device and Application Integration options

Bosch IoT Rollouts offers developers multiple options to integrate.

Application Integration

The Rollouts update server offers a Management API that allows applications to manage the repository and trigger provisioning operations. It is in general feature compliant with the Management UI. However, small differences may occur here and there. The authentication and authorization structure is identical, i.e. a user can login both at Management API and UI with the same credentials and has the same permissions available.

Device Integration

For device integration two options exist.

The Direct Device Integration API allows direct integration from the device to the Rollouts server. It has been designed with simplicity in mind as its is fully focused on software update. It allows device integrators to separate concerns by means of having distinguished channels for business data and general device management tasks on one side and software update on the other. As a result it is possible to keep the lifesaving provisioning process controller on the device separate from the more complex business functionality. A benefit of such an architecture should not be underestimated. As stated in the motivation chapter of Rollouts: “the software update process must never fail and also must never be compromised as, at the one hand, it can be used to fix almost any issue/problem on the device but at the same time also poses the greatest security threat if mis-used to introduce malicious code to the device.”

As result of such a simple HTTP/REST/JSON based API even a mayor back-end migration or disaster can be covered with simple web server hosting a text file that contains only the command to update one more time to execute a migration on the device. The API was designed on purpose in way to have that last resort even if we plan that this will never be necessary.

The Device Management Federation API however allows to combine the business data and Rollouts connectivity. This is especially useful if a constrained device cannot handle a TLS/HTTP connection, is supporting a standard device management protocol that covers also the software update part (e.g. TR-069, OMA-DM, LWM2M) or the device is already connect and Rollouts is introduced later on.

The decision for the right device integration path is up to the integration party.

Please check the Rollouts Integration Interfaces and APIs for more information.