{"id": "sw-sp-bar-rssi-channel", "type": "visualization", "attributes": {"title": "Sparrow WiFi — RSSI-Weighted Channel Occupancy", "visState": "{\"title\": \"Sparrow WiFi \\u2014 RSSI-Weighted Channel Occupancy\", \"type\": \"histogram\", \"params\": {\"type\": \"histogram\", \"grid\": {\"categoryLines\": false}, \"categoryAxes\": [{\"id\": \"CategoryAxis-1\", \"type\": \"category\", \"position\": \"bottom\", \"show\": true, \"style\": {}, \"scale\": {\"type\": \"linear\"}, \"labels\": {\"show\": true, \"truncate\": 100}, \"title\": {}}], \"valueAxes\": [{\"id\": \"ValueAxis-1\", \"name\": \"LeftAxis-1\", \"type\": \"value\", \"position\": \"left\", \"show\": true, \"style\": {}, \"scale\": {\"type\": \"linear\", \"mode\": \"normal\"}, \"labels\": {\"show\": true, \"rotate\": 0, \"filter\": false, \"truncate\": 100}, \"title\": {\"text\": \"Signal Power (mW sum)\"}}], \"seriesParams\": [{\"show\": true, \"type\": \"histogram\", \"mode\": \"stacked\", \"data\": {\"label\": \"Total Signal Power (mW)\", \"id\": \"1\"}, \"valueAxis\": \"ValueAxis-1\", \"drawLinesBetweenPoints\": true, \"lineWidth\": 2, \"showCircles\": true}], \"addTooltip\": true, \"addLegend\": true, \"legendPosition\": \"right\", \"times\": [], \"addTimeMarker\": false, \"palette\": {\"type\": \"palette\", \"name\": \"default\"}}, \"aggs\": [{\"id\": \"1\", \"enabled\": true, \"type\": \"sum\", \"schema\": \"metric\", \"params\": {\"field\": \"signal.strength_mw\", \"customLabel\": \"Total Signal Power (mW)\"}}, {\"id\": \"2\", \"enabled\": true, \"type\": \"terms\", \"schema\": \"segment\", \"params\": {\"field\": \"wifi.channel.occupied_set\", \"size\": 30, \"order\": \"asc\", \"orderBy\": \"_key\", \"otherBucket\": false, \"customLabel\": \"Channel\"}}]}", "uiStateJSON": "{}", "description": "Per-channel aggregate signal power (mW sum) — proxy for channel saturation", "version": 1, "kibanaSavedObjectMeta": {"searchSourceJSON": "{\"query\": {\"query\": \"\", \"language\": \"kuery\"}, \"filter\": [], \"indexRefName\": \"kibanaSavedObjectMeta.searchSourceJSON.index\"}"}}, "references": [{"name": "kibanaSavedObjectMeta.searchSourceJSON.index", "type": "index-pattern", "id": "sparrow-wifi"}], "coreMigrationVersion": "8.17.0", "typeMigrationVersion": "8.0.0", "managed": false}
{"id": "sw-sp-heatmap-channel-hour", "type": "visualization", "attributes": {"title": "Sparrow WiFi — Channel Activity by Hour", "visState": "{\"title\": \"Sparrow WiFi \\u2014 Channel Activity by Hour\", \"type\": \"heatmap\", \"params\": {\"type\": \"heatmap\", \"addTooltip\": true, \"addLegend\": true, \"enableHover\": false, \"legendPosition\": \"right\", \"times\": [], \"colorsNumber\": 8, \"colorSchema\": \"Blues\", \"setColorRange\": false, \"colorsRange\": [], \"invertColors\": false, \"percentageMode\": false, \"valueAxes\": [{\"show\": false, \"id\": \"ValueAxis-1\", \"type\": \"value\", \"scale\": {\"type\": \"linear\", \"defaultYExtents\": false}, \"labels\": {\"show\": false, \"rotate\": 0, \"overwriteColor\": false, \"color\": \"black\"}}]}, \"aggs\": [{\"id\": \"1\", \"enabled\": true, \"type\": \"count\", \"schema\": \"metric\", \"params\": {\"customLabel\": \"Observations\"}}, {\"id\": \"2\", \"enabled\": true, \"type\": \"histogram\", \"schema\": \"segment\", \"params\": {\"field\": \"wifi.channel.primary\", \"interval\": 1, \"min_doc_count\": 1, \"extended_bounds\": {}, \"customLabel\": \"Primary Channel\"}}, {\"id\": \"3\", \"enabled\": true, \"type\": \"histogram\", \"schema\": \"group\", \"params\": {\"field\": \"observed.hour_utc\", \"interval\": 1, \"min_doc_count\": 0, \"extended_bounds\": {\"min\": 0, \"max\": 23}, \"customLabel\": \"Hour (UTC)\"}}]}", "uiStateJSON": "{}", "description": "WiFi activity heatmap: channel vs hour of day", "version": 1, "kibanaSavedObjectMeta": {"searchSourceJSON": "{\"query\": {\"query\": \"\", \"language\": \"kuery\"}, \"filter\": [], \"indexRefName\": \"kibanaSavedObjectMeta.searchSourceJSON.index\"}"}}, "references": [{"name": "kibanaSavedObjectMeta.searchSourceJSON.index", "type": "index-pattern", "id": "sparrow-wifi"}], "coreMigrationVersion": "8.17.0", "typeMigrationVersion": "8.0.0", "managed": false}
{"id": "sw-sp-pie-band-dist", "type": "visualization", "attributes": {"title": "Sparrow WiFi — Band Distribution", "visState": "{\"title\": \"Sparrow WiFi \\u2014 Band Distribution\", \"type\": \"pie\", \"params\": {\"type\": \"pie\", \"addTooltip\": true, \"addLegend\": true, \"legendPosition\": \"right\", \"isDonut\": true, \"labels\": {\"show\": false, \"values\": true, \"last_level\": true, \"truncate\": 100}, \"palette\": {\"type\": \"palette\", \"name\": \"default\"}}, \"aggs\": [{\"id\": \"1\", \"enabled\": true, \"type\": \"count\", \"schema\": \"metric\", \"params\": {\"customLabel\": \"Count\"}}, {\"id\": \"2\", \"enabled\": true, \"type\": \"terms\", \"schema\": \"segment\", \"params\": {\"field\": \"rf.band\", \"size\": 10, \"order\": \"desc\", \"orderBy\": \"1\", \"otherBucket\": true, \"otherBucketLabel\": \"Other\", \"missingBucket\": true, \"missingBucketLabel\": \"Unknown\", \"customLabel\": \"Band\"}}]}", "uiStateJSON": "{}", "description": "Distribution of APs across 2.4 GHz, 5 GHz, and 6 GHz bands", "version": 1, "kibanaSavedObjectMeta": {"searchSourceJSON": "{\"query\": {\"query\": \"\", \"language\": \"kuery\"}, \"filter\": [], \"indexRefName\": \"kibanaSavedObjectMeta.searchSourceJSON.index\"}"}}, "references": [{"name": "kibanaSavedObjectMeta.searchSourceJSON.index", "type": "index-pattern", "id": "sparrow-wifi"}], "coreMigrationVersion": "8.17.0", "typeMigrationVersion": "8.0.0", "managed": false}
{"id": "sw-sp-pie-width-dist", "type": "visualization", "attributes": {"title": "Sparrow WiFi — Channel Width Distribution", "visState": "{\"title\": \"Sparrow WiFi \\u2014 Channel Width Distribution\", \"type\": \"pie\", \"params\": {\"type\": \"pie\", \"addTooltip\": true, \"addLegend\": true, \"legendPosition\": \"right\", \"isDonut\": true, \"labels\": {\"show\": false, \"values\": true, \"last_level\": true, \"truncate\": 100}, \"palette\": {\"type\": \"palette\", \"name\": \"default\"}}, \"aggs\": [{\"id\": \"1\", \"enabled\": true, \"type\": \"count\", \"schema\": \"metric\", \"params\": {\"customLabel\": \"Count\"}}, {\"id\": \"2\", \"enabled\": true, \"type\": \"terms\", \"schema\": \"segment\", \"params\": {\"field\": \"wifi.channel.width_mhz\", \"size\": 10, \"order\": \"desc\", \"orderBy\": \"1\", \"otherBucket\": true, \"otherBucketLabel\": \"Other\", \"missingBucket\": true, \"missingBucketLabel\": \"Unknown\", \"customLabel\": \"Width (MHz)\"}}]}", "uiStateJSON": "{}", "description": "Distribution of channel widths (20/40/80/160 MHz)", "version": 1, "kibanaSavedObjectMeta": {"searchSourceJSON": "{\"query\": {\"query\": \"\", \"language\": \"kuery\"}, \"filter\": [], \"indexRefName\": \"kibanaSavedObjectMeta.searchSourceJSON.index\"}"}}, "references": [{"name": "kibanaSavedObjectMeta.searchSourceJSON.index", "type": "index-pattern", "id": "sparrow-wifi"}], "coreMigrationVersion": "8.17.0", "typeMigrationVersion": "8.0.0", "managed": false}
{"id": "sw-sp-bar-top-channels", "type": "visualization", "attributes": {"title": "Sparrow WiFi — Top Channels by AP Count", "visState": "{\"title\": \"Sparrow WiFi \\u2014 Top Channels by AP Count\", \"type\": \"histogram\", \"params\": {\"type\": \"histogram\", \"grid\": {\"categoryLines\": false}, \"categoryAxes\": [{\"id\": \"CategoryAxis-1\", \"type\": \"category\", \"position\": \"bottom\", \"show\": true, \"style\": {}, \"scale\": {\"type\": \"linear\"}, \"labels\": {\"show\": true, \"truncate\": 100}, \"title\": {}}], \"valueAxes\": [{\"id\": \"ValueAxis-1\", \"name\": \"LeftAxis-1\", \"type\": \"value\", \"position\": \"left\", \"show\": true, \"style\": {}, \"scale\": {\"type\": \"linear\", \"mode\": \"normal\"}, \"labels\": {\"show\": true, \"rotate\": 0, \"filter\": false, \"truncate\": 100}, \"title\": {\"text\": \"AP Count\"}}], \"seriesParams\": [{\"show\": true, \"type\": \"histogram\", \"mode\": \"stacked\", \"data\": {\"label\": \"AP Count\", \"id\": \"1\"}, \"valueAxis\": \"ValueAxis-1\", \"drawLinesBetweenPoints\": true, \"lineWidth\": 2, \"showCircles\": true}], \"addTooltip\": true, \"addLegend\": true, \"legendPosition\": \"right\", \"times\": [], \"addTimeMarker\": false, \"palette\": {\"type\": \"palette\", \"name\": \"default\"}}, \"aggs\": [{\"id\": \"1\", \"enabled\": true, \"type\": \"count\", \"schema\": \"metric\", \"params\": {\"customLabel\": \"AP Count\"}}, {\"id\": \"2\", \"enabled\": true, \"type\": \"terms\", \"schema\": \"segment\", \"params\": {\"field\": \"wifi.channel.occupied_set\", \"size\": 20, \"order\": \"desc\", \"orderBy\": \"1\", \"otherBucket\": false, \"customLabel\": \"Channel\"}}]}", "uiStateJSON": "{}", "description": "Top 20 channels by AP count across occupied channel set", "version": 1, "kibanaSavedObjectMeta": {"searchSourceJSON": "{\"query\": {\"query\": \"\", \"language\": \"kuery\"}, \"filter\": [], \"indexRefName\": \"kibanaSavedObjectMeta.searchSourceJSON.index\"}"}}, "references": [{"name": "kibanaSavedObjectMeta.searchSourceJSON.index", "type": "index-pattern", "id": "sparrow-wifi"}], "coreMigrationVersion": "8.17.0", "typeMigrationVersion": "8.0.0", "managed": false}
{"id": "sw-sp-heatmap-ssid-channel", "type": "visualization", "attributes": {"title": "Sparrow WiFi — SSID × Channel Signal Matrix", "visState": "{\"title\": \"Sparrow WiFi — SSID × Channel Signal Matrix\", \"type\": \"heatmap\", \"params\": {\"type\": \"heatmap\", \"addTooltip\": true, \"addLegend\": true, \"enableHover\": true, \"legendPosition\": \"right\", \"times\": [], \"colorsNumber\": 8, \"colorSchema\": \"Reds\", \"setColorRange\": false, \"colorsRange\": [], \"invertColors\": false, \"percentageMode\": false, \"valueAxes\": [{\"show\": true, \"id\": \"ValueAxis-1\", \"type\": \"value\", \"scale\": {\"type\": \"linear\", \"defaultYExtents\": false}, \"labels\": {\"show\": true, \"rotate\": 0, \"overwriteColor\": false, \"color\": \"black\"}}]}, \"aggs\": [{\"id\": \"1\", \"enabled\": true, \"type\": \"max\", \"schema\": \"metric\", \"params\": {\"field\": \"signal.strength_dbm\", \"customLabel\": \"Max signal (dBm)\"}}, {\"id\": \"2\", \"enabled\": true, \"type\": \"histogram\", \"schema\": \"segment\", \"params\": {\"field\": \"wifi.channel.occupied_set\", \"interval\": 1, \"min_doc_count\": 1, \"extended_bounds\": {}, \"customLabel\": \"Channel\"}}, {\"id\": \"3\", \"enabled\": true, \"type\": \"terms\", \"schema\": \"group\", \"params\": {\"field\": \"wifi.ssid\", \"size\": 100, \"order\": \"desc\", \"orderBy\": \"1\", \"customLabel\": \"SSID\"}}]}", "uiStateJSON": "{}", "description": "Max signal strength per SSID per occupied 20 MHz channel. Bonded APs light up all their channels. Shows same-channel crowding at a glance.", "version": 1, "kibanaSavedObjectMeta": {"searchSourceJSON": "{\"query\": {\"query\": \"\", \"language\": \"kuery\"}, \"filter\": [], \"indexRefName\": \"kibanaSavedObjectMeta.searchSourceJSON.index\"}"}}, "references": [{"name": "kibanaSavedObjectMeta.searchSourceJSON.index", "type": "index-pattern", "id": "sparrow-wifi"}], "coreMigrationVersion": "8.17.0", "typeMigrationVersion": "8.0.0", "managed": false}
{"id": "sw-dashboard-spectrum-planning", "type": "dashboard", "attributes": {"title": "Sparrow WiFi — Spectrum Planning", "description": "RF spectrum planning view: channel occupancy, activity heatmap, band and width distribution, and channel utilization ranking", "hits": 0, "timeRestore": false, "timeTo": "now", "timeFrom": "now-24h", "refreshInterval": {"pause": true, "value": 0}, "kibanaSavedObjectMeta": {"searchSourceJSON": "{\"query\": {\"query\": \"\", \"language\": \"kuery\"}, \"filter\": []}"}, "optionsJSON": "{\"useMargins\": true, \"syncColors\": false, \"hidePanelTitles\": false}", "panelsJSON": "[{\"panelIndex\": \"1\", \"gridData\": {\"x\": 0, \"y\": 0, \"w\": 48, \"h\": 28, \"i\": \"1\"}, \"version\": \"8.17.0\", \"type\": \"visualization\", \"id\": \"sw-sp-heatmap-ssid-channel\", \"title\": \"Sparrow WiFi — SSID × Channel Signal Matrix\", \"embeddableConfig\": {\"enhancements\": {}}}, {\"panelIndex\": \"2\", \"gridData\": {\"x\": 0, \"y\": 28, \"w\": 48, \"h\": 16, \"i\": \"2\"}, \"version\": \"8.17.0\", \"type\": \"visualization\", \"id\": \"sw-sp-bar-rssi-channel\", \"title\": \"Sparrow WiFi — RSSI-Weighted Channel Occupancy\", \"embeddableConfig\": {\"enhancements\": {}}}, {\"panelIndex\": \"3\", \"gridData\": {\"x\": 0, \"y\": 44, \"w\": 48, \"h\": 18, \"i\": \"3\"}, \"version\": \"8.17.0\", \"type\": \"visualization\", \"id\": \"sw-sp-heatmap-channel-hour\", \"title\": \"Sparrow WiFi — Channel Activity by Hour\", \"embeddableConfig\": {\"enhancements\": {}}}, {\"panelIndex\": \"4\", \"gridData\": {\"x\": 0, \"y\": 62, \"w\": 16, \"h\": 16, \"i\": \"4\"}, \"version\": \"8.17.0\", \"type\": \"visualization\", \"id\": \"sw-sp-pie-band-dist\", \"title\": \"Sparrow WiFi — Band Distribution\", \"embeddableConfig\": {\"enhancements\": {}}}, {\"panelIndex\": \"5\", \"gridData\": {\"x\": 16, \"y\": 62, \"w\": 16, \"h\": 16, \"i\": \"5\"}, \"version\": \"8.17.0\", \"type\": \"visualization\", \"id\": \"sw-sp-pie-width-dist\", \"title\": \"Sparrow WiFi — Channel Width Distribution\", \"embeddableConfig\": {\"enhancements\": {}}}, {\"panelIndex\": \"6\", \"gridData\": {\"x\": 32, \"y\": 62, \"w\": 16, \"h\": 16, \"i\": \"6\"}, \"version\": \"8.17.0\", \"type\": \"visualization\", \"id\": \"sw-sp-bar-top-channels\", \"title\": \"Sparrow WiFi — Top Channels by AP Count\", \"embeddableConfig\": {\"enhancements\": {}}}]", "version": 1}, "references": [{"name": "panel_0", "type": "visualization", "id": "sw-sp-bar-rssi-channel"}, {"name": "panel_1", "type": "visualization", "id": "sw-sp-heatmap-channel-hour"}, {"name": "panel_2", "type": "visualization", "id": "sw-sp-pie-band-dist"}, {"name": "panel_3", "type": "visualization", "id": "sw-sp-pie-width-dist"}, {"name": "panel_4", "type": "visualization", "id": "sw-sp-bar-top-channels"}, {"name": "panel_5", "type": "visualization", "id": "sw-sp-heatmap-ssid-channel"}, {"name": "kibanaSavedObjectMeta.searchSourceJSON.index", "type": "index-pattern", "id": "sparrow-wifi"}], "coreMigrationVersion": "8.17.0", "typeMigrationVersion": "8.3.0", "managed": false}
