52n SPS version 2.x
The 52°North SPS v2.x supports OGC SPS specification v2.0.0. If you need support for OGC SPS specification v1.0.0 than take a look at
52°North SPS v1.x.
Service Documentation
The 52°North Sensor Planning Service (SPS) serves as runtime environment for sensor tasking assets. This site documents the 52°SPS project implementation of the OGC SPS 2.0.0 specification.
During the CITE programme of the
OGC OWS phase 9, the 52°SPS version 2.0.1 served as the reference implementation of the OGC SPS specification and
successfully passed the CITE compliance tests in mid 2013.
Quick Access
Requirements
Installation
Getting to a running SPS server following two ways are possible:
- Build the 52°North SPS from source (makes pre-configuration possible) plus deployment into a servlet container (e.g. Apache Tomcat)
- Deploy a pre-build version into a servlet container (e.g. Apache Tomcat)
Build from source
- Clone the source code from https://github.com/52north/SensorPlanningService (note that main development line can be found on the
develop
branch)
- Copy the
sps_v2-build-example.properties
to your ${user.home}/sps_v2-build-dev.properties
(note renaming to ...-dev.properties
) and make changes to the configuration
- Open a terminal and build with Apache Maven:
mvn clean install -env-dev
(requires to have Apache Maven already installed and to be available on system's path)
Deploy to a servlet container
- Download latest version from SPS Download section (skip if you build from source)
- Make sure a servlet container is running
- Copy/paste the SPS
.war
file into the webapps
directory of the servlet container or upload the .war
file via Management application (see servlet container's documentation)
- Make sure a sensor plugin implementation exist and is available on the SPS web application's classpath (
WEB-INF/lib
is recommended)
- Register an instance of the sensor plugin to the SPS using InsertSensorOffering operation.
Interface
Service interface
The OGC SPS specification lists a core interface and several extensions. 52°North SPS 2.x implements the core profile of the SPS standard.
52n SPS interface
The 52n SPS implementation complements the official OGC interface with further endpoints and functions. The following sections describe each in detail.
Insert new SensorOfferings
The SPS standard specifies how to task sensor assets which are already available, i.e. it does not specify an operation how to add new those sensor assets to a running SPS instance. Therefore the 52°North SPS 2.x implementation defines an
InsertSensorOffering
request to insert a new sensor offering. The SPS administrator creates an
InsertSensorOffering
request and sends it via HTTP POST to the SPS admin interface
http://localhost:8080/52n-sps/admin/insert
There is an XML schema available in the
52n-sps-api-xml
module which describes the document structure of an
InsertSensorOffering
request. Use the
InsertSensorOffering.xml example to add a new instance of the testplugin tasking asset. For a quick reference have a look at the
overview of the document structure. The response is very simple:
Per default the SPS requires the user to authenticate with servlet container's admin role (you can customize this in the
web.xml
file).
List all tasks for a procedure
A simple
HTTP GET
will return a list of taskIds which belong to a given sensor (procedure). Just call
http://localhost:8080/52n-sps/api/tasks?procedureId=yourprocedureIdHere
Release Notes
Downloads
Binary
Sources
Checkout the sources directly from our subversion repository:
git clone https://github.com/52North/SensorPlanningService.git 52n-sps
cd 52n-sps
git checkout -b 52n-sps-2.0.1
or
svn co https://svn.52north.org/svn/swe/main/SPS/Services/tags/52n-sps-2.0.1/
or checkout the latest code from the main development line:
git clone https://github.com/52North/SensorPlanningService.git 52n-sps
License
This work is licensed under a
Creative Commons Attribution 3.0 Unported License.
Attachements