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