Skip to content

IoT Agent for the Ultralight 2.0 protocol (with HTTP and MQTT transport)

License

Notifications You must be signed in to change notification settings

tech-sketch/iotagent-ul

 
 

Repository files navigation

IoT Agent for the Ultralight 2.0 protocol

License badge Documentation badge Docker badge Support badge

Index

Description

This Internet of Things Agent is a bridge that can be used to communicate devices using the Ultralight 2.0 protocol and NGSI Context Brokers (like Orion). Ultralight 2.0 is a lightweight text based protocol aimed to constrained devices and communications where the bandwidth and device memory may be limited resources. This IoT Agent will provide different transport protocol bindings for the same protocol: HTTP, MQTT...

As is the case in any IoT Agent, this one follows the interaction model defined in the Node.js IoT Agent Library, that is used for the implementation of the APIs found on the IoT Agent's North Port. Information about the architecture of the IoT Agent can be found on that global repository. This documentation will only address those features and characteristics that are particular to the Ultralight 2.0 IoT Agent.

Additional information about operating the component can be found in the Operations: logs and alarms document.

This project is part of FIWARE. Check also the FIWARE Catalogue entry for the IoTAgents

Installation

Information about how to install the UL IoTAgent can be found at the corresponding section of the Installation & Administration Guide.

API Overview

An Overview of the API can be found in the User & Programmers Manual.

API Reference Documentation

Apiary reference for the Configuration API can be found here. More information about IoTAgents and their APIs can be found in the IoTAgent Library here.

Development documentation

Information about developing for the UL IoTAgent can be found at the corresponding section of the User & Programmers Manual.

Testing

Mocha Test Runner + Chai Assertion Library + Sinon Spies, stubs.

The test environment is preconfigured to run BDD testing style with chai.expect and chai.should() available globally while executing tests, as well as the Sinon-Chai plugin.

Module mocking during testing can be done with proxyquire

To run tests, type

grunt test

Tests reports can be used together with Jenkins to monitor project quality metrics by means of TAP or XUnit plugins. To generate TAP report in report/test/unit_tests.tap, type

grunt test-report

About

IoT Agent for the Ultralight 2.0 protocol (with HTTP and MQTT transport)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 91.6%
  • Shell 3.7%
  • CSS 2.4%
  • Dockerfile 1.4%
  • HTML 0.9%