telefonicaid / fiware-IoTAgent-Cplusplus

IoTAgent development framework for C++
GNU Affero General Public License v3.0
11 stars 57 forks source link

IoT Agents

Index

Overview

This project aims to provide a C++ platform to enable IoT Agent developers to build custom agents for their devices that can easily connect to NGSI Context Brokers (such as Orion ).

An IoT Agent is a component that lets groups of devices send their data to and be managed from a FIWARE NGSI Context Broker using their own native protocols. IoT Agents should also be able to deal with security aspects of the fiware platform (authentication and authorization of the channel) and provide other common services to the device programmer.

Each device will be mapped as an Entity following some rules: the user could provide an entity name and entity type for a device, a default entity type could be provided to use as entity type over all devices associated with an agent, by default entity name follows <device_id>:<entity_type> format.

Each of the measures obtained from the device will be mapped to a different attribute. The name and type of the attribute will be configured by the user. Device measures can have two different behaviors:

A device could work as actuator executing commands. Commands are modelled as lazy attributes.

These are the features an IoT Agent is supposed to expose:

License

IoT Agent software is licensed under Affero General Public License (GPL) version 3.