Skip to content
This repository has been archived by the owner on May 7, 2021. It is now read-only.

Advanced APIs

Shreekantha Devasya edited this page May 19, 2020 · 1 revision

The IoT Agents expose in MQTT and REST its advance and extensible features using their native APIs. The Native APIs are not extensively documented. Here we present a brief documentation of the advance features of the Native APIs.

Processing: Statement API

The processing API is served by the Statement API. This API allows the developer to add processing request named Statements. The core of the statement is the native processes also named Statement or Native Statement. This Native Statement is dependent on the Processing Engine running in the agent, e.g. an EPL is the Native Statement if Esper engine is running. Additionally, the statement contains other properties that can be set in the request. Below you can find the documentation of the native java objects of the Statement which can also be used in a REST or MQTT request:

Machine Learning Orchestration: CEML API

The machine learning orchestration API is served by the CEML API. This API allows the developer to add an Orchestration request named CEMLs. Below you can find the documentation of the native java objects of the CEML which can also be used in a REST or MQTT request:

I/O: Event API

All event accepted in the agent is internally represented internally by an EventEvelope. Currently, the LinkSmart® supports the OGC SensorThings, and in particular the OGC SensorThings: Observation. Additionally, the agent supports other data types as input (SenML, Raw, etc.). Finally, although the the agent focuses on the OGC SensorThings: Observation, it has a full implementation of the OGC Stack, see below:

EventEnvelope Inteface

OGC Sensor Things

SenML

Raw

The RawEvent type is an implementation of the EventEnvelope and a Map. The whole object can be used as an event envelope or as a map.

All

Management and Monitoring: Response, Responses, Prediction Objects

All request is request (the explained above) are responded in a Responses which consist of one or several Response which may contain the Resource involved in the Request. Additionally, all usage of the Model (see CEML) response in the Prediction object. Below the description of this objects.