This project is no longer maintained and will not receive any further updates. If you plan to continue using it, please be aware that future security issues will not be addressed.
Open Sensor Search (OSS) is a platform for discovery of in-situ sensor data. across all sensor web supporting major specifications (OGC SWE) and popular IoT websites (Xively, Thingspeak, ...). It spans across large scale networks based on powerful OGC Sensor Web standards and protocols (Sensor Observation Service, SensorML) and specific individual platforms by providing a modular and open architecture and a flexible mechanism to include data from many different sources.
OSS is written in Java and organized as a Maven multi-module project. The modules and their functionaliy are briefly desribed here, but they also contain their own README.md files with more detailed information.
The basic installation steps are:
git clone https://github.com/52North/OpenSensorSearch.git
mvn install
postgres
this might require an extra configuration step.service/src/main/resource/db
service/src/main/resource/prop/org.n52.oss.service.db-sample.properties
and save that file in the home folder of the machine running OSS.For details please check the PostgreSQL (http://www.postgresql.org/docs/) and PostGIS (http://postgis.net/docs/) documentation.
.../admin/cores?action=CREATE&name=opensensorsearch&instanceDir=opensensorsearch&config=/tmp/solrconfig.xml&schema=/tmp/solrschema.xml&persist=true&loadOnStartup=true
The current implementation supports performance tests using both Apache JMeter and a dummy sensor generation which can be used to insert test data as well.
There are two classes in the test package that can fill your backend with the dummy sensors , namely
org.org.n52.sir.ds.solr.data.TempelateSensorTest
org.org.n52.sir.ds.solr.data.JSONSensorParserTest
Alternatively you can harvest sensors from remote platforms to fill you database.
The service is mostly configured with Guice-loaded named bindings based on a couple of configuration files. No Maven profiles are needed for building a configured service, instead you can overwrite all settings in the base files by adding your own configuration files to your user home directory (or the user home of the servlet container user on a server).
Several files have to be used so that Guice does not try to bind the same property twice, which results in creation errors. So if you configure a property from one base file in a different overwriting file you will have errors.
org.n52.oss.service.properties
are added to (and potentially overwrite) the base file src/main/resources/app.properties
org.n52.oss.service.db.properties
are added to (and potentially overwrite) the base file src/main/resources/prop/db.properties
org.n52.oss.service.sir.properties
are added to (and potentially overwrite) the base file src/main/resources/prop/sir.properties
org.n52.oss.website.properties
overwrites the values in website module's file src/main/resources/org.n52.oss.website.properties
There are sample files in the same directories of the base file to get you started.
For organisational information about Open Sensor Search please visit the Wiki page.
If you want to join the Open Sensor Search developer team, take a look at the CONTRIBUTE.md file.
The integration tests can be activated during build with a Maven profile: mvn clean install -Pintegration-test
OSS is published under Apache Software License, Version 2.0.
See NOTICE file.
The website module uses a collection of Javascript libraries: