GitBook: [#14] No subject
|
Before Width: | Height: | Size: 144 KiB After Width: | Height: | Size: 144 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 47 KiB After Width: | Height: | Size: 47 KiB |
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 64 KiB After Width: | Height: | Size: 64 KiB |
|
Before Width: | Height: | Size: 108 KiB After Width: | Height: | Size: 108 KiB |
|
Before Width: | Height: | Size: 95 KiB After Width: | Height: | Size: 95 KiB |
|
Before Width: | Height: | Size: 60 KiB After Width: | Height: | Size: 60 KiB |
|
Before Width: | Height: | Size: 75 KiB After Width: | Height: | Size: 75 KiB |
|
Before Width: | Height: | Size: 80 KiB After Width: | Height: | Size: 80 KiB |
|
Before Width: | Height: | Size: 58 KiB After Width: | Height: | Size: 58 KiB |
|
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 66 KiB |
|
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 81 KiB |
|
Before Width: | Height: | Size: 143 KiB After Width: | Height: | Size: 143 KiB |
|
Before Width: | Height: | Size: 210 KiB After Width: | Height: | Size: 210 KiB |
|
Before Width: | Height: | Size: 147 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 57 KiB |
|
Before Width: | Height: | Size: 46 KiB |
|
Before Width: | Height: | Size: 138 KiB |
|
Before Width: | Height: | Size: 56 KiB |
|
Before Width: | Height: | Size: 5.9 KiB |
|
Before Width: | Height: | Size: 118 KiB |
|
Before Width: | Height: | Size: 70 KiB |
|
Before Width: | Height: | Size: 6.1 KiB |
|
Before Width: | Height: | Size: 105 KiB |
|
Before Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 87 KiB |
|
Before Width: | Height: | Size: 115 KiB |
|
Before Width: | Height: | Size: 44 KiB |
|
Before Width: | Height: | Size: 94 KiB |
|
Before Width: | Height: | Size: 5.9 KiB |
|
Before Width: | Height: | Size: 136 KiB |
|
Before Width: | Height: | Size: 150 KiB |
|
Before Width: | Height: | Size: 18 KiB |
@@ -1,113 +0,0 @@
|
||||
{
|
||||
"uuid": 2,
|
||||
"unit": {
|
||||
"location": "TIP Lab Network",
|
||||
"timezone": "EST+5EDT,M3.2.0/2,M11.1.0/2"
|
||||
},
|
||||
"radios": [
|
||||
{
|
||||
"band": "5G",
|
||||
"country": "CA",
|
||||
"channel": "auto",
|
||||
"channel-mode": "HE",
|
||||
"channel-width": 80,
|
||||
"require-mode": "HT",
|
||||
"rates": {
|
||||
"beacon": 6000,
|
||||
"multicast": 24000
|
||||
}
|
||||
},
|
||||
{
|
||||
"band": "2G",
|
||||
"country": "CA",
|
||||
"channel": 11,
|
||||
"channel-mode": "HE",
|
||||
"channel-width": 80,
|
||||
"require-mode": "HT",
|
||||
"rates": {
|
||||
"beacon": 6000,
|
||||
"multicast": 24000
|
||||
}
|
||||
}
|
||||
],
|
||||
"interfaces": [
|
||||
{
|
||||
"name": "WAN",
|
||||
"role": "upstream",
|
||||
"services": [ "lldp", "dhcp-snooping" ],
|
||||
"ethernet": [
|
||||
{
|
||||
"select-ports": [
|
||||
"WAN*"
|
||||
]
|
||||
}
|
||||
],
|
||||
"ipv4": {
|
||||
"addressing": "dynamic"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "WAN100",
|
||||
"role": "upstream",
|
||||
"services": [ "lldp", "dhcp-snooping" ],
|
||||
"vlan": {
|
||||
"id": 100
|
||||
},
|
||||
"ethernet": [
|
||||
{
|
||||
"select-ports": [
|
||||
"WAN*"
|
||||
]
|
||||
}
|
||||
],
|
||||
"ssids": [
|
||||
{
|
||||
"name": "TIP OpenWiFi",
|
||||
"wifi-bands": [
|
||||
"2G", "5G"
|
||||
],
|
||||
"bss-mode": "ap",
|
||||
"encryption": {
|
||||
"proto": "psk2",
|
||||
"key": "OpenWiFi",
|
||||
"ieee80211w": "optional"
|
||||
},
|
||||
"services": [ "wifi-frames"]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"metrics": {
|
||||
"statistics": {
|
||||
"interval": 120,
|
||||
"types": [ "ssids", "lldp", "clients" ]
|
||||
},
|
||||
"health": {
|
||||
"interval": 120
|
||||
},
|
||||
"wifi-frames": {
|
||||
"filters": [ "probe",
|
||||
"auth",
|
||||
"assoc",
|
||||
"disassoc",
|
||||
"deauth",
|
||||
"local-deauth",
|
||||
"inactive-deauth",
|
||||
"key-mismatch",
|
||||
"beacon-report",
|
||||
"radar-detected"]
|
||||
},
|
||||
"dhcp-snooping": {
|
||||
"filters": [ "ack", "discover", "offer", "request", "solicit", "reply", "renew" ]
|
||||
}
|
||||
},
|
||||
"services": {
|
||||
"lldp": {
|
||||
"describe": "TIP OpenWiFi",
|
||||
"location": "LivingLab"
|
||||
},
|
||||
"ssh": {
|
||||
"port": 22
|
||||
}
|
||||
}
|
||||
}
|
||||
11
SUMMARY.md
@@ -12,7 +12,6 @@
|
||||
* [Ordering OpenWiFi APs](about/ordering-open-wi-fi-aps.md)
|
||||
* [Example Partner Integrations](about/integrations.md)
|
||||
|
||||
|
||||
## OPENWIFI STACK
|
||||
|
||||
* [Overview](openwifi-stack/openwifi-stack.md)
|
||||
@@ -99,4 +98,12 @@
|
||||
* [Provisioning Service](developer-resources/api/provisioning-service.md)
|
||||
* [Analytics Service](developer-resources/api/analytics-service.md)
|
||||
* [Postman Collection](developer-resources/api/postman-collection.md)
|
||||
* [SDK KAFKA](developer-resources/sdk-kafka.md)
|
||||
* [SDK KAFKA](developer-resources/sdk-kafka/README.md)
|
||||
* [Connection](developer-resources/sdk-kafka/connection.md)
|
||||
* [Device Event Queue](developer-resources/sdk-kafka/device-event-queue.md)
|
||||
* [Device Telemetry](developer-resources/sdk-kafka/device-telemetry.md)
|
||||
* [Healthcheck](developer-resources/sdk-kafka/healthcheck.md)
|
||||
* [Provisioning Change](developer-resources/sdk-kafka/provisioning-change.md)
|
||||
* [Service Events](developer-resources/sdk-kafka/service-events.md)
|
||||
* [State](developer-resources/sdk-kafka/state.md)
|
||||
* [WiFi Scan](developer-resources/sdk-kafka/wifi-scan.md)
|
||||
|
||||
@@ -10,12 +10,11 @@ Express Wi-Fi partners with service providers to deliver great wi-fi to people w
|
||||
|
||||
For information about becoming an expressWIFI partner please visit their [site.](https://expresswifi.fb.com)
|
||||
|
||||
.png>)
|
||||
 (1).png>)
|
||||
|
||||
## Configuration
|
||||
|
||||
ExpressWiFi builds a captive portal experience using a control plane protocol called OpenFlow.
|
||||
Configuring OpenWiFi for use with expressWiFi is as simple as defining a downstream interface and associating with an SSID and the open-flow service.
|
||||
ExpressWiFi builds a captive portal experience using a control plane protocol called OpenFlow. Configuring OpenWiFi for use with expressWiFi is as simple as defining a downstream interface and associating with an SSID and the open-flow service.
|
||||
|
||||
{% tabs %}
|
||||
{% tab title="expressWIFI" %}
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
# SDK KAFKA
|
||||
|
||||
13
developer-resources/sdk-kafka/README.md
Normal file
@@ -0,0 +1,13 @@
|
||||
# SDK KAFKA
|
||||
|
||||
The current release has the following Kafka topics:
|
||||
|
||||
* connection 
|
||||
* device\_event\_queue 
|
||||
* device\_telemetry
|
||||
* healthcheck
|
||||
* provisioning\_change
|
||||
* service\_events
|
||||
* state
|
||||
* wifiscan
|
||||
|
||||
400
developer-resources/sdk-kafka/connection.md
Normal file
@@ -0,0 +1,400 @@
|
||||
# Connection
|
||||
|
||||
Here are the current messages related to connection topic:
|
||||
|
||||
## Ping Message
|
||||
|
||||
```json
|
||||
{
|
||||
"system": {
|
||||
"id": 1637414624750592500,
|
||||
"host": "https://owgw-owgw:17002"
|
||||
},
|
||||
"payload": {
|
||||
"ping": {
|
||||
"compatible": "cig_wf194c4",
|
||||
"connectionIp": "f40b9fe78d3d@10.10.10.48:35510",
|
||||
"firmware": "OpenWrt 21.02-SNAPSHOT r16399+136-c67509efd7 / TIP-v2.6.0-rc4-eebe021",
|
||||
"locale": "US",
|
||||
"serialNumber": "f40b9fe78d3d",
|
||||
"timestamp": 1656513408
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Capability Message
|
||||
|
||||
```json
|
||||
{
|
||||
"system": {
|
||||
"id": 1637414624750592500,
|
||||
"host": "https://owgw-owgw:17002"
|
||||
},
|
||||
"payload": {
|
||||
"capabilities": {
|
||||
"compatible": "cig_wf196",
|
||||
"label_macaddr": "82:4f:81:60:11:e4",
|
||||
"macaddr": {
|
||||
"lan": "82:4f:81:60:11:e5",
|
||||
"wan": "82:4f:81:60:11:e4"
|
||||
},
|
||||
"model": "CIG WF196",
|
||||
"network": {
|
||||
"lan": [
|
||||
"eth1"
|
||||
],
|
||||
"wan": [
|
||||
"eth0"
|
||||
]
|
||||
},
|
||||
"platform": "ap",
|
||||
"switch": {
|
||||
"switch0": {
|
||||
"enable": false,
|
||||
"reset": false
|
||||
}
|
||||
},
|
||||
"wifi": {
|
||||
"platform/soc/c000000.wifi1": {
|
||||
"band": [
|
||||
"5G"
|
||||
],
|
||||
"channels": [
|
||||
36,
|
||||
40,
|
||||
44,
|
||||
48,
|
||||
52,
|
||||
56,
|
||||
60,
|
||||
64,
|
||||
100,
|
||||
104,
|
||||
108,
|
||||
112,
|
||||
116,
|
||||
120,
|
||||
124,
|
||||
128,
|
||||
132,
|
||||
136,
|
||||
140,
|
||||
144,
|
||||
149,
|
||||
153,
|
||||
157,
|
||||
161,
|
||||
165
|
||||
],
|
||||
"dfs_channels": [
|
||||
52,
|
||||
56,
|
||||
60,
|
||||
64,
|
||||
100,
|
||||
104,
|
||||
108,
|
||||
112,
|
||||
116,
|
||||
120,
|
||||
124,
|
||||
128,
|
||||
132,
|
||||
136,
|
||||
140,
|
||||
144
|
||||
],
|
||||
"frequencies": [
|
||||
5180,
|
||||
5200,
|
||||
5220,
|
||||
5240,
|
||||
5260,
|
||||
5280,
|
||||
5300,
|
||||
5320,
|
||||
5500,
|
||||
5520,
|
||||
5540,
|
||||
5560,
|
||||
5580,
|
||||
5600,
|
||||
5620,
|
||||
5640,
|
||||
5660,
|
||||
5680,
|
||||
5700,
|
||||
5720,
|
||||
5745,
|
||||
5765,
|
||||
5785,
|
||||
5805,
|
||||
5825
|
||||
],
|
||||
"he_mac_capa": [
|
||||
13,
|
||||
39448,
|
||||
4160
|
||||
],
|
||||
"he_phy_capa": [
|
||||
24604,
|
||||
34892,
|
||||
56191,
|
||||
40067,
|
||||
3073,
|
||||
0
|
||||
],
|
||||
"ht_capa": 6639,
|
||||
"htmode": [
|
||||
"HT20",
|
||||
"HT40",
|
||||
"VHT20",
|
||||
"VHT40",
|
||||
"VHT80",
|
||||
"VHT80+80",
|
||||
"VHT160",
|
||||
"HE20",
|
||||
"HE40",
|
||||
"HE80",
|
||||
"HE160",
|
||||
"HE80+80"
|
||||
],
|
||||
"rx_ant": 240,
|
||||
"tx_ant": 240,
|
||||
"vht_capa": 1939601914
|
||||
},
|
||||
"platform/soc/c000000.wifi1+1": {
|
||||
"band": [
|
||||
"2G"
|
||||
],
|
||||
"channels": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5,
|
||||
6,
|
||||
7,
|
||||
8,
|
||||
9,
|
||||
10,
|
||||
11
|
||||
],
|
||||
"frequencies": [
|
||||
2412,
|
||||
2417,
|
||||
2422,
|
||||
2427,
|
||||
2432,
|
||||
2437,
|
||||
2442,
|
||||
2447,
|
||||
2452,
|
||||
2457,
|
||||
2462
|
||||
],
|
||||
"he_mac_capa": [
|
||||
13,
|
||||
39448,
|
||||
4160
|
||||
],
|
||||
"he_phy_capa": [
|
||||
24578,
|
||||
34892,
|
||||
50047,
|
||||
40067,
|
||||
3073,
|
||||
0
|
||||
],
|
||||
"ht_capa": 6639,
|
||||
"htmode": [
|
||||
"HT20",
|
||||
"HT40",
|
||||
"VHT20",
|
||||
"VHT40",
|
||||
"VHT80",
|
||||
"HE20",
|
||||
"HE40"
|
||||
],
|
||||
"rx_ant": 15,
|
||||
"tx_ant": 15,
|
||||
"vht_capa": 1939569042
|
||||
},
|
||||
"soc/20000000.pci/pci0000:00/0000:00:00.0/0000:01:00.0": {
|
||||
"band": [
|
||||
"6G"
|
||||
],
|
||||
"channels": [
|
||||
1,
|
||||
5,
|
||||
9,
|
||||
13,
|
||||
17,
|
||||
21,
|
||||
25,
|
||||
29,
|
||||
33,
|
||||
37,
|
||||
41,
|
||||
45,
|
||||
49,
|
||||
53,
|
||||
57,
|
||||
61,
|
||||
65,
|
||||
69,
|
||||
73,
|
||||
77,
|
||||
81,
|
||||
85,
|
||||
89,
|
||||
93,
|
||||
97,
|
||||
101,
|
||||
105,
|
||||
109,
|
||||
113,
|
||||
117,
|
||||
121,
|
||||
125,
|
||||
129,
|
||||
133,
|
||||
137,
|
||||
141,
|
||||
145,
|
||||
149,
|
||||
153,
|
||||
157,
|
||||
161,
|
||||
165,
|
||||
169,
|
||||
173,
|
||||
177,
|
||||
181,
|
||||
185,
|
||||
189,
|
||||
193,
|
||||
197,
|
||||
201,
|
||||
205,
|
||||
209,
|
||||
213,
|
||||
217,
|
||||
221,
|
||||
225,
|
||||
229,
|
||||
233
|
||||
],
|
||||
"frequencies": [
|
||||
5955,
|
||||
5975,
|
||||
5995,
|
||||
6015,
|
||||
6035,
|
||||
6055,
|
||||
6075,
|
||||
6095,
|
||||
6115,
|
||||
6135,
|
||||
6155,
|
||||
6175,
|
||||
6195,
|
||||
6215,
|
||||
6235,
|
||||
6255,
|
||||
6275,
|
||||
6295,
|
||||
6315,
|
||||
6335,
|
||||
6355,
|
||||
6375,
|
||||
6395,
|
||||
6415,
|
||||
6435,
|
||||
6455,
|
||||
6475,
|
||||
6495,
|
||||
6515,
|
||||
6535,
|
||||
6555,
|
||||
6575,
|
||||
6595,
|
||||
6615,
|
||||
6635,
|
||||
6655,
|
||||
6675,
|
||||
6695,
|
||||
6715,
|
||||
6735,
|
||||
6755,
|
||||
6775,
|
||||
6795,
|
||||
6815,
|
||||
6835,
|
||||
6855,
|
||||
6875,
|
||||
6895,
|
||||
6915,
|
||||
6935,
|
||||
6955,
|
||||
6975,
|
||||
6995,
|
||||
7015,
|
||||
7035,
|
||||
7055,
|
||||
7075,
|
||||
7095,
|
||||
7115
|
||||
],
|
||||
"he_mac_capa": [
|
||||
13,
|
||||
39448,
|
||||
4160
|
||||
],
|
||||
"he_phy_capa": [
|
||||
24604,
|
||||
34892,
|
||||
56319,
|
||||
40067,
|
||||
3089,
|
||||
0
|
||||
],
|
||||
"htmode": [
|
||||
"HE20",
|
||||
"HE40",
|
||||
"HE80",
|
||||
"HE160",
|
||||
"HE80+80"
|
||||
],
|
||||
"rx_ant": 15,
|
||||
"tx_ant": 15
|
||||
}
|
||||
}
|
||||
},
|
||||
"connectionIp": "824f816011e4@10.10.11.185:50412",
|
||||
"firmware": "OpenWrt 21.02-SNAPSHOT r16399+136-c67509efd7 / TIP-v2.6.0-rc4-eebe021",
|
||||
"locale": "US",
|
||||
"serial": "824f816011e4",
|
||||
"timestamp": 1656516572,
|
||||
"uuid": 1
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Disconnection Message
|
||||
|
||||
```json
|
||||
{
|
||||
"system": {
|
||||
"id": 1637414624750592500,
|
||||
"host": "https://owgw-owgw:17002"
|
||||
},
|
||||
"payload": {
|
||||
"disconnection": {
|
||||
"serialNumber": "824f816011e4",
|
||||
"timestamp": 1656516851
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
45
developer-resources/sdk-kafka/device-event-queue.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# Device Event Queue
|
||||
|
||||
## Single Event (DHCP Example)
|
||||
|
||||
```json
|
||||
{
|
||||
"system": {
|
||||
"id": 1637414624750592500,
|
||||
"host": "https://owgw-owgw:17002"
|
||||
},
|
||||
"payload": {
|
||||
"events": {
|
||||
"dhcp": []
|
||||
},
|
||||
"serial": "c44bd1005b30",
|
||||
"status": {
|
||||
"error": 0,
|
||||
"text": "Success"
|
||||
},
|
||||
"uuid": 1656049674
|
||||
}
|
||||
```
|
||||
|
||||
## Multiple Events
|
||||
|
||||
```json
|
||||
{
|
||||
"system": {
|
||||
"id": 1637414624750592500,
|
||||
"host": "https://owgw-owgw:17002"
|
||||
},
|
||||
"payload": {
|
||||
"events": {
|
||||
"dhcp": [],
|
||||
"wifi": []
|
||||
},
|
||||
"serial": "0000c1018812",
|
||||
"status": {
|
||||
"error": 0,
|
||||
"text": "Success"
|
||||
},
|
||||
"uuid": 1657087470
|
||||
}
|
||||
}
|
||||
```
|
||||
2
developer-resources/sdk-kafka/device-telemetry.md
Normal file
@@ -0,0 +1,2 @@
|
||||
# Device Telemetry
|
||||
|
||||
75
developer-resources/sdk-kafka/healthcheck.md
Normal file
@@ -0,0 +1,75 @@
|
||||
# Healthcheck
|
||||
|
||||
## Unit
|
||||
|
||||
```json
|
||||
{
|
||||
"system": {
|
||||
"id": 1637414624750592500,
|
||||
"host": "https://owgw-owgw:17002"
|
||||
},
|
||||
"payload": {
|
||||
"data": {
|
||||
"unit": {
|
||||
"memory": 20
|
||||
}
|
||||
},
|
||||
"sanity": 100,
|
||||
"serial": "903cb39d69c0",
|
||||
"timestamp": 1657200271,
|
||||
"uuid": 1657194597
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Interfaces + Unit
|
||||
|
||||
```json
|
||||
{
|
||||
"system": {
|
||||
"id": 1637414624750592500,
|
||||
"host": "https://owgw-owgw:17002"
|
||||
},
|
||||
"payload": {
|
||||
"data": {
|
||||
"interfaces": {
|
||||
"up1v100": {
|
||||
"dhcp": false,
|
||||
"location": "/interfaces/1",
|
||||
"warning": [
|
||||
"DHCP did not offer any leases"
|
||||
]
|
||||
},
|
||||
"up2v125": {
|
||||
"dhcp": false,
|
||||
"location": "/interfaces/2",
|
||||
"warning": [
|
||||
"DHCP did not offer any leases"
|
||||
]
|
||||
},
|
||||
"up3v200": {
|
||||
"dhcp": false,
|
||||
"location": "/interfaces/3",
|
||||
"warning": [
|
||||
"DHCP did not offer any leases"
|
||||
]
|
||||
},
|
||||
"up4v150": {
|
||||
"dhcp": false,
|
||||
"location": "/interfaces/4",
|
||||
"warning": [
|
||||
"DHCP did not offer any leases"
|
||||
]
|
||||
}
|
||||
},
|
||||
"unit": {
|
||||
"memory": 20
|
||||
}
|
||||
},
|
||||
"sanity": 43,
|
||||
"serial": "0006aee53b84",
|
||||
"timestamp": 1657200310,
|
||||
"uuid": 1657198335
|
||||
}
|
||||
}
|
||||
```
|
||||
51
developer-resources/sdk-kafka/provisioning-change.md
Normal file
@@ -0,0 +1,51 @@
|
||||
# Provisioning Change
|
||||
|
||||
## Venue Updates
|
||||
|
||||
```json
|
||||
{
|
||||
"system": {
|
||||
"id": 1637211374533410000,
|
||||
"host": "https://owprov-owprov:17005"
|
||||
},
|
||||
"payload": {
|
||||
"ObjectType": "Venue",
|
||||
"boards": [],
|
||||
"children": [],
|
||||
"configurations": [],
|
||||
"contacts": [],
|
||||
"created": 1656163862,
|
||||
"description": "For testing Purposes through Automation",
|
||||
"design": "",
|
||||
"deviceConfiguration": [],
|
||||
"deviceRules": {
|
||||
"firmwareUpgrade": "inherit",
|
||||
"rcOnly": "inherit",
|
||||
"rrm": "inherit"
|
||||
},
|
||||
"devices": [],
|
||||
"entity": "6a657863-9940-4303-ac68-4cc10d3078ec",
|
||||
"id": "22146613-13f8-47a4-b21d-c2c2d214a695",
|
||||
"location": "",
|
||||
"managementPolicies": [],
|
||||
"managementPolicy": "",
|
||||
"managementRoles": [],
|
||||
"maps": [],
|
||||
"modified": 1656163862,
|
||||
"name": "Testing Prov",
|
||||
"notes": [
|
||||
{
|
||||
"created": 1656163862,
|
||||
"createdBy": "tip@ucentral.com",
|
||||
"note": "For testing Purposes"
|
||||
}
|
||||
],
|
||||
"parent": "",
|
||||
"sourceIP": [],
|
||||
"tags": [],
|
||||
"topology": [],
|
||||
"variables": []
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
27
developer-resources/sdk-kafka/service-events.md
Normal file
@@ -0,0 +1,27 @@
|
||||
# Service Events
|
||||
|
||||
## Keep-alive
|
||||
|
||||
This message is sent by all SDK micro-services.
|
||||
|
||||
```json
|
||||
{
|
||||
"event": "keep-alive",
|
||||
"id": 1651799646949140500,
|
||||
"key": "c34b2bcafc78460025740e82922dc43ccb41d40d8d474e909a4b7065005e595e",
|
||||
"privateEndPoint": "https://owanalytics-owanalytics:17009",
|
||||
"publicEndPoint": "https://analytics-qa01.cicd.lab.wlan.tip.build:16009",
|
||||
"type": "owanalytics",
|
||||
"version": "2.6.0(69) - v2.6.0-RC3"
|
||||
}
|
||||
```
|
||||
|
||||
## Remove Token
|
||||
|
||||
```json
|
||||
{
|
||||
"event": "remove-token",
|
||||
"id": 1637312489719148300,
|
||||
"token": "0a6cdf595818e6da496c11a6794a6084b456425fa87181e1d350175096729f6a"
|
||||
}
|
||||
```
|
||||
498
developer-resources/sdk-kafka/state.md
Normal file
@@ -0,0 +1,498 @@
|
||||
# State
|
||||
|
||||
## State
|
||||
|
||||
```json
|
||||
{
|
||||
"system": {
|
||||
"id": 1637414624750592500,
|
||||
"host": "https://owgw-owgw:17002"
|
||||
},
|
||||
"payload": {
|
||||
"serial": "50987100327b",
|
||||
"state": {
|
||||
"interfaces": [
|
||||
{
|
||||
"clients": [
|
||||
{
|
||||
"ipv6_addresses": [
|
||||
"fe80:0:0:0:6f0:21ff:fe76:cab6"
|
||||
],
|
||||
"mac": "04:f0:21:76:ca:b6",
|
||||
"ports": [
|
||||
"wlan0"
|
||||
]
|
||||
},
|
||||
{
|
||||
"ipv4_addresses": [
|
||||
"172.16.0.1"
|
||||
],
|
||||
"ipv6_addresses": [
|
||||
"fe80:0:0:0:9e69:b4ff:fe60:e5f4"
|
||||
],
|
||||
"mac": "9c:69:b4:60:e5:f4",
|
||||
"ports": [
|
||||
"eth0"
|
||||
]
|
||||
}
|
||||
],
|
||||
"counters": {
|
||||
"collisions": 0,
|
||||
"multicast": 37,
|
||||
"rx_bytes": 195056,
|
||||
"rx_dropped": 0,
|
||||
"rx_errors": 0,
|
||||
"rx_packets": 1061,
|
||||
"tx_bytes": 367918,
|
||||
"tx_dropped": 0,
|
||||
"tx_errors": 0,
|
||||
"tx_packets": 1102
|
||||
},
|
||||
"dns_servers": [
|
||||
"8.8.8.8"
|
||||
],
|
||||
"ipv4": {
|
||||
"addresses": [
|
||||
"172.16.56.202/16"
|
||||
],
|
||||
"dhcp_server": "172.16.0.1",
|
||||
"leasetime": 600
|
||||
},
|
||||
"location": "/interfaces/0",
|
||||
"name": "up0v0",
|
||||
"ssids": [
|
||||
{
|
||||
"associations": [
|
||||
{
|
||||
"ack_signal": 0,
|
||||
"ack_signal_avg": 0,
|
||||
"bssid": "50:98:71:00:32:7a",
|
||||
"connected": 769,
|
||||
"inactive": 13,
|
||||
"rssi": -49,
|
||||
"rx_bytes": 7385,
|
||||
"rx_duration": 9828,
|
||||
"rx_packets": 56,
|
||||
"rx_rate": {
|
||||
"bitrate": 6000,
|
||||
"chwidth": 20
|
||||
},
|
||||
"station": "04:f0:21:76:ca:b6",
|
||||
"tid_stats": [
|
||||
{
|
||||
"rx_msdu": 21,
|
||||
"tx_msdu": 19,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0,
|
||||
"txq_stats": {
|
||||
"backlog_bytes": 0,
|
||||
"backlog_packets": 0,
|
||||
"collisions": 0,
|
||||
"drops": 0,
|
||||
"ecn_marks": 0,
|
||||
"flows": 19,
|
||||
"overlimit": 0,
|
||||
"tx_bytes": 5549,
|
||||
"tx_packets": 19
|
||||
}
|
||||
},
|
||||
{
|
||||
"rx_msdu": 0,
|
||||
"tx_msdu": 0,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0,
|
||||
"txq_stats": {
|
||||
"backlog_bytes": 0,
|
||||
"backlog_packets": 0,
|
||||
"collisions": 0,
|
||||
"drops": 0,
|
||||
"ecn_marks": 0,
|
||||
"flows": 0,
|
||||
"overlimit": 0,
|
||||
"tx_bytes": 0,
|
||||
"tx_packets": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"rx_msdu": 0,
|
||||
"tx_msdu": 0,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0,
|
||||
"txq_stats": {
|
||||
"backlog_bytes": 0,
|
||||
"backlog_packets": 0,
|
||||
"collisions": 0,
|
||||
"drops": 0,
|
||||
"ecn_marks": 0,
|
||||
"flows": 0,
|
||||
"overlimit": 0,
|
||||
"tx_bytes": 0,
|
||||
"tx_packets": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"rx_msdu": 0,
|
||||
"tx_msdu": 0,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0,
|
||||
"txq_stats": {
|
||||
"backlog_bytes": 0,
|
||||
"backlog_packets": 0,
|
||||
"collisions": 0,
|
||||
"drops": 0,
|
||||
"ecn_marks": 0,
|
||||
"flows": 0,
|
||||
"overlimit": 0,
|
||||
"tx_bytes": 0,
|
||||
"tx_packets": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"rx_msdu": 0,
|
||||
"tx_msdu": 0,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0,
|
||||
"txq_stats": {
|
||||
"backlog_bytes": 0,
|
||||
"backlog_packets": 0,
|
||||
"collisions": 0,
|
||||
"drops": 0,
|
||||
"ecn_marks": 0,
|
||||
"flows": 0,
|
||||
"overlimit": 0,
|
||||
"tx_bytes": 0,
|
||||
"tx_packets": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"rx_msdu": 0,
|
||||
"tx_msdu": 0,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0,
|
||||
"txq_stats": {
|
||||
"backlog_bytes": 0,
|
||||
"backlog_packets": 0,
|
||||
"collisions": 0,
|
||||
"drops": 0,
|
||||
"ecn_marks": 0,
|
||||
"flows": 0,
|
||||
"overlimit": 0,
|
||||
"tx_bytes": 0,
|
||||
"tx_packets": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"rx_msdu": 12,
|
||||
"tx_msdu": 0,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0,
|
||||
"txq_stats": {
|
||||
"backlog_bytes": 0,
|
||||
"backlog_packets": 0,
|
||||
"collisions": 0,
|
||||
"drops": 0,
|
||||
"ecn_marks": 0,
|
||||
"flows": 0,
|
||||
"overlimit": 0,
|
||||
"tx_bytes": 0,
|
||||
"tx_packets": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"rx_msdu": 0,
|
||||
"tx_msdu": 0,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0,
|
||||
"txq_stats": {
|
||||
"backlog_bytes": 0,
|
||||
"backlog_packets": 0,
|
||||
"collisions": 0,
|
||||
"drops": 0,
|
||||
"ecn_marks": 0,
|
||||
"flows": 0,
|
||||
"overlimit": 0,
|
||||
"tx_bytes": 0,
|
||||
"tx_packets": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"rx_msdu": 0,
|
||||
"tx_msdu": 0,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0,
|
||||
"txq_stats": {
|
||||
"backlog_bytes": 0,
|
||||
"backlog_packets": 0,
|
||||
"collisions": 0,
|
||||
"drops": 0,
|
||||
"ecn_marks": 0,
|
||||
"flows": 0,
|
||||
"overlimit": 0,
|
||||
"tx_bytes": 0,
|
||||
"tx_packets": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"rx_msdu": 0,
|
||||
"tx_msdu": 0,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0,
|
||||
"txq_stats": {
|
||||
"backlog_bytes": 0,
|
||||
"backlog_packets": 0,
|
||||
"collisions": 0,
|
||||
"drops": 0,
|
||||
"ecn_marks": 0,
|
||||
"flows": 0,
|
||||
"overlimit": 0,
|
||||
"tx_bytes": 0,
|
||||
"tx_packets": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"rx_msdu": 0,
|
||||
"tx_msdu": 0,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0,
|
||||
"txq_stats": {
|
||||
"backlog_bytes": 0,
|
||||
"backlog_packets": 0,
|
||||
"collisions": 0,
|
||||
"drops": 0,
|
||||
"ecn_marks": 0,
|
||||
"flows": 0,
|
||||
"overlimit": 0,
|
||||
"tx_bytes": 0,
|
||||
"tx_packets": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"rx_msdu": 0,
|
||||
"tx_msdu": 0,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0,
|
||||
"txq_stats": {
|
||||
"backlog_bytes": 0,
|
||||
"backlog_packets": 0,
|
||||
"collisions": 0,
|
||||
"drops": 0,
|
||||
"ecn_marks": 0,
|
||||
"flows": 0,
|
||||
"overlimit": 0,
|
||||
"tx_bytes": 0,
|
||||
"tx_packets": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"rx_msdu": 0,
|
||||
"tx_msdu": 0,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0,
|
||||
"txq_stats": {
|
||||
"backlog_bytes": 0,
|
||||
"backlog_packets": 0,
|
||||
"collisions": 0,
|
||||
"drops": 0,
|
||||
"ecn_marks": 0,
|
||||
"flows": 0,
|
||||
"overlimit": 0,
|
||||
"tx_bytes": 0,
|
||||
"tx_packets": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"rx_msdu": 0,
|
||||
"tx_msdu": 0,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0,
|
||||
"txq_stats": {
|
||||
"backlog_bytes": 0,
|
||||
"backlog_packets": 0,
|
||||
"collisions": 0,
|
||||
"drops": 0,
|
||||
"ecn_marks": 0,
|
||||
"flows": 0,
|
||||
"overlimit": 0,
|
||||
"tx_bytes": 0,
|
||||
"tx_packets": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"rx_msdu": 0,
|
||||
"tx_msdu": 0,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0,
|
||||
"txq_stats": {
|
||||
"backlog_bytes": 0,
|
||||
"backlog_packets": 0,
|
||||
"collisions": 0,
|
||||
"drops": 0,
|
||||
"ecn_marks": 0,
|
||||
"flows": 0,
|
||||
"overlimit": 0,
|
||||
"tx_bytes": 0,
|
||||
"tx_packets": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"rx_msdu": 0,
|
||||
"tx_msdu": 0,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0,
|
||||
"txq_stats": {
|
||||
"backlog_bytes": 0,
|
||||
"backlog_packets": 0,
|
||||
"collisions": 0,
|
||||
"drops": 0,
|
||||
"ecn_marks": 0,
|
||||
"flows": 0,
|
||||
"overlimit": 0,
|
||||
"tx_bytes": 0,
|
||||
"tx_packets": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"rx_msdu": 0,
|
||||
"tx_msdu": 4,
|
||||
"tx_msdu_failed": 0,
|
||||
"tx_msdu_retries": 0
|
||||
}
|
||||
],
|
||||
"tx_bytes": 5798,
|
||||
"tx_duration": 8121,
|
||||
"tx_failed": 0,
|
||||
"tx_packets": 23,
|
||||
"tx_rate": {
|
||||
"bitrate": 180000,
|
||||
"chwidth": 40,
|
||||
"ht": true,
|
||||
"mcs": 12,
|
||||
"sgi": true
|
||||
},
|
||||
"tx_retries": 0
|
||||
}
|
||||
],
|
||||
"bssid": "50:98:71:00:32:7a",
|
||||
"iface": "wlan0",
|
||||
"location": "/interfaces/0/ssids/0",
|
||||
"mode": "ap",
|
||||
"phy": "platform/soc/a000000.wifi",
|
||||
"radio": {
|
||||
"$ref": "#/radios/0"
|
||||
},
|
||||
"ssid": "tls_ssid_wpa2"
|
||||
},
|
||||
{
|
||||
"bssid": "50:98:71:00:32:79",
|
||||
"iface": "wlan1",
|
||||
"location": "/interfaces/0/ssids/0",
|
||||
"mode": "ap",
|
||||
"phy": "platform/soc/a800000.wifi",
|
||||
"radio": {
|
||||
"$ref": "#/radios/1"
|
||||
},
|
||||
"ssid": "tls_ssid_wpa2"
|
||||
}
|
||||
],
|
||||
"uptime": 5592
|
||||
},
|
||||
{
|
||||
"counters": {
|
||||
"collisions": 0,
|
||||
"multicast": 0,
|
||||
"rx_bytes": 0,
|
||||
"rx_dropped": 0,
|
||||
"rx_errors": 0,
|
||||
"rx_packets": 0,
|
||||
"tx_bytes": 0,
|
||||
"tx_dropped": 0,
|
||||
"tx_errors": 0,
|
||||
"tx_packets": 0
|
||||
},
|
||||
"ipv4": {
|
||||
"addresses": [
|
||||
"192.168.1.1/16"
|
||||
]
|
||||
},
|
||||
"location": "/interfaces/1",
|
||||
"name": "down1v0",
|
||||
"uptime": 2115
|
||||
}
|
||||
],
|
||||
"link-state": {
|
||||
"downstream": {
|
||||
"eth1": {
|
||||
"carrier": 0
|
||||
}
|
||||
},
|
||||
"upstream": {
|
||||
"eth0": {
|
||||
"carrier": 1,
|
||||
"duplex": "full",
|
||||
"speed": 1000
|
||||
}
|
||||
}
|
||||
},
|
||||
"lldp-peers": {
|
||||
"downstream": {},
|
||||
"upstream": {
|
||||
"eth0": [
|
||||
{
|
||||
"capability": [
|
||||
"Bridge",
|
||||
"Router",
|
||||
"Wlan"
|
||||
],
|
||||
"description": "OpenWrt 21.02-SNAPSHOT @ 00c115194c15",
|
||||
"mac": "00:c1:15:19:4c:15",
|
||||
"name": "CIG WF194C",
|
||||
"port": "eth0"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"radios": [
|
||||
{
|
||||
"active_ms": 1250435,
|
||||
"busy_ms": 92944,
|
||||
"channel": 6,
|
||||
"channel_width": "40",
|
||||
"noise": -99,
|
||||
"phy": "platform/soc/a000000.wifi",
|
||||
"receive_ms": 44474,
|
||||
"transmit_ms": 3831,
|
||||
"tx_power": 30
|
||||
},
|
||||
{
|
||||
"active_ms": 1248675,
|
||||
"busy_ms": 7493,
|
||||
"channel": 100,
|
||||
"channel_width": "80",
|
||||
"noise": -108,
|
||||
"phy": "platform/soc/a800000.wifi",
|
||||
"receive_ms": 3991,
|
||||
"transmit_ms": 4124,
|
||||
"tx_power": 24
|
||||
}
|
||||
],
|
||||
"unit": {
|
||||
"load": [
|
||||
0.103517,
|
||||
0.098634,
|
||||
0.107424
|
||||
],
|
||||
"localtime": 1657201798,
|
||||
"memory": {
|
||||
"buffered": 6983680,
|
||||
"cached": 19980288,
|
||||
"free": 141684736,
|
||||
"total": 254537728
|
||||
},
|
||||
"uptime": 5748
|
||||
},
|
||||
"version": 1
|
||||
},
|
||||
"uuid": 1657200535
|
||||
}
|
||||
}
|
||||
```
|
||||
2348
developer-resources/sdk-kafka/wifi-scan.md
Normal file
@@ -10,17 +10,16 @@ Certain WAN connections may require credentials such as a username and password
|
||||
|
||||
OpenWiFi 2.0 supports these scenarios. When a device does not have an existing configuration and is unable to contact the cloud for provisioning it enters "Maverick" mode.
|
||||
|
||||
For all Wi-Fi devices this means a Wi-Fi network with the SSID 'Maverick' will become available.
|
||||
Association with and logging in to the device will permit initial WAN connectivity to be entered.
|
||||
For all Wi-Fi devices this means a Wi-Fi network with the SSID 'Maverick' will become available. Association with and logging in to the device will permit initial WAN connectivity to be entered.
|
||||
|
||||
## Using Maverick
|
||||
|
||||

|
||||
.png>)
|
||||
|
||||
After association to the Maverick SSID, open a web browser to `http://192.168.1.1`\
|
||||
Log into the OpenWiFi device with username: **`root`** and password: **`openwifi`**
|
||||
|
||||

|
||||
.png>)
|
||||
|
||||
When the page above is displayed, begin to configure Uplink based on the WAN requirements of the deployment.
|
||||
|
||||
@@ -28,7 +27,7 @@ When the page above is displayed, begin to configure Uplink based on the WAN req
|
||||
|
||||
If connection uses Point to Point over Ethernet (PPPoE) username and password credentials, enter those values and save.
|
||||
|
||||

|
||||
.png>)
|
||||
|
||||
If the OpenWiFi device has a Cellular connection which is possible on device models with 4G and 5G radios, the network Access Point Name (APN) and PIN will be required. These values are supplied by your mobile network provider.
|
||||
|
||||
@@ -36,7 +35,7 @@ If the OpenWiFi device has a Cellular connection which is possible on device mod
|
||||
|
||||
When dynamic address allocation is not available, static IP address assignment may be required. IPv4 and IPv6 are supported, enter these values with DNS address and save.
|
||||
|
||||

|
||||
.png>)
|
||||
|
||||
Otherwise leave the Uplink configuration to DHCP or cloud defaults.
|
||||
|
||||
@@ -52,6 +51,6 @@ If under rare circumstances it is not possible to discover the OpenWiFi cloud as
|
||||
|
||||
It is possible to reset the device to defaults, or locally update firmware using the commands available from System.
|
||||
|
||||

|
||||
.png>)
|
||||
|
||||
\*\*\*\*
|
||||
|
||||
@@ -4,8 +4,7 @@ description: uCentral Data Model Introduction
|
||||
|
||||
# Provisioning
|
||||
|
||||
OpenWiFi 2.0 makes it possible for integrators of the SDK to implement commercial products leveraging OpenWiFi Gateway service with vendor supplied provisioning above OpenWiFi SDK.
|
||||
As a minimum, the OpenWiFi 2.0 SDK framework offers a Security service which handles all OpenAPI authentication northbound, and the Gateway service which provides all uCentral websocket interface functionality southbound.
|
||||
OpenWiFi 2.0 makes it possible for integrators of the SDK to implement commercial products leveraging OpenWiFi Gateway service with vendor supplied provisioning above OpenWiFi SDK. As a minimum, the OpenWiFi 2.0 SDK framework offers a Security service which handles all OpenAPI authentication northbound, and the Gateway service which provides all uCentral websocket interface functionality southbound.
|
||||
|
||||
.png>)
|
||||
|
||||
@@ -15,18 +14,15 @@ In future sprints of OpenWiFi dynamic device provisioning will be available as a
|
||||
|
||||
## Gateway
|
||||
|
||||
OpenWiFi 2.0 Gateway implements the uCentral device management interface. uCentral specifies the data model and interface for management and telemetry of OpenWrt based devices.
|
||||
Gateway uCentral interface is a websocket JSON-RPC based design between OpenWiFi Gateway and the device running uCentral agent.
|
||||
OpenWiFi 2.0 Gateway implements the uCentral device management interface. uCentral specifies the data model and interface for management and telemetry of OpenWrt based devices. Gateway uCentral interface is a websocket JSON-RPC based design between OpenWiFi Gateway and the device running uCentral agent.
|
||||
|
||||
.png>)
|
||||
|
||||
All communications from Gateway to Device are secured using mutual Transport Layer Security (mTLS). In mTLS systems each endpoint is a unique device sharing the same signed root or intermediate trust. In OpenWiFi each device has a signed certificate, key and device identifier. These are validated by the uCentral-Gateway to establish mTLS session.
|
||||
|
||||
Upon successful connection the device exchanges its capabilities with the OpenWiFi SDK. OpenWIFi SDK, via the Gateway microservice will send the entire device provisioning data as a JSON payload.
|
||||
Within OpenWiFi devices, the uCentral agent has a reader and renderer process providing serialization and validation of data sent from cloud.
|
||||
If any data presented can not be processed by the local agent, this is returned within an ERROR message using the same websocket connection.
|
||||
Upon successful connection the device exchanges its capabilities with the OpenWiFi SDK. OpenWIFi SDK, via the Gateway microservice will send the entire device provisioning data as a JSON payload. Within OpenWiFi devices, the uCentral agent has a reader and renderer process providing serialization and validation of data sent from cloud. If any data presented can not be processed by the local agent, this is returned within an ERROR message using the same websocket connection.
|
||||
|
||||
 (1).png>)
|
||||
 (1) (1).png>)
|
||||
|
||||
If the device agrees with provisioning information presented, the render process builds calls into the operating system configuration sub-system known as UCI. The Unified Configuration Interface ensures OpenWrt compliant syntax is persisted within the device.
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ The complete data model may be found here : [https://ucentral.io/docs/ucentral-s
|
||||
|
||||
Each device has a Universally Unique Identifier (UUID). For each device, the configuration presented either manually, via the future Provisioning service from OpenWifi or via a commercial controller generation of provisioning data, the high level relationships of the schema may be understood as follows.
|
||||
|
||||
.png>)
|
||||
 (1).png>)
|
||||
|
||||
The unique device record has a set of top level configurations. A device is referred to as a 'unit' that may have a Description, Location, TimeZone as example. Each unit may have globals for IPv4 and IPv6 networks that are derived to lower lever interfaces in later generation.
|
||||
|
||||
@@ -24,7 +24,6 @@ Services and Metrics are associated with logical and physical interfaces. Servic
|
||||
|
||||
Interfaces define upstream and downstream configuration over both Wi-Fi logical (SSID) and wired physical ports.
|
||||
|
||||
Metrics enable visibility to the cloud for numerous states of the device. These are associated per interface and may be sent in 60 second or greater intervals and include Statistics of SSID, LLDP, Clients. Also include Health check reports of device load, network reachability, temperature.
|
||||
To assist with fingerprinting DHCP-Snooping exposes numerous interactions of IP binding to clients. Additionally wifi-frames expose all 802.11 management frames to the SDK Gateway.
|
||||
Metrics enable visibility to the cloud for numerous states of the device. These are associated per interface and may be sent in 60 second or greater intervals and include Statistics of SSID, LLDP, Clients. Also include Health check reports of device load, network reachability, temperature. To assist with fingerprinting DHCP-Snooping exposes numerous interactions of IP binding to clients. Additionally wifi-frames expose all 802.11 management frames to the SDK Gateway.
|
||||
|
||||
It is also possible to configure config-raw elements that will parse direct UCI commands once the device provisioning has been completed by the uCentral agent.
|
||||
|
||||
@@ -18,20 +18,15 @@ Each device presents Metrics and Health check data to the Gateway. Devices view
|
||||
|
||||
## Status
|
||||
|
||||
Connection status reflects the Gateway to Device current communications status.
|
||||
Uptime and Last Contact reflect communication state.
|
||||
Load indicates processing load on the device.
|
||||
Memory Used indicates free memory on the device.
|
||||
Connection status reflects the Gateway to Device current communications status. Uptime and Last Contact reflect communication state. Load indicates processing load on the device. Memory Used indicates free memory on the device.
|
||||
|
||||

|
||||
.png>)
|
||||
|
||||
## Configuration
|
||||
|
||||
Device UUID, Serial Number, MAC Address and Device Type are displayed.
|
||||
Last configuration update date and timestamp reflects the last time a "configure" action completed on the device.
|
||||
Password may be set and device notes may be added.
|
||||
Device UUID, Serial Number, MAC Address and Device Type are displayed. Last configuration update date and timestamp reflects the last time a "configure" action completed on the device. Password may be set and device notes may be added.
|
||||
|
||||

|
||||
.png>)
|
||||
|
||||
## Logs
|
||||
|
||||
@@ -43,7 +38,7 @@ Log history of the device is presented within Logs. Expand the tile selecting th
|
||||
|
||||
Health score is an active tile reflecting the device health out of a score reported by the device to Gateway. Health metrics are configured on the device based on chosen data model options. When the device falls out of 100%, this tile changes to red. Expanding the tile will present all health reports. Those with less than 100% score will contain reasons for the result from this interface.
|
||||
|
||||

|
||||
.png>)
|
||||
|
||||
## Commands
|
||||
|
||||
|
||||
@@ -4,8 +4,7 @@ description: OpenWiFi 2.0 SDK
|
||||
|
||||
# Commands
|
||||
|
||||
Within the devices view, the Commands tile offers a number of features and administrative actions.
|
||||
Each of these represent API calls exposed on the OpenAPI northbound interface from the SDK.
|
||||
Within the devices view, the Commands tile offers a number of features and administrative actions. Each of these represent API calls exposed on the OpenAPI northbound interface from the SDK.
|
||||
|
||||
## Reboot
|
||||
|
||||
@@ -17,7 +16,7 @@ Selecting the Reboot action will prompt the below dialog. Options presented perm
|
||||
|
||||
Multiple methods exist to execute a remote Firmware Upgrade of a device. When selecting Firmware Upgrade via the Commands tile, a simple dialog to upgrade immediately or at a scheduled time is presented. Alternatively using the Firmware Management Service provides a complete solution including managed access to all TIP firmware images.
|
||||
|
||||

|
||||
.png>)
|
||||
|
||||
## Wi-Fi Scan
|
||||
|
||||
@@ -29,7 +28,7 @@ OpenWiFi devices may perform channel scanning and return this neighbor and RF da
|
||||
|
||||
Scan operations function over all channels. If 5GHz channels do not display in the returned results ( either via the UI or over API ) this indicates the device is configured in a DFS channel for which it may not return survey scans at this time.
|
||||
|
||||

|
||||
.png>)
|
||||
|
||||
## Connect
|
||||
|
||||
@@ -41,13 +40,13 @@ OpenWiFi enables remote connection to any managed device using rTTY encrypted sh
|
||||
|
||||
To assist with remote identification of devices in the network, it is possible to turn the LED lights On, Off, of continuous blinking. This may be run on-demand or scheduled.
|
||||
|
||||

|
||||
.png>)
|
||||
|
||||
## Trace
|
||||
|
||||
Trace feature enables a remote packet capture to occur on the managed device, over a specified period of time or amount of traffic, returning the "pcap" packet capture file locally to the OpenWiFi admin user.
|
||||
|
||||

|
||||
.png>)
|
||||
|
||||
Once complete the user is asked to open or save the packet capture file locally.
|
||||
|
||||
|
||||