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
}
}
...