wiliot-certificate 1.3.0a1__py3-none-any.whl → 1.4.0a2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (184) hide show
  1. brg_certificate/__init__.py +0 -0
  2. brg_certificate/ag/energous_v0_defines.py +925 -0
  3. brg_certificate/ag/energous_v1_defines.py +931 -0
  4. brg_certificate/ag/energous_v2_defines.py +925 -0
  5. brg_certificate/ag/energous_v3_defines.py +925 -0
  6. brg_certificate/ag/energous_v4_defines.py +925 -0
  7. brg_certificate/ag/fanstel_lan_v0_defines.py +925 -0
  8. brg_certificate/ag/fanstel_lte_v0_defines.py +925 -0
  9. brg_certificate/ag/fanstel_wifi_v0_defines.py +925 -0
  10. brg_certificate/ag/minew_lte_v0_defines.py +925 -0
  11. brg_certificate/ag/wlt_cmd_if.html +102 -0
  12. brg_certificate/ag/wlt_types.html +6114 -0
  13. brg_certificate/ag/wlt_types_ag.py +7840 -0
  14. brg_certificate/ag/wlt_types_ag_jsons/brg2brg_ota.json +142 -0
  15. brg_certificate/ag/wlt_types_ag_jsons/brg2gw_hb.json +785 -0
  16. brg_certificate/ag/wlt_types_ag_jsons/brg2gw_hb_sleep.json +139 -0
  17. brg_certificate/ag/wlt_types_ag_jsons/calibration.json +394 -0
  18. brg_certificate/ag/wlt_types_ag_jsons/custom.json +515 -0
  19. brg_certificate/ag/wlt_types_ag_jsons/datapath.json +672 -0
  20. brg_certificate/ag/wlt_types_ag_jsons/energy2400.json +550 -0
  21. brg_certificate/ag/wlt_types_ag_jsons/energySub1g.json +595 -0
  22. brg_certificate/ag/wlt_types_ag_jsons/externalSensor.json +598 -0
  23. brg_certificate/ag/wlt_types_ag_jsons/interface.json +938 -0
  24. brg_certificate/ag/wlt_types_ag_jsons/powerManagement.json +1234 -0
  25. brg_certificate/ag/wlt_types_ag_jsons/side_info_sensor.json +105 -0
  26. brg_certificate/ag/wlt_types_ag_jsons/signal_indicator_data.json +77 -0
  27. brg_certificate/ag/wlt_types_ag_jsons/unified_echo_ext_pkt.json +61 -0
  28. brg_certificate/ag/wlt_types_ag_jsons/unified_echo_pkt.json +110 -0
  29. brg_certificate/brg_certificate.py +191 -0
  30. brg_certificate/brg_certificate_cli.py +47 -0
  31. brg_certificate/cert_common.py +828 -0
  32. brg_certificate/cert_config.py +395 -0
  33. brg_certificate/cert_data_sim.py +188 -0
  34. brg_certificate/cert_defines.py +337 -0
  35. brg_certificate/cert_gw_sim.py +285 -0
  36. brg_certificate/cert_mqtt.py +373 -0
  37. brg_certificate/cert_prints.py +181 -0
  38. brg_certificate/cert_protobuf.py +88 -0
  39. brg_certificate/cert_results.py +300 -0
  40. brg_certificate/cert_utils.py +358 -0
  41. brg_certificate/certificate_sanity_test_list.txt +36 -0
  42. brg_certificate/certificate_test_list.txt +43 -0
  43. brg_certificate/config/eclipse.json +10 -0
  44. brg_certificate/config/hivemq.json +10 -0
  45. brg_certificate/config/mosquitto.json +10 -0
  46. brg_certificate/config/mosquitto.md +95 -0
  47. brg_certificate/config/wiliot-dev.json +10 -0
  48. brg_certificate/restore_brg.py +59 -0
  49. brg_certificate/tests/calibration/interval_test/interval_test.json +13 -0
  50. brg_certificate/tests/calibration/interval_test/interval_test.py +28 -0
  51. brg_certificate/tests/calibration/output_power_test/output_power_test.json +13 -0
  52. brg_certificate/tests/calibration/output_power_test/output_power_test.py +28 -0
  53. brg_certificate/tests/calibration/pattern_test/pattern_test.json +13 -0
  54. brg_certificate/tests/calibration/pattern_test/pattern_test.py +70 -0
  55. brg_certificate/tests/datapath/adaptive_pacer_algo_test/adaptive_pacer_algo_test.json +13 -0
  56. brg_certificate/tests/datapath/adaptive_pacer_algo_test/adaptive_pacer_algo_test.py +76 -0
  57. brg_certificate/tests/datapath/num_of_tags_test/num_of_tags_test.json +13 -0
  58. brg_certificate/tests/datapath/num_of_tags_test/num_of_tags_test.py +83 -0
  59. brg_certificate/tests/datapath/output_power_test/output_power_test.json +13 -0
  60. brg_certificate/tests/datapath/output_power_test/output_power_test.py +27 -0
  61. brg_certificate/tests/datapath/pacer_interval_ble5_test/pacer_interval_ble5_test.json +13 -0
  62. brg_certificate/tests/datapath/pacer_interval_ble5_test/pacer_interval_ble5_test.py +43 -0
  63. brg_certificate/tests/datapath/pacer_interval_tags_count_test/pacer_interval_tags_count_test.json +13 -0
  64. brg_certificate/tests/datapath/pacer_interval_tags_count_test/pacer_interval_tags_count_test.py +63 -0
  65. brg_certificate/tests/datapath/pacer_interval_test/pacer_interval_test.json +13 -0
  66. brg_certificate/tests/datapath/pacer_interval_test/pacer_interval_test.py +50 -0
  67. brg_certificate/tests/datapath/pattern_test/pattern_test.json +13 -0
  68. brg_certificate/tests/datapath/pattern_test/pattern_test.py +28 -0
  69. brg_certificate/tests/datapath/pkt_filter_ble5_test/pkt_filter_ble5_test.json +13 -0
  70. brg_certificate/tests/datapath/pkt_filter_ble5_test/pkt_filter_ble5_test.py +51 -0
  71. brg_certificate/tests/datapath/pkt_filter_gen3_test/pkt_filter_gen3_test.json +13 -0
  72. brg_certificate/tests/datapath/pkt_filter_gen3_test/pkt_filter_gen3_test.py +54 -0
  73. brg_certificate/tests/datapath/pkt_filter_test/pkt_filter_test.json +13 -0
  74. brg_certificate/tests/datapath/pkt_filter_test/pkt_filter_test.py +55 -0
  75. brg_certificate/tests/datapath/rssi_threshold_test/rssi_threshold_test.json +13 -0
  76. brg_certificate/tests/datapath/rssi_threshold_test/rssi_threshold_test.py +73 -0
  77. brg_certificate/tests/datapath/rx_channel_test/rx_channel_test.json +13 -0
  78. brg_certificate/tests/datapath/rx_channel_test/rx_channel_test.py +41 -0
  79. brg_certificate/tests/datapath/rx_rate_gen2_test/rx_rate_gen2_test.json +21 -0
  80. brg_certificate/tests/datapath/rx_rate_gen2_test/rx_rate_gen2_test.py +184 -0
  81. brg_certificate/tests/datapath/rx_rate_gen3_test/rx_rate_gen3_test.json +21 -0
  82. brg_certificate/tests/datapath/rx_rate_gen3_test/rx_rate_gen3_test.py +210 -0
  83. brg_certificate/tests/datapath/stress_gen3_test/stress_gen3_test.json +30 -0
  84. brg_certificate/tests/datapath/stress_gen3_test/stress_gen3_test.py +203 -0
  85. brg_certificate/tests/datapath/stress_test/stress_test.json +30 -0
  86. brg_certificate/tests/datapath/stress_test/stress_test.py +210 -0
  87. brg_certificate/tests/datapath/tx_repetition_algo_test/tx_repetition_algo_test.json +13 -0
  88. brg_certificate/tests/datapath/tx_repetition_algo_test/tx_repetition_algo_test.py +113 -0
  89. brg_certificate/tests/datapath/tx_repetition_test/tx_repetition_test.json +13 -0
  90. brg_certificate/tests/datapath/tx_repetition_test/tx_repetition_test.py +79 -0
  91. brg_certificate/tests/edge_mgmt/actions_test/actions_test.json +13 -0
  92. brg_certificate/tests/edge_mgmt/actions_test/actions_test.py +432 -0
  93. brg_certificate/tests/edge_mgmt/brg2brg_ota_ble5_test/brg2brg_ota_ble5_test.json +13 -0
  94. brg_certificate/tests/edge_mgmt/brg2brg_ota_ble5_test/brg2brg_ota_ble5_test.py +94 -0
  95. brg_certificate/tests/edge_mgmt/brg2brg_ota_test/brg2brg_ota_test.json +13 -0
  96. brg_certificate/tests/edge_mgmt/brg2brg_ota_test/brg2brg_ota_test.py +87 -0
  97. brg_certificate/tests/edge_mgmt/leds_test/leds_test.json +13 -0
  98. brg_certificate/tests/edge_mgmt/leds_test/leds_test.py +210 -0
  99. brg_certificate/tests/edge_mgmt/ota_test/ota_test.json +13 -0
  100. brg_certificate/tests/edge_mgmt/ota_test/ota_test.py +83 -0
  101. brg_certificate/tests/edge_mgmt/stat_test/stat_test.json +13 -0
  102. brg_certificate/tests/edge_mgmt/stat_test/stat_test.py +48 -0
  103. brg_certificate/tests/energy2400/duty_cycle_test/duty_cycle_test.json +13 -0
  104. brg_certificate/tests/energy2400/duty_cycle_test/duty_cycle_test.py +26 -0
  105. brg_certificate/tests/energy2400/output_power_test/output_power_test.json +13 -0
  106. brg_certificate/tests/energy2400/output_power_test/output_power_test.py +27 -0
  107. brg_certificate/tests/energy2400/pattern_test/pattern_test.json +13 -0
  108. brg_certificate/tests/energy2400/pattern_test/pattern_test.py +28 -0
  109. brg_certificate/tests/energy2400/signal_indicator_ble5_test/signal_indicator_ble5_test.json +13 -0
  110. brg_certificate/tests/energy2400/signal_indicator_ble5_test/signal_indicator_ble5_test.py +398 -0
  111. brg_certificate/tests/energy2400/signal_indicator_sub1g_2_4_test/signal_indicator_sub1g_2_4_test.json +13 -0
  112. brg_certificate/tests/energy2400/signal_indicator_sub1g_2_4_test/signal_indicator_sub1g_2_4_test.py +153 -0
  113. brg_certificate/tests/energy2400/signal_indicator_test/signal_indicator_test.json +13 -0
  114. brg_certificate/tests/energy2400/signal_indicator_test/signal_indicator_test.py +264 -0
  115. brg_certificate/tests/energy_sub1g/duty_cycle_test/duty_cycle_test.json +13 -0
  116. brg_certificate/tests/energy_sub1g/duty_cycle_test/duty_cycle_test.py +27 -0
  117. brg_certificate/tests/energy_sub1g/pattern_test/pattern_test.json +13 -0
  118. brg_certificate/tests/energy_sub1g/pattern_test/pattern_test.py +26 -0
  119. brg_certificate/tests/energy_sub1g/signal_indicator_functionality_test/signal_indicator_functionality_test.json +13 -0
  120. brg_certificate/tests/energy_sub1g/signal_indicator_functionality_test/signal_indicator_functionality_test.py +397 -0
  121. brg_certificate/tests/energy_sub1g/signal_indicator_test/signal_indicator_test.json +13 -0
  122. brg_certificate/tests/energy_sub1g/signal_indicator_test/signal_indicator_test.py +27 -0
  123. brg_certificate/wltPb_pb2.py +72 -0
  124. brg_certificate/wltPb_pb2.pyi +227 -0
  125. brg_certificate/wlt_types.py +114 -0
  126. gw_certificate/api/extended_api.py +7 -1531
  127. gw_certificate/api_if/200/data.json +106 -0
  128. gw_certificate/api_if/200/logs.json +12 -0
  129. gw_certificate/api_if/200/status.json +47 -0
  130. gw_certificate/api_if/201/data.json +98 -0
  131. gw_certificate/api_if/201/logs.json +12 -0
  132. gw_certificate/api_if/201/status.json +53 -0
  133. gw_certificate/api_if/202/data.json +83 -0
  134. gw_certificate/api_if/202/logs.json +12 -0
  135. gw_certificate/api_if/202/status.json +60 -0
  136. gw_certificate/api_if/203/data.json +85 -0
  137. gw_certificate/api_if/203/logs.json +12 -0
  138. gw_certificate/api_if/203/status.json +63 -0
  139. gw_certificate/api_if/204/data.json +85 -0
  140. gw_certificate/api_if/204/logs.json +12 -0
  141. gw_certificate/api_if/204/status.json +63 -0
  142. gw_certificate/api_if/205/data.json +85 -0
  143. gw_certificate/api_if/205/logs.json +12 -0
  144. gw_certificate/api_if/205/status.json +63 -0
  145. gw_certificate/api_if/api_validation.py +0 -2
  146. gw_certificate/common/analysis_data_bricks.py +18 -1413
  147. gw_certificate/common/debug.py +0 -21
  148. gw_certificate/common/utils.py +1 -212
  149. gw_certificate/common/utils_defines.py +0 -87
  150. gw_certificate/gw_certificate.py +9 -7
  151. gw_certificate/gw_certificate_cli.py +39 -23
  152. gw_certificate/interface/4.4.52_app.zip +0 -0
  153. gw_certificate/interface/4.4.52_sd_bl_app.zip +0 -0
  154. gw_certificate/interface/ble_simulator.py +0 -32
  155. gw_certificate/interface/if_defines.py +1 -0
  156. gw_certificate/interface/mqtt.py +96 -19
  157. gw_certificate/interface/nrfutil-linux +0 -0
  158. gw_certificate/interface/nrfutil-mac +0 -0
  159. gw_certificate/interface/nrfutil.exe +0 -0
  160. gw_certificate/interface/pkt_generator.py +0 -82
  161. gw_certificate/interface/uart_if.py +73 -43
  162. gw_certificate/templates/results.html +1 -1
  163. gw_certificate/tests/__init__.py +1 -2
  164. gw_certificate/tests/actions.py +134 -9
  165. gw_certificate/tests/connection.py +10 -5
  166. gw_certificate/tests/downlink.py +2 -4
  167. gw_certificate/tests/generic.py +62 -12
  168. gw_certificate/tests/registration.py +78 -27
  169. gw_certificate/tests/static/generated_packet_table.py +12 -48
  170. gw_certificate/tests/static/packet_table.csv +10048 -10048
  171. gw_certificate/tests/static/references.py +2 -1
  172. gw_certificate/tests/static/uplink_defines.py +0 -7
  173. gw_certificate/tests/throughput.py +7 -12
  174. gw_certificate/tests/uplink.py +83 -43
  175. {wiliot_certificate-1.3.0a1.dist-info → wiliot_certificate-1.4.0a2.dist-info}/METADATA +59 -8
  176. wiliot_certificate-1.4.0a2.dist-info/RECORD +198 -0
  177. {wiliot_certificate-1.3.0a1.dist-info → wiliot_certificate-1.4.0a2.dist-info}/WHEEL +1 -1
  178. wiliot_certificate-1.4.0a2.dist-info/entry_points.txt +3 -0
  179. wiliot_certificate-1.4.0a2.dist-info/top_level.txt +2 -0
  180. gw_certificate/interface/packet_error.py +0 -22
  181. wiliot_certificate-1.3.0a1.dist-info/RECORD +0 -51
  182. wiliot_certificate-1.3.0a1.dist-info/entry_points.txt +0 -2
  183. wiliot_certificate-1.3.0a1.dist-info/top_level.txt +0 -1
  184. {wiliot_certificate-1.3.0a1.dist-info → wiliot_certificate-1.4.0a2.dist-info}/LICENSE +0 -0
@@ -0,0 +1,106 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "gatewayId": {
5
+ "type": "string",
6
+ "maxLength": 36
7
+ },
8
+ "gatewayType": {
9
+ "type": "string"
10
+ },
11
+ "timestamp": {
12
+ "type": "number"
13
+ },
14
+ "packets": {
15
+ "allOf": [
16
+ {
17
+ "description": "Uncoupled Packet",
18
+ "type": "array",
19
+ "items": {
20
+ "type": "object",
21
+ "properties": {
22
+ "timestamp": {
23
+ "type": "number"
24
+ },
25
+ "sequenceId": {
26
+ "type": "number"
27
+ },
28
+ "rssi": {
29
+ "type": "number"
30
+ },
31
+ "payload": {
32
+ "type": "string"
33
+ }
34
+ },
35
+ "required": [
36
+ "timestamp",
37
+ "sequenceId",
38
+ "rssi",
39
+ "payload"
40
+ ]
41
+ }
42
+ },
43
+ {
44
+ "description": "Coupled Packet",
45
+ "type": "array",
46
+ "items": {
47
+ "type": "object",
48
+ "properties": {
49
+ "bridgeId": {
50
+ "type": "string"
51
+ },
52
+ "timestamp": {
53
+ "type": "number"
54
+ },
55
+ "sequenceId": {
56
+ "type": "number"
57
+ },
58
+ "nfpkt": {
59
+ "type": "number"
60
+ },
61
+ "rssi": {
62
+ "type": "number"
63
+ },
64
+ "payload": {
65
+ "type": "string"
66
+ }
67
+ },
68
+ "dependentRequired":
69
+ {
70
+ "nfpkt": ["rssi", "bridgeId"]
71
+ },
72
+ "required": ["timestamp", "sequenceId", "payload"]
73
+ }
74
+
75
+ }
76
+ ]
77
+ }
78
+ },
79
+ "required": [
80
+ "gatewayId",
81
+ "gatewayType",
82
+ "timestamp",
83
+ "packets"
84
+ ],
85
+ "dependentSchemas": {
86
+ "location": {
87
+ "properties": {
88
+ "location": {
89
+ "type": "object",
90
+ "properties": {
91
+ "lat": {
92
+ "type": "number"
93
+ },
94
+ "lng": {
95
+ "type": "number"
96
+ }
97
+ },
98
+ "required": [
99
+ "lat",
100
+ "lng"
101
+ ]
102
+ }
103
+ }
104
+ }
105
+ }
106
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "gatewayLogs": {
5
+ "type": "array",
6
+ "items": {
7
+ "type": "string"
8
+ }
9
+ }
10
+ },
11
+ "required": ["gatewayLogs"]
12
+ }
@@ -0,0 +1,47 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "gatewayId": {
5
+ "type": "string",
6
+ "maxLength": 36
7
+ },
8
+ "gatewayType": {
9
+ "type": "string"
10
+ },
11
+ "gatewayConf": {
12
+ "type": "object",
13
+ "properties": {
14
+ "apiVersion": {
15
+ "type": "string",
16
+ "enum": ["202"]
17
+ },
18
+ "interfaceChipSwVersion": {
19
+ "type": "string"
20
+ },
21
+ "bleChipSwVersion": {
22
+ "type": "string"
23
+ },
24
+ "additional": {
25
+ "type": "object",
26
+ "additionalProperties": true
27
+ }
28
+ },
29
+ "required": ["apiVersion", "interfaceChipSwVersion", "bleChipSwVersion"]
30
+ },
31
+ "tagMetadataCouplingSupported": {
32
+ "type": "boolean"
33
+ },
34
+ "downlinkSupported": {
35
+ "type": "boolean"
36
+ },
37
+ "bridgeOtaUpgradeSupported": {
38
+ "type": "boolean"
39
+ },
40
+ "fwUpgradeSupported": {
41
+ "type": "boolean"
42
+ }
43
+ },
44
+ "required": ["gatewayId", "gatewayType", "gatewayConf", "tagMetadataCouplingSupported", "downlinkSupported", "bridgeOtaUpgradeSupported", "fwUpgradeSupported"]
45
+ }
46
+
47
+
@@ -0,0 +1,98 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "gatewayId": {
5
+ "type": "string",
6
+ "maxLength": 36
7
+ },
8
+ "gatewayType": {
9
+ "type": "string"
10
+ },
11
+ "timestamp": {
12
+ "type": "number"
13
+ },
14
+ "packets": {
15
+ "type": "array",
16
+ "items": "object",
17
+ "oneOf": [
18
+ {
19
+ "description": "Uncoupled Packet",
20
+ "type": "array",
21
+ "items": {
22
+ "type": "object",
23
+ "properties": {
24
+ "timestamp": {
25
+ "type": "number"
26
+ },
27
+ "sequenceId": {
28
+ "type": "number"
29
+ },
30
+ "rssi": {
31
+ "type": "number"
32
+ },
33
+ "payload": {
34
+ "type": "string"
35
+ }
36
+ },
37
+ "required": ["timestamp", "sequenceId", "rssi", "payload"]
38
+ }
39
+ },
40
+ {
41
+ "description": "Coupled Packet",
42
+ "type": "array",
43
+ "items": {
44
+ "type": "object",
45
+ "properties": {
46
+ "bridgeId": {
47
+ "type": "string"
48
+ },
49
+ "timestamp": {
50
+ "type": "number"
51
+ },
52
+ "sequenceId": {
53
+ "type": "number"
54
+ },
55
+ "nfpkt": {
56
+ "type": "number"
57
+ },
58
+ "rssi": {
59
+ "type": "number"
60
+ },
61
+ "payload": {
62
+ "type": "string"
63
+ }
64
+ },
65
+ "required": ["nfpkt", "bridgeId", "timestamp", "sequenceId", "rssi", "payload"]
66
+ }
67
+ }
68
+ ]
69
+ }
70
+ },
71
+ "required": [
72
+ "gatewayId",
73
+ "gatewayType",
74
+ "timestamp",
75
+ "packets"
76
+ ],
77
+ "dependentSchemas": {
78
+ "location": {
79
+ "properties": {
80
+ "location": {
81
+ "type": "object",
82
+ "properties": {
83
+ "lat": {
84
+ "type": "number"
85
+ },
86
+ "lng": {
87
+ "type": "number"
88
+ }
89
+ },
90
+ "required": [
91
+ "lat",
92
+ "lng"
93
+ ]
94
+ }
95
+ }
96
+ }
97
+ }
98
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "gatewayLogs": {
5
+ "type": "array",
6
+ "items": {
7
+ "type": "string"
8
+ }
9
+ }
10
+ },
11
+ "required": ["gatewayLogs"]
12
+ }
@@ -0,0 +1,53 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "gatewayId": {
5
+ "type": "string",
6
+ "maxLength": 36
7
+ },
8
+ "gatewayType": {
9
+ "type": "string"
10
+ },
11
+ "gatewayConf": {
12
+ "type": "object",
13
+ "properties": {
14
+ "apiVersion": {
15
+ "type": "string",
16
+ "enum": ["202"]
17
+ },
18
+ "gatewayVersion": {
19
+ "type": "string"
20
+ },
21
+ "additional": {
22
+ "type": "object",
23
+ "additionalProperties": true
24
+ }
25
+ },
26
+ "oneOf":[
27
+ {"required": ["apiVersion", "gatewayVersion"]},
28
+ {"required": ["apiVersion", "interfaceChipSwVersion", "bleChipSwVersion"]}
29
+ ]
30
+ },
31
+ "tagMetadataCouplingSupported": {
32
+ "type": "boolean"
33
+ },
34
+ "downlinkSupported": {
35
+ "type": "boolean"
36
+ },
37
+ "bridgeOtaUpgradeSupported": {
38
+ "type": "boolean"
39
+ },
40
+ "fwUpgradeSupported": {
41
+ "type": "boolean"
42
+ },
43
+ "geoLocationSupport": {
44
+ "type": "boolean"
45
+ }
46
+ },
47
+ "oneOf": [
48
+ {"required": ["gatewayId", "gatewayType", "gatewayConf", "tagMetadataCouplingSupported", "downlinkSupported", "bridgeOtaUpgradeSupported", "fwUpgradeSupported", "geoLocationSupport"]},
49
+ {"required": ["gatewayID", "gatewayType", "gatewayConf", "tagMetadataCouplingSupported", "downlinkSupported", "bridgeOtaUpgradeSupported", "fwUpgradeSupported"]}
50
+ ]
51
+ }
52
+
53
+
@@ -0,0 +1,83 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "gatewayId": {
5
+ "type": "string",
6
+ "maxLength": 36
7
+ },
8
+ "gatewayType": {
9
+ "type": "string"
10
+ },
11
+ "timestamp": {
12
+ "type": "number"
13
+ },
14
+ "packets": {
15
+ "description": "Unified Packet",
16
+ "type": "array",
17
+ "items": {
18
+ "type": "object",
19
+ "properties": {
20
+ "aliasBridgeId": {
21
+ "type": "string"
22
+ },
23
+ "timestamp": {
24
+ "type": "number"
25
+ },
26
+ "sequenceId": {
27
+ "type": "number"
28
+ },
29
+ "rssi": {
30
+ "type": "number"
31
+ },
32
+ "payload": {
33
+ "type": "string"
34
+ }
35
+ },
36
+ "if": {
37
+ "description": "unified SI packet",
38
+ "properties":{
39
+ "payload": {
40
+ "oneOf": [
41
+ { "pattern": "[1][eE][1][6][cC][6][fF][cC][0][0][0][0][37bBfF][fF]" },
42
+ { "pattern": "[1][eE][1][6][cC][6][fF][cC][0][0][0][0][eE][eE]" }
43
+ ]
44
+ }
45
+ }
46
+ },
47
+ "then": {
48
+ "required": ["aliasBridgeId", "timestamp", "sequenceId", "payload"]
49
+ },
50
+ "else": {
51
+ "required": ["timestamp", "sequenceId", "payload"]
52
+ }
53
+ }
54
+ }
55
+ },
56
+ "required": [
57
+ "gatewayId",
58
+ "gatewayType",
59
+ "timestamp",
60
+ "packets"
61
+ ],
62
+ "dependentSchemas": {
63
+ "location": {
64
+ "properties": {
65
+ "location": {
66
+ "type": "object",
67
+ "properties": {
68
+ "lat": {
69
+ "type": "number"
70
+ },
71
+ "lng": {
72
+ "type": "number"
73
+ }
74
+ },
75
+ "required": [
76
+ "lat",
77
+ "lng"
78
+ ]
79
+ }
80
+ }
81
+ }
82
+ }
83
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "gatewayLogs": {
5
+ "type": "array",
6
+ "items": {
7
+ "type": "string"
8
+ }
9
+ }
10
+ },
11
+ "required": ["gatewayLogs"]
12
+ }
@@ -0,0 +1,60 @@
1
+ {
2
+ "type": "object",
3
+ "patternProperties": {
4
+ "^gatewayI[dD]$": {
5
+ "type": "string",
6
+ "maxLength": 36
7
+ }
8
+ },
9
+ "properties": {
10
+ "gatewayType": {
11
+ "type": "string"
12
+ },
13
+ "gatewayConf": {
14
+ "type": "object",
15
+ "properties": {
16
+ "apiVersion": {
17
+ "type": "string",
18
+ "enum": ["202"]
19
+ },
20
+ "gatewayVersion": {
21
+ "type": "string"
22
+ },
23
+ "additional": {
24
+ "additionalProperties": true
25
+ }
26
+ },
27
+ "required": ["apiVersion"],
28
+ "oneOf":[
29
+ {"required": ["gatewayVersion"]},
30
+ {"required": ["interfaceChipSwVersion", "bleChipSwVersion"]}
31
+ ]
32
+ },
33
+ "tagMetadataCouplingSupported": {
34
+ "type": "boolean"
35
+ },
36
+ "downlinkSupported": {
37
+ "type": "boolean"
38
+ },
39
+ "bridgeOtaUpgradeSupported": {
40
+ "type": "boolean"
41
+ },
42
+ "fwUpgradeSupported": {
43
+ "type": "boolean"
44
+ },
45
+ "geoLocationSupport": {
46
+ "type": "boolean"
47
+ },
48
+ "gatewayInfo": {
49
+ "type":"object",
50
+ "additionalProperties":true
51
+ }
52
+ },
53
+ "oneOf":[
54
+ {"required": ["gatewayId", "gatewayType", "gatewayConf", "tagMetadataCouplingSupported", "downlinkSupported", "bridgeOtaUpgradeSupported", "fwUpgradeSupported"]},
55
+ {"required": ["gatewayID", "gatewayType", "gatewayConf", "tagMetadataCouplingSupported", "downlinkSupported", "bridgeOtaUpgradeSupported", "fwUpgradeSupported"]}
56
+ ],
57
+ "additionalProperties": false
58
+ }
59
+
60
+
@@ -0,0 +1,85 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "gatewayId": {
5
+ "type": "string",
6
+ "maxLength": 36
7
+ },
8
+ "gatewayType": {
9
+ "type": "string"
10
+ },
11
+ "timestamp": {
12
+ "type": "number"
13
+ },
14
+ "packets": {
15
+ "description": "Unified Packet",
16
+ "type": "array",
17
+ "items": {
18
+ "type": "object",
19
+ "properties": {
20
+ "aliasBridgeId": {
21
+ "type": "string"
22
+ },
23
+ "timestamp": {
24
+ "type": "number"
25
+ },
26
+ "sequenceId": {
27
+ "type": "number"
28
+ },
29
+ "rssi": {
30
+ "type": "number"
31
+ },
32
+ "payload": {
33
+ "type": "string"
34
+ }
35
+ },
36
+ "if": {
37
+ "description": "unified SI packet",
38
+ "properties":{
39
+ "payload": {
40
+ "oneOf": [
41
+ { "pattern": "[1][eE][1][6][cC][6][fF][cC][0][0][0][0][37bBfF][fF]" },
42
+ { "pattern": "[1][eE][1][6][cC][6][fF][cC][0][0][0][0][eE][eE]" },
43
+ { "pattern": "[1][eE][1][6][9][0][fF][cC]" },
44
+ { "pattern": "[1][eE][1][6][cC][6][fF][cC][0][0][0][0][eE][bB]" }
45
+ ]
46
+ }
47
+ }
48
+ },
49
+ "then": {
50
+ "required": ["aliasBridgeId", "timestamp", "sequenceId", "payload"]
51
+ },
52
+ "else": {
53
+ "required": ["timestamp", "sequenceId", "payload"]
54
+ }
55
+ }
56
+ }
57
+ },
58
+ "required": [
59
+ "gatewayId",
60
+ "gatewayType",
61
+ "timestamp",
62
+ "packets"
63
+ ],
64
+ "dependentSchemas": {
65
+ "location": {
66
+ "properties": {
67
+ "location": {
68
+ "type": "object",
69
+ "properties": {
70
+ "lat": {
71
+ "type": "number"
72
+ },
73
+ "lng": {
74
+ "type": "number"
75
+ }
76
+ },
77
+ "required": [
78
+ "lat",
79
+ "lng"
80
+ ]
81
+ }
82
+ }
83
+ }
84
+ }
85
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "gatewayLogs": {
5
+ "type": "array",
6
+ "items": {
7
+ "type": "string"
8
+ }
9
+ }
10
+ },
11
+ "required": ["gatewayLogs"]
12
+ }
@@ -0,0 +1,63 @@
1
+ {
2
+ "type": "object",
3
+ "patternProperties": {
4
+ "^gatewayI[dD]$": {
5
+ "type": "string",
6
+ "maxLength": 36
7
+ }
8
+ },
9
+ "properties": {
10
+ "gatewayType": {
11
+ "type": "string"
12
+ },
13
+ "gatewayConf": {
14
+ "type": "object",
15
+ "properties": {
16
+ "apiVersion": {
17
+ "type": "string",
18
+ "enum": ["203"]
19
+ },
20
+ "bleAddress": {
21
+ "type": "string"
22
+ },
23
+ "gatewayVersion": {
24
+ "type": "string"
25
+ },
26
+ "additional": {
27
+ "additionalProperties": true
28
+ }
29
+ },
30
+ "required": ["apiVersion", "bleAddress"],
31
+ "oneOf":[
32
+ {"required": ["gatewayVersion"]},
33
+ {"required": ["interfaceChipSwVersion", "bleChipSwVersion"]}
34
+ ]
35
+ },
36
+ "tagMetadataCouplingSupported": {
37
+ "type": "boolean"
38
+ },
39
+ "downlinkSupported": {
40
+ "type": "boolean"
41
+ },
42
+ "bridgeOtaUpgradeSupported": {
43
+ "type": "boolean"
44
+ },
45
+ "fwUpgradeSupported": {
46
+ "type": "boolean"
47
+ },
48
+ "geoLocationSupport": {
49
+ "type": "boolean"
50
+ },
51
+ "gatewayInfo": {
52
+ "type":"object",
53
+ "additionalProperties":true
54
+ }
55
+ },
56
+ "oneOf":[
57
+ {"required": ["gatewayId", "gatewayType", "gatewayConf", "tagMetadataCouplingSupported", "downlinkSupported", "bridgeOtaUpgradeSupported", "fwUpgradeSupported"]},
58
+ {"required": ["gatewayID", "gatewayType", "gatewayConf", "tagMetadataCouplingSupported", "downlinkSupported", "bridgeOtaUpgradeSupported", "fwUpgradeSupported"]}
59
+ ],
60
+ "additionalProperties": false
61
+ }
62
+
63
+