Specification
[reportOrigin]
{
"testDeviceType": string --> typical values are "wifiprobe", "NetTest", "boomerang" to distinguish between measurement tools
"testDeviceVersion": string --> version of the tool used (e.g. 1.0)
"testDeviceId": string --> ID (e.g. MAC address) of device used for preforming the test
"testInstanceUniqueId": string --> a unique identifier for this result set
"testStartTimestamp": string --> UTC date & time when the test has been started (YYYY-MM-DD hh:mm:ss)
"testFinishedTimestamp": string --> UTC date & time when the test has been completed (YYYY-MM-DD hh:mm:ss)
}
[environment]
{
"latitude": float number, --> latitude in degrees,decimal fractional minutes (note: we do not use this information anymore, yet it cannot be empty)
"longitude": float number, --> longitude in degrees,decimal fractional minutes (note: we do not use this information anymore, yet it cannot be empty)
"altitude": float number, --> altitude in meters(it can be empty)
"locationName": string, --> tested location name (can be empty)
"testDeviceLocationDescription": string --> describes the location of the test device
"locationMethod": string, --> typical values are 'Through IP' or 'Geolocation' (note: we do not use this information anymore, yet it cannot be empty)
"wifiSurround": array --> list of SSIDs found
"accessPointVisibleSSIDCount": integer --> number of Wi-Fi cells with a normally visible SSID
"accessPointHiddenSSIDCount": integer --> number of Wi-Fi cells with a "hidden" SSID
}
[connectivity]
{
"eduroamAuthnSuccessful": string --> result of eduroam AuthN (true or false)
"ipv4TimeToAddress": float number --> time needed to get valid IPv4 address; -1=no connectivity;
"ipv6TimeToAddress": float number --> time needed to get valid IPv6 address; -1=no connectivity;
}
[performance]
{
"downloadThroughput": float number, --> download speed in KBps (note: we use one decimal digit)
"uploadThroughput": float number, --> upload speed in KBps (note: we use one decimal digit)
"ipv4LocalPing": float number, --> IPv4 ping time in ms (note: we use one decimal digit) -1 if there was no IPv4 connectivity
"ipv6LocalPing": float number, --> IPv6 ping time in ms (note: we use one decimal digit) -1 if there was no IPv6 connectivity
}
JSON message example (syntax to be verified)
[reportOrigin]
{
"testDeviceType": "Frankenprobe",
"testDeviceVersion": 1.0,
"testDeviceId": "00-11-22-33-44-55",
"testInstanceUniqueId": "13df2a-671bbfa5697-13245-67713af",
"testStartTimestamp": "2017-09-13 15:00:00",
"testFinishedTimestamp": "2017-09-13 15:02:19",
}
[environment]
{
"latitude": 38.25,
"longitude": 21.73,
"altitude": -213.45,
"locationName": "Subterranean University, Main Building",
"testDeviceLocationDescription": "rector's office, hidden behind the 'A Starry Night' van Gogh painting on the rear wall",
"locationMethod": "Differential Indoor GPS",
"wifiSurround": [ "eduroam", "drillTest", "geological_symposium" ] ,
"accessPointVisibleSSIDCount": 7,
"accessPointHiddenSSIDCount": 1,
}
[connectivity]
{
"eduroamAuthnSuccessful": true,
"ipv4TimeToAddress": 0.672,
"ipv6TimeToAddress": -1,
}
[performance]
{
"downloadThroughput": 4375.0,
"uploadThroughput": 3912.5,
"ipv4LocalPing": 4.7,
"ipv6LocalPing": -1,
}