How to interact with the Cloud
The purpose of AGILE with regards to clouds is to allow AGILE users to extend the capabilities of the gateway by managing data and deploying apps in existing cloud services. The use of cloud computing is a solution to address the limitation of available resources on such devices and extend their capabilities. This way, IoT applications can benefit from cloud services and use the available computing resources and storage to meet their scalability and compute-intensive processing demands.
We classify the cloud services in:
- IoT services, which are specifically intended for IoT usage (e.g., Xively, ThingSpeak)
- Storage services, which allow file storage and sensor data storage (e.g., Dropbox, OwnCloud)
- Deployment services, usually IaaS or PaaS, which allow the deployment of applications on cloud
AGILE provides the following high-level functionalities to AGILE users:
- Sharing of sensor data with IoT or Storage services
- Sharing of arbitrary data with Storage services
- Deployment of AGILE applications on Deployment services
This functionality is offered by the following UI AGILE components:
- Developer UI. The Developer UI, based on Node-RED, offers a set of Node-RED nodes to connect to the cloud that allows you to:
- Share sensor data with IoT services: Xively, FIWARE, ThingSpeak, FitBit, Google Fit
- Share arbitrary data (including sensor data) with Storage services: Dropbox, Google Drive, OwnCloud, SOLID servers
- Deploy AGILE applications on remote Node-RED instances
- Offloading of data to remote Node-RED instances
- Kura Wires
- Share sensor data with IoT services: Kapua Cloud, Azure IoT, Amazon IoT
- Data Management UI
- Share sensor data with Storage services: OwnCloud, Dropbox
AGILE provides several NODERed nodes for connecting your workflow running on the gateway to the cloud.
Data Management UI
After you register a device, you can set policies in order to store the data received from the device to the internal Data Storage. This data in the internal Data Storage can be uploaded to one of the supported storage services, currently OwnCloud and Dropbox. This option can be accessed in Device Manager > Devices > Manage Device Data > Export Local Data. See the image below:
The options to be filled in are:
- Storage provider.
- ComponentID. The device sensor whose data wants to be uploaded.
- Time interval of the data to be uploaded
- Path of file in storage provider.
- Credentials. The credentials depend on the storage provider selected. In the case of OwnCloud, the server url, username and password are required.