GOST (Go-SensorThings) is an IoT Platform written in Golang (Go). It implements the Sensing profile (part 1) of the OGC SensorThings API standard including the MQTT extension.
Implementation of the Tasking profile (part 2) and Rules Engine profile (part 3) of the OGC SensorThings API is planned as a future work activity.
The GOST website and blog can be found at www.gostserver.xyz
Current release V0.5: 2017-07-17
Binaries are build for Windows, Ubuntu and OSX.
Date | Version | Features |
---|---|---|
2018-05-01 | 0.6 | new dashboard (based on polymer/webcomponents) + bugfixes for locations |
For benchmarks see http://www.github.com/gost/benchmarks.
For more information about running GOST with Docker-compose, see GOST Docker support.
For more information about running GOST in Raspberry Pi with Docker-compose, see How to run GOST on Raspberry Pi.
For making connection to external database use environmental variables GOST_DB_HOST, GOST_DB_PORT, GOST_DB_DATABASE, GOST_DB_USER, GOST_DB_PASSWORD
$ docker run -d -p 8080:8080 -t -e GOST_DB_HOST=192.168.40.10 -e GOST_DB_DATABASE=gost --name gost geodan/gost
For using your config own file, create a mount:
$ docker run -v myconfiglocation:/gostserver/config geodan/gost -config /gostserver/config/myconfig.yaml
$ docker build -t geodan/gost .
note: building the Raspberry Pi image must be done on a Raspberry Pi :-(, otherwise errors will occur.
$ sudo docker build -f Dockerfile-rpi -t geodan/rpi-gost .
$ sudo docker push geodan/rpi-gost
GOST is being tested against the OGC SensorThings API Test Suite 1.0 https://github.com/opengeospatial/ets-sta10
Conformance Class | Reference | Implementation status | Test Status |
---|---|---|---|
Sensing Core | A.1 | beta | 6/6 |
Filtering Extension | A.2 | beta | 8/8 |
Create-Update-Delete | A.3 | beta | 9/9 |
Batch Request | A.4 | - | Tests not implemented |
Sensing MultiDatastream Extension | A.5 | - | Tests not implemented |
Sensing Data Array Extension | A.6 | beta | Tests not implemented |
MQTT Extension for Create and Update | A.7 | beta | Tests not implemented |
MQTT Extension for Receiving Updates | A.8 | beta | Tests not implemented |
Status GOST on OGC site: http://www.opengeospatial.org/resource/products/details/?pid=1419
HTTP API: For sample requests (setting up sensors/datastreams/things and adding observations) see the tests in the playground. For a complete collection of working requests install Postman and import the Postman file
MQTT: For getting started with Gost and MQTT for publishing/receiving data see GOST and MQTT - Getting started
- Complete implementation of the OGC SensorThings spec
- Test coverage!
- Frontend
- Benchmarks
- Authentication
- Different storage providers such as MongoDB (Now using PostgreSQL)