From 557b3f743e0b1411236fa55391ac97972ee5081c Mon Sep 17 00:00:00 2001 From: Jakob Olsson <Jakob Olsson> Date: Tue, 12 Nov 2019 15:05:21 +0100 Subject: [PATCH] add wifimngr objects documentation as individual files --- wifi.ap/wifi.ap.add_neighbor.json | 5 + wifi.ap/wifi.ap.add_vendor_ie.json | 5 + wifi.ap/wifi.ap.assoclist.json | 32 ++ wifi.ap/wifi.ap.del_neighbor.json | 5 + wifi.ap/wifi.ap.del_vendor_ie.json | 5 + wifi.ap/wifi.ap.disconnect.json | 5 + wifi.ap/wifi.ap.list_neighbor.json | 49 +++ wifi.ap/wifi.ap.monitor.json | 5 + wifi.ap/wifi.ap.request_neighbor.json | 5 + wifi.ap/wifi.ap.request_transition.json | 5 + wifi.ap/wifi.ap.stations.json | 330 ++++++++++++++++++ wifi.ap/wifi.ap.stats.json | 115 ++++++ wifi.ap/wifi.ap.status.json | 197 +++++++++++ wifi.radio/wifi.radio.autochannel.json | 25 ++ wifi.radio/wifi.radio.get.json | 19 + wifi.radio/wifi.radio.scan.json | 5 + wifi.radio/wifi.radio.scanresults.ifelse.json | 95 +++++ wifi.radio/wifi.radio.scanresults.json | 79 +++++ wifi.radio/wifi.radio.stats.json | 74 ++++ wifi.radio/wifi.radio.status.ifelse.json | 109 ++++++ wifi.radio/wifi.radio.status.json | 88 +++++ wifi.wps/wifi.wps.generate_pin.json | 16 + wifi.wps/wifi.wps.setpin.json | 5 + wifi.wps/wifi.wps.showpin.json | 16 + wifi.wps/wifi.wps.start.json | 5 + wifi.wps/wifi.wps.status.json | 19 + wifi.wps/wifi.wps.stop.json | 5 + wifi.wps/wifi.wps.validate_pin.json | 14 + wifi/wifi.status.ifelse.json | 163 +++++++++ wifi/wifi.status.json | 141 ++++++++ 30 files changed, 1641 insertions(+) create mode 100644 wifi.ap/wifi.ap.add_neighbor.json create mode 100644 wifi.ap/wifi.ap.add_vendor_ie.json create mode 100644 wifi.ap/wifi.ap.assoclist.json create mode 100644 wifi.ap/wifi.ap.del_neighbor.json create mode 100644 wifi.ap/wifi.ap.del_vendor_ie.json create mode 100644 wifi.ap/wifi.ap.disconnect.json create mode 100644 wifi.ap/wifi.ap.list_neighbor.json create mode 100644 wifi.ap/wifi.ap.monitor.json create mode 100644 wifi.ap/wifi.ap.request_neighbor.json create mode 100644 wifi.ap/wifi.ap.request_transition.json create mode 100644 wifi.ap/wifi.ap.stations.json create mode 100644 wifi.ap/wifi.ap.stats.json create mode 100644 wifi.ap/wifi.ap.status.json create mode 100644 wifi.radio/wifi.radio.autochannel.json create mode 100644 wifi.radio/wifi.radio.get.json create mode 100644 wifi.radio/wifi.radio.scan.json create mode 100644 wifi.radio/wifi.radio.scanresults.ifelse.json create mode 100644 wifi.radio/wifi.radio.scanresults.json create mode 100644 wifi.radio/wifi.radio.stats.json create mode 100644 wifi.radio/wifi.radio.status.ifelse.json create mode 100644 wifi.radio/wifi.radio.status.json create mode 100644 wifi.wps/wifi.wps.generate_pin.json create mode 100644 wifi.wps/wifi.wps.setpin.json create mode 100644 wifi.wps/wifi.wps.showpin.json create mode 100644 wifi.wps/wifi.wps.start.json create mode 100644 wifi.wps/wifi.wps.status.json create mode 100644 wifi.wps/wifi.wps.stop.json create mode 100644 wifi.wps/wifi.wps.validate_pin.json create mode 100644 wifi/wifi.status.ifelse.json create mode 100644 wifi/wifi.status.json diff --git a/wifi.ap/wifi.ap.add_neighbor.json b/wifi.ap/wifi.ap.add_neighbor.json new file mode 100644 index 0000000..292a672 --- /dev/null +++ b/wifi.ap/wifi.ap.add_neighbor.json @@ -0,0 +1,5 @@ +{ + "definitions": {}, + "$schema": "wifi.ap.add_neighbor", + "$id": "iopsys" + } \ No newline at end of file diff --git a/wifi.ap/wifi.ap.add_vendor_ie.json b/wifi.ap/wifi.ap.add_vendor_ie.json new file mode 100644 index 0000000..e267b13 --- /dev/null +++ b/wifi.ap/wifi.ap.add_vendor_ie.json @@ -0,0 +1,5 @@ +{ + "definitions": {}, + "$schema": "wifi.ap.add_vendor_ie", + "$id": "iopsys" + } \ No newline at end of file diff --git a/wifi.ap/wifi.ap.assoclist.json b/wifi.ap/wifi.ap.assoclist.json new file mode 100644 index 0000000..8c7130e --- /dev/null +++ b/wifi.ap/wifi.ap.assoclist.json @@ -0,0 +1,32 @@ +{ + "definitions": {}, + "$schema": "wifi.ap.assoclist", + "$id": "iopsys", + "type": "object", + "required": [ + "assoclist" + ], + "properties": { + "assoclist": { + "type": "array", + "items": { + "type": "object", + "required": [ + "wdev", + "macaddr" + ], + "properties": { + "wdev": { + "type": "string", + "minLength": 1, + "maxLength": 16 + }, + "macaddr": { + "type": "string", + "pattern": "^([0-9A-Fa-f]{2}[:]){5}([0-9A-Fa-f]{2})$" + } + } + } + } + } + } \ No newline at end of file diff --git a/wifi.ap/wifi.ap.del_neighbor.json b/wifi.ap/wifi.ap.del_neighbor.json new file mode 100644 index 0000000..b17603d --- /dev/null +++ b/wifi.ap/wifi.ap.del_neighbor.json @@ -0,0 +1,5 @@ +{ + "definitions": {}, + "$schema": "wifi.ap.del_neighbor", + "$id": "iopsys" + } \ No newline at end of file diff --git a/wifi.ap/wifi.ap.del_vendor_ie.json b/wifi.ap/wifi.ap.del_vendor_ie.json new file mode 100644 index 0000000..e267b13 --- /dev/null +++ b/wifi.ap/wifi.ap.del_vendor_ie.json @@ -0,0 +1,5 @@ +{ + "definitions": {}, + "$schema": "wifi.ap.add_vendor_ie", + "$id": "iopsys" + } \ No newline at end of file diff --git a/wifi.ap/wifi.ap.disconnect.json b/wifi.ap/wifi.ap.disconnect.json new file mode 100644 index 0000000..f946560 --- /dev/null +++ b/wifi.ap/wifi.ap.disconnect.json @@ -0,0 +1,5 @@ +{ + "definitions": {}, + "$schema": "wifi.ap.disconnect", + "$id": "iopsys" + } \ No newline at end of file diff --git a/wifi.ap/wifi.ap.list_neighbor.json b/wifi.ap/wifi.ap.list_neighbor.json new file mode 100644 index 0000000..c8ee287 --- /dev/null +++ b/wifi.ap/wifi.ap.list_neighbor.json @@ -0,0 +1,49 @@ +{ + "definitions": {}, + "$schema": "wifi.ap.list_neighbor", + "$id": "iopsys", + "type": "object", + "required": [ + "neighbors" + ], + "properties": { + "neighbors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "bssid", + "bss_info", + "regulatory", + "channel", + "phy" + ], + "properties": { + "bssid": { + "type": "string", + "default": "", + "pattern": "^([0-9A-Fa-f]{2}[:]){5}([0-9A-Fa-f]{2})$" + }, + "bss_info": { + "type": "integer", + "minimum": 0 + }, + "regulatory": { + "type": "integer", + "minimum": 0 + }, + "channel": { + "type": "integer", + "minimum": 1, + "maximum": 200 + }, + "phy": { + "type": "integer", + "minimum": 0, + "maximum": 9 + } + } + } + } + } + } \ No newline at end of file diff --git a/wifi.ap/wifi.ap.monitor.json b/wifi.ap/wifi.ap.monitor.json new file mode 100644 index 0000000..0eef09e --- /dev/null +++ b/wifi.ap/wifi.ap.monitor.json @@ -0,0 +1,5 @@ +{ + "definitions": {}, + "$schema": "wifi.ap.monitor", + "$id": "iopsys" + } \ No newline at end of file diff --git a/wifi.ap/wifi.ap.request_neighbor.json b/wifi.ap/wifi.ap.request_neighbor.json new file mode 100644 index 0000000..1174f54 --- /dev/null +++ b/wifi.ap/wifi.ap.request_neighbor.json @@ -0,0 +1,5 @@ +{ + "definitions": {}, + "$schema": "wifi.ap.request_neighbor", + "$id": "iopsys" + } \ No newline at end of file diff --git a/wifi.ap/wifi.ap.request_transition.json b/wifi.ap/wifi.ap.request_transition.json new file mode 100644 index 0000000..29bdf7a --- /dev/null +++ b/wifi.ap/wifi.ap.request_transition.json @@ -0,0 +1,5 @@ +{ + "definitions": {}, + "$schema": "wifi.ap.request_transition", + "$id": "iopsys" + } \ No newline at end of file diff --git a/wifi.ap/wifi.ap.stations.json b/wifi.ap/wifi.ap.stations.json new file mode 100644 index 0000000..75ad8e4 --- /dev/null +++ b/wifi.ap/wifi.ap.stations.json @@ -0,0 +1,330 @@ +{ + "definitions": {}, + "$schema": "wifi.ap.stations", + "$id": "iopsys", + "type": "object", + "required": [ + "stations" + ], + "properties": { + "stations": { + "type": "array", + "items": { + "type": "object", + "required": [ + "macaddr", + "wdev", + "frequency", + "rssi", + "snr", + "idle", + "in_network", + "tx_airtime", + "rx_airtime", + "airtime", + "max_rate", + "status", + "capabilities", + "stats", + "rssi_per_antenna" + ], + "properties": { + "macaddr": { + "type": "string", + "pattern": "^([0-9A-Fa-f]{2}[:]){5}([0-9A-Fa-f]{2})$" + }, + "wdev": { + "type": "string", + "minLength": 1, + "maxLength": 16 + }, + "frequency": { + "type": "string", + "enum": ["5GHz", "2.4GHz"] + }, + "rssi": { + "type": "integer", + "minimum": -128, + "maximum": 0 + }, + "snr": { + "type": "integer", + "minimum": 0, + "maximum": 100 + }, + "idle": { + "type": "integer", + "minimum": 0 + }, + "in_network": { + "type": "integer", + "minimum": 0 + }, + "tx_airtime": { + "type": "integer", + "minimum": 0, + "maximum": 100 + }, + "rx_airtime": { + "type": "integer", + "minimum": 0, + "maximum": 100 + }, + "airtime": { + "type": "integer", + "minimum": 0, + "maximum": 100 + }, + "max_rate": { + "type": "integer", + "minimum": 0 + }, + "status": { + "type": "object", + "required": [ + "wmm", + "ps" + ], + "properties": { + "wmm": { + "type": "boolean" + }, + "ps": { + "type": "boolean" + } + } + }, + "capabilities": { + "type": "object", + "required": [ + "wmm", + "apsd", + "shortslot", + "dot11h", + "dot11k", + "2040coex", + "psmp", + "proxy_arp", + "dot11v_btm", + "dot11n", + "dot11n_ldpc", + "dot11n_40", + "dot11n_ps", + "dot11n_sgi20", + "dot11n_sgi40", + "dot11n_tx_stbc", + "dot11n_rx_stbc", + "dot11ac", + "dot11ac_160", + "dot11ac_8080", + "dot11ac_mpdu_max", + "dot11ac_sgi80", + "dot11ac_sgi160", + "dot11ac_rx_ldpc", + "dot11ac_tx_stbc", + "dot11ac_rx_stbc_1ss", + "dot11ac_rx_stbc_2ss", + "dot11ac_rx_stbc_3ss", + "dot11ac_rx_stbc_4ss", + "dot11ac_su_beamformer", + "dot11ac_su_beamformee", + "dot11ac_mu_beamformer", + "dot11ac_mu_beamformee", + "dot11k_link_meas", + "dot11k_nbr_report", + "dot11k_bcn_passive", + "dot11k_bcn_active", + "dot11k_bcn_table", + "dot11k_rcpi", + "dot11k_rsni" + ], + "properties": { + "wmm": { + "type": "boolean" + }, + "apsd": { + "type": "boolean" + }, + "shortslot": { + "type": "boolean" + }, + "dot11h": { + "type": "boolean" + }, + "dot11k": { + "type": "boolean" + }, + "2040coex": { + "type": "boolean" + }, + "psmp": { + "type": "boolean" + }, + "proxy_arp": { + "type": "boolean" + }, + "dot11v_btm": { + "type": "boolean" + }, + "dot11n": { + "type": "boolean" + }, + "dot11n_ldpc": { + "type": "boolean" + }, + "dot11n_40": { + "type": "boolean" + }, + "dot11n_ps": { + "type": "boolean" + }, + "dot11n_sgi20": { + "type": "boolean" + }, + "dot11n_sgi40": { + "type": "boolean" + }, + "dot11n_tx_stbc": { + "type": "boolean" + }, + "dot11n_rx_stbc": { + "type": "boolean" + }, + "dot11ac": { + "type": "boolean" + }, + "dot11ac_160": { + "type": "boolean" + }, + "dot11ac_8080": { + "type": "boolean" + }, + "dot11ac_mpdu_max": { + "type": "integer", + "minimum": 0, + "maximum": 65535 + }, + "dot11ac_sgi80": { + "type": "boolean" + }, + "dot11ac_sgi160": { + "type": "boolean" + }, + "dot11ac_rx_ldpc": { + "type": "boolean" + }, + "dot11ac_tx_stbc": { + "type": "boolean" + }, + "dot11ac_rx_stbc_1ss": { + "type": "boolean" + }, + "dot11ac_rx_stbc_2ss": { + "type": "boolean" + }, + "dot11ac_rx_stbc_3ss": { + "type": "boolean" + }, + "dot11ac_rx_stbc_4ss": { + "type": "boolean" + }, + "dot11ac_su_beamformer": { + "type": "boolean" + }, + "dot11ac_su_beamformee": { + "type": "boolean" + }, + "dot11ac_mu_beamformer": { + "type": "boolean" + }, + "dot11ac_mu_beamformee": { + "type": "boolean" + }, + "dot11k_link_meas": { + "type": "boolean" + }, + "dot11k_nbr_report": { + "type": "boolean" + }, + "dot11k_bcn_passive": { + "type": "boolean" + }, + "dot11k_bcn_active": { + "type": "boolean" + }, + "dot11k_bcn_table": { + "type": "boolean" + }, + "dot11k_rcpi": { + "type": "boolean" + }, + "dot11k_rsni": { + "type": "boolean" + } + } + }, + "stats": { + "type": "object", + "required": [ + "tx_total_pkts", + "tx_total_bytes", + "tx_failures", + "tx_pkts_retries", + "rx_data_pkts", + "rx_data_bytes", + "rx_failures", + "rate_of_last_tx_pkt", + "rate_of_last_rx_pkt" + ], + "properties": { + "tx_total_pkts": { + "type": "integer", + "minimum": 0 + }, + "tx_total_bytes": { + "type": "integer", + "minimum": 0 + }, + "tx_failures": { + "type": "integer", + "minimum": 0 + }, + "tx_pkts_retries": { + "type": "integer", + "minimum": 0 + }, + "rx_data_pkts": { + "type": "integer", + "minimum": 0 + }, + "rx_data_bytes": { + "type": "integer", + "minimum": 0 + }, + "rx_failures": { + "type": "integer", + "minimum": 0 + }, + "rate_of_last_tx_pkt": { + "type": "integer", + "minimum": 0 + }, + "rate_of_last_rx_pkt": { + "type": "integer", + "minimum": 0 + } + } + }, + "rssi_per_antenna": { + "type": "array", + "items": { + "type": "integer", + "minimum": -128, + "maximum": 0 + } + } + } + } + } + } + } \ No newline at end of file diff --git a/wifi.ap/wifi.ap.stats.json b/wifi.ap/wifi.ap.stats.json new file mode 100644 index 0000000..b6d97f2 --- /dev/null +++ b/wifi.ap/wifi.ap.stats.json @@ -0,0 +1,115 @@ +{ + "definitions": {}, + "$schema": "wifi.ap.stats.json", + "$id": "iopsys", + "type": "object", + "required": [ + "tx_bytes", + "tx_packets", + "tx_unicast_packets", + "tx_multicast_packets", + "tx_broadcast_packets", + "tx_error_packets", + "tx_retrans_packets", + "tx_retrans_fail_packets", + "tx_retry_packets", + "tx_multi_retry_packets", + "tx_dropped_packets", + "ack_fail_packets", + "aggregate_packets", + "rx_bytes", + "rx_packets", + "rx_unicast_packets", + "rx_multicast_packets", + "rx_broadcast_packets", + "rx_error_packets", + "rx_dropped_packets", + "rx_unknown_packets" + ], + "properties": { + "tx_bytes": { + "type": "integer", + "minimum": 0 + }, + "tx_packets": { + "type": "integer", + "minimum": 0 + }, + "tx_unicast_packets": { + "type": "integer", + "minimum": 0 + }, + "tx_multicast_packets": { + "type": "integer", + "minimum": 0 + }, + "tx_broadcast_packets": { + "type": "integer", + "minimum": 0 + }, + "tx_error_packets": { + "type": "integer", + "minimum": 0 + }, + "tx_retrans_packets": { + "type": "integer", + "minimum": 0 + }, + "tx_retrans_fail_packets": { + "type": "integer", + "minimum": 0 + }, + "tx_retry_packets": { + "type": "integer", + "minimum": 0 + }, + "tx_multi_retry_packets": { + "type": "integer", + "minimum": 0 + }, + "tx_dropped_packets": { + "type": "integer", + "minimum": 0 + }, + "ack_fail_packets": { + "type": "integer", + "minimum": 0 + }, + "aggregate_packets": { + "type": "integer", + "minimum": 0 + }, + "rx_bytes": { + "type": "integer", + "minimum": 0 + }, + "rx_packets": { + "type": "integer", + "minimum": 0 + }, + "rx_unicast_packets": { + "type": "integer", + "minimum": 0 + }, + "rx_multicast_packets": { + "type": "integer", + "minimum": 0 + }, + "rx_broadcast_packets": { + "type": "integer", + "minimum": 0 + }, + "rx_error_packets": { + "type": "integer", + "minimum": 0 + }, + "rx_dropped_packets": { + "type": "integer", + "minimum": 0 + }, + "rx_unknown_packets": { + "type": "integer", + "minimum": 0 + } + } + } \ No newline at end of file diff --git a/wifi.ap/wifi.ap.status.json b/wifi.ap/wifi.ap.status.json new file mode 100644 index 0000000..69b55c5 --- /dev/null +++ b/wifi.ap/wifi.ap.status.json @@ -0,0 +1,197 @@ +{ + "definitions": {}, + "$schema": "wifi.ap.iface.status", + "$id": "iopsys", + "type": "object", + "required": [ + "ifname", + "status", + "ssid", + "bssid", + "encryption", + "bandwidth", + "standard", + "num_stations", + "utilization", + "adm_capacity", + "hidden", + "max_stations", + "capabilities" + ], + "properties": { + "ifname": { + "type": "string", + "minLength": 1, + "maxLength": 16 + }, + "status": { + "type": "string" + }, + "ssid": { + "type": "string", + "minLength": 0, + "maxLength": 32 + }, + "bssid": { + "type": "string", + "pattern": "^([0-9A-Fa-f]{2}[:]){5}([0-9A-Fa-f]{2})$" + }, + "encryption": { + "type": "string" + }, + "bandwidth": { + "type": "integer", + "default": 0, + "enum": [20, 40, 80, 160] + }, + "standard": { + "type": "string" + }, + "num_stations": { + "type": "integer", + "minimum": 0, + "maximum": 2007 + }, + "utilization": { + "type": "integer", + "minimum": 0, + "maximum": 100 + }, + "adm_capacity": { + "type": "integer" + }, + "hidden": { + "type": "boolean" + }, + "max_stations": { + "type": "integer", + "minimum": 0, + "maximum": 2007 + }, + "capabilities": { + "type": "object", + "required": [ + "wmm", + "apsd", + "shortslot", + "dot11h", + "dot11k", + "dot11n", + "dot11n_ldpc", + "dot11n_40", + "dot11n_ps", + "dot11n_sgi20", + "dot11n_sgi40", + "dot11n_tx_stbc", + "dot11n_rx_stbc", + "dot11ac", + "dot11ac_160", + "dot11ac_8080", + "dot11ac_mpdu_max", + "dot11ac_sgi80", + "dot11ac_sgi160", + "dot11ac_rx_ldpc", + "dot11ac_tx_stbc", + "dot11ac_rx_stbc_1ss", + "dot11ac_rx_stbc_2ss", + "dot11ac_rx_stbc_3ss", + "dot11ac_rx_stbc_4ss", + "dot11ac_su_beamformer", + "dot11ac_su_beamformee", + "dot11ac_mu_beamformer", + "dot11ac_mu_beamformee" + ], + "properties": { + "wmm": { + "type": "boolean" + }, + "apsd": { + "type": "boolean" + }, + "shortslot": { + "type": "boolean" + }, + "dot11h": { + "type": "boolean" + }, + "dot11k": { + "type": "boolean" + }, + "dot11n": { + "type": "boolean" + }, + "dot11n_ldpc": { + "type": "boolean" + }, + "dot11n_40": { + "type": "boolean" + }, + "dot11n_ps": { + "type": "boolean" + }, + "dot11n_sgi20": { + "type": "boolean" + }, + "dot11n_sgi40": { + "type": "boolean" + }, + "dot11n_tx_stbc": { + "type": "boolean" + }, + "dot11n_rx_stbc": { + "type": "boolean" + }, + "dot11ac": { + "type": "boolean" + }, + "dot11ac_160": { + "type": "boolean" + }, + "dot11ac_8080": { + "type": "boolean" + }, + "dot11ac_mpdu_max": { + "type": "integer", + "minimum": 0, + "maximum": 65535 + }, + "dot11ac_sgi80": { + "type": "boolean" + }, + "dot11ac_sgi160": { + "type": "boolean" + }, + "dot11ac_rx_ldpc": { + "type": "boolean" + }, + "dot11ac_tx_stbc": { + "type": "boolean" + }, + "dot11ac_rx_stbc_1ss": { + "type": "boolean" + }, + "dot11ac_rx_stbc_2ss": { + "type": "boolean" + }, + "dot11ac_rx_stbc_3ss": { + "type": "boolean" + }, + "dot11ac_rx_stbc_4ss": { + "type": "boolean" + }, + "dot11ac_su_beamformer": { + "type": "boolean" + }, + "dot11ac_su_beamformee": { + "type": "boolean" + }, + "dot11ac_mu_beamformer": { + "type": "boolean" + }, + "dot11ac_mu_beamformee": { + "type": "boolean" + } + } + } + } +} \ No newline at end of file diff --git a/wifi.radio/wifi.radio.autochannel.json b/wifi.radio/wifi.radio.autochannel.json new file mode 100644 index 0000000..f687d9d --- /dev/null +++ b/wifi.radio/wifi.radio.autochannel.json @@ -0,0 +1,25 @@ +{ + "definitions": {}, + "$schema": "wifi.radio.autochannel", + "$id": "iopsys", + "type": "object", + "title": "wifi.radio.autochannel", + "required": [ + "code", + "new_channel", + "status" + ], + "properties": { + "code": { + "type": "integer" + }, + "new_channel": { + "type": "integer", + "minimum": 1, + "maximum": 200 + }, + "status": { + "type": "string" + } + } +} \ No newline at end of file diff --git a/wifi.radio/wifi.radio.get.json b/wifi.radio/wifi.radio.get.json new file mode 100644 index 0000000..bca0eab --- /dev/null +++ b/wifi.radio/wifi.radio.get.json @@ -0,0 +1,19 @@ +{ + "definitions": {}, + "$schema": "wifi.radio.iface", + "$id": "iopsys", + "type": "object", + "title": "wifi.radio.iface", + "required": [ + "status", + "value_int" + ], + "properties": { + "status": { + "type": "integer" + }, + "value_int": { + "type": "integer" + } + } +} \ No newline at end of file diff --git a/wifi.radio/wifi.radio.scan.json b/wifi.radio/wifi.radio.scan.json new file mode 100644 index 0000000..7248840 --- /dev/null +++ b/wifi.radio/wifi.radio.scan.json @@ -0,0 +1,5 @@ +{ + "definitions": {}, + "$schema": "wifi.radio.iface", + "$id": "iopsys" +} \ No newline at end of file diff --git a/wifi.radio/wifi.radio.scanresults.ifelse.json b/wifi.radio/wifi.radio.scanresults.ifelse.json new file mode 100644 index 0000000..bd585cd --- /dev/null +++ b/wifi.radio/wifi.radio.scanresults.ifelse.json @@ -0,0 +1,95 @@ +{ + "definitions": {}, + "$schema": "wifi.radio.iface", + "$id": "iopsys", + "type": "object", + "title": "wifi.radio.iface", + "required": [ + "accesspoints" + ], + "properties": { + "accesspoints": { + "required": true, + "type": "array", + "items": { + "type": "object", + "properties": { + "ssid": { + "required": true, + "type": "string" + }, + "bssid": { + "required": true, + "type": "string", + "pattern": "^([0-9A-Fa-f]{2}[:]){5}([0-9A-Fa-f]{2})$" + }, + "if": { + "properties": { + "band": { + "const": "2.4GHz" + } + } + }, + "then": { + "properties": { + "channel": { + "required": true, + "type": "integer", + "minimum": 1, + "maximum": 14 + } + } + }, + "else": { + "channel": { + "required": true, + "type": "integer", + "minimum": 32, + "maximum": 173 + } + }, + "bandwidth": { + "required": true, + "type": "integer", + "default": 0, + "enum": [10, 20, 40, 80, 160] + }, + "encryption": { + "required": true, + "type": "string" + }, + "band": { + "required": true, + "type": "string", + "enum": ["2.4GHz", "5GHz"] + }, + "rssi": { + "required": true, + "type": "integer", + "maximum": 0 + }, + "standard": { + "required": true, + "type": "string", + "enum": ["802.11a"] + }, + "load_stas": { + "required": true, + "type": "integer", + "minimum": 0 + }, + "load_utilization": { + "required": true, + "type": "integer", + "minimum": 0 + }, + "load_available": { + "required": true, + "type": "integer", + "minimum": 0 + } + } + } + } + } +} \ No newline at end of file diff --git a/wifi.radio/wifi.radio.scanresults.json b/wifi.radio/wifi.radio.scanresults.json new file mode 100644 index 0000000..5d33e41 --- /dev/null +++ b/wifi.radio/wifi.radio.scanresults.json @@ -0,0 +1,79 @@ +{ + "definitions": {}, + "$schema": "wifi.radio.iface", + "$id": "iopsys", + "type": "object", + "title": "wifi.radio.iface", + "required": [ + "accesspoints" + ], + "properties": { + "accesspoints": { + "required": true, + "type": "array", + "items": { + "type": "object", + "properties": { + "ssid": { + "required": true, + "type": "string", + "minLength": 0, + "maxLength": 32 + }, + "bssid": { + "required": true, + "type": "string", + "pattern": "^([0-9A-Fa-f]{2}[:]){5}([0-9A-Fa-f]{2})$" + }, + "channel": { + "required": true, + "type": "integer", + "minimum": 1, + "maximum": 200 + }, + "bandwidth": { + "required": true, + "type": "integer", + "default": 0, + "enum": [20, 40, 80, 160] + }, + "encryption": { + "required": true, + "type": "string" + }, + "band": { + "required": true, + "type": "string", + "enum": ["2.4GHz", "5GHz"] + }, + "rssi": { + "required": true, + "type": "integer", + "maximum": 0, + "minimum": -127 + }, + "standard": { + "required": true, + "type": "string" + }, + "load_stas": { + "required": true, + "type": "integer", + "minimum": 0 + }, + "load_utilization": { + "required": true, + "type": "integer", + "minimum": 0, + "maximum": 100 + }, + "load_available": { + "required": true, + "type": "integer", + "minimum": 0 + } + } + } + } + } +} \ No newline at end of file diff --git a/wifi.radio/wifi.radio.stats.json b/wifi.radio/wifi.radio.stats.json new file mode 100644 index 0000000..fe92e3c --- /dev/null +++ b/wifi.radio/wifi.radio.stats.json @@ -0,0 +1,74 @@ +{ + "definitions": {}, + "$schema": "wifi.radio.iface", + "$id": "iopsys", + "type": "object", + "title": "wifi.radio.iface", + "required": [ + "tx_bytes", + "tx_packets", + "tx_error_packets", + "tx_dropped_packets", + "rx_bytes", + "rx_packets", + "rx_error_packets", + "rx_dropped_packets", + "rx_fcs_error_packets" + ], + "properties": { + "tx_bytes": { + "required": true, + "type": "integer", + "default": 0, + "minimum": 0 + }, + "tx_packets": { + "required": true, + "type": "integer", + "default": 0, + "minimum": 0 + }, + "tx_error_packets": { + "required": true, + "type": "integer", + "default": 0, + "minimum": 0 + }, + "tx_dropped_packets": { + "required": true, + "type": "integer", + "default": 0, + "minimum": 0 + }, + "rx_bytes": { + "required": true, + "type": "integer", + "default": 0, + "minimum": 0 + }, + "rx_packets": { + "required": true, + "type": "integer", + "default": 0, + "minimum": 0 + }, + "rx_error_packets": { + "required": true, + "type": "integer", + "default": 0, + "minimum": 0 + }, + "rx_dropped_packets": { + "required": true, + "type": "integer", + "default": 0, + "minimum": 0 + }, + "rx_fcs_error_packets": { + "required": true, + "type": "integer", + "default": 0, + "minimum": 0 + } + } +} \ No newline at end of file diff --git a/wifi.radio/wifi.radio.status.ifelse.json b/wifi.radio/wifi.radio.status.ifelse.json new file mode 100644 index 0000000..c42dce5 --- /dev/null +++ b/wifi.radio/wifi.radio.status.ifelse.json @@ -0,0 +1,109 @@ +{ + "definitions": {}, + "$schema": "wifi.radio.iface", + "$id": "iopsys", + "type": "object", + "title": "wifi.radio.iface", + "required": [ + "radio", + "isup", + "band", + "channel", + "bandwidth", + "noise", + "rate", + "beacon_int", + "dtim_period", + "short_retry_limit", + "long_retry_limit", + "frag_threshold", + "rts_threshold" + ], + "properties": { + "radio": { + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 16 + }, + "isup": { + "required": true, + "type": "boolean", + "default": 0, + "minimum": 0 + }, + "band": { + "required": true, + "type": "integer", + "enum": [2, 5] + }, + "if": { + "properties": { + "band": { + "const": 2 + } + } + }, + "then": { + "properties": { + "channel": { + "required": true, + "type": "integer", + "minimum": 1, + "maximum": 14 + } + } + }, + "else": { + "channel": { + "required": true, + "type": "integer", + "minimum": 32, + "maximum": 173 + } + }, + "bandwidth": { + "required": true, + "type": "integer", + "default": 0, + "enum": [10, 20, 40, 80, 160] + }, + "noise": { + "required": true, + "type": "integer", + "default": 0, + "minimum": 0 + }, + "rate": { + "required": true, + "type": "integer", + "minimum": 0 + }, + "beacon_int": { + "required": true, + "type": "integer", + "default": 0, + "minimum": 0 + }, + "dtim_period": { + "required": true, + "type": "integer" + }, + "short_retry_limit": { + "required": true, + "type": "integer" + }, + "long_retry_limit": { + "required": true, + "type": "integer" + }, + "frag_threshold": { + "required": true, + "type": "integer" + }, + "rts_threshold": { + "required": true, + "type": "integer" + } + } +} \ No newline at end of file diff --git a/wifi.radio/wifi.radio.status.json b/wifi.radio/wifi.radio.status.json new file mode 100644 index 0000000..a13cfe0 --- /dev/null +++ b/wifi.radio/wifi.radio.status.json @@ -0,0 +1,88 @@ +{ + "definitions": {}, + "$schema": "wifi.radio.iface", + "$id": "iopsys", + "type": "object", + "title": "wifi.radio.iface", + "required": [ + "radio", + "isup", + "band", + "channel", + "bandwidth", + "noise", + "rate", + "beacon_int", + "dtim_period", + "short_retry_limit", + "long_retry_limit", + "frag_threshold", + "rts_threshold" + ], + "properties": { + "radio": { + "type": "string", + "minLength": 1, + "maxLength": 16 + }, + "isup": { + "type": "boolean" + }, + "band": { + "type": "integer", + "enum": [2, 5] + }, + "channel": { + "type": "integer", + "minimum": 1, + "maximum": 200 + }, + "bandwidth": { + "type": "integer", + "enum": [20, 40, 80, 160] + }, + "noise": { + "type": "integer", + "maximum": 0, + "minimum": -128 + }, + "rate": { + "type": "integer", + "minimum": 0 + }, + "beacon_int": { + "type": "integer", + "default": 100, + "minimum": 1, + "maximum": 65535 + }, + "dtim_period": { + "type": "integer", + "default": 1, + "minimum": 1, + "maximum": 255 + }, + "short_retry_limit": { + "type": "integer", + "minimum": 1, + "maximum": 255 + }, + "long_retry_limit": { + "type": "integer", + "minimum": 1, + "maximum": 255 + }, + "frag_threshold": { + "type": "integer", + "default": 2346, + "minimum": 256, + "maximum": 65535 + }, + "rts_threshold": { + "type": "integer", + "default": 2347, + "minimum": 0, + "maximum": 65535 + } + } +} \ No newline at end of file diff --git a/wifi.wps/wifi.wps.generate_pin.json b/wifi.wps/wifi.wps.generate_pin.json new file mode 100644 index 0000000..4450de4 --- /dev/null +++ b/wifi.wps/wifi.wps.generate_pin.json @@ -0,0 +1,16 @@ +{ + "definitions": {}, + "$schema": "wifi.wps.generate_pin", + "$id": "iopsys", + "type": "object", + "required": [ + "pin" + ], + "properties": { + "pin": { + "type": "string", + "minLength": 8, + "maxLength": 8 + } + } +} \ No newline at end of file diff --git a/wifi.wps/wifi.wps.setpin.json b/wifi.wps/wifi.wps.setpin.json new file mode 100644 index 0000000..85b9bb7 --- /dev/null +++ b/wifi.wps/wifi.wps.setpin.json @@ -0,0 +1,5 @@ +{ + "definitions": {}, + "$schema": "wifi.ap.setpin", + "$id": "iopsys" + } \ No newline at end of file diff --git a/wifi.wps/wifi.wps.showpin.json b/wifi.wps/wifi.wps.showpin.json new file mode 100644 index 0000000..8c81270 --- /dev/null +++ b/wifi.wps/wifi.wps.showpin.json @@ -0,0 +1,16 @@ +{ + "definitions": {}, + "$schema": "wifi.wps.showpin", + "$id": "iopsys", + "type": "object", + "required": [ + "pin" + ], + "properties": { + "pin": { + "type": "string", + "minLength": 8, + "maxLength": 8 + } + } + } \ No newline at end of file diff --git a/wifi.wps/wifi.wps.start.json b/wifi.wps/wifi.wps.start.json new file mode 100644 index 0000000..84deb7c --- /dev/null +++ b/wifi.wps/wifi.wps.start.json @@ -0,0 +1,5 @@ +{ + "definitions": {}, + "$schema": "wifi.ap.start", + "$id": "iopsys" + } \ No newline at end of file diff --git a/wifi.wps/wifi.wps.status.json b/wifi.wps/wifi.wps.status.json new file mode 100644 index 0000000..ea00bd2 --- /dev/null +++ b/wifi.wps/wifi.wps.status.json @@ -0,0 +1,19 @@ +{ + "definitions": {}, + "$schema": "wifi.wps.status", + "$id": "iopsys", + "type": "object", + "required": [ + "code", + "status" + ], + "properties": { + "code": { + "type": "integer", + "minimum": 0 + }, + "status": { + "type": "string" + } + } +} \ No newline at end of file diff --git a/wifi.wps/wifi.wps.stop.json b/wifi.wps/wifi.wps.stop.json new file mode 100644 index 0000000..5b46fb1 --- /dev/null +++ b/wifi.wps/wifi.wps.stop.json @@ -0,0 +1,5 @@ +{ + "definitions": {}, + "$schema": "wifi.ap.stop", + "$id": "iopsys" + } \ No newline at end of file diff --git a/wifi.wps/wifi.wps.validate_pin.json b/wifi.wps/wifi.wps.validate_pin.json new file mode 100644 index 0000000..eb56f54 --- /dev/null +++ b/wifi.wps/wifi.wps.validate_pin.json @@ -0,0 +1,14 @@ +{ + "definitions": {}, + "$schema": "wifi.wps.validate_pin", + "$id": "iopsys", + "type": "object", + "required": [ + "valid" + ], + "properties": { + "valid": { + "type": "boolean" + } + } + } \ No newline at end of file diff --git a/wifi/wifi.status.ifelse.json b/wifi/wifi.status.ifelse.json new file mode 100644 index 0000000..7bf0df8 --- /dev/null +++ b/wifi/wifi.status.ifelse.json @@ -0,0 +1,163 @@ +{ + "definitions": {}, + "$schema": "wifi.status", + "$id": "iopsys", + "type": "object", + "required": [ + "radios" + ], + "properties": { + "radios": { + "type": "array", + "items": { + "type": "object", + "required": [ + "name", + "isup", + "standard", + "country", + "band", + "channel", + "bandwidth", + "noise", + "rate", + "channels", + "accesspoints", + "backhauls" + ], + "properties": { + "name": { + "type": "string", + "minLength": 1, + "maxLength": 16 + }, + "isup": { + "type": "boolean", + }, + "standard": { + "type": "string", + "enum": [ + "b,g,n", + ], + }, + "country": { + "type": "string", + "enum": [ + "DE", + ] + }, + "band": { + "type": "integer", + "enum": [2, 5] + }, + "if": { + "properties": { + "band": { + "const": 2 + } + } + }, + "then": { + "properties": { + "channel": { + "required": true, + "type": "integer", + "minimum": 1, + "maximum": 14 + } + } + }, + "else": { + "channel": { + "required": true, + "type": "integer", + "minimum": 32, + "maximum": 173 + } + }, + "bandwidth": { + "type": "integer", + "default": 0, + "enum": [10, 20, 40, 80, 160] + }, + "noise": { + "type": "integer" + }, + "rate": { + "type": "integer" + }, + "channels": { + "type": "array", + "items": { + "type": "integer" + } + }, + "accesspoints": { + "type": "array", + "items": { + "type": "object", + "required": [ + "ifname", + "status", + "ssid", + "bssid" + ], + "properties": { + "ifname": { + "type": "string", + "minLength": 1, + "maxLength": 16 + }, + "status": { + "type": "string", + "enum": [ "running", ] + }, + "ssid": { + "type": "string", + "minLength": 0, + "maxLength": 32 + }, + "bssid": { + "type": "string", + "pattern": "^([0-9A-Fa-f]{2}[:]){5}([0-9A-Fa-f]{2})$" + } + } + } + }, + "backhauls": { + "type": "array", + "items": { + "type": "object", + "required": [ + "ifname", + "status", + "ssid", + "bssid" + ], + "properties": { + "ifname": { + "type": "string", + "minLength": 1, + "maxLength": 16 + }, + "status": { + "type": "string", + "enum": [ "running", ] + }, + "ssid": { + "type": "string", + "minLength": 0, + "maxLength": 32 + }, + "bssid": { + "type": "string", + "pattern": "^([0-9A-Fa-f]{2}[:]){5}([0-9A-Fa-f]{2})$" + } + } + } + } + } + } + } + } + } \ No newline at end of file diff --git a/wifi/wifi.status.json b/wifi/wifi.status.json new file mode 100644 index 0000000..15a83ea --- /dev/null +++ b/wifi/wifi.status.json @@ -0,0 +1,141 @@ +{ + "definitions": {}, + "$schema": "wifi.status", + "$id": "iopsys", + "type": "object", + "required": [ + "radios" + ], + "properties": { + "radios": { + "type": "array", + "items": { + "type": "object", + "required": [ + "name", + "isup", + "standard", + "country", + "band", + "channel", + "bandwidth", + "noise", + "rate", + "channels", + "accesspoints", + "backhauls" + ], + "properties": { + "name": { + "type": "string", + "minLength": 1, + "maxLength": 16 + }, + "isup": { + "type": "boolean" + }, + "standard": { + "type": "string" + }, + "country": { + "type": "string", + "minLength": 2, + "maxLength": 3 + }, + "band": { + "type": "integer", + "enum": [2, 5] + }, + "channel": { + "type": "integer", + "minimum": 1, + "maximum": 200 + }, + "bandwidth": { + "type": "integer", + "enum": [20, 40, 80, 160] + }, + "noise": { + "type": "integer", + "minimum": -127, + "maximum": 0 + }, + "rate": { + "type": "integer", + "minimum": 0 + }, + "channels": { + "type": "array", + "items": { + "type": "integer", + "minimum": 1, + "maximum": 200 + } + }, + "accesspoints": { + "type": "array", + "items": { + "type": "object", + "required": [ + "ifname", + "status", + "ssid", + "bssid" + ], + "properties": { + "ifname": { + "type": "string", + "minLength": 1, + "maxLength": 16 + }, + "status": { + "type": "string" + }, + "ssid": { + "type": "string", + "minLength": 0, + "maxLength": 32 + }, + "bssid": { + "type": "string", + "pattern": "^([0-9A-Fa-f]{2}[:]){5}([0-9A-Fa-f]{2})$" + } + } + } + }, + "backhauls": { + "type": "array", + "items": { + "type": "object", + "required": [ + "ifname", + "status", + "ssid", + "bssid" + ], + "properties": { + "ifname": { + "type": "string", + "minLength": 1, + "maxLength": 16 + }, + "status": { + "type": "string" + }, + "ssid": { + "type": "string", + "minLength": 0, + "maxLength": 32 + }, + "bssid": { + "type": "string", + "pattern": "^([0-9A-Fa-f]{2}[:]){5}([0-9A-Fa-f]{2})$" + } + } + } + } + } + } + } + } + } \ No newline at end of file -- GitLab