All Projects → 52North → sensorweb-server-helgoland

52North / sensorweb-server-helgoland

Licence: GPL-2.0 license
Thin Web binding API to access series data.

Programming Languages

java
68154 projects - #9 most used programming language
SCSS
7915 projects
HTML
75241 projects
XSLT
1337 projects
javascript
184084 projects - #8 most used programming language
CSS
56736 projects

Projects that are alternatives of or similar to sensorweb-server-helgoland

BME680
Arduino Library to access the Bosch BME680 - temperature, pressure, humidity and gas sensor
Stars: ✭ 30 (+50%)
Mutual labels:  sensor, spi
Esp32 Mpu Driver
ESP32 full library for all MPU6000 MPU6050 MPU6500 MPU9150 MPU9250 with SPI and I2C support and more.
Stars: ✭ 111 (+455%)
Mutual labels:  sensor, spi
embedded-ccs811-rs
Platform agnostic Rust driver for the CCS811 ultra-low power digital gas sensor for monitoring indoor air quality
Stars: ✭ 12 (-40%)
Mutual labels:  sensor
nws alerts
An updated version of the nws_alerts custom integration for Home Assistant
Stars: ✭ 24 (+20%)
Mutual labels:  sensor
homebridge-tion
Homebridge plugin to control Tion breezers
Stars: ✭ 32 (+60%)
Mutual labels:  sensor
homeassistant-config
My Home Assistant Configuration
Stars: ✭ 22 (+10%)
Mutual labels:  sensor
mlx90632-library
MLX90632 library for the Melexis 90632 Infra Red temperature sensor.
Stars: ✭ 34 (+70%)
Mutual labels:  sensor
ha-gismeteo
Gismeteo Weather Provider for Home Assistant
Stars: ✭ 84 (+320%)
Mutual labels:  sensor
HADailySensor
Sensor for Home Assistant that gets reset at midnight
Stars: ✭ 20 (+0%)
Mutual labels:  sensor
EnviroMonitorStation
Arduino compatible software for ESP8266 based environmental monitoring station. Includes temperature, humidity, barometric pressure and PM2.5, PM10 dust monitoring
Stars: ✭ 71 (+255%)
Mutual labels:  sensor
esp-homekit-multi-sensor
Homekit muti sensor, motion, temperate, humidity and light with OTA
Stars: ✭ 15 (-25%)
Mutual labels:  sensor
Home-Assistant-custom-components-DPC-Alert
Italy Meteo-hydro alert and hydrogeological phenomena Civil Protection (Protezione Civile). In this custom component you can find the vigilance Bulletin and the Bulletin of national hydrogeological and hydraulic criticalities. They allow to check whether in your current location there will be criticalities/warnings related to weather-hydrogeolog…
Stars: ✭ 31 (+55%)
Mutual labels:  sensor
IOsonata
IOsonata multi-platform multi-architecture power & performance optimized software library for fast and easy IoT MCU firmware development. Object Oriented design, no board package to define, just pure plug & play any boards
Stars: ✭ 40 (+100%)
Mutual labels:  spi
csr-spi-ftdi
USB SPI programmer/debugger for CSR BlueCore bluetooth chips, based on FTDI USB to UART converter, for Linux and Windows
Stars: ✭ 473 (+2265%)
Mutual labels:  spi
pxt-minode
mi:node kit(micro:bit IoT Starter Kit by element14) driver package for PXT/microbit
Stars: ✭ 25 (+25%)
Mutual labels:  sensor
NR1-UI
Userinterface for Volumio (RaspberryPi) with ssd1322 and ssd1306 oled display, spectrum bargraph, progress bar, LED functions, Standby-functions, 4 Buttons and Rotary Encoder.
Stars: ✭ 29 (+45%)
Mutual labels:  spi
SensingKit-Android
An Android framework that provides Mobile Sensing functionality to your apps.
Stars: ✭ 83 (+315%)
Mutual labels:  sensor
Waveshare.EPaperDisplay
.Net Core Library to show images on Waveshare E-Paper Displays
Stars: ✭ 17 (-15%)
Mutual labels:  spi
programmable-air
A hardware kit to experiment with inflatable and vacuum based soft robotics.
Stars: ✭ 54 (+170%)
Mutual labels:  sensor
OpenHarmony
华为鸿蒙分布式操作系统(Huawei OpenHarmony)开发技术交流,鸿蒙技术资料,手册,指南,共建国产操作系统万物互联新生态。
Stars: ✭ 373 (+1765%)
Mutual labels:  sensor

52n Sensor Web Server Helgoland

Build Status Java CI Maven Central Total alerts Language grade: JavaScript Language grade: Java

series-rest-api architecture overview

Description

Thin Web binding API to access timeseries data.

The Sensor Web Server Helgoland is a REST API provides an access layer to sensor data via RESTful Web binding with different output formats like json, pdf or png. It provides a well defined Sevice Provider Interface (SPI) which can be implemented by arbitrary backend services to make data available via the API

The Sensor Web Server Helgoland provides a thin access layer to sensor and observation data via RESTful Web binding. In addition, it offers several IO functionalities e.g.

  • prerendering of series data,
  • generalization,
  • overlaying of data from multiple series
  • conversion of raw data to other formats like pdf and png

Output formats for stationary, mobile, insitu and remote sensors are available, each filterable by metadata parameters. This enables clients to access the data via different approaches, e.g. to filter all series by phenomena first or by a special procedure.

Next to the Web API, a Service Provider Interface (SPI) defines the underlying interface for data providing backends. With this, the API is flexible enough to be put ontop of arbitrary data stores. Its modular design enables a seamless integration into existing Web applications.

The following main frameworks are used to provide this API:

Existing SPI implementations:

References

License

The client is published under the GNU General Public License v2 (GPLv2).

Changelog

Contributing

We try to follow the GitFlow model, although we do not see it that strict.

However, make sure to do pull requests for features, hotfixes, etc. by making use of GitFlow. Altlassian provides [a good overview] (https://www.atlassian.com/de/git/workflows#!workflow-gitflow). of the most common workflows.

Contact

Henning Bredel ([email protected])

Quick Start

Client development

The Web API documentation gives a detailed overview on how to access the data provided by the API. Available I/O functions are described there, too, like generelization, chart rendering/overlay, etc.

The API documentation is in the 52°North wiki: https://wiki.52north.org/bin/view/SensorWeb/SensorWebClientRESTInterface

API Configuration

How to provide a custom SPI implementation is beyond this section. See (...TBD...) to get detailed information on this.

Logging

Generalizer

In file WEB-INF/classes/config-general.json add

"generalizer": {
    "defaultGeneralizer": "lttb",
    "noDataGapThreshold": 5
}

The parameters are described on the official Web API documentation.

Prerendering

Prerendering is supported for measurement data.

Prerendering configuration is a task which can be run regularly by a scheduler. Configuration is done as a PreRenderingJob bean. Checkout WEB-INF/spring/spi-impl-dao_tasks.xml how to set up a prerendering job. The actual rendering configuration for each dataset/phenomenon can be referenced within the job bean.

Rendering configuration tells how to render the actual dataset information. It comprises a phenomenonStyles section (valid for a set of dataset for a given phenomenon) and a datasetStyles section (which actually overrides a phenomenon style of a specific dataset) Each section can override parameters made in the generalConfig.

Only those datasets are prerendered having a match either in phenomenonStyles or datasetStyles.

Date formatting

In file WEB-INF/spring/config-general.json you can set timeformat Parameter. Please checkout the Java SimpleDateFormat rules how the format has to look like.

Rendering Hints

TBD

Status Intervals

TBD

Metadata from a Database

TBD

Credits

The development of the 52°North Sensor Web Server Helgoland REST-API implementation was supported by several organizations and projects. Among other we would like to thank the following organisations and project

Project/Logo Description
Cos4Cloud - Co-designed citizen observatories for the EOS-Cloud The development of this version of the 52°North Sensor Web Server Helgoland API was supported by the European Union’s Horizon 2020 research project Cos4Cloud (co-funded by the European Commission under the grant agreement n°863463)
BMBFTaMIS - Das Talsperren-Mess-Informations-System The development of this version of the 52°North Sensor Web Server Helgoland API was supported by the German Federal Ministry of Education and Research research project TaMIS (co-funded by the German Federal Ministry of Education and Research, programme Geotechnologien, under grant agreement no. 03G0854[A-D])
JERICO-S3 - Science - Services- Sustainability The development of this version of the 52°North Sensor Web Server Helgoland API was supported by the European Union’s Horizon 2020 research project JERICO-S3 (co-funded by the European Commission under the grant agreement n°871153)
BMBFCOLABIS - Collaborative Early Warning Information Systems for Urban Infrastructures The development of this version of the 52°North Sensor Web Server Helgoland API was supported by the German Federal Ministry of Education and Research research project COLABIS (co-funded by the German Federal Ministry of Education and Research, programme Geotechnologien, under grant agreement no. 03G0852A)
NeXOS - Next generation, Cost-effective, Compact, Multifunctional Web Enabled Ocean Sensor Systems Empowering Marine, Maritime and Fisheries Management The development of this version of the 52°North Sensor Web Server Helgoland API was supported by the European FP7 research project NeXOS (co-funded by the European Commission under the grant agreement n°614102)
FixO3 - Fixed-Point Open Ocean Observatories The development of this version of the 52°North Sensor Web Server Helgoland API was supported by the European FP7 research project FixO3 (co-funded by the European Commission under the grant agreement n°312463)
ODIP II - Ocean Data Interoperability Platform The development of this version of the 52°North Sensor Web Server Helgoland API was supported by the Horizon 2020 research project ODIP II (co-funded by the European Commission under the grant agreement n°654310)
SeaDataCloud The development of this version of the 52°North Sensor Web Server Helgoland API was supported by the Horizon 2020 research project SeaDataCloud (co-funded by the European Commission under the grant agreement n°730960)
Wupperverband The Wupperverband for water, humans and the environment (Germany)
Belgian Interregional Environment Agency (IRCEL - CELINE) The Belgian Interregional Environment Agency (IRCEL - CELINE) is active in the domain of air quality (modelling, forecasts, informing the public on the state of their air quality, e-reporting to the EU under the air quality directives, participating in scientific research on air quality, etc.). IRCEL — CELINE is a permanent cooperation between three regional environment agencies: Agence wallonne de l'Air et du Climat (AWAC), Bruxelles Environnement - Leefmilieu Brussel and Vlaamse Milieumaatschappij (VMM).
GEOWOW - GEOSS interoperability for Weather, Ocean and Water The development of this version of the 52°North Sensor Web Server Helgoland API was supported by the European FP7 research project GEOWOW (co-funded by the European Commission under the grant agreement n°282915)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].