The Bosch IoT Hub Developer UI is a Cross-Platform desktop application which enables Bosch customers to quickly get used with the Bosch IoT Hub and its concepts. It features an intuitive way to create new devices and credentials for your existing IoT devices and see the device data flow through the IoT Hub.
The product features views for Device to Cloud Communication, Cloud to Device Communication and Device Registrations.
The Device to Cloud view consists of a log console that displays incoming messages from registered IoT Devices in real time, and a filtered view for those messages.
In the Cloud to Device view, the user can send command and control messages to the registered IoT devices and can set the message headers.
Finally, the Device Registration view enables the management of the registered IoT devices and their credentials.
The system can be divided into the components Electron Renderer Process and Electron Main Process. The Electron Renderer process in turn runs an SPA based on a React/Redux stack in a Chromium environment. This in turn contains the React components, the actual view part of the application, Redux for managing the application state and the Socket.io client for real-time communication with the server part of the application.
Starting and managing this renderer process, as well as communicating with the cloud services, is handled by the Electron main process. This is based on Node.js and thus enables the deployment of an Express.js server application. On this side of the application, there is a REST forwarder, a Socket.io server and the AMQP client rhea. The task of the REST forwarder is to use its endpoints to forward REST calls to the DeviceRegistry, enabling CRUD operations on the devices. The Socket.io server is responsible for real-time communication with the Bosch IoT Hub messaging and implements this via a WebSocket connection. Finally, the AMQP client rhea is responsible for the direct connection of the messaging.
The project has since been discontinued due to realignments of the Bosch IoT Suite.