The following figure shows the different parts of Yggio and the data flow between them. As seen in the figure, Yggio is a data broker that works in between the devices/sensors and applications.
FIWARE NGSI V2
Yggio supports the NGSIv2 API which runs along with Yggio REST API. More details about the NGSIv2 API can be found here
Yggio REST API
The Yggio REST API is used for handling functionality that is outside the scope of NGSI, such as user management and the Rule Engine. Most NGSI functionality is also supported through this API, though using different formats.
Keycloak handles everything that has to do with users and access control.
Yggio and Lens
Yggio and the Lens are the brains of the platform and they communicate with all subsystems, from integrations to APIs
Yggio does not only store real time- and meta-data for the devices, it also allows for time series data.
Translation and Fiware Data Models
When data from a device enters yggio, it is often just a blob of unrecognizable bytes. By setting a model type, Yggio can translate these bytes into a fully formed entity conforming to Fiware Data Models.
Calibration and filtering
Sometimes received data can be inaccurate or expose sensitive information. Yggio supports calibration to fix data points and filtering to control what data is returned.
Integrations enables Yggio to understand and handle different communication protocols that devices use. Yggio has integrations for Z-Wave, LoRa, generic MQTT, generic HTTP and a few others. Yggio can support any additional protocol upon request. Please contact email@example.com for more information.
The publisher offers the possibility to have data pushed to your application in real-time, informing it of changes to entities.
Control Panel V1
The Control Panel is a web application developed by Sensative. It provides Yggio users with an interface where essential actions can be performed, such as adding devices and managing access rights.
Control Panel V2
Control Panel V2 is the successor of Control Panel V1.
The Location Manager is a web application developed by Sensative. It provides Yggio users with an interface to get an overview of their devices position, both geographically and on property blueprints. It also provides a graph view of devices time series data.
The Rule Engine is a web application developed by Sensative. It provides Yggio users with an interface for creating rules (i.e. conditional actions). For example, you can make a rule that will turn on a lamp when the sun sets or send a text when a leak has been detected under your sink.