aboutsummaryrefslogtreecommitdiffstats

GPS Service

Overview

GPS service reports current WGS84 coordinates from GNSS devices via the gpsd application.

Verbs

Name Description JSON Parameters
subscribe subscribe to gps/gnss events Request: {"value": "location"}
unsubscribe unsubscribe to gps/gnss events Request: {"value": "location"}
location get current gps/gnss coordinates See location Event JSON Response section
record start/stop recording gps data See Recording/Replaying Feature section

Events

Name Description
location event that reports gps/gnss coordinates

location Event JSON Response

Parameter Name Description
altitude altitude in meters
latitude latitude in degrees
longitude longitude in degrees
speed velocity in meters per second
track heading in degrees
timestamp timestamp in ISO8601 format (example: 2018-01-25T13:15:22)

Recording/Replaying Feature

Entering record mode you must send {"state": "on"} with the record verb which will have a JSON response of {"filename": "gps_YYYYMMDD_hhmm.log"} pointing to log under app-data/agl-service-gps

Now to enter replaying mode you must symlink or copy a GPS dump to app-data/agl-service-gps/recording.log and restart the service. From then on out the previously recorded GPS data will loop infinitely which is useful for testing or demonstration purposes.

Environment variables

Name Description
AFBGPS_HOST hostname to connect to
AFBGPS_SERVICE service to connect to (tcp port)

Test dependencies

You must install gpsfake provided by gpsd-devel package