D3.4 Open Interoperability Gateway API
The present document is the deliverable D3.4 “Open interoperability Gateway API, final version” of the VICINITY project, funded by the European Commission’s Directorate-General for Research and Innovation (DG RTD), under its Horizon 2020 Research and Innovation Programme (H2020). The deliverable D3.1 is a part of the WP3 VICINITY server implementation.
Regarding the architecture of the VICINITY project, the VICINITY Open Gateway API provides endpoints for interaction among devices/ services and acts as a gateway to XMPP based P2P network (Figure). It also enforces the authorisation rules defined in the VICINITY Neighbourhood database and stored in the Communication Server and encrypts information exchanged within P2P network.
The VICINITY Open Gateway API provides endpoints “locally” close to the connected infrastructure. However, it can be deployed close to IoT infrastructure cloud services as well. Technically, the API is standard Java based service utilizing Ignite Open Fire Spark XMPP engine, which maintains connectivity in P2P network.
The provided endpoints create HTTP based REST API interface which facilitates:
- control plane – device and service registration and configuration messages;
- user plane – measurement, actions, events and semantic distributed query messages.
The facilitated messages needs to be JSON complaint messages.
Specific feature of the VICINITY Open Gateway API is supporting of custom semantic data queries in the P2P network. This semantic data queries utilizes Distributed Semantic Query Client and VICINITY Open Gateway API Services components which integrated with VICNITY Gateway API and VICINITY Communication Server. The queries client builds and executes distributed data query plan in P2P network based on the result of semantic search in semantic repository. This allows to retrieve measurements from different pears and devices in single query.