Background: Currently both the Gluon census-exporter for the Gluon Census and the meshviewer-collector for multi.meshviewer.org maintain their own lists for JSON sources:
Most communities also provide map JSON data via api.freifunk.net, however their current, aggregated state is pretty unusable for both the gluon-census and the meshviewer-collector at the moment: freifunk-gluon/census-exporter#4 (comment)
I'm wondering if this might be due to an unclear specification regarding a meshviewer.json or a Hopglass nodes.json. At least all four entries with a meshviewer.json in the Freifunk API all use a different format: freifunk-gluon/census-exporter#4 (comment)
Suggestion A):
- Clarify that nodeMaps is only for HTML rendered maps. 2) deprecate "nodelist" in nodeMaps. 3) add a new nodeMapData like the following:
"nodeMapData": {
"type": "array",
"title": "Node map data sources",
"description": "Machine-readable node map data of nodes or topology your community provides",
"items": {
"type": "object",
"title": "node",
"properties": {
"url": {
"$ref": "#/definitions/url",
"title": "URL of the map",
"description": "The URL where the map data is located"
},
"interval": {
"type": "string",
"title": "interval",
"description": "How often the map data will be refreshed"
},
"mediaType": {
"type": "string",
"title": "Media Type as registered at IANA: https://www.iana.org/assignments/media-types/media-types.xhtml",
"description": "",
"enum": [ "", "text/csv", "application/json" ],
"default": ""
}
"mapDataFormat": {
"type": "string",
"title": "Map Data Format",
"description": "The format of the provided map data",
"enum": [ "", "nodelist", "meshviewer", "meshviewer/old", "hopglass/v1", "hopglass/v2" ],
"default": ""
}
},
"additionalProperties": false
If mapDataType is "nodelist", "meshviewer", "meshviewer/old", "hopglass/v1" or "hopglass/v2" then only mediaType: "application/json" should be allowed. (If such a constraint is not possible then maybe split this into "nodeMapDataJSON" and "nodeMapDataCVS"?)
I'd suggest / tend to having nodeMapData adjacent to instead of within nodeMap. As some communities for instance have two nodeMapData for one meshviewer instance, where one points to the geographical map tab and the other to the topology graph tab.
Background: Currently both the Gluon census-exporter for the Gluon Census and the meshviewer-collector for multi.meshviewer.org maintain their own lists for JSON sources:
Most communities also provide map JSON data via api.freifunk.net, however their current, aggregated state is pretty unusable for both the gluon-census and the meshviewer-collector at the moment: freifunk-gluon/census-exporter#4 (comment)
I'm wondering if this might be due to an unclear specification regarding a meshviewer.json or a Hopglass nodes.json. At least all four entries with a meshviewer.json in the Freifunk API all use a different format: freifunk-gluon/census-exporter#4 (comment)
Suggestion A):
If mapDataType is "nodelist", "meshviewer", "meshviewer/old", "hopglass/v1" or "hopglass/v2" then only mediaType: "application/json" should be allowed. (If such a constraint is not possible then maybe split this into "nodeMapDataJSON" and "nodeMapDataCVS"?)
I'd suggest / tend to having nodeMapData adjacent to instead of within nodeMap. As some communities for instance have two nodeMapData for one meshviewer instance, where one points to the geographical map tab and the other to the topology graph tab.