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 (can be empty)
"locationName": string, --> tested location name (can be empty)
"eduroamDbInstid": string, --> SP id used in eduroam DB, provided by the NRO (can be empty)
"eduroamDbLocationid": string, --> Location Id used in eduroam DB, provided by the NRO (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 of BSSID => sig strength and SSID --> list of SSIDs found
"accessPointVisibleSSIDCount": integer --> number of Wi-Fi cells with a normally visible SSID
"accessPointHiddenCellCount": integer --> number of Wi-Fi cells with a "hidden" SSID
"HS2Presence": array --> list of HS2.0 consortium identifers found
"channelsInUse": array --> list of available channels / frequencies
}
[connectivity]
{
"eapAuthnResult": array of EAP types and the auth times (float) --> time needed for successful eduroam AuthN in sec; ; -1=no success
"ipv4TimeToAddress": float number --> time needed to get valid IPv4 address in sec; -1=no connectivity;
"ipv6TimeToAddress": float number --> time needed to get valid IPv6 address in sec; -1=no connectivity;
"eduroamMinimalPortSetOpen": boolean --> is minimal set of ports for eduroam SSID open? (true/false)
"eduroamWronglyClosedPorts": array of strings (e.g. "TCP/443") --> list of ports which should be open but are closed
"encryptionLevel": array of strings --> list of available encryption standards
"signalQuality": string --> list with signal quality per channel
"transparentWebProxy": boolean --> transparent proxy used (true/false)ž
"NAT": boolean --> NAT used (true/false)
}
[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 (PHP creation script)
{ "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", "eduroamDbInstid": "13", "eduroamDbLocationid": "2", "testDeviceLocationDescription": "rector's office, hidden behind the 'A Starry Night' van Gogh painting on the rear wall", "locationMethod": "Differential Indoor GPS", "wifiSurround": { "02-56-23-12-77-a2": { "eduroam": -67, "drillTest": -67 }, "09-55-ae-b1-99-33": { "geological_symposium": -92 } }, "HS2Presence": [ "00-1B-C5-04-60" ], "channelsInUse": [ 1, 6, 11, 54 ] }, "connectivity": { "eapAuthnResult": { "TLS": -1, "TTLS": 1.086, "PEAP": 0.997 }, "ipv4TimeToAddress": 0.09, "ipv6TimeToAddress": -1, "eduroamMinimalPortSetOpen": false, "eduroamWronglyClosedPorts": [ "TCP\/443" ], "encryptionLevel": [ "WPA2\/AES" ], "transparentWebProxy": false, "NAT": true }, "performance": { "downloadThroughput": 4375, "uploadThroughput": 3912.5, "ipv4LocalPing": 4.7, "ipv6LocalPing": -1 } }