mirror of
https://github.com/Telecominfraproject/wlan-cloud-opensync-controller.git
synced 2025-11-01 19:17:52 +00:00
Compare commits
552 Commits
TOOLS-23-s
...
change_ses
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
49d59dcd15 | ||
|
|
711fea3407 | ||
|
|
e5e7ac7e8b | ||
|
|
6264a8c490 | ||
|
|
1070708b44 | ||
|
|
80845aa800 | ||
|
|
7a646fd459 | ||
|
|
905f37cc68 | ||
|
|
1a58b3af01 | ||
|
|
bb130e5f3e | ||
|
|
b8e4c404bb | ||
|
|
42a520b7ec | ||
|
|
90b0da4850 | ||
|
|
b842c532a8 | ||
|
|
785dc0e6c4 | ||
|
|
927ce4e589 | ||
|
|
c287f7cdc6 | ||
|
|
2aa51afe9d | ||
|
|
716e5d8129 | ||
|
|
4f462ecf70 | ||
|
|
fc61328fc4 | ||
|
|
18698fc188 | ||
|
|
34a6baf956 | ||
|
|
2e3b0c277a | ||
|
|
4370753206 | ||
|
|
aaa584ca3c | ||
|
|
210976887f | ||
|
|
43f53ee0be | ||
|
|
1381451989 | ||
|
|
6124309dbb | ||
|
|
f2e30505e5 | ||
|
|
bda589e65e | ||
|
|
5a98d4bd83 | ||
|
|
a772cbe7fa | ||
|
|
11adb02fd2 | ||
|
|
9aa4a102a5 | ||
|
|
d482b4062f | ||
|
|
ee49415b0a | ||
|
|
cc035e7fe1 | ||
|
|
d617efbcc1 | ||
|
|
53f19028dc | ||
|
|
f2b4b616ad | ||
|
|
9802ed2a3f | ||
|
|
cfc5caee64 | ||
|
|
b0abd3847a | ||
|
|
71c947427b | ||
|
|
0dc72a6fe4 | ||
|
|
5540d83dd3 | ||
|
|
572f48445c | ||
|
|
4df8bda2b3 | ||
|
|
047ce7f07a | ||
|
|
1264640c33 | ||
|
|
eef372cf0d | ||
|
|
fcccf418dd | ||
|
|
c098cd72b6 | ||
|
|
42ecccee5e | ||
|
|
663340e749 | ||
|
|
01c7f270ad | ||
|
|
91c17a6271 | ||
|
|
92235affee | ||
|
|
bbe36d4a9f | ||
|
|
3c9ee65742 | ||
|
|
53022b5813 | ||
|
|
b59a40afc0 | ||
|
|
3447df19ef | ||
|
|
de671722f7 | ||
|
|
6b7c418ccd | ||
|
|
e6472cf80b | ||
|
|
07489c2550 | ||
|
|
f39f148706 | ||
|
|
e0c26b66e0 | ||
|
|
ee1350fbe9 | ||
|
|
b7a3564153 | ||
|
|
e173e02eae | ||
|
|
1fbc4e1dff | ||
|
|
cd67fc15dd | ||
|
|
a98cca3d8c | ||
|
|
4552118b4e | ||
|
|
67abbc0bc7 | ||
|
|
9d33afec93 | ||
|
|
1bdecada9b | ||
|
|
9b31e67822 | ||
|
|
1af6b363b8 | ||
|
|
04c6a13675 | ||
|
|
44238de99a | ||
|
|
d644fa5e37 | ||
|
|
1e74c777fd | ||
|
|
d43a1d0f7b | ||
|
|
d2e3fa7a72 | ||
|
|
f96b5b4bed | ||
|
|
eeeec8999f | ||
|
|
052bad3ef2 | ||
|
|
cc007f6115 | ||
|
|
18dbc3fe96 | ||
|
|
ee4cf9ff59 | ||
|
|
cfa8c7e039 | ||
|
|
4565d7a446 | ||
|
|
89f608b5bc | ||
|
|
0fda8b51bf | ||
|
|
180fc3ceb1 | ||
|
|
9607124360 | ||
|
|
acf798bbc9 | ||
|
|
1cee28a694 | ||
|
|
68037ecf80 | ||
|
|
7eb9ea5039 | ||
|
|
89f9e2b11e | ||
|
|
087fb461a9 | ||
|
|
c9e93e2bb3 | ||
|
|
0d77847761 | ||
|
|
4d2d0d3990 | ||
|
|
0ad90840fd | ||
|
|
ea6e5cf761 | ||
|
|
1e0fd00d98 | ||
|
|
7928dceefb | ||
|
|
4773530305 | ||
|
|
a0a12d3c8c | ||
|
|
6fc02664ad | ||
|
|
ff8b0a006c | ||
|
|
8510882ed8 | ||
|
|
d6f907f1af | ||
|
|
b04cd86cda | ||
|
|
657f61466c | ||
|
|
234c087180 | ||
|
|
7d785e3a10 | ||
|
|
738d11b11c | ||
|
|
2c787b4fef | ||
|
|
23f9da0af0 | ||
|
|
15a7741909 | ||
|
|
a66049a600 | ||
|
|
36d5f30a73 | ||
|
|
db944d8509 | ||
|
|
85bf7e8f98 | ||
|
|
aefc799975 | ||
|
|
0021d52624 | ||
|
|
6416a76f88 | ||
|
|
036f402824 | ||
|
|
19be90a423 | ||
|
|
8ce5b3ed89 | ||
|
|
6647075961 | ||
|
|
995b4a294b | ||
|
|
88dac08eb1 | ||
|
|
010251bffb | ||
|
|
469c5fefb5 | ||
|
|
511f3c1253 | ||
|
|
e7c288683f | ||
|
|
e54ec7ab01 | ||
|
|
e1f84648c8 | ||
|
|
b42a1f4318 | ||
|
|
925246604b | ||
|
|
32160fd699 | ||
|
|
61b55491ed | ||
|
|
7ae99a1b51 | ||
|
|
877cf41249 | ||
|
|
dc6e1a56b8 | ||
|
|
f0f534fd70 | ||
|
|
ae846588b2 | ||
|
|
6a8d5478a0 | ||
|
|
2f12768168 | ||
|
|
b4d010e64f | ||
|
|
460b1f78be | ||
|
|
7e0a4bcddf | ||
|
|
f4691fccd6 | ||
|
|
b51cd52f80 | ||
|
|
5a87904787 | ||
|
|
ef31af48db | ||
|
|
cea96f49f3 | ||
|
|
b7ab0b973c | ||
|
|
0ea56397b2 | ||
|
|
bba5008753 | ||
|
|
095c611b8a | ||
|
|
cdc29b6b32 | ||
|
|
4822a60f79 | ||
|
|
6a22a9b2fb | ||
|
|
455b61c6c3 | ||
|
|
7fa1270066 | ||
|
|
346476ef33 | ||
|
|
b245061ed9 | ||
|
|
8a58ccd636 | ||
|
|
49050f774f | ||
|
|
2cbe0b8b34 | ||
|
|
ab0061b582 | ||
|
|
a0f475a789 | ||
|
|
9b52e7bf78 | ||
|
|
cd4874ae18 | ||
|
|
9659433e76 | ||
|
|
9a79c0e103 | ||
|
|
cc0fd8c009 | ||
|
|
41570bb705 | ||
|
|
932edc34c2 | ||
|
|
34aba7191a | ||
|
|
9b83f28ab3 | ||
|
|
cced70dd20 | ||
|
|
4a9ca9c949 | ||
|
|
41f65673ca | ||
|
|
33e004a3e0 | ||
|
|
cabbebcb7a | ||
|
|
40ac428bb5 | ||
|
|
aead466770 | ||
|
|
14cc34ef75 | ||
|
|
01c75f8175 | ||
|
|
2f32ec66d5 | ||
|
|
eea9d9b044 | ||
|
|
8cf2e9e402 | ||
|
|
aeb949a884 | ||
|
|
67c0ae9ffc | ||
|
|
8ff3010190 | ||
|
|
9cd260f1a9 | ||
|
|
66035a22ad | ||
|
|
1d6c356a1a | ||
|
|
77b67ca3d2 | ||
|
|
40c283ba89 | ||
|
|
08b9b62f81 | ||
|
|
8bc37f4a9a | ||
|
|
b8cd98017d | ||
|
|
0c89e6c624 | ||
|
|
becf59dc0f | ||
|
|
feff3d6530 | ||
|
|
2e7a090722 | ||
|
|
6ece024535 | ||
|
|
4837b0e026 | ||
|
|
0eca082a4d | ||
|
|
db4672a9a2 | ||
|
|
9e58a9d7b7 | ||
|
|
f083c3488c | ||
|
|
b28655a5bd | ||
|
|
124b6054b5 | ||
|
|
d79917d20f | ||
|
|
c0bb71aed2 | ||
|
|
5e32798159 | ||
|
|
01fa2d3977 | ||
|
|
f0daa18906 | ||
|
|
d6d454bfc1 | ||
|
|
f30b1ca02e | ||
|
|
84f3d4ea5d | ||
|
|
a5fb061359 | ||
|
|
d8ff2f1a31 | ||
|
|
1d1b5f1c42 | ||
|
|
74587349fe | ||
|
|
b463d6720a | ||
|
|
036bd8ccc2 | ||
|
|
eebdfba431 | ||
|
|
52a5a2ac72 | ||
|
|
44b3d5e526 | ||
|
|
f9ece26ccf | ||
|
|
5f35b59a34 | ||
|
|
d3729a47d2 | ||
|
|
dc8e22a1b5 | ||
|
|
20484b634a | ||
|
|
a7af164bb1 | ||
|
|
e31b8ebd12 | ||
|
|
bdde9561f3 | ||
|
|
2964aa3c3c | ||
|
|
01d9d7538c | ||
|
|
ed5f445f11 | ||
|
|
b47d2ccda1 | ||
|
|
b6d6e4dea7 | ||
|
|
1e822e432c | ||
|
|
95173ada39 | ||
|
|
5bfd5dfac7 | ||
|
|
14b410e84b | ||
|
|
c8bace4850 | ||
|
|
b182a6953d | ||
|
|
acdd5eddbf | ||
|
|
c1de88aa05 | ||
|
|
28fcf06175 | ||
|
|
a3159ed34e | ||
|
|
ee56a5b2bb | ||
|
|
b60a72c202 | ||
|
|
b9dd818ca4 | ||
|
|
1d7f822ed4 | ||
|
|
6c784367ed | ||
|
|
176f549168 | ||
|
|
896c38c024 | ||
|
|
15e26fd829 | ||
|
|
4df03431ed | ||
|
|
7ef59937f2 | ||
|
|
0e80415e52 | ||
|
|
10b3a6227d | ||
|
|
3adb56f113 | ||
|
|
39da1f83a3 | ||
|
|
7f51486979 | ||
|
|
62672f090b | ||
|
|
012935818d | ||
|
|
d291e55831 | ||
|
|
94b8234ce3 | ||
|
|
2c12818808 | ||
|
|
d7b0110b28 | ||
|
|
338b35ef06 | ||
|
|
5bf25b8696 | ||
|
|
a3fe53d6bd | ||
|
|
764fb8caf7 | ||
|
|
e9553ae54f | ||
|
|
6b3b835e80 | ||
|
|
2c8e37c174 | ||
|
|
76d9cf79f5 | ||
|
|
e3da2db9ab | ||
|
|
0840795bd5 | ||
|
|
621ec89889 | ||
|
|
98ad16e32e | ||
|
|
85c323e3f1 | ||
|
|
9ba111255b | ||
|
|
f3bc79cbae | ||
|
|
130d64b0ea | ||
|
|
50ec9297b2 | ||
|
|
3153138dba | ||
|
|
2d579a7f19 | ||
|
|
d34f4934bd | ||
|
|
f40c30340e | ||
|
|
b04d71e75a | ||
|
|
8f30d21f69 | ||
|
|
4f65878ce5 | ||
|
|
4d624233c6 | ||
|
|
1d8889a857 | ||
|
|
2778cf423e | ||
|
|
1a47583604 | ||
|
|
49f7ad2774 | ||
|
|
b67f36a8a1 | ||
|
|
3cab779757 | ||
|
|
3e2b20ddc5 | ||
|
|
d0c126fbf8 | ||
|
|
761afeb403 | ||
|
|
7f139be81a | ||
|
|
41aa441275 | ||
|
|
e2d2278fe0 | ||
|
|
ad6f30f547 | ||
|
|
647e201647 | ||
|
|
c485f0284d | ||
|
|
e8b10d1785 | ||
|
|
81bb9e27b4 | ||
|
|
4193978e24 | ||
|
|
89b127d881 | ||
|
|
3f23f57746 | ||
|
|
bb3a49addb | ||
|
|
3d9b01c147 | ||
|
|
766e095a62 | ||
|
|
209c08041d | ||
|
|
c1db58bace | ||
|
|
a96b0c3f59 | ||
|
|
f9cf072cac | ||
|
|
ac521191d6 | ||
|
|
2b60dd8b57 | ||
|
|
ca023ea554 | ||
|
|
9cc3b96436 | ||
|
|
6ea19d9cbf | ||
|
|
0d72824e3f | ||
|
|
982d1cb2b3 | ||
|
|
ae4d2d2339 | ||
|
|
71c41bb892 | ||
|
|
ce14eb359d | ||
|
|
4cbb5e1d97 | ||
|
|
a585afc634 | ||
|
|
93b3deec4b | ||
|
|
f5007a73d0 | ||
|
|
879e9fa104 | ||
|
|
9899286bc0 | ||
|
|
2ea8f4a124 | ||
|
|
b7c1741ce9 | ||
|
|
410e3c5433 | ||
|
|
ba20478978 | ||
|
|
9e5470c9af | ||
|
|
899f4a4835 | ||
|
|
b03f478e9b | ||
|
|
f32a177d45 | ||
|
|
0c164e8c6f | ||
|
|
6f99d701f3 | ||
|
|
0869b875c9 | ||
|
|
fbc7b4b5b9 | ||
|
|
ec11860c22 | ||
|
|
956ce78bfc | ||
|
|
cea90c48d3 | ||
|
|
3e46874a6c | ||
|
|
c472380167 | ||
|
|
8a8ab11a65 | ||
|
|
8047ada806 | ||
|
|
ce26422a60 | ||
|
|
f57e271706 | ||
|
|
bf919dc8e9 | ||
|
|
6b80731a66 | ||
|
|
4b7bbaae6e | ||
|
|
03c8c15f53 | ||
|
|
337571a880 | ||
|
|
97a755e187 | ||
|
|
779de15f87 | ||
|
|
1c8f7f9e53 | ||
|
|
7204ec9abe | ||
|
|
894d462d49 | ||
|
|
01b5d7dd5e | ||
|
|
5867584afb | ||
|
|
627f401969 | ||
|
|
945c990878 | ||
|
|
dbd2a8e769 | ||
|
|
3767861dd1 | ||
|
|
36e5c6a504 | ||
|
|
c9f9bce45c | ||
|
|
6b4f8d3b09 | ||
|
|
0d8520f3a1 | ||
|
|
e904a8d721 | ||
|
|
182535d2f6 | ||
|
|
4c1dda44ff | ||
|
|
6056b6eb64 | ||
|
|
5fa57005a1 | ||
|
|
e8acb5920b | ||
|
|
0d3f80a8c0 | ||
|
|
01521b879a | ||
|
|
c91542ad74 | ||
|
|
8cd13e76ed | ||
|
|
07a47761dc | ||
|
|
338078d8ac | ||
|
|
355d8aae13 | ||
|
|
a39432fdf0 | ||
|
|
2f4be3f6c7 | ||
|
|
6d752a4468 | ||
|
|
8cff591ea1 | ||
|
|
835d045d14 | ||
|
|
32cff9673a | ||
|
|
e3eeeef99c | ||
|
|
ecec992274 | ||
|
|
1edef6a0e4 | ||
|
|
753cb29cc2 | ||
|
|
64d87e7e50 | ||
|
|
b93523d848 | ||
|
|
d9bef48a12 | ||
|
|
0b632f7b1b | ||
|
|
30a28b2a11 | ||
|
|
77b0a33fff | ||
|
|
979ca46cea | ||
|
|
b66ae8e91e | ||
|
|
917fd3d8a3 | ||
|
|
307b41081a | ||
|
|
34ef918a18 | ||
|
|
7cbfd6f163 | ||
|
|
39fddcd912 | ||
|
|
786a696a38 | ||
|
|
19d2b6fc7c | ||
|
|
57a87d345e | ||
|
|
1d6f980c30 | ||
|
|
a828426618 | ||
|
|
e13a4ca320 | ||
|
|
bb17a5a420 | ||
|
|
c30573f87e | ||
|
|
1089f84b08 | ||
|
|
4e1fa6040a | ||
|
|
0b8a9bd737 | ||
|
|
f2ded11a0b | ||
|
|
d0c6a81191 | ||
|
|
c2fbf95c32 | ||
|
|
1ffd1a4e0b | ||
|
|
39c63c32d5 | ||
|
|
a744b26adf | ||
|
|
f1ad8cb939 | ||
|
|
6ce752255c | ||
|
|
95e702119c | ||
|
|
643797b9e3 | ||
|
|
024f0feb74 | ||
|
|
9799070c83 | ||
|
|
68de002c8e | ||
|
|
ce98ab994f | ||
|
|
c9a4ed6f13 | ||
|
|
8b5b9a0f68 | ||
|
|
f306eba5f4 | ||
|
|
b807788b0c | ||
|
|
a833ef18e8 | ||
|
|
a5c1f5929a | ||
|
|
0103d99a50 | ||
|
|
14f00d01e7 | ||
|
|
6e4f77a17b | ||
|
|
95e551bc7f | ||
|
|
90245f305c | ||
|
|
5865ad1843 | ||
|
|
add8c990cd | ||
|
|
adf7c0ab4c | ||
|
|
4301889bdf | ||
|
|
cf29aae904 | ||
|
|
20b0d06d1e | ||
|
|
eabf83f387 | ||
|
|
4a516c26d2 | ||
|
|
3b5701f930 | ||
|
|
b9c0a6d88a | ||
|
|
56e8af9227 | ||
|
|
e7629f29b2 | ||
|
|
fb0b407153 | ||
|
|
37d24f8b06 | ||
|
|
a1114cd63c | ||
|
|
fc275ae4a9 | ||
|
|
fefaaa471a | ||
|
|
acc1f0dc89 | ||
|
|
20a22f4c2b | ||
|
|
4a546dc8c6 | ||
|
|
d2ce476e91 | ||
|
|
858babfa4e | ||
|
|
d7a2097eac | ||
|
|
0a0785d80f | ||
|
|
0529f7920d | ||
|
|
25870f88ac | ||
|
|
95a78546d3 | ||
|
|
d4781a429e | ||
|
|
fc18ad0140 | ||
|
|
4f6aa7a531 | ||
|
|
f904906562 | ||
|
|
b893590b0e | ||
|
|
d81b636632 | ||
|
|
a4575f8d12 | ||
|
|
f176c82d81 | ||
|
|
ccfbeebfc9 | ||
|
|
dece61257a | ||
|
|
9274badad7 | ||
|
|
fa49329909 | ||
|
|
8ebbfd2f93 | ||
|
|
441ff8e623 | ||
|
|
2c37455f94 | ||
|
|
9a7d8ff299 | ||
|
|
130eb00a17 | ||
|
|
3b79964c80 | ||
|
|
4ed2d584bc | ||
|
|
cf5cce76f2 | ||
|
|
7c2af78805 | ||
|
|
dccf016619 | ||
|
|
163ad39e4e | ||
|
|
e64d8488bb | ||
|
|
5ee0eface5 | ||
|
|
413d05be86 | ||
|
|
2e63025388 | ||
|
|
4e1b3a9cf5 | ||
|
|
ad564fc3f6 | ||
|
|
72ae8871d1 | ||
|
|
663b3ba2fc | ||
|
|
9894f075d4 | ||
|
|
3a01499fb9 | ||
|
|
4e29f2d3b9 | ||
|
|
39872da896 | ||
|
|
14ba1f51f1 | ||
|
|
7af93a052d | ||
|
|
bbed379675 | ||
|
|
fa7e85de3f | ||
|
|
cd15177511 | ||
|
|
a878583e50 | ||
|
|
8f81a2cecd | ||
|
|
f8c48a64a8 | ||
|
|
39e10c90ad | ||
|
|
7010919c11 | ||
|
|
82332611ce | ||
|
|
2be3559547 | ||
|
|
dda00db9e2 | ||
|
|
5a185cb38f | ||
|
|
127592d0c6 | ||
|
|
6f440e6002 | ||
|
|
6550c656c9 | ||
|
|
27583013f1 | ||
|
|
3f524d4567 | ||
|
|
ebe5a90ae0 | ||
|
|
3690111d08 | ||
|
|
467562d578 |
47
.github/workflows/maven_settings_template.xml
vendored
Normal file
47
.github/workflows/maven_settings_template.xml
vendored
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
<settings>
|
||||||
|
<servers>
|
||||||
|
<server>
|
||||||
|
<id>tip-wlan-cloud-maven-repo</id>
|
||||||
|
<username>${env.MAVEN_REPO_USERNAME}</username>
|
||||||
|
<password>${env.MAVEN_REPO_PASSWORD}</password>
|
||||||
|
</server>
|
||||||
|
<server>
|
||||||
|
<id>jfrog-spring-milestones</id>
|
||||||
|
<username>${env.MAVEN_REPO_USERNAME}</username>
|
||||||
|
<password>${env.MAVEN_REPO_PASSWORD}</password>
|
||||||
|
</server>
|
||||||
|
<server>
|
||||||
|
<id>jfrog-maven-central</id>
|
||||||
|
<username>${env.MAVEN_REPO_USERNAME}</username>
|
||||||
|
<password>${env.MAVEN_REPO_PASSWORD}</password>
|
||||||
|
</server>
|
||||||
|
</servers>
|
||||||
|
<mirrors>
|
||||||
|
<mirror>
|
||||||
|
<id>jfrog-maven-central</id>
|
||||||
|
<name>Mirror Repository</name>
|
||||||
|
<url>https://tip.jfrog.io/artifactory/maven-central</url>
|
||||||
|
<mirrorOf>central</mirrorOf>
|
||||||
|
</mirror>
|
||||||
|
<mirror>
|
||||||
|
<id>jfrog-spring-milestones</id>
|
||||||
|
<url>https://tip.jfrog.io/artifactory/spring-milestones</url>
|
||||||
|
<mirrorOf>spring-milestones</mirrorOf>
|
||||||
|
</mirror>
|
||||||
|
</mirrors>
|
||||||
|
|
||||||
|
<profiles>
|
||||||
|
<profile>
|
||||||
|
<id>schema-publisher</id>
|
||||||
|
<properties>
|
||||||
|
<schema-repository-user>${env.MAVEN_REPO_USERNAME}</schema-repository-user>
|
||||||
|
<schema-repository-password>${env.MAVEN_REPO_PASSWORD}</schema-repository-password>
|
||||||
|
</properties>
|
||||||
|
</profile>
|
||||||
|
</profiles>
|
||||||
|
|
||||||
|
<activeProfiles>
|
||||||
|
<activeProfile>schema-publisher</activeProfile>
|
||||||
|
</activeProfiles>
|
||||||
|
|
||||||
|
</settings>
|
||||||
13
.github/workflows/sonar.yml
vendored
13
.github/workflows/sonar.yml
vendored
@@ -7,6 +7,7 @@ on:
|
|||||||
env:
|
env:
|
||||||
SONAR_URL: https://sonarcloud.io
|
SONAR_URL: https://sonarcloud.io
|
||||||
SONAR_ORGANIZATION: telecominfraproject
|
SONAR_ORGANIZATION: telecominfraproject
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
sonar:
|
sonar:
|
||||||
@@ -39,18 +40,24 @@ jobs:
|
|||||||
uses: actions/setup-java@v1
|
uses: actions/setup-java@v1
|
||||||
with:
|
with:
|
||||||
java-version: 14
|
java-version: 14
|
||||||
server-id: tip-wlan-cloud-maven-repo
|
- name: Cache Maven packages
|
||||||
server-username: MAVEN_REPO_USERNAME
|
uses: actions/cache@v1
|
||||||
server-password: MAVEN_REPO_PASSWORD
|
with:
|
||||||
|
path: ~/.m2/repository/
|
||||||
|
key: ${{ runner.os }}-m2
|
||||||
|
- name: Configure maven settings.xml
|
||||||
|
run: cp wlan-cloud-opensync-controller/.github/workflows/maven_settings_template.xml /home/runner/.m2/settings.xml
|
||||||
- name: Maven build
|
- name: Maven build
|
||||||
working-directory: wlan-cloud-opensync-controller/${{ matrix.project }}
|
working-directory: wlan-cloud-opensync-controller/${{ matrix.project }}
|
||||||
env:
|
env:
|
||||||
MAVEN_REPO_USERNAME: build-pipeline
|
MAVEN_REPO_USERNAME: build-pipeline
|
||||||
MAVEN_REPO_PASSWORD: ${{ secrets.MAVEN_REPO_PASSWORD }}
|
MAVEN_REPO_PASSWORD: ${{ secrets.MAVEN_REPO_PASSWORD }}
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
run: mvn clean install
|
run: mvn clean install
|
||||||
- name: Run sonar
|
- name: Run sonar
|
||||||
working-directory: wlan-cloud-opensync-controller/${{ matrix.project }}
|
working-directory: wlan-cloud-opensync-controller/${{ matrix.project }}
|
||||||
env:
|
env:
|
||||||
MAVEN_REPO_USERNAME: build-pipeline
|
MAVEN_REPO_USERNAME: build-pipeline
|
||||||
MAVEN_REPO_PASSWORD: ${{ secrets.MAVEN_REPO_PASSWORD }}
|
MAVEN_REPO_PASSWORD: ${{ secrets.MAVEN_REPO_PASSWORD }}
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
run: mvn sonar:sonar -Dsonar.host.url=${{ env.SONAR_URL }} -Dsonar.login=${{ secrets.SONAR_LOGIN }} -Dsonar.organization=${{ env.SONAR_ORGANIZATION }} -Dsonar.projectKey=com.telecominfraproject.wlan:${{ matrix.project }}
|
run: mvn sonar:sonar -Dsonar.host.url=${{ env.SONAR_URL }} -Dsonar.login=${{ secrets.SONAR_LOGIN }} -Dsonar.organization=${{ env.SONAR_ORGANIZATION }} -Dsonar.projectKey=com.telecominfraproject.wlan:${{ matrix.project }}
|
||||||
|
|||||||
29
LICENSE
Normal file
29
LICENSE
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
BSD 3-Clause License
|
||||||
|
|
||||||
|
Copyright (c) 2020, Telecom Infra Project
|
||||||
|
All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions are met:
|
||||||
|
|
||||||
|
1. Redistributions of source code must retain the above copyright notice, this
|
||||||
|
list of conditions and the following disclaimer.
|
||||||
|
|
||||||
|
2. Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer in the documentation
|
||||||
|
and/or other materials provided with the distribution.
|
||||||
|
|
||||||
|
3. Neither the name of the copyright holder nor the names of its
|
||||||
|
contributors may be used to endorse or promote products derived from
|
||||||
|
this software without specific prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||||
|
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
||||||
|
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||||
|
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||||
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
|
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||||
|
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
|
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
12
README.md
12
README.md
@@ -1,7 +1,13 @@
|
|||||||
# tip-wlan-opensync-wifi-controller
|
# wlan-opensync-wifi-controller
|
||||||
|
|
||||||
Opensync Wifi Controller - accepts connections from the access points, pushes configuration, reads metrics from the topics on MQTT broker.
|
Opensync Wifi Controller - accepts connections from the access points, pushes configuration, reads metrics from the topics on MQTT broker.
|
||||||
|
|
||||||
Components in this repository depend on other tip-wlan repositories.
|
Components in this repository depend on other wlan-cloud repositories.
|
||||||
|
|
||||||
How to build components in this repository - checkout [tip-wlan-cloud-workspace](https://github.com/Telecominfraproject/tip-wlan-cloud-workspace) repository and follow its build instructions.
|
How to build components in this repository - checkout [wlan-cloud-workspace](https://github.com/Telecominfraproject/wlan-cloud-workspace) repository and follow its build instructions.
|
||||||
|
|
||||||
|
There are several variants of the Opensync Wifi Controller:
|
||||||
|
* statically configured by the json files - see the projects: opensync-ext-static, opensync-gateway-static-process, opensync-gateway-static-docker
|
||||||
|
* dynamically configured using REST APIs and provisioning workflows of the CloudSDK - see the projects: opensync-ext-cloud, opensync-gateway-cloud-process, opensync-gateway-cloud-docker
|
||||||
|
|
||||||
|
All the variants mentionined above are using common components defined in projects opensync-gateway and opensync-ext-interface
|
||||||
|
|||||||
1
opensync-ext-cloud/.gitignore
vendored
1
opensync-ext-cloud/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
/target/
|
|
||||||
@@ -1,12 +1,10 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<artifactId>tip-wlan-cloud-root-pom</artifactId>
|
<artifactId>tip-wlan-cloud-root-pom</artifactId>
|
||||||
<version>0.0.1-SNAPSHOT</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
<relativePath>../../wlan-cloud-root</relativePath>
|
<relativePath>../../wlan-cloud-root</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>opensync-ext-cloud</artifactId>
|
<artifactId>opensync-ext-cloud</artifactId>
|
||||||
@@ -16,107 +14,126 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<artifactId>opensync-ext-interface</artifactId>
|
<artifactId>opensync-ext-interface</artifactId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<artifactId>opensync-gateway</artifactId>
|
<artifactId>opensync-gateway</artifactId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
|
||||||
<artifactId>base-container</artifactId>
|
<dependency>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<artifactId>base-client</artifactId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
</dependency>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>equipment-gateway-models</artifactId>
|
<artifactId>equipment-gateway-models</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>customer-service-interface</artifactId>
|
<artifactId>customer-service-interface</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>location-service-interface</artifactId>
|
<artifactId>location-service-interface</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>equipment-service-interface</artifactId>
|
<artifactId>equipment-service-interface</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>profile-service-interface</artifactId>
|
<artifactId>profile-service-interface</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>portal-user-service-interface</artifactId>
|
<artifactId>portal-user-service-interface</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>service-metric-service-interface</artifactId>
|
<artifactId>service-metric-service-interface</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<artifactId>service-metric-models</artifactId>
|
||||||
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>system-event-service-interface</artifactId>
|
<artifactId>system-event-service-interface</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<artifactId>system-event-models</artifactId>
|
||||||
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>alarm-service-interface</artifactId>
|
<artifactId>alarm-service-interface</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>status-service-interface</artifactId>
|
<artifactId>status-service-interface</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>client-service-interface</artifactId>
|
<artifactId>client-service-interface</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<artifactId>client-models</artifactId>
|
||||||
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>routing-service-interface</artifactId>
|
<artifactId>routing-service-interface</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>firmware-service-interface</artifactId>
|
<artifactId>firmware-service-interface</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>manufacturer-service-interface</artifactId>
|
<artifactId>manufacturer-service-interface</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>cloud-event-dispatcher-interface</artifactId>
|
<artifactId>cloud-event-dispatcher-interface</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -2,8 +2,10 @@ package com.telecominfraproject.wlan.opensync.external.integration.controller;
|
|||||||
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.context.ApplicationListener;
|
import org.springframework.context.ApplicationListener;
|
||||||
import org.springframework.context.event.ContextStartedEvent;
|
import org.springframework.context.event.ContextStartedEvent;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Listen for context started event so that we are register with routing service
|
* Listen for context started event so that we are register with routing service
|
||||||
@@ -11,15 +13,13 @@ import org.springframework.context.event.ContextStartedEvent;
|
|||||||
* @author yongli
|
* @author yongli
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
@Component
|
||||||
public class OpensyncGatewayControllerStartListener implements ApplicationListener<ContextStartedEvent> {
|
public class OpensyncGatewayControllerStartListener implements ApplicationListener<ContextStartedEvent> {
|
||||||
|
|
||||||
private static final Logger LOG = LoggerFactory.getLogger(OpensyncGatewayControllerStartListener.class);
|
private static final Logger LOG = LoggerFactory.getLogger(OpensyncGatewayControllerStartListener.class);
|
||||||
|
|
||||||
OpensyncCloudGatewayController controller;
|
@Autowired
|
||||||
|
private OpensyncCloudGatewayController controller;
|
||||||
public OpensyncGatewayControllerStartListener(OpensyncCloudGatewayController controller) {
|
|
||||||
this.controller = controller;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onApplicationEvent(ContextStartedEvent event) {
|
public void onApplicationEvent(ContextStartedEvent event) {
|
||||||
|
|||||||
@@ -2,8 +2,10 @@ package com.telecominfraproject.wlan.opensync.external.integration.controller;
|
|||||||
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.context.ApplicationListener;
|
import org.springframework.context.ApplicationListener;
|
||||||
import org.springframework.context.event.ContextClosedEvent;
|
import org.springframework.context.event.ContextClosedEvent;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Register for stop event so that we can de-register from routing service
|
* Register for stop event so that we can de-register from routing service
|
||||||
@@ -11,14 +13,13 @@ import org.springframework.context.event.ContextClosedEvent;
|
|||||||
* @author yongli
|
* @author yongli
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
@Component
|
||||||
public class OpensyncGatewayControllerStopListener implements ApplicationListener<ContextClosedEvent> {
|
public class OpensyncGatewayControllerStopListener implements ApplicationListener<ContextClosedEvent> {
|
||||||
OpensyncCloudGatewayController controller;
|
|
||||||
|
|
||||||
private static final Logger LOG = LoggerFactory.getLogger(OpensyncGatewayControllerStopListener.class);
|
private static final Logger LOG = LoggerFactory.getLogger(OpensyncGatewayControllerStopListener.class);
|
||||||
|
|
||||||
public OpensyncGatewayControllerStopListener(OpensyncCloudGatewayController controller) {
|
@Autowired
|
||||||
this.controller = controller;
|
private OpensyncCloudGatewayController controller;
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onApplicationEvent(ContextClosedEvent event) {
|
public void onApplicationEvent(ContextClosedEvent event) {
|
||||||
|
|||||||
@@ -1,29 +0,0 @@
|
|||||||
package com.telecominfraproject.wlan.opensync.external.integration.controller;
|
|
||||||
|
|
||||||
import org.slf4j.Logger;
|
|
||||||
import org.slf4j.LoggerFactory;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
|
||||||
import org.springframework.context.ApplicationListener;
|
|
||||||
import org.springframework.context.annotation.Bean;
|
|
||||||
import org.springframework.context.event.ContextClosedEvent;
|
|
||||||
import org.springframework.context.event.ContextStartedEvent;
|
|
||||||
import org.springframework.stereotype.Component;
|
|
||||||
|
|
||||||
@Component
|
|
||||||
public class OpensyncGatewayListenerConfiguration {
|
|
||||||
@Autowired
|
|
||||||
OpensyncCloudGatewayController controller;
|
|
||||||
private static final Logger LOG = LoggerFactory.getLogger(OpensyncGatewayControllerStartListener.class);
|
|
||||||
|
|
||||||
@Bean
|
|
||||||
public ApplicationListener<ContextClosedEvent> myStopEventListner() {
|
|
||||||
LOG.debug("Creating stop event listener");
|
|
||||||
return new OpensyncGatewayControllerStopListener(controller);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Bean
|
|
||||||
public ApplicationListener<ContextStartedEvent> myStartedEventListener() {
|
|
||||||
LOG.debug("Creating start event listener");
|
|
||||||
return new OpensyncGatewayControllerStartListener(controller);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,915 @@
|
|||||||
|
|
||||||
|
package com.telecominfraproject.wlan.opensync.external.integration;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
import static org.junit.Assert.assertNull;
|
||||||
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.EnumMap;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Set;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
import org.junit.After;
|
||||||
|
import org.junit.Before;
|
||||||
|
import org.junit.Ignore;
|
||||||
|
import org.junit.Test;
|
||||||
|
import org.junit.runner.RunWith;
|
||||||
|
import org.mockito.Answers;
|
||||||
|
import org.mockito.ArgumentMatchers;
|
||||||
|
import org.mockito.Mockito;
|
||||||
|
import org.mockito.MockitoSession;
|
||||||
|
import org.mockito.quality.Strictness;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.boot.test.context.SpringBootTest;
|
||||||
|
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
|
||||||
|
import org.springframework.boot.test.mock.mockito.MockBean;
|
||||||
|
import org.springframework.cache.CacheManager;
|
||||||
|
import org.springframework.cache.caffeine.CaffeineCacheManager;
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
import org.springframework.context.annotation.Import;
|
||||||
|
import org.springframework.test.context.ActiveProfiles;
|
||||||
|
import org.springframework.test.context.junit4.SpringRunner;
|
||||||
|
|
||||||
|
import com.google.common.collect.ImmutableList;
|
||||||
|
import com.google.common.collect.ImmutableMap;
|
||||||
|
import com.google.common.collect.ImmutableSet;
|
||||||
|
import com.google.protobuf.ByteString;
|
||||||
|
import com.telecominfraproject.wlan.alarm.AlarmServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.client.ClientServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.client.info.models.ClientInfoDetails;
|
||||||
|
import com.telecominfraproject.wlan.client.session.models.ClientSession;
|
||||||
|
import com.telecominfraproject.wlan.client.session.models.ClientSessionDetails;
|
||||||
|
import com.telecominfraproject.wlan.cloudeventdispatcher.CloudEventDispatcherInterface;
|
||||||
|
import com.telecominfraproject.wlan.core.model.entity.CountryCode;
|
||||||
|
import com.telecominfraproject.wlan.core.model.equipment.EquipmentType;
|
||||||
|
import com.telecominfraproject.wlan.core.model.equipment.MacAddress;
|
||||||
|
import com.telecominfraproject.wlan.core.model.equipment.RadioType;
|
||||||
|
import com.telecominfraproject.wlan.core.model.pagination.PaginationContext;
|
||||||
|
import com.telecominfraproject.wlan.core.model.pagination.PaginationResponse;
|
||||||
|
import com.telecominfraproject.wlan.customer.models.Customer;
|
||||||
|
import com.telecominfraproject.wlan.customer.models.CustomerDetails;
|
||||||
|
import com.telecominfraproject.wlan.customer.models.EquipmentAutoProvisioningSettings;
|
||||||
|
import com.telecominfraproject.wlan.customer.service.CustomerServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.equipment.EquipmentServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.equipment.models.ApElementConfiguration;
|
||||||
|
import com.telecominfraproject.wlan.equipment.models.Equipment;
|
||||||
|
import com.telecominfraproject.wlan.firmware.FirmwareServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.firmware.models.CustomerFirmwareTrackRecord;
|
||||||
|
import com.telecominfraproject.wlan.firmware.models.CustomerFirmwareTrackSettings;
|
||||||
|
import com.telecominfraproject.wlan.location.models.Location;
|
||||||
|
import com.telecominfraproject.wlan.location.models.LocationDetails;
|
||||||
|
import com.telecominfraproject.wlan.location.models.LocationType;
|
||||||
|
import com.telecominfraproject.wlan.location.service.LocationServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.opensync.external.integration.controller.OpensyncCloudGatewayController;
|
||||||
|
import com.telecominfraproject.wlan.opensync.external.integration.models.ConnectNodeInfo;
|
||||||
|
import com.telecominfraproject.wlan.opensync.external.integration.models.OpensyncAPRadioState;
|
||||||
|
import com.telecominfraproject.wlan.opensync.external.integration.models.OpensyncAPVIFState;
|
||||||
|
import com.telecominfraproject.wlan.opensync.external.integration.utils.MqttStatsPublisher;
|
||||||
|
import com.telecominfraproject.wlan.profile.ProfileServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.profile.models.Profile;
|
||||||
|
import com.telecominfraproject.wlan.profile.models.ProfileType;
|
||||||
|
import com.telecominfraproject.wlan.profile.network.models.ApNetworkConfiguration;
|
||||||
|
import com.telecominfraproject.wlan.profile.rf.models.RfConfiguration;
|
||||||
|
import com.telecominfraproject.wlan.profile.ssid.models.SsidConfiguration;
|
||||||
|
import com.telecominfraproject.wlan.routing.RoutingServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.status.StatusServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.status.equipment.models.EquipmentChannelStatusData;
|
||||||
|
import com.telecominfraproject.wlan.status.equipment.models.EquipmentProtocolStatusData;
|
||||||
|
import com.telecominfraproject.wlan.status.equipment.models.EquipmentUpgradeStatusData;
|
||||||
|
import com.telecominfraproject.wlan.status.equipment.report.models.ActiveBSSID;
|
||||||
|
import com.telecominfraproject.wlan.status.equipment.report.models.ActiveBSSIDs;
|
||||||
|
import com.telecominfraproject.wlan.status.equipment.report.models.ClientConnectionDetails;
|
||||||
|
import com.telecominfraproject.wlan.status.models.Status;
|
||||||
|
import com.telecominfraproject.wlan.status.models.StatusDataType;
|
||||||
|
import com.vmware.ovsdb.protocol.operation.notation.Uuid;
|
||||||
|
|
||||||
|
import sts.OpensyncStats.AssocType;
|
||||||
|
import sts.OpensyncStats.Client;
|
||||||
|
import sts.OpensyncStats.ClientReport;
|
||||||
|
import sts.OpensyncStats.EventReport;
|
||||||
|
import sts.OpensyncStats.EventReport.ClientAssocEvent;
|
||||||
|
import sts.OpensyncStats.RadioBandType;
|
||||||
|
import sts.OpensyncStats.Report;
|
||||||
|
|
||||||
|
@RunWith(SpringRunner.class)
|
||||||
|
@ActiveProfiles(profiles = {"integration_test",})
|
||||||
|
@SpringBootTest(webEnvironment = WebEnvironment.NONE, classes = OpensyncExternalIntegrationCloudTest.class)
|
||||||
|
@Import(value = {AlarmServiceInterface.class, OpensyncExternalIntegrationCloud.class, OpensyncExternalIntegrationCloudTest.Config.class,
|
||||||
|
|
||||||
|
})
|
||||||
|
public class OpensyncExternalIntegrationCloudTest {
|
||||||
|
|
||||||
|
@MockBean
|
||||||
|
AlarmServiceInterface alarmServiceInterface;
|
||||||
|
@MockBean
|
||||||
|
CustomerServiceInterface customerServiceInterface;
|
||||||
|
@MockBean
|
||||||
|
LocationServiceInterface locationServiceInterface;
|
||||||
|
@MockBean(answer = Answers.RETURNS_MOCKS)
|
||||||
|
OvsdbSessionMapInterface ovsdbSessionMapInterface;
|
||||||
|
@MockBean
|
||||||
|
CloudEventDispatcherInterface equipmentMetricsCollectorInterface;
|
||||||
|
@MockBean
|
||||||
|
EquipmentServiceInterface equipmentServiceInterface;
|
||||||
|
@MockBean
|
||||||
|
RoutingServiceInterface routingServiceInterface;
|
||||||
|
@MockBean
|
||||||
|
ProfileServiceInterface profileServiceInterface;
|
||||||
|
@MockBean
|
||||||
|
StatusServiceInterface statusServiceInterface;
|
||||||
|
@MockBean
|
||||||
|
ClientServiceInterface clientServiceInterface;
|
||||||
|
@MockBean
|
||||||
|
FirmwareServiceInterface firmwareServiceInterface;
|
||||||
|
@MockBean(answer = Answers.RETURNS_MOCKS)
|
||||||
|
OpensyncCloudGatewayController gatewayController;
|
||||||
|
@MockBean
|
||||||
|
MqttStatsPublisher opensyncExternalIntegrationMqttProcessor;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
OpensyncExternalIntegrationCloud opensyncExternalIntegrationCloud;
|
||||||
|
|
||||||
|
MockitoSession mockito;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
static class Config {
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public OpensyncExternalIntegrationCloud opensyncExternalIntegrationCloud() {
|
||||||
|
return new OpensyncExternalIntegrationCloud();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public CacheManager cacheManager() {
|
||||||
|
return new CaffeineCacheManager();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Before
|
||||||
|
public void setUp() throws Exception {
|
||||||
|
|
||||||
|
mockito = Mockito.mockitoSession().initMocks(this).strictness(Strictness.STRICT_STUBS).startMocking();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@After
|
||||||
|
public void tearDown() throws Exception {
|
||||||
|
mockito.finishMocking();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testApConnected() {
|
||||||
|
|
||||||
|
Location location = new Location();
|
||||||
|
location.setId(8L);
|
||||||
|
location.setCustomerId(2);
|
||||||
|
LocationDetails details = LocationDetails.createWithDefaults();
|
||||||
|
details.setCountryCode(CountryCode.CA);
|
||||||
|
location.setDetails(details);
|
||||||
|
location.setName("Location-UT");
|
||||||
|
location.setLocationType(LocationType.BUILDING);
|
||||||
|
Mockito.when(locationServiceInterface.get(8L)).thenReturn(location);
|
||||||
|
Customer customer = new Customer();
|
||||||
|
customer.setId(2);
|
||||||
|
CustomerDetails customerDetails = new CustomerDetails();
|
||||||
|
customerDetails.setAutoProvisioning(new EquipmentAutoProvisioningSettings());
|
||||||
|
customerDetails.getAutoProvisioning().setEnabled(true);
|
||||||
|
customerDetails.getAutoProvisioning().setLocationId(location.getId());
|
||||||
|
|
||||||
|
customer.setDetails(customerDetails);
|
||||||
|
|
||||||
|
Mockito.when(customerServiceInterface.getOrNull(ArgumentMatchers.anyInt())).thenReturn(customer);
|
||||||
|
|
||||||
|
Profile apProfile = new Profile();
|
||||||
|
apProfile.setDetails(ApNetworkConfiguration.createWithDefaults());
|
||||||
|
|
||||||
|
Profile ssidProfile = new Profile();
|
||||||
|
ssidProfile.setDetails(SsidConfiguration.createWithDefaults());
|
||||||
|
|
||||||
|
apProfile.setChildProfileIds(ImmutableSet.of(ssidProfile.getId()));
|
||||||
|
Mockito.when(profileServiceInterface.create(ArgumentMatchers.any(Profile.class))).thenAnswer(i -> i.getArguments()[0]);
|
||||||
|
// .thenReturn(ssidProfile);
|
||||||
|
Mockito.when(profileServiceInterface.update(ArgumentMatchers.any(Profile.class))).thenAnswer(i -> i.getArguments()[0]);
|
||||||
|
|
||||||
|
Status fwStatus = new Status();
|
||||||
|
fwStatus.setDetails(new EquipmentUpgradeStatusData());
|
||||||
|
Mockito.when(statusServiceInterface.getOrNull(ArgumentMatchers.anyInt(), ArgumentMatchers.anyLong(), ArgumentMatchers.eq(StatusDataType.FIRMWARE)))
|
||||||
|
.thenReturn(fwStatus);
|
||||||
|
|
||||||
|
Mockito.when(firmwareServiceInterface.getDefaultCustomerTrackSetting()).thenReturn(new CustomerFirmwareTrackSettings());
|
||||||
|
CustomerFirmwareTrackRecord fwTrackRecord = new CustomerFirmwareTrackRecord();
|
||||||
|
fwTrackRecord.setSettings(new CustomerFirmwareTrackSettings());
|
||||||
|
fwTrackRecord.setTrackRecordId(3);
|
||||||
|
fwTrackRecord.setCustomerId(2);
|
||||||
|
Mockito.when(firmwareServiceInterface.getCustomerFirmwareTrackRecord(ArgumentMatchers.anyInt())).thenReturn(fwTrackRecord);
|
||||||
|
|
||||||
|
Equipment equipment = new Equipment();
|
||||||
|
equipment.setCustomerId(2);
|
||||||
|
equipment.setEquipmentType(EquipmentType.AP);
|
||||||
|
equipment.setInventoryId("Test_Client_21P10C68818122");
|
||||||
|
equipment.setLocationId(location.getId());
|
||||||
|
equipment.setId(1L);
|
||||||
|
equipment.setProfileId(apProfile.getId());
|
||||||
|
equipment.setDetails(ApElementConfiguration.createWithDefaults());
|
||||||
|
|
||||||
|
Mockito.when(equipmentServiceInterface.get(1L)).thenReturn(equipment);
|
||||||
|
Mockito.when(equipmentServiceInterface.getByInventoryIdOrNull(ArgumentMatchers.eq("Test_Client_21P10C68818122"))).thenReturn(equipment);
|
||||||
|
|
||||||
|
Mockito.when(equipmentServiceInterface.create(ArgumentMatchers.any(Equipment.class))).thenAnswer(i -> i.getArguments()[0]);
|
||||||
|
Mockito.when(equipmentServiceInterface.update(ArgumentMatchers.any(Equipment.class))).thenAnswer(i -> i.getArguments()[0]);
|
||||||
|
|
||||||
|
OvsdbSession session = Mockito.mock(OvsdbSession.class);
|
||||||
|
Mockito.when(ovsdbSessionMapInterface.getSession("Test_Client_21P10C68818122")).thenReturn(session);
|
||||||
|
|
||||||
|
opensyncExternalIntegrationCloud.apConnected("Test_Client_21P10C68818122", createConnectNodeInfo());
|
||||||
|
|
||||||
|
Mockito.verify(firmwareServiceInterface).getDefaultCustomerTrackSetting();
|
||||||
|
Mockito.verify(locationServiceInterface).get(8L);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testApConnectedNewAp() throws Exception {
|
||||||
|
Location location = new Location();
|
||||||
|
location.setId(8L);
|
||||||
|
location.setCustomerId(2);
|
||||||
|
LocationDetails details = LocationDetails.createWithDefaults();
|
||||||
|
details.setCountryCode(CountryCode.CA);
|
||||||
|
location.setDetails(details);
|
||||||
|
location.setName("Location-UT");
|
||||||
|
location.setLocationType(LocationType.BUILDING);
|
||||||
|
Mockito.when(locationServiceInterface.get(8L)).thenReturn(location);
|
||||||
|
|
||||||
|
Customer customer = new Customer();
|
||||||
|
customer.setId(2);
|
||||||
|
CustomerDetails customerDetails = new CustomerDetails();
|
||||||
|
customerDetails.setAutoProvisioning(new EquipmentAutoProvisioningSettings());
|
||||||
|
customerDetails.getAutoProvisioning().setEnabled(true);
|
||||||
|
customerDetails.getAutoProvisioning().setLocationId(location.getId());
|
||||||
|
|
||||||
|
customer.setDetails(customerDetails);
|
||||||
|
|
||||||
|
Mockito.when(customerServiceInterface.getOrNull(ArgumentMatchers.anyInt())).thenReturn(customer);
|
||||||
|
|
||||||
|
Profile rfProfile = new Profile();
|
||||||
|
rfProfile.setId(1);
|
||||||
|
rfProfile.setName("testRfProfile");
|
||||||
|
rfProfile.setDetails(RfConfiguration.createWithDefaults());
|
||||||
|
rfProfile.setProfileType(ProfileType.rf);
|
||||||
|
|
||||||
|
Profile apProfile = new Profile();
|
||||||
|
apProfile.setDetails(ApNetworkConfiguration.createWithDefaults());
|
||||||
|
apProfile.setName("testApProfile");
|
||||||
|
apProfile.setProfileType(ProfileType.equipment_ap);
|
||||||
|
|
||||||
|
Profile ssidProfile = new Profile();
|
||||||
|
ssidProfile.setId(2);
|
||||||
|
ssidProfile.setDetails(SsidConfiguration.createWithDefaults());
|
||||||
|
|
||||||
|
Set<Long> childProfileIds = new HashSet<>();
|
||||||
|
childProfileIds.add(rfProfile.getId());
|
||||||
|
childProfileIds.add(ssidProfile.getId());
|
||||||
|
apProfile.setChildProfileIds(childProfileIds);
|
||||||
|
|
||||||
|
Mockito.when(profileServiceInterface.create(ArgumentMatchers.any(Profile.class))).thenReturn(apProfile).thenReturn(ssidProfile).thenReturn(rfProfile);
|
||||||
|
Mockito.when(profileServiceInterface.update(ArgumentMatchers.any(Profile.class))).thenReturn(apProfile);
|
||||||
|
|
||||||
|
List<Profile> profileList = new ArrayList<>();
|
||||||
|
profileList.add(apProfile);
|
||||||
|
profileList.add(rfProfile);
|
||||||
|
profileList.add(ssidProfile);
|
||||||
|
|
||||||
|
Mockito.when(profileServiceInterface.getProfileWithChildren(ArgumentMatchers.anyLong())).thenReturn(profileList);
|
||||||
|
|
||||||
|
Equipment equipment = new Equipment();
|
||||||
|
equipment.setCustomerId(2);
|
||||||
|
equipment.setEquipmentType(EquipmentType.AP);
|
||||||
|
equipment.setInventoryId("Test_Client_21P10C68818122");
|
||||||
|
equipment.setLocationId(location.getId());
|
||||||
|
equipment.setId(1L);
|
||||||
|
equipment.setProfileId(apProfile.getId());
|
||||||
|
equipment.setDetails(ApElementConfiguration.createWithDefaults());
|
||||||
|
|
||||||
|
Mockito.when(equipmentServiceInterface.get(1L)).thenReturn(equipment);
|
||||||
|
|
||||||
|
Mockito.when(equipmentServiceInterface.create(ArgumentMatchers.any(Equipment.class))).thenAnswer(i -> i.getArguments()[0]);
|
||||||
|
Mockito.when(equipmentServiceInterface.update(ArgumentMatchers.any(Equipment.class))).thenAnswer(i -> i.getArguments()[0]);
|
||||||
|
Mockito.when(equipmentServiceInterface.getByInventoryIdOrNull(ArgumentMatchers.eq("Test_Client_21P10C68818122"))).thenReturn(null);
|
||||||
|
|
||||||
|
Status fwStatus = new Status();
|
||||||
|
fwStatus.setDetails(new EquipmentUpgradeStatusData());
|
||||||
|
Mockito.when(statusServiceInterface.getOrNull(ArgumentMatchers.anyInt(), ArgumentMatchers.anyLong(), ArgumentMatchers.eq(StatusDataType.FIRMWARE)))
|
||||||
|
.thenReturn(fwStatus);
|
||||||
|
|
||||||
|
Mockito.when(firmwareServiceInterface.getDefaultCustomerTrackSetting()).thenReturn(new CustomerFirmwareTrackSettings());
|
||||||
|
CustomerFirmwareTrackRecord fwTrackRecord = new CustomerFirmwareTrackRecord();
|
||||||
|
fwTrackRecord.setSettings(new CustomerFirmwareTrackSettings());
|
||||||
|
fwTrackRecord.setTrackRecordId(3);
|
||||||
|
fwTrackRecord.setCustomerId(2);
|
||||||
|
Mockito.when(firmwareServiceInterface.getCustomerFirmwareTrackRecord(ArgumentMatchers.anyInt())).thenReturn(fwTrackRecord);
|
||||||
|
|
||||||
|
OvsdbSession session = Mockito.mock(OvsdbSession.class);
|
||||||
|
|
||||||
|
Mockito.when(ovsdbSessionMapInterface.getSession("Test_Client_21P10C68818122")).thenReturn(session);
|
||||||
|
|
||||||
|
// Mockito.when(locationServiceInterface.get(Mockito.anyLong())).thenReturn(value);
|
||||||
|
opensyncExternalIntegrationCloud.apConnected("Test_Client_21P10C68818122", createConnectNodeInfo());
|
||||||
|
|
||||||
|
Mockito.verify(customerServiceInterface).getOrNull(ArgumentMatchers.anyInt());
|
||||||
|
Mockito.verify(equipmentServiceInterface).getByInventoryIdOrNull("Test_Client_21P10C68818122");
|
||||||
|
Mockito.verify(firmwareServiceInterface).getDefaultCustomerTrackSetting();
|
||||||
|
Mockito.verify(locationServiceInterface, Mockito.times(2)).get(ArgumentMatchers.anyLong());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testApConnectedNoAutoprovisioning() throws Exception {
|
||||||
|
Profile apProfile = new Profile();
|
||||||
|
apProfile.setDetails(ApNetworkConfiguration.createWithDefaults());
|
||||||
|
|
||||||
|
Profile ssidProfile = new Profile();
|
||||||
|
ssidProfile.setDetails(SsidConfiguration.createWithDefaults());
|
||||||
|
|
||||||
|
apProfile.setChildProfileIds(ImmutableSet.of(ssidProfile.getId()));
|
||||||
|
Mockito.when(profileServiceInterface.create(ArgumentMatchers.any(Profile.class))).thenAnswer(i -> i.getArguments()[0]);
|
||||||
|
// .thenReturn(ssidProfile);
|
||||||
|
Mockito.when(profileServiceInterface.update(ArgumentMatchers.any(Profile.class))).thenAnswer(i -> i.getArguments()[0]);
|
||||||
|
|
||||||
|
Location location = new Location();
|
||||||
|
location.setId(8L);
|
||||||
|
location.setCustomerId(2);
|
||||||
|
LocationDetails details = LocationDetails.createWithDefaults();
|
||||||
|
details.setCountryCode(CountryCode.CA);
|
||||||
|
location.setDetails(details);
|
||||||
|
location.setName("Location-UT");
|
||||||
|
location.setLocationType(LocationType.BUILDING);
|
||||||
|
Mockito.when(locationServiceInterface.get(8L)).thenReturn(location);
|
||||||
|
|
||||||
|
Equipment equipment = new Equipment();
|
||||||
|
equipment.setCustomerId(2);
|
||||||
|
equipment.setEquipmentType(EquipmentType.AP);
|
||||||
|
equipment.setInventoryId("Test_Client_21P10C68818122");
|
||||||
|
equipment.setLocationId(location.getId());
|
||||||
|
equipment.setId(1L);
|
||||||
|
equipment.setProfileId(apProfile.getId());
|
||||||
|
equipment.setDetails(ApElementConfiguration.createWithDefaults());
|
||||||
|
Status fwStatus = new Status();
|
||||||
|
fwStatus.setDetails(new EquipmentUpgradeStatusData());
|
||||||
|
Mockito.when(statusServiceInterface.getOrNull(ArgumentMatchers.anyInt(), ArgumentMatchers.anyLong(), ArgumentMatchers.eq(StatusDataType.FIRMWARE)))
|
||||||
|
.thenReturn(fwStatus);
|
||||||
|
|
||||||
|
Mockito.when(firmwareServiceInterface.getDefaultCustomerTrackSetting()).thenReturn(new CustomerFirmwareTrackSettings());
|
||||||
|
CustomerFirmwareTrackRecord fwTrackRecord = new CustomerFirmwareTrackRecord();
|
||||||
|
fwTrackRecord.setSettings(new CustomerFirmwareTrackSettings());
|
||||||
|
fwTrackRecord.setTrackRecordId(3);
|
||||||
|
fwTrackRecord.setCustomerId(2);
|
||||||
|
Mockito.when(firmwareServiceInterface.getCustomerFirmwareTrackRecord(ArgumentMatchers.anyInt())).thenReturn(fwTrackRecord);
|
||||||
|
Mockito.when(equipmentServiceInterface.get(1L)).thenReturn(equipment);
|
||||||
|
|
||||||
|
Mockito.when(equipmentServiceInterface.create(ArgumentMatchers.any(Equipment.class))).thenAnswer(i -> i.getArguments()[0]);
|
||||||
|
Mockito.when(equipmentServiceInterface.update(ArgumentMatchers.any(Equipment.class))).thenAnswer(i -> i.getArguments()[0]);
|
||||||
|
Mockito.when(equipmentServiceInterface.getByInventoryIdOrNull(ArgumentMatchers.eq("Test_Client_21P10C68818122"))).thenReturn(equipment);
|
||||||
|
|
||||||
|
Customer customer = new Customer();
|
||||||
|
customer.setId(2);
|
||||||
|
CustomerDetails customerDetails = new CustomerDetails();
|
||||||
|
EquipmentAutoProvisioningSettings autoprovSettings = new EquipmentAutoProvisioningSettings();
|
||||||
|
autoprovSettings.setEnabled(false);
|
||||||
|
customerDetails.setAutoProvisioning(autoprovSettings);
|
||||||
|
customer.setDetails(customerDetails);
|
||||||
|
|
||||||
|
Mockito.when(customerServiceInterface.getOrNull(ArgumentMatchers.anyInt())).thenReturn(customer);
|
||||||
|
|
||||||
|
opensyncExternalIntegrationCloud.apConnected("Test_Client_21P10C68818122", createConnectNodeInfo());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testApDisconnected() {
|
||||||
|
opensyncExternalIntegrationCloud.apDisconnected("Test_Client_21P10C68818122");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testGetApConfig() throws Exception {
|
||||||
|
|
||||||
|
Customer customer = new Customer();
|
||||||
|
customer.setId(2);
|
||||||
|
CustomerDetails customerDetails = new CustomerDetails();
|
||||||
|
EquipmentAutoProvisioningSettings autoprovSettings = new EquipmentAutoProvisioningSettings();
|
||||||
|
autoprovSettings.setEnabled(true);
|
||||||
|
customerDetails.setAutoProvisioning(autoprovSettings);
|
||||||
|
customer.setDetails(customerDetails);
|
||||||
|
|
||||||
|
Mockito.when(customerServiceInterface.getOrNull(ArgumentMatchers.anyInt())).thenReturn(customer);
|
||||||
|
|
||||||
|
Equipment equipment = new Equipment();
|
||||||
|
equipment.setDetails(ApElementConfiguration.createWithDefaults());
|
||||||
|
|
||||||
|
Mockito.when(equipmentServiceInterface.getByInventoryIdOrNull(ArgumentMatchers.any())).thenReturn(equipment);
|
||||||
|
|
||||||
|
Profile apProfile = new Profile();
|
||||||
|
apProfile.setDetails(ApNetworkConfiguration.createWithDefaults());
|
||||||
|
|
||||||
|
Profile ssidProfile = new Profile();
|
||||||
|
ssidProfile.setDetails(SsidConfiguration.createWithDefaults());
|
||||||
|
|
||||||
|
List<Profile> profileWithChildren = ImmutableList.of(apProfile, ssidProfile);
|
||||||
|
Mockito.when(profileServiceInterface.getProfileWithChildren(ArgumentMatchers.anyLong())).thenReturn(profileWithChildren);
|
||||||
|
|
||||||
|
assertNotNull(opensyncExternalIntegrationCloud.getApConfig("Test_Client_21P10C68818122"));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testGetApConfigNoAutoprovisioning() throws Exception {
|
||||||
|
|
||||||
|
Customer customer = new Customer();
|
||||||
|
customer.setId(2);
|
||||||
|
CustomerDetails customerDetails = new CustomerDetails();
|
||||||
|
EquipmentAutoProvisioningSettings autoprovSettings = new EquipmentAutoProvisioningSettings();
|
||||||
|
autoprovSettings.setEnabled(false);
|
||||||
|
customerDetails.setAutoProvisioning(autoprovSettings);
|
||||||
|
customer.setDetails(customerDetails);
|
||||||
|
|
||||||
|
Mockito.when(customerServiceInterface.getOrNull(ArgumentMatchers.anyInt())).thenReturn(customer);
|
||||||
|
|
||||||
|
assertNull(opensyncExternalIntegrationCloud.getApConfig("Test_Client_21P10C68818122"));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testProcessMqttMessageStringReport() {
|
||||||
|
|
||||||
|
Report report = Report.newBuilder().setNodeID("21P10C68818122").addAllClients(getOpensyncStatsClientReportsList())
|
||||||
|
.addAllEventReport(getOpensyncStatsEventReportsList()).build();
|
||||||
|
|
||||||
|
String topic = "/ap/Test_Client_21P10C68818122/opensync";
|
||||||
|
|
||||||
|
Status bssidStatus = new Status();
|
||||||
|
bssidStatus.setStatusDataType(StatusDataType.ACTIVE_BSSIDS);
|
||||||
|
bssidStatus.setCustomerId(2);
|
||||||
|
|
||||||
|
ActiveBSSIDs activeBssidsDetails = new ActiveBSSIDs();
|
||||||
|
activeBssidsDetails.setActiveBSSIDs(getActiveBssidList());
|
||||||
|
bssidStatus.setDetails(activeBssidsDetails);
|
||||||
|
|
||||||
|
Mockito.when(statusServiceInterface.getOrNull(ArgumentMatchers.anyInt(), ArgumentMatchers.anyLong(), ArgumentMatchers.eq(StatusDataType.ACTIVE_BSSIDS)))
|
||||||
|
.thenReturn(bssidStatus);
|
||||||
|
|
||||||
|
Mockito.when(statusServiceInterface.update(ArgumentMatchers.any(Status.class))).thenReturn(bssidStatus);
|
||||||
|
com.telecominfraproject.wlan.client.models.Client clientInstance = new com.telecominfraproject.wlan.client.models.Client();
|
||||||
|
clientInstance.setMacAddress(MacAddress.valueOf("7C:AB:60:E6:EA:4D"));
|
||||||
|
clientInstance.setDetails(new ClientInfoDetails());
|
||||||
|
com.telecominfraproject.wlan.client.models.Client clientInstance2 = new com.telecominfraproject.wlan.client.models.Client();
|
||||||
|
clientInstance2.setMacAddress(MacAddress.valueOf("C0:9A:D0:76:A9:69"));
|
||||||
|
clientInstance2.setDetails(new ClientInfoDetails());
|
||||||
|
Mockito.when(clientServiceInterface.getOrNull(ArgumentMatchers.anyInt(), ArgumentMatchers.any(MacAddress.class))).thenReturn(clientInstance)
|
||||||
|
.thenReturn(clientInstance2);
|
||||||
|
Mockito.when(clientServiceInterface.update(ArgumentMatchers.any(com.telecominfraproject.wlan.client.models.Client.class))).thenReturn(clientInstance)
|
||||||
|
.thenReturn(clientInstance2);
|
||||||
|
|
||||||
|
ClientSession clientSession = new ClientSession();
|
||||||
|
clientSession.setMacAddress(MacAddress.valueOf("7C:AB:60:E6:EA:4D"));
|
||||||
|
clientSession.setDetails(new ClientSessionDetails());
|
||||||
|
ClientSession clientSession2 = new ClientSession();
|
||||||
|
clientSession2.setMacAddress(MacAddress.valueOf("C0:9A:D0:76:A9:69"));
|
||||||
|
clientSession2.setDetails(new ClientSessionDetails());
|
||||||
|
Mockito.when(clientServiceInterface.getSessionOrNull(ArgumentMatchers.anyInt(), ArgumentMatchers.anyLong(), ArgumentMatchers.any(MacAddress.class)))
|
||||||
|
.thenReturn(clientSession).thenReturn(clientSession2);
|
||||||
|
|
||||||
|
Mockito.when(clientServiceInterface.updateSession(ArgumentMatchers.any(ClientSession.class))).thenReturn(clientSession).thenReturn(clientSession2);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ignore
|
||||||
|
public void testProcessMqttMessageStringFlowReport() {
|
||||||
|
// TODO: implement me when support flow reports
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ignore
|
||||||
|
public void testProcessMqttMessageStringWCStatsReport() {
|
||||||
|
// TODO: implement me when wcs stats reports supported
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testWifiVIFStateDbTableUpdate() {
|
||||||
|
|
||||||
|
String apId = "Test_Client_21P10C68818122";
|
||||||
|
OpensyncAPVIFState vifState1 = new OpensyncAPVIFState();
|
||||||
|
vifState1.setMac("24:f5:a2:ef:2e:54");
|
||||||
|
vifState1.setSsid("ssid-1");
|
||||||
|
// OpensyncWifiAssociatedClients wifiClient1 = new
|
||||||
|
// OpensyncWifiAssociatedClients();
|
||||||
|
// wifiClient1.setMac("C0:9A:D0:E6:EA:4D");
|
||||||
|
Uuid uuid1 = Uuid.of(UUID.randomUUID());
|
||||||
|
vifState1.setAssociatedClients(ImmutableList.of(uuid1));
|
||||||
|
OpensyncAPVIFState vifState2 = new OpensyncAPVIFState();
|
||||||
|
vifState2.setMac("24:f5:a2:ef:2e:55");
|
||||||
|
vifState2.setSsid("ssid-2");
|
||||||
|
// OpensyncWifiAssociatedClients wifiClient2 = new
|
||||||
|
// OpensyncWifiAssociatedClients();
|
||||||
|
// wifiClient2.setMac("7C:AB:60:E6:EA:4D");
|
||||||
|
Uuid uuid2 = Uuid.of(UUID.randomUUID());
|
||||||
|
vifState2.setAssociatedClients(ImmutableList.of(uuid2));
|
||||||
|
OpensyncAPVIFState vifState3 = new OpensyncAPVIFState();
|
||||||
|
vifState3.setMac("24:f5:a2:ef:2e:56");
|
||||||
|
vifState3.setSsid("ssid-3");
|
||||||
|
// OpensyncWifiAssociatedClients wifiClient3 = new
|
||||||
|
// OpensyncWifiAssociatedClients();
|
||||||
|
// wifiClient3.setMac("C0:9A:D0:76:A9:69");
|
||||||
|
Uuid uuid3 = Uuid.of(UUID.randomUUID());
|
||||||
|
|
||||||
|
vifState3.setAssociatedClients(ImmutableList.of(uuid3));
|
||||||
|
|
||||||
|
Status bssidStatus = new Status();
|
||||||
|
bssidStatus.setStatusDataType(StatusDataType.ACTIVE_BSSIDS);
|
||||||
|
bssidStatus.setCustomerId(2);
|
||||||
|
|
||||||
|
ActiveBSSIDs activeBssidsDetails = new ActiveBSSIDs();
|
||||||
|
activeBssidsDetails.setActiveBSSIDs(getActiveBssidList());
|
||||||
|
bssidStatus.setDetails(activeBssidsDetails);
|
||||||
|
|
||||||
|
Mockito.when(statusServiceInterface.getOrNull(2, 1L, StatusDataType.ACTIVE_BSSIDS)).thenReturn(bssidStatus);
|
||||||
|
Mockito.when(statusServiceInterface.update(bssidStatus)).thenReturn(bssidStatus);
|
||||||
|
|
||||||
|
Status clientStatus = new Status();
|
||||||
|
clientStatus.setCustomerId(2);
|
||||||
|
clientStatus.setEquipmentId(1L);
|
||||||
|
clientStatus.setStatusDataType(StatusDataType.CLIENT_DETAILS);
|
||||||
|
ClientConnectionDetails clientConnectionDetails = new ClientConnectionDetails();
|
||||||
|
Map<RadioType, Integer> clientsPerRadio = new HashMap<>();
|
||||||
|
clientConnectionDetails.setNumClientsPerRadio(clientsPerRadio);
|
||||||
|
clientStatus.setDetails(clientConnectionDetails);
|
||||||
|
|
||||||
|
Mockito.when(statusServiceInterface.getOrNull(2, 1L, StatusDataType.CLIENT_DETAILS)).thenReturn(clientStatus);
|
||||||
|
Mockito.when(statusServiceInterface.update(clientStatus)).thenReturn(clientStatus);
|
||||||
|
|
||||||
|
OvsdbSession session = Mockito.mock(OvsdbSession.class);
|
||||||
|
Mockito.when(session.getEquipmentId()).thenReturn(1L);
|
||||||
|
|
||||||
|
Equipment equipment = new Equipment();
|
||||||
|
equipment.setCustomerId(2);
|
||||||
|
equipment.setId(1L);
|
||||||
|
equipment.setEquipmentType(EquipmentType.AP);
|
||||||
|
equipment.setInventoryId(apId);
|
||||||
|
equipment.setProfileId(1);
|
||||||
|
equipment.setDetails(ApElementConfiguration.createWithDefaults());
|
||||||
|
|
||||||
|
Mockito.when(equipmentServiceInterface.getOrNull(1L)).thenReturn(equipment);
|
||||||
|
Mockito.when(equipmentServiceInterface.get(equipment.getId())).thenReturn(equipment);
|
||||||
|
Mockito.when(equipmentServiceInterface.update(equipment)).thenReturn(equipment);
|
||||||
|
|
||||||
|
Profile rfProfile = new Profile();
|
||||||
|
rfProfile.setName("testRfProfile");
|
||||||
|
rfProfile.setId(2);
|
||||||
|
rfProfile.setDetails(RfConfiguration.createWithDefaults());
|
||||||
|
rfProfile.setProfileType(ProfileType.rf);
|
||||||
|
Set<Long> childProfileIds = new HashSet<>();
|
||||||
|
childProfileIds.add(rfProfile.getId());
|
||||||
|
|
||||||
|
Profile apProfile = new Profile();
|
||||||
|
apProfile.setName("testApProfile");
|
||||||
|
apProfile.setId(1);
|
||||||
|
apProfile.setProfileType(ProfileType.equipment_ap);
|
||||||
|
apProfile.setChildProfileIds(childProfileIds);
|
||||||
|
|
||||||
|
List<Profile> profileList = new ArrayList<>();
|
||||||
|
profileList.add(apProfile);
|
||||||
|
profileList.add(rfProfile);
|
||||||
|
|
||||||
|
Mockito.when(profileServiceInterface.getProfileWithChildren(ArgumentMatchers.anyLong())).thenReturn(profileList);
|
||||||
|
|
||||||
|
Mockito.when(ovsdbSessionMapInterface.getSession(apId)).thenReturn(session);
|
||||||
|
|
||||||
|
opensyncExternalIntegrationCloud.wifiVIFStateDbTableUpdate(ImmutableList.of(vifState1, vifState2, vifState3), apId);
|
||||||
|
|
||||||
|
Mockito.verify(session).getEquipmentId();
|
||||||
|
Mockito.verify(ovsdbSessionMapInterface).getSession(apId);
|
||||||
|
Mockito.verify(equipmentServiceInterface).getOrNull(1L);
|
||||||
|
Mockito.verify(statusServiceInterface).getOrNull(2, 1L, StatusDataType.CLIENT_DETAILS);
|
||||||
|
|
||||||
|
Mockito.verify(statusServiceInterface).getOrNull(2, 1L, StatusDataType.ACTIVE_BSSIDS);
|
||||||
|
Mockito.verify(statusServiceInterface).update(clientStatus);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testWifiRadioStatusDbTableUpdate() {
|
||||||
|
|
||||||
|
String apId = "Test_Client_21P10C68818122";
|
||||||
|
OpensyncAPRadioState radioState1 = new OpensyncAPRadioState();
|
||||||
|
radioState1.setChannel(6);
|
||||||
|
radioState1.setVifStates(ImmutableSet.of(new Uuid(UUID.randomUUID())));
|
||||||
|
radioState1.setFreqBand(RadioType.is5GHzL);
|
||||||
|
radioState1.setAllowedChannels(ImmutableSet.of(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11));
|
||||||
|
radioState1.setTxPower(32);
|
||||||
|
radioState1.setEnabled(true);
|
||||||
|
radioState1.setCountry("CA");
|
||||||
|
|
||||||
|
OpensyncAPRadioState radioState2 = new OpensyncAPRadioState();
|
||||||
|
radioState2.setChannel(36);
|
||||||
|
radioState2.setVifStates(ImmutableSet.of(new Uuid(UUID.randomUUID())));
|
||||||
|
radioState2.setFreqBand(RadioType.is5GHzL);
|
||||||
|
radioState2.setAllowedChannels(ImmutableSet.of(36, 40, 44, 48, 52, 56, 60, 64));
|
||||||
|
radioState2.setTxPower(32);
|
||||||
|
radioState2.setEnabled(true);
|
||||||
|
radioState2.setCountry("CA");
|
||||||
|
|
||||||
|
OpensyncAPRadioState radioState3 = new OpensyncAPRadioState();
|
||||||
|
radioState3.setChannel(149);
|
||||||
|
radioState3.setVifStates(ImmutableSet.of(new Uuid(UUID.randomUUID())));
|
||||||
|
radioState3.setFreqBand(RadioType.is5GHzL);
|
||||||
|
radioState3.setAllowedChannels(ImmutableSet.of(00, 104, 108, 112, 116, 132, 136, 140, 144, 149, 153, 157, 161, 165));
|
||||||
|
radioState3.setTxPower(32);
|
||||||
|
radioState3.setEnabled(true);
|
||||||
|
radioState3.setCountry("CA");
|
||||||
|
|
||||||
|
Equipment equipment = new Equipment();
|
||||||
|
equipment.setCustomerId(1);
|
||||||
|
equipment.setEquipmentType(EquipmentType.AP);
|
||||||
|
equipment.setInventoryId(apId);
|
||||||
|
equipment.setDetails(ApElementConfiguration.createWithDefaults());
|
||||||
|
|
||||||
|
Mockito.when(equipmentServiceInterface.getByInventoryIdOrNull(apId)).thenReturn(equipment);
|
||||||
|
Mockito.when(equipmentServiceInterface.update(equipment)).thenReturn(equipment);
|
||||||
|
|
||||||
|
Status protocolStatus = new Status();
|
||||||
|
protocolStatus.setCustomerId(2);
|
||||||
|
protocolStatus.setEquipmentId(1L);
|
||||||
|
EquipmentProtocolStatusData protocolStatusData = new EquipmentProtocolStatusData();
|
||||||
|
protocolStatusData.setReportedCC(CountryCode.CA);
|
||||||
|
protocolStatus.setDetails(protocolStatusData);
|
||||||
|
protocolStatus.setStatusDataType(StatusDataType.PROTOCOL);
|
||||||
|
|
||||||
|
Mockito.when(statusServiceInterface.getOrNull(2, 1L, StatusDataType.PROTOCOL)).thenReturn(protocolStatus);
|
||||||
|
|
||||||
|
Status channelStatus = new Status();
|
||||||
|
channelStatus.setCustomerId(2);
|
||||||
|
channelStatus.setEquipmentId(1L);
|
||||||
|
EquipmentChannelStatusData channelStatusData = new EquipmentChannelStatusData();
|
||||||
|
Map<RadioType, Integer> channelStatusDataMap = new EnumMap<>(RadioType.class);
|
||||||
|
channelStatusDataMap.put(RadioType.is2dot4GHz, 6);
|
||||||
|
channelStatusDataMap.put(RadioType.is5GHzL, 36);
|
||||||
|
channelStatusDataMap.put(RadioType.is5GHzU, 157);
|
||||||
|
channelStatusData.setChannelNumberStatusDataMap(channelStatusDataMap);
|
||||||
|
channelStatus.setDetails(channelStatusData);
|
||||||
|
|
||||||
|
Mockito.when(statusServiceInterface.getOrNull(2, 1L, StatusDataType.RADIO_CHANNEL)).thenReturn(channelStatus);
|
||||||
|
Status bssidStatus = new Status();
|
||||||
|
bssidStatus.setStatusDataType(StatusDataType.ACTIVE_BSSIDS);
|
||||||
|
bssidStatus.setCustomerId(2);
|
||||||
|
|
||||||
|
ActiveBSSIDs activeBssidsDetails = new ActiveBSSIDs();
|
||||||
|
activeBssidsDetails.setActiveBSSIDs(getActiveBssidList());
|
||||||
|
bssidStatus.setDetails(activeBssidsDetails);
|
||||||
|
|
||||||
|
Mockito.when(statusServiceInterface.getOrNull(2, 1L, StatusDataType.ACTIVE_BSSIDS)).thenReturn(bssidStatus);
|
||||||
|
|
||||||
|
Status clientStatus = new Status();
|
||||||
|
clientStatus.setCustomerId(2);
|
||||||
|
clientStatus.setEquipmentId(1L);
|
||||||
|
clientStatus.setStatusDataType(StatusDataType.CLIENT_DETAILS);
|
||||||
|
ClientConnectionDetails clientConnectionDetails = new ClientConnectionDetails();
|
||||||
|
|
||||||
|
Map<RadioType, Integer> clientsPerRadio = new HashMap<>();
|
||||||
|
clientConnectionDetails.setNumClientsPerRadio(clientsPerRadio);
|
||||||
|
clientStatus.setDetails(clientConnectionDetails);
|
||||||
|
|
||||||
|
Mockito.when(statusServiceInterface.getOrNull(2, 1L, StatusDataType.CLIENT_DETAILS)).thenReturn(clientStatus);
|
||||||
|
Mockito.when(statusServiceInterface.update(Mockito.any(Status.class))).thenReturn(channelStatus).thenReturn(bssidStatus).thenReturn(clientStatus);
|
||||||
|
|
||||||
|
OvsdbSession session = Mockito.mock(OvsdbSession.class);
|
||||||
|
Mockito.when(session.getEquipmentId()).thenReturn(1L);
|
||||||
|
|
||||||
|
Mockito.when(ovsdbSessionMapInterface.getSession(apId)).thenReturn(session);
|
||||||
|
|
||||||
|
opensyncExternalIntegrationCloud.wifiRadioStatusDbTableUpdate(ImmutableList.of(radioState1, radioState2, radioState3), apId);
|
||||||
|
|
||||||
|
Mockito.verify(session).getEquipmentId();
|
||||||
|
|
||||||
|
Mockito.verify(ovsdbSessionMapInterface).getSession(apId);
|
||||||
|
Mockito.verify(equipmentServiceInterface, Mockito.times(1)).getByInventoryIdOrNull(apId);
|
||||||
|
Mockito.verify(statusServiceInterface, Mockito.times(1)).getOrNull(1, 1L, StatusDataType.RADIO_CHANNEL);
|
||||||
|
|
||||||
|
Mockito.verify(statusServiceInterface, Mockito.times(3)).getOrNull(1, 1L, StatusDataType.PROTOCOL);
|
||||||
|
Mockito.verify(statusServiceInterface, Mockito.never()).update(bssidStatus);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ignore
|
||||||
|
public void testWifiInetStateDbTableUpdate() {
|
||||||
|
// TODO: implement me
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ignore
|
||||||
|
public void testWifiAssociatedClientsDbTableUpdate() {
|
||||||
|
// TODO: implement me
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ignore
|
||||||
|
public void testAwlanNodeDbTableUpdate() {
|
||||||
|
// TODO: implement me
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testWifiVIFStateDbTableDelete() {
|
||||||
|
String apId = "Test_Client_21P10C68818122";
|
||||||
|
|
||||||
|
Equipment equipment = new Equipment();
|
||||||
|
equipment.setCustomerId(2);
|
||||||
|
equipment.setId(1L);
|
||||||
|
equipment.setEquipmentType(EquipmentType.AP);
|
||||||
|
equipment.setInventoryId(apId);
|
||||||
|
equipment.setProfileId(1);
|
||||||
|
equipment.setDetails(ApElementConfiguration.createWithDefaults());
|
||||||
|
|
||||||
|
Mockito.when(equipmentServiceInterface.getByInventoryIdOrNull(apId)).thenReturn(equipment);
|
||||||
|
Mockito.when(equipmentServiceInterface.getOrNull(1L)).thenReturn(equipment);
|
||||||
|
|
||||||
|
OvsdbSession session = new OvsdbSession();
|
||||||
|
session.setApId(apId);
|
||||||
|
session.setEquipmentId(1L);
|
||||||
|
Mockito.when(ovsdbSessionMapInterface.getSession(apId)).thenReturn(session);
|
||||||
|
|
||||||
|
Status bssidStatus = new Status();
|
||||||
|
bssidStatus.setStatusDataType(StatusDataType.ACTIVE_BSSIDS);
|
||||||
|
bssidStatus.setCustomerId(2);
|
||||||
|
|
||||||
|
ActiveBSSIDs activeBssidsDetails = new ActiveBSSIDs();
|
||||||
|
activeBssidsDetails.setActiveBSSIDs(getActiveBssidList());
|
||||||
|
bssidStatus.setDetails(activeBssidsDetails);
|
||||||
|
|
||||||
|
Mockito.when(statusServiceInterface.getOrNull(ArgumentMatchers.anyInt(), ArgumentMatchers.anyLong(), ArgumentMatchers.eq(StatusDataType.ACTIVE_BSSIDS)))
|
||||||
|
.thenReturn(bssidStatus);
|
||||||
|
PaginationResponse<ClientSession> pr = Mockito.mock(PaginationResponse.class,Mockito.RETURNS_MOCKS);
|
||||||
|
Mockito.when(clientServiceInterface.getSessionsForCustomer(Mockito.anyInt(), Mockito.anySet(),
|
||||||
|
Mockito.anySet(), Mockito.isNull(), Mockito.isNull(), Mockito.any())).thenReturn(pr);
|
||||||
|
|
||||||
|
|
||||||
|
opensyncExternalIntegrationCloud.wifiVIFStateDbTableDelete(ImmutableList.of(new OpensyncAPVIFState()), "Test_Client_21P10C68818122");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testWifiAssociatedClientsDbTableDelete() {
|
||||||
|
String apId = "Test_Client_21P10C68818122";
|
||||||
|
|
||||||
|
Equipment equipment = new Equipment();
|
||||||
|
equipment.setCustomerId(2);
|
||||||
|
equipment.setId(1L);
|
||||||
|
equipment.setEquipmentType(EquipmentType.AP);
|
||||||
|
equipment.setInventoryId(apId);
|
||||||
|
equipment.setProfileId(1);
|
||||||
|
equipment.setDetails(ApElementConfiguration.createWithDefaults());
|
||||||
|
|
||||||
|
Mockito.when(equipmentServiceInterface.getByInventoryIdOrNull(apId)).thenReturn(equipment);
|
||||||
|
Mockito.when(equipmentServiceInterface.getOrNull(1L)).thenReturn(equipment);
|
||||||
|
|
||||||
|
OvsdbSession session = new OvsdbSession();
|
||||||
|
session.setApId(apId);
|
||||||
|
session.setEquipmentId(1L);
|
||||||
|
Mockito.when(ovsdbSessionMapInterface.getSession(apId)).thenReturn(session);
|
||||||
|
opensyncExternalIntegrationCloud.wifiAssociatedClientsDbTableDelete("7C:AB:60:E6:EA:4D", "Test_Client_21P10C68818122");
|
||||||
|
}
|
||||||
|
|
||||||
|
// Helper methods
|
||||||
|
private List<ActiveBSSID> getActiveBssidList() {
|
||||||
|
ActiveBSSID activeBssid = new ActiveBSSID();
|
||||||
|
activeBssid.setBssid("24:f5:a2:ef:2e:54");
|
||||||
|
activeBssid.setSsid("ssid-1");
|
||||||
|
activeBssid.setNumDevicesConnected(1);
|
||||||
|
activeBssid.setRadioType(RadioType.is2dot4GHz);
|
||||||
|
ActiveBSSID activeBssid2 = new ActiveBSSID();
|
||||||
|
activeBssid2.setBssid("24:f5:a2:ef:2e:55");
|
||||||
|
activeBssid2.setSsid("ssid-2");
|
||||||
|
activeBssid2.setNumDevicesConnected(1);
|
||||||
|
activeBssid2.setRadioType(RadioType.is5GHzL);
|
||||||
|
ActiveBSSID activeBssid3 = new ActiveBSSID();
|
||||||
|
activeBssid3.setBssid("24:f5:a2:ef:2e:56");
|
||||||
|
activeBssid3.setSsid("ssid-3");
|
||||||
|
activeBssid3.setNumDevicesConnected(1);
|
||||||
|
activeBssid3.setRadioType(RadioType.is5GHzU);
|
||||||
|
|
||||||
|
List<ActiveBSSID> bssidList = new ArrayList<>();
|
||||||
|
bssidList.add(activeBssid);
|
||||||
|
bssidList.add(activeBssid2);
|
||||||
|
bssidList.add(activeBssid3);
|
||||||
|
return bssidList;
|
||||||
|
}
|
||||||
|
|
||||||
|
private List<EventReport> getOpensyncStatsEventReportsList() {
|
||||||
|
|
||||||
|
sts.OpensyncStats.EventReport.ClientAssocEvent.Builder clientAssocBuilder = EventReport.ClientAssocEvent.getDefaultInstance().toBuilder();
|
||||||
|
clientAssocBuilder.setAssocType(AssocType.ASSOC);
|
||||||
|
clientAssocBuilder.setBand(RadioBandType.BAND5GU);
|
||||||
|
clientAssocBuilder.setRssi(-65);
|
||||||
|
clientAssocBuilder.setStaMac("C0:9A:D0:76:A9:69");
|
||||||
|
clientAssocBuilder.setStaMacBytes(ByteString.copyFrom("C0:9A:D0:76:A9:69".getBytes()));
|
||||||
|
clientAssocBuilder.setSessionId(1000L);
|
||||||
|
clientAssocBuilder.setInternalSc(1);
|
||||||
|
clientAssocBuilder.setSsid("ssid-3");
|
||||||
|
clientAssocBuilder.setStatus(1);
|
||||||
|
clientAssocBuilder.setTimestampMs(System.currentTimeMillis());
|
||||||
|
|
||||||
|
List<EventReport> eventReportList = new ArrayList<>();
|
||||||
|
|
||||||
|
EventReport.Builder eventReportBuilder = EventReport.getDefaultInstance().toBuilder();
|
||||||
|
|
||||||
|
sts.OpensyncStats.EventReport.ClientSession.Builder clientSessionBuilder = sts.OpensyncStats.EventReport.ClientSession.getDefaultInstance().toBuilder();
|
||||||
|
|
||||||
|
clientSessionBuilder.setSessionId(1000L);
|
||||||
|
|
||||||
|
clientSessionBuilder.setClientAssocEvent(clientAssocBuilder.build());
|
||||||
|
List<sts.OpensyncStats.EventReport.ClientSession> clientSessionList = new ArrayList<>();
|
||||||
|
clientSessionList.add(clientSessionBuilder.build());
|
||||||
|
|
||||||
|
eventReportBuilder.addAllClientSession(clientSessionList);
|
||||||
|
|
||||||
|
eventReportList.add(eventReportBuilder.build());
|
||||||
|
|
||||||
|
return eventReportList;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private List<ClientReport> getOpensyncStatsClientReportsList() {
|
||||||
|
int rssi = Long.valueOf(4294967239L).intValue();
|
||||||
|
|
||||||
|
Client.Stats clientStats = Client.Stats.getDefaultInstance().toBuilder().setRssi(rssi).setRxBytes(225554786).setRxRate(24000.0).setTxBytes(1208133026)
|
||||||
|
.setTxRate(433300.0).setRssi(758722570).setRxFrames(10000).setTxFrames(10000).setTxRate(24000.0).build();
|
||||||
|
Client client2g = Client.getDefaultInstance().toBuilder().setMacAddress("7C:AB:60:E6:EA:4D").setSsid("ssid-1").setConnected(true).setDurationMs(59977)
|
||||||
|
.setStats(clientStats).build();
|
||||||
|
Client client5gu = Client.getDefaultInstance().toBuilder().setMacAddress("C0:9A:D0:76:A9:69").setSsid("ssid-3").setConnected(true).setDurationMs(298127)
|
||||||
|
.setStats(clientStats).build();
|
||||||
|
|
||||||
|
ClientReport clientReport2g =
|
||||||
|
ClientReport.getDefaultInstance().toBuilder().setBand(RadioBandType.BAND2G).setChannel(6).addAllClientList(ImmutableList.of(client2g)).build();
|
||||||
|
ClientReport clientReport5gl =
|
||||||
|
ClientReport.getDefaultInstance().toBuilder().setBand(RadioBandType.BAND5GL).setChannel(36).addAllClientList(new ArrayList<Client>()).build();
|
||||||
|
ClientReport clientReport5gu = ClientReport.getDefaultInstance().toBuilder().setBand(RadioBandType.BAND5GU).setChannel(157)
|
||||||
|
.addAllClientList(ImmutableList.of(client5gu)).build();
|
||||||
|
|
||||||
|
List<ClientReport> clients = new ArrayList<>();
|
||||||
|
clients.add(clientReport2g);
|
||||||
|
clients.add(clientReport5gl);
|
||||||
|
clients.add(clientReport5gu);
|
||||||
|
return clients;
|
||||||
|
}
|
||||||
|
|
||||||
|
private ConnectNodeInfo createConnectNodeInfo() {
|
||||||
|
ConnectNodeInfo connectNodeInfo = new ConnectNodeInfo();
|
||||||
|
connectNodeInfo.macAddress = "24:f5:a2:ef:2e:53";
|
||||||
|
connectNodeInfo.ifType = "eth";
|
||||||
|
connectNodeInfo.ifName = "eth1";
|
||||||
|
connectNodeInfo.ipV4Address = "10.0.0.129";
|
||||||
|
|
||||||
|
connectNodeInfo.lanMacAddress = "24:f5:a2:ef:2e:52";
|
||||||
|
connectNodeInfo.lanIfType = "bridge";
|
||||||
|
connectNodeInfo.lanIfName = "br-lan";
|
||||||
|
connectNodeInfo.lanIpV4Address = "192.168.1.1";
|
||||||
|
|
||||||
|
connectNodeInfo.managerAddr = "ssl:192.168.1.101:6640";
|
||||||
|
connectNodeInfo.firmwareVersion = "0.1.0";
|
||||||
|
connectNodeInfo.model = "EA8300-CA";
|
||||||
|
connectNodeInfo.revision = "1";
|
||||||
|
connectNodeInfo.serialNumber = "21P10C68818122";
|
||||||
|
connectNodeInfo.skuNumber = "connectus.ai_21P10C68818122";
|
||||||
|
connectNodeInfo.redirectorAddr = "ssl:opensync.zone1.art2wave.com:6643";
|
||||||
|
connectNodeInfo.platformVersion = "OPENWRT_EA8300";
|
||||||
|
connectNodeInfo.wifiRadioStates = ImmutableMap.of("2.4G", "home-ap-24", "5GL", "home-ap-l50", "5GU", "home-ap-u50");
|
||||||
|
|
||||||
|
Map<String, String> versionMatrix = new HashMap<>();
|
||||||
|
versionMatrix.put("DATE", "Thu Jul 16 18:52:06 UTC 2020");
|
||||||
|
versionMatrix.put("FIRMWARE", "0.1.0-0-notgit-development");
|
||||||
|
versionMatrix.put("FW_BUILD", "0");
|
||||||
|
versionMatrix.put("FW_COMMIT", "notgit");
|
||||||
|
versionMatrix.put("FW_PROFILE", "development");
|
||||||
|
versionMatrix.put("FW_IMAGE_ACTIVE", "ea8300-2020-07-23-staging-fwupgrade-4da695d");
|
||||||
|
versionMatrix.put("FW_IMAGE_INACTIVE", "ea8300-2020-07-23-staging-fwupgrade-4da695d");
|
||||||
|
versionMatrix.put("FW_VERSION", "0.1.0");
|
||||||
|
versionMatrix.put("HOST", "runner@26793cf70348");
|
||||||
|
versionMatrix.put("OPENSYNC", "2.0.5.0");
|
||||||
|
versionMatrix.put("core", "2.0.5.0/0/notgit");
|
||||||
|
versionMatrix.put("vendor/ipq40xx", "0.1.0/0/notgit");
|
||||||
|
connectNodeInfo.versionMatrix = versionMatrix;
|
||||||
|
|
||||||
|
Map<String, String> mqttSettings = new HashMap<>();
|
||||||
|
|
||||||
|
mqttSettings.put("broker", "192.168.1.101");
|
||||||
|
mqttSettings.put("compress", "zlib");
|
||||||
|
mqttSettings.put("port", "1883");
|
||||||
|
mqttSettings.put("qos", "0");
|
||||||
|
mqttSettings.put("remote_log", "1");
|
||||||
|
mqttSettings.put("topics", "/ap/Test_Client_21P10C68818122/opensync");
|
||||||
|
|
||||||
|
connectNodeInfo.mqttSettings = mqttSettings;
|
||||||
|
|
||||||
|
return connectNodeInfo;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,119 @@
|
|||||||
|
package com.telecominfraproject.wlan.opensync.external.integration.controller;
|
||||||
|
|
||||||
|
import com.telecominfraproject.wlan.core.client.PingClient;
|
||||||
|
import com.telecominfraproject.wlan.core.model.service.GatewayType;
|
||||||
|
import com.telecominfraproject.wlan.datastore.exceptions.DsEntityNotFoundException;
|
||||||
|
import com.telecominfraproject.wlan.routing.RoutingServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.routing.models.EquipmentGatewayRecord;
|
||||||
|
import com.telecominfraproject.wlan.routing.models.EquipmentRoutingRecord;
|
||||||
|
import org.junit.jupiter.api.BeforeEach;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.mockito.Mockito;
|
||||||
|
import org.springframework.test.util.ReflectionTestUtils;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.Arrays;
|
||||||
|
|
||||||
|
import static org.mockito.ArgumentMatchers.anyInt;
|
||||||
|
import static org.mockito.ArgumentMatchers.anyLong;
|
||||||
|
import static org.mockito.ArgumentMatchers.anyString;
|
||||||
|
import static org.mockito.Mockito.atLeast;
|
||||||
|
import static org.mockito.Mockito.atLeastOnce;
|
||||||
|
import static org.mockito.Mockito.verify;
|
||||||
|
|
||||||
|
|
||||||
|
class OpensyncCloudGatewayControllerTest {
|
||||||
|
|
||||||
|
OpensyncCloudGatewayController opensyncCloudGatewayController = new OpensyncCloudGatewayController();
|
||||||
|
|
||||||
|
RoutingServiceInterface routingSvc = Mockito.mock(RoutingServiceInterface.class);
|
||||||
|
PingClient pingClient = Mockito.mock(PingClient.class);
|
||||||
|
|
||||||
|
@BeforeEach
|
||||||
|
void setUp() {
|
||||||
|
ReflectionTestUtils.setField(opensyncCloudGatewayController, "eqRoutingSvc", routingSvc);
|
||||||
|
ReflectionTestUtils.setField(opensyncCloudGatewayController, "pingClient", pingClient);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void cleanupStaleGwRecord() throws IOException {
|
||||||
|
EquipmentGatewayRecord gatewayRecord = readGatewayRecord();
|
||||||
|
Mockito.when(pingClient.isReachable(anyString(), anyInt())).thenReturn(true);
|
||||||
|
opensyncCloudGatewayController.cleanupStaleGwRecord();
|
||||||
|
verify(pingClient, atLeastOnce()).isReachable("1.1.1.1",123);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void cleanupStaleGwRecord_pingFail() throws IOException {
|
||||||
|
EquipmentGatewayRecord gatewayRecord = readGatewayRecord();
|
||||||
|
Mockito.when(pingClient.isReachable(anyString(), anyInt())).thenReturn(false);
|
||||||
|
Mockito.when(routingSvc.deleteGateway(anyLong())).thenReturn(gatewayRecord);
|
||||||
|
opensyncCloudGatewayController.cleanupStaleGwRecord();
|
||||||
|
verify(routingSvc, atLeastOnce()).deleteGateway(gatewayRecord.getId());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void cleanupStaleEqptRoutingRecord_NoEntityFound() throws IOException {
|
||||||
|
EquipmentRoutingRecord routingRecord = readRoutingRecord();
|
||||||
|
Mockito.when(routingSvc.getGateway(anyLong())).thenThrow(new DsEntityNotFoundException());
|
||||||
|
Mockito.when(routingSvc.delete(anyLong())).thenReturn(new EquipmentRoutingRecord());
|
||||||
|
|
||||||
|
opensyncCloudGatewayController.cleanupStaleEqptRoutingRecord(123L);
|
||||||
|
verify(routingSvc, atLeastOnce()).delete(routingRecord.getId());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void cleanupStaleEqptRoutingRecord_GenericException() throws IOException {
|
||||||
|
EquipmentRoutingRecord routingRecord = readRoutingRecord();
|
||||||
|
Mockito.when(routingSvc.getGateway(anyLong())).thenThrow(new RuntimeException("Throwing exception to test"));
|
||||||
|
Mockito.when(routingSvc.delete(anyLong())).thenReturn(new EquipmentRoutingRecord());
|
||||||
|
|
||||||
|
opensyncCloudGatewayController.cleanupStaleEqptRoutingRecord(123L);
|
||||||
|
verify(routingSvc, atLeast(0)).delete(routingRecord.getId());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void cleanupStaleEqptRoutingRecord_GatewayResponds() throws IOException {
|
||||||
|
EquipmentRoutingRecord routingRecord = readRoutingRecord();
|
||||||
|
EquipmentGatewayRecord gatewayRecord = readGatewayRecord();
|
||||||
|
Mockito.when(routingSvc.getGateway(anyLong())).thenReturn(gatewayRecord);
|
||||||
|
Mockito.when(routingSvc.delete(anyLong())).thenReturn(new EquipmentRoutingRecord());
|
||||||
|
Mockito.when(pingClient.isReachable(anyString(), anyInt())).thenReturn(true);
|
||||||
|
|
||||||
|
opensyncCloudGatewayController.cleanupStaleEqptRoutingRecord(123L);
|
||||||
|
verify(routingSvc, atLeast(0)).delete(routingRecord.getId());
|
||||||
|
verify(pingClient, atLeastOnce()).isReachable(anyString(), anyInt());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void cleanupStaleEqptRoutingRecord_GatewayFails() throws IOException {
|
||||||
|
EquipmentRoutingRecord routingRecord = readRoutingRecord();
|
||||||
|
EquipmentGatewayRecord gatewayRecord = readGatewayRecord();
|
||||||
|
Mockito.when(routingSvc.getGateway(anyLong())).thenReturn(gatewayRecord);
|
||||||
|
Mockito.when(routingSvc.delete(anyLong())).thenReturn(new EquipmentRoutingRecord());
|
||||||
|
Mockito.when(pingClient.isReachable(anyString(), anyInt())).thenReturn(false);
|
||||||
|
|
||||||
|
opensyncCloudGatewayController.cleanupStaleEqptRoutingRecord(123L);
|
||||||
|
verify(routingSvc, atLeastOnce()).delete(routingRecord.getId());
|
||||||
|
verify(pingClient, atLeastOnce()).isReachable(anyString(), anyInt());
|
||||||
|
}
|
||||||
|
|
||||||
|
private EquipmentGatewayRecord readGatewayRecord() throws IOException {
|
||||||
|
EquipmentGatewayRecord gatewayRecord = EquipmentGatewayRecord.fromFile(
|
||||||
|
OpensyncCloudGatewayControllerTest.class.getResource("EquipmentGatewayRecords.json").getFile(),
|
||||||
|
EquipmentGatewayRecord.class);
|
||||||
|
|
||||||
|
Mockito.when(routingSvc.getGateway(GatewayType.CEGW)).thenReturn(Arrays.asList(gatewayRecord));
|
||||||
|
return gatewayRecord;
|
||||||
|
}
|
||||||
|
|
||||||
|
private EquipmentRoutingRecord readRoutingRecord() throws IOException {
|
||||||
|
EquipmentRoutingRecord routingRecord = EquipmentRoutingRecord.fromFile(
|
||||||
|
OpensyncCloudGatewayControllerTest.class.getResource("EquipmentRoutingRecord.json").getFile(),
|
||||||
|
EquipmentRoutingRecord.class);
|
||||||
|
|
||||||
|
Mockito.when(routingSvc.getRegisteredRouteList(anyLong())).thenReturn(Arrays.asList(routingRecord));
|
||||||
|
return routingRecord;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,391 @@
|
|||||||
|
package com.telecominfraproject.wlan.opensync.external.integration.utils;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||||
|
|
||||||
|
import java.net.InetAddress;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.junit.After;
|
||||||
|
import org.junit.Before;
|
||||||
|
import org.junit.Ignore;
|
||||||
|
import org.junit.Test;
|
||||||
|
import org.junit.runner.RunWith;
|
||||||
|
import org.mockito.Answers;
|
||||||
|
import org.mockito.ArgumentMatchers;
|
||||||
|
import org.mockito.Mockito;
|
||||||
|
import org.mockito.MockitoSession;
|
||||||
|
import org.mockito.quality.Strictness;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.boot.test.context.SpringBootTest;
|
||||||
|
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
|
||||||
|
import org.springframework.boot.test.mock.mockito.MockBean;
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
import org.springframework.context.annotation.Import;
|
||||||
|
import org.springframework.test.context.ActiveProfiles;
|
||||||
|
import org.springframework.test.context.junit4.SpringRunner;
|
||||||
|
|
||||||
|
import com.google.common.collect.ImmutableList;
|
||||||
|
import com.google.protobuf.ByteString;
|
||||||
|
import com.telecominfraproject.wlan.alarm.AlarmServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.client.ClientServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.client.info.models.ClientInfoDetails;
|
||||||
|
import com.telecominfraproject.wlan.client.session.models.ClientSession;
|
||||||
|
import com.telecominfraproject.wlan.client.session.models.ClientSessionDetails;
|
||||||
|
import com.telecominfraproject.wlan.cloudeventdispatcher.CloudEventDispatcherInterface;
|
||||||
|
import com.telecominfraproject.wlan.core.model.equipment.MacAddress;
|
||||||
|
import com.telecominfraproject.wlan.core.model.equipment.RadioType;
|
||||||
|
import com.telecominfraproject.wlan.customer.service.CustomerServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.equipment.EquipmentServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.equipment.models.ApElementConfiguration;
|
||||||
|
import com.telecominfraproject.wlan.equipment.models.Equipment;
|
||||||
|
import com.telecominfraproject.wlan.firmware.FirmwareServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.location.service.LocationServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.opensync.external.integration.OpensyncExternalIntegrationCloud;
|
||||||
|
import com.telecominfraproject.wlan.opensync.external.integration.OvsdbSession;
|
||||||
|
import com.telecominfraproject.wlan.opensync.external.integration.OvsdbSessionMapInterface;
|
||||||
|
import com.telecominfraproject.wlan.opensync.external.integration.controller.OpensyncCloudGatewayController;
|
||||||
|
import com.telecominfraproject.wlan.profile.ProfileServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.routing.RoutingServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.servicemetric.apnode.models.ApNodeMetrics;
|
||||||
|
import com.telecominfraproject.wlan.servicemetric.apnode.models.StateUpDownError;
|
||||||
|
import com.telecominfraproject.wlan.status.StatusServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.status.equipment.report.models.ActiveBSSID;
|
||||||
|
import com.telecominfraproject.wlan.status.equipment.report.models.ActiveBSSIDs;
|
||||||
|
import com.telecominfraproject.wlan.status.models.Status;
|
||||||
|
import com.telecominfraproject.wlan.status.models.StatusDataType;
|
||||||
|
|
||||||
|
import sts.OpensyncStats.AssocType;
|
||||||
|
import sts.OpensyncStats.ChannelSwitchReason;
|
||||||
|
import sts.OpensyncStats.Client;
|
||||||
|
import sts.OpensyncStats.ClientReport;
|
||||||
|
import sts.OpensyncStats.DNSProbeMetric;
|
||||||
|
import sts.OpensyncStats.EventReport;
|
||||||
|
import sts.OpensyncStats.EventReport.ChannelSwitchEvent;
|
||||||
|
import sts.OpensyncStats.EventReport.ClientAssocEvent;
|
||||||
|
import sts.OpensyncStats.NetworkProbe;
|
||||||
|
import sts.OpensyncStats.RADIUSMetrics;
|
||||||
|
import sts.OpensyncStats.RadioBandType;
|
||||||
|
import sts.OpensyncStats.Report;
|
||||||
|
import sts.OpensyncStats.StateUpDown;
|
||||||
|
import sts.OpensyncStats.VLANMetrics;
|
||||||
|
|
||||||
|
@RunWith(SpringRunner.class)
|
||||||
|
@ActiveProfiles(profiles = { "integration_test", })
|
||||||
|
@SpringBootTest(webEnvironment = WebEnvironment.NONE, classes = MqttStatsPublisherTest.class)
|
||||||
|
@Import(value = { AlarmServiceInterface.class, OpensyncExternalIntegrationCloud.class,
|
||||||
|
MqttStatsPublisherTest.Config.class,
|
||||||
|
|
||||||
|
})
|
||||||
|
public class MqttStatsPublisherTest {
|
||||||
|
|
||||||
|
@MockBean
|
||||||
|
AlarmServiceInterface alarmServiceInterface;
|
||||||
|
@MockBean
|
||||||
|
CustomerServiceInterface customerServiceInterface;
|
||||||
|
@MockBean
|
||||||
|
LocationServiceInterface locationServiceInterface;
|
||||||
|
@MockBean(answer = Answers.RETURNS_MOCKS)
|
||||||
|
OvsdbSessionMapInterface ovsdbSessionMapInterface;
|
||||||
|
@MockBean
|
||||||
|
CloudEventDispatcherInterface equipmentMetricsCollectorInterface;
|
||||||
|
@MockBean
|
||||||
|
EquipmentServiceInterface equipmentServiceInterface;
|
||||||
|
@MockBean
|
||||||
|
RoutingServiceInterface routingServiceInterface;
|
||||||
|
@MockBean
|
||||||
|
ProfileServiceInterface profileServiceInterface;
|
||||||
|
@MockBean
|
||||||
|
StatusServiceInterface statusServiceInterface;
|
||||||
|
@MockBean
|
||||||
|
ClientServiceInterface clientServiceInterface;
|
||||||
|
@MockBean
|
||||||
|
FirmwareServiceInterface firmwareServiceInterface;
|
||||||
|
@MockBean(answer = Answers.RETURNS_MOCKS)
|
||||||
|
OpensyncCloudGatewayController gatewayController;
|
||||||
|
@MockBean
|
||||||
|
RealtimeEventPublisher realtimeEventPublisher;
|
||||||
|
@Autowired
|
||||||
|
MqttStatsPublisher opensyncExternalIntegrationMqttProcessor;
|
||||||
|
|
||||||
|
MockitoSession mockito;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
static class Config {
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public StatsPublisherInterface mqttStatsPublisher() {
|
||||||
|
return new MqttStatsPublisher();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Before
|
||||||
|
public void setUp() throws Exception {
|
||||||
|
|
||||||
|
mockito = Mockito.mockitoSession().initMocks(this).strictness(Strictness.LENIENT).startMocking();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@After
|
||||||
|
public void tearDown() throws Exception {
|
||||||
|
mockito.finishMocking();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testExtractApIdFromTopic() {
|
||||||
|
|
||||||
|
String topic = "/ap/Test_Client_21P10C68818122/opensync";
|
||||||
|
|
||||||
|
assertEquals("Test_Client_21P10C68818122", MqttStatsPublisher.extractApIdFromTopic(topic));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testExtractCustomerIdFromTopic() {
|
||||||
|
String topic = "/ap/Test_Client_21P10C68818122/opensync";
|
||||||
|
OvsdbSession session = Mockito.mock(OvsdbSession.class);
|
||||||
|
Equipment ce = Mockito.mock(Equipment.class);
|
||||||
|
Mockito.when(ce.getCustomerId()).thenReturn(2);
|
||||||
|
|
||||||
|
Mockito.when(
|
||||||
|
equipmentServiceInterface.getByInventoryIdOrNull(ArgumentMatchers.eq("Test_Client_21P10C68818122")))
|
||||||
|
.thenReturn(ce);
|
||||||
|
Mockito.when(ovsdbSessionMapInterface.getSession("Test_Client_21P10C68818122")).thenReturn(session);
|
||||||
|
|
||||||
|
assertEquals(2, opensyncExternalIntegrationMqttProcessor.extractCustomerIdFromTopic(topic));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testExtractEquipmentIdFromTopic() {
|
||||||
|
|
||||||
|
String topic = "/ap/Test_Client_21P10C68818122/opensync";
|
||||||
|
OvsdbSession session = Mockito.mock(OvsdbSession.class);
|
||||||
|
Mockito.when(session.getEquipmentId()).thenReturn(1L);
|
||||||
|
|
||||||
|
Mockito.when(ovsdbSessionMapInterface.getSession("Test_Client_21P10C68818122")).thenReturn(session);
|
||||||
|
|
||||||
|
assertEquals(1L, opensyncExternalIntegrationMqttProcessor.extractEquipmentIdFromTopic(topic));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testProcessMqttMessageStringReport() {
|
||||||
|
Equipment equipment = new Equipment();
|
||||||
|
|
||||||
|
equipment.setDetails(ApElementConfiguration.createWithDefaults());
|
||||||
|
equipment.setId(1L); equipment.setCustomerId(2);
|
||||||
|
|
||||||
|
Mockito.when(
|
||||||
|
equipmentServiceInterface.getByInventoryIdOrNull(ArgumentMatchers.eq("Test_Client_21P10C68818122")))
|
||||||
|
.thenReturn(equipment);
|
||||||
|
|
||||||
|
equipment.setProfileId(0L);
|
||||||
|
|
||||||
|
Mockito.when(equipmentServiceInterface.getOrNull(1L)).thenReturn(equipment);
|
||||||
|
Mockito.when(equipmentServiceInterface.get(1L)).thenReturn(equipment);
|
||||||
|
|
||||||
|
Report report = Report.newBuilder().setNodeID("21P10C68818122")
|
||||||
|
.addAllClients(getOpensyncStatsClientReportsList())
|
||||||
|
.addAllEventReport(getOpensyncStatsEventReportsList()).build();
|
||||||
|
|
||||||
|
String topic = "/ap/Test_Client_21P10C68818122/opensync";
|
||||||
|
|
||||||
|
OvsdbSession session = Mockito.mock(OvsdbSession.class);
|
||||||
|
Mockito.when(session.getEquipmentId()).thenReturn(1L);
|
||||||
|
|
||||||
|
Mockito.when(ovsdbSessionMapInterface.getSession("Test_Client_21P10C68818122")).thenReturn(session);
|
||||||
|
|
||||||
|
Status bssidStatus = new Status();
|
||||||
|
bssidStatus.setStatusDataType(StatusDataType.ACTIVE_BSSIDS);
|
||||||
|
bssidStatus.setCustomerId(2);
|
||||||
|
|
||||||
|
ActiveBSSIDs activeBssidsDetails = new ActiveBSSIDs();
|
||||||
|
activeBssidsDetails.setActiveBSSIDs(getActiveBssidList());
|
||||||
|
bssidStatus.setDetails(activeBssidsDetails);
|
||||||
|
|
||||||
|
Mockito.when(statusServiceInterface.getOrNull(ArgumentMatchers.anyInt(), ArgumentMatchers.anyLong(),
|
||||||
|
ArgumentMatchers.eq(StatusDataType.ACTIVE_BSSIDS))).thenReturn(bssidStatus);
|
||||||
|
|
||||||
|
Mockito.when(statusServiceInterface.update(ArgumentMatchers.any(Status.class))).thenReturn(bssidStatus);
|
||||||
|
com.telecominfraproject.wlan.client.models.Client clientInstance = new com.telecominfraproject.wlan.client.models.Client();
|
||||||
|
clientInstance.setMacAddress(MacAddress.valueOf("7C:AB:60:E6:EA:4D"));
|
||||||
|
clientInstance.setDetails(new ClientInfoDetails());
|
||||||
|
com.telecominfraproject.wlan.client.models.Client clientInstance2 = new com.telecominfraproject.wlan.client.models.Client();
|
||||||
|
clientInstance2.setMacAddress(MacAddress.valueOf("C0:9A:D0:76:A9:69"));
|
||||||
|
clientInstance2.setDetails(new ClientInfoDetails());
|
||||||
|
Mockito.when(
|
||||||
|
clientServiceInterface.getOrNull(ArgumentMatchers.anyInt(), ArgumentMatchers.any(MacAddress.class)))
|
||||||
|
.thenReturn(clientInstance).thenReturn(clientInstance2);
|
||||||
|
Mockito.when(clientServiceInterface
|
||||||
|
.update(ArgumentMatchers.any(com.telecominfraproject.wlan.client.models.Client.class)))
|
||||||
|
.thenReturn(clientInstance).thenReturn(clientInstance2);
|
||||||
|
|
||||||
|
ClientSession clientSession = new ClientSession();
|
||||||
|
clientSession.setMacAddress(MacAddress.valueOf("7C:AB:60:E6:EA:4D"));
|
||||||
|
clientSession.setDetails(new ClientSessionDetails());
|
||||||
|
ClientSession clientSession2 = new ClientSession();
|
||||||
|
clientSession2.setMacAddress(MacAddress.valueOf("C0:9A:D0:76:A9:69"));
|
||||||
|
clientSession2.setDetails(new ClientSessionDetails());
|
||||||
|
Mockito.when(clientServiceInterface.getSessionOrNull(ArgumentMatchers.anyInt(), ArgumentMatchers.anyLong(),
|
||||||
|
ArgumentMatchers.any(MacAddress.class))).thenReturn(clientSession).thenReturn(clientSession2);
|
||||||
|
|
||||||
|
Mockito.when(clientServiceInterface.updateSession(ArgumentMatchers.any(ClientSession.class)))
|
||||||
|
.thenReturn(clientSession).thenReturn(clientSession2);
|
||||||
|
|
||||||
|
opensyncExternalIntegrationMqttProcessor.processMqttMessage(topic, report);
|
||||||
|
|
||||||
|
// Mockito.verify(clientServiceInterface,
|
||||||
|
// Mockito.times(4)).getOrNull(Mockito.anyInt(),
|
||||||
|
// Mockito.any(MacAddress.class));
|
||||||
|
// Mockito.verify(clientServiceInterface,
|
||||||
|
// Mockito.times(4)).getSessionOrNull(Mockito.anyInt(),
|
||||||
|
// Mockito.anyLong(),
|
||||||
|
// Mockito.any(MacAddress.class));
|
||||||
|
// Mockito.verify(statusServiceInterface,
|
||||||
|
// Mockito.times(3)).getOrNull(Mockito.anyInt(), Mockito.anyLong(),
|
||||||
|
// Mockito.eq(StatusDataType.ACTIVE_BSSIDS));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ignore
|
||||||
|
public void testProcessMqttMessageStringFlowReport() {
|
||||||
|
// TODO: implement me when support flow reports
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ignore
|
||||||
|
public void testProcessMqttMessageStringWCStatsReport() {
|
||||||
|
// TODO: implement me when wcs stats reports supported
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testpopulateNetworkProbeMetrics() throws Exception {
|
||||||
|
|
||||||
|
InetAddress ip = InetAddress.getLocalHost();
|
||||||
|
|
||||||
|
DNSProbeMetric dnsProbeMetric = DNSProbeMetric.getDefaultInstance().toBuilder().setLatency(10)
|
||||||
|
.setState(StateUpDown.SUD_up).setServerIP(ip.getHostName()).build();
|
||||||
|
RADIUSMetrics radiusProbeMetric = RADIUSMetrics.getDefaultInstance().toBuilder().setLatency(10)
|
||||||
|
.setRadiusState(StateUpDown.SUD_up).setServerIP(ip.getHostName()).build();
|
||||||
|
VLANMetrics vlanMetrics = VLANMetrics.getDefaultInstance().toBuilder().setLatency(10)
|
||||||
|
.setDhcpState(StateUpDown.SUD_up).setVlanIF("vlan-1").build();
|
||||||
|
NetworkProbe networkProbe = NetworkProbe.getDefaultInstance().toBuilder().setVlanProbe(vlanMetrics)
|
||||||
|
.setDnsProbe(dnsProbeMetric).addRadiusProbe(radiusProbeMetric).build();
|
||||||
|
|
||||||
|
Report report = Report.getDefaultInstance().toBuilder().setNodeID("21P10C68818122")
|
||||||
|
.addNetworkProbe(networkProbe).build();
|
||||||
|
|
||||||
|
ApNodeMetrics apNodeMetrics = new ApNodeMetrics();
|
||||||
|
|
||||||
|
opensyncExternalIntegrationMqttProcessor.populateNetworkProbeMetrics(report, apNodeMetrics);
|
||||||
|
|
||||||
|
assertNotNull(apNodeMetrics.getNetworkProbeMetrics());
|
||||||
|
|
||||||
|
assert (apNodeMetrics.getNetworkProbeMetrics().get(0).getDnsLatencyMs() == 10);
|
||||||
|
assert (apNodeMetrics.getNetworkProbeMetrics().get(0).getDhcpLatencyMs() == 10);
|
||||||
|
assert (apNodeMetrics.getNetworkProbeMetrics().get(0).getRadiusState().equals(StateUpDownError.enabled));
|
||||||
|
assert (apNodeMetrics.getNetworkProbeMetrics().get(0).getDhcpState().equals(StateUpDownError.enabled));
|
||||||
|
assert (apNodeMetrics.getNetworkProbeMetrics().get(0).getDnsState().equals(StateUpDownError.enabled));
|
||||||
|
assert (apNodeMetrics.getNetworkProbeMetrics().get(0).getRadiusLatencyInMs() == 10);
|
||||||
|
assert (apNodeMetrics.getNetworkProbeMetrics().get(0).getVlanIF().equals("vlan-1"));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// Helper methods
|
||||||
|
private List<ActiveBSSID> getActiveBssidList() {
|
||||||
|
ActiveBSSID activeBssid = new ActiveBSSID();
|
||||||
|
activeBssid.setBssid("24:f5:a2:ef:2e:54");
|
||||||
|
activeBssid.setSsid("ssid-1");
|
||||||
|
activeBssid.setNumDevicesConnected(1);
|
||||||
|
activeBssid.setRadioType(RadioType.is2dot4GHz);
|
||||||
|
ActiveBSSID activeBssid2 = new ActiveBSSID();
|
||||||
|
activeBssid2.setBssid("24:f5:a2:ef:2e:55");
|
||||||
|
activeBssid2.setSsid("ssid-2");
|
||||||
|
activeBssid2.setNumDevicesConnected(1);
|
||||||
|
activeBssid2.setRadioType(RadioType.is5GHzL);
|
||||||
|
ActiveBSSID activeBssid3 = new ActiveBSSID();
|
||||||
|
activeBssid3.setBssid("24:f5:a2:ef:2e:56");
|
||||||
|
activeBssid3.setSsid("ssid-3");
|
||||||
|
activeBssid3.setNumDevicesConnected(1);
|
||||||
|
activeBssid3.setRadioType(RadioType.is5GHzU);
|
||||||
|
|
||||||
|
List<ActiveBSSID> bssidList = new ArrayList<>();
|
||||||
|
bssidList.add(activeBssid);
|
||||||
|
bssidList.add(activeBssid2);
|
||||||
|
bssidList.add(activeBssid3);
|
||||||
|
return bssidList;
|
||||||
|
}
|
||||||
|
private List<EventReport> getOpensyncStatsEventReportsList() {
|
||||||
|
|
||||||
|
sts.OpensyncStats.EventReport.ClientAssocEvent.Builder clientAssocBuilder = EventReport.ClientAssocEvent
|
||||||
|
.getDefaultInstance().toBuilder();
|
||||||
|
clientAssocBuilder.setAssocType(AssocType.ASSOC);
|
||||||
|
clientAssocBuilder.setBand(RadioBandType.BAND5GU);
|
||||||
|
clientAssocBuilder.setRssi(-65);
|
||||||
|
clientAssocBuilder.setStaMac("C0:9A:D0:76:A9:69");
|
||||||
|
clientAssocBuilder.setStaMacBytes(ByteString.copyFrom("C0:9A:D0:76:A9:69".getBytes()));
|
||||||
|
clientAssocBuilder.setSessionId(1000L);
|
||||||
|
clientAssocBuilder.setInternalSc(1);
|
||||||
|
clientAssocBuilder.setSsid("ssid-3");
|
||||||
|
clientAssocBuilder.setStatus(1);
|
||||||
|
clientAssocBuilder.setTimestampMs(System.currentTimeMillis());
|
||||||
|
|
||||||
|
List<EventReport> eventReportList = new ArrayList<>();
|
||||||
|
|
||||||
|
EventReport.Builder eventReportBuilder = EventReport.getDefaultInstance().toBuilder();
|
||||||
|
|
||||||
|
sts.OpensyncStats.EventReport.ClientSession.Builder clientSessionBuilder = sts.OpensyncStats.EventReport.ClientSession
|
||||||
|
.getDefaultInstance().toBuilder();
|
||||||
|
|
||||||
|
clientSessionBuilder.setSessionId(1000L);
|
||||||
|
|
||||||
|
clientSessionBuilder.setClientAssocEvent(clientAssocBuilder.build());
|
||||||
|
List<sts.OpensyncStats.EventReport.ClientSession> clientSessionList = new ArrayList<>();
|
||||||
|
clientSessionList.add(clientSessionBuilder.build());
|
||||||
|
|
||||||
|
sts.OpensyncStats.EventReport.ChannelSwitchEvent.Builder channelSwitchEventBuilder = sts.OpensyncStats.EventReport.ChannelSwitchEvent
|
||||||
|
.getDefaultInstance().toBuilder();
|
||||||
|
channelSwitchEventBuilder.setBand(RadioBandType.BAND5GL).setChannel(40)
|
||||||
|
.setReason(ChannelSwitchReason.high_interference).setTimestampMs(System.currentTimeMillis());
|
||||||
|
|
||||||
|
List<ChannelSwitchEvent> channelSwitchEventList = new ArrayList<>();
|
||||||
|
channelSwitchEventList.add(channelSwitchEventBuilder.build());
|
||||||
|
|
||||||
|
eventReportBuilder.addAllClientSession(clientSessionList);
|
||||||
|
eventReportBuilder.addAllChannelSwitch(channelSwitchEventList);
|
||||||
|
|
||||||
|
eventReportList.add(eventReportBuilder.build());
|
||||||
|
|
||||||
|
return eventReportList;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private List<ClientReport> getOpensyncStatsClientReportsList() {
|
||||||
|
int rssi = Long.valueOf(4294967239L).intValue();
|
||||||
|
|
||||||
|
Client.Stats clientStats = Client.Stats.getDefaultInstance().toBuilder().setRssi(rssi).setRxBytes(225554786)
|
||||||
|
.setRxRate(24000.0).setTxBytes(1208133026).setTxRate(433300.0).setRssi(758722570).setRxFrames(10000)
|
||||||
|
.setTxFrames(10000).setTxRate(24000.0).build();
|
||||||
|
Client client2g = Client.getDefaultInstance().toBuilder().setMacAddress("7C:AB:60:E6:EA:4D").setSsid("ssid-1")
|
||||||
|
.setConnected(true).setDurationMs(59977).setStats(clientStats).build();
|
||||||
|
Client client5gu = Client.getDefaultInstance().toBuilder().setMacAddress("C0:9A:D0:76:A9:69").setSsid("ssid-3")
|
||||||
|
.setConnected(true).setDurationMs(298127).setStats(clientStats).build();
|
||||||
|
|
||||||
|
ClientReport clientReport2g = ClientReport.getDefaultInstance().toBuilder().setBand(RadioBandType.BAND2G)
|
||||||
|
.setChannel(6).addAllClientList(ImmutableList.of(client2g)).build();
|
||||||
|
ClientReport clientReport5gl = ClientReport.getDefaultInstance().toBuilder().setBand(RadioBandType.BAND5GL)
|
||||||
|
.setChannel(36).addAllClientList(new ArrayList<Client>()).build();
|
||||||
|
ClientReport clientReport5gu = ClientReport.getDefaultInstance().toBuilder().setBand(RadioBandType.BAND5GU)
|
||||||
|
.setChannel(157).addAllClientList(ImmutableList.of(client5gu)).build();
|
||||||
|
|
||||||
|
List<ClientReport> clients = new ArrayList<>();
|
||||||
|
clients.add(clientReport2g);
|
||||||
|
clients.add(clientReport5gl);
|
||||||
|
clients.add(clientReport5gu);
|
||||||
|
return clients;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,382 @@
|
|||||||
|
package com.telecominfraproject.wlan.opensync.external.integration.utils;
|
||||||
|
|
||||||
|
import java.net.InetAddress;
|
||||||
|
import java.sql.Date;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.junit.After;
|
||||||
|
import org.junit.Before;
|
||||||
|
import org.junit.Ignore;
|
||||||
|
import org.junit.Test;
|
||||||
|
import org.junit.runner.RunWith;
|
||||||
|
import org.mockito.Mockito;
|
||||||
|
import org.mockito.MockitoSession;
|
||||||
|
import org.mockito.quality.Strictness;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.boot.test.context.SpringBootTest;
|
||||||
|
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
|
||||||
|
import org.springframework.boot.test.mock.mockito.MockBean;
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
import org.springframework.context.annotation.Import;
|
||||||
|
import org.springframework.test.context.ActiveProfiles;
|
||||||
|
import org.springframework.test.context.junit4.SpringRunner;
|
||||||
|
|
||||||
|
import com.google.protobuf.ByteString;
|
||||||
|
import com.telecominfraproject.wlan.client.models.events.realtime.ClientAssocEvent;
|
||||||
|
import com.telecominfraproject.wlan.client.models.events.realtime.ClientAuthEvent;
|
||||||
|
import com.telecominfraproject.wlan.client.models.events.utils.WlanStatusCode;
|
||||||
|
import com.telecominfraproject.wlan.cloudeventdispatcher.CloudEventDispatcherInterface;
|
||||||
|
import com.telecominfraproject.wlan.equipment.EquipmentServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.opensync.external.integration.OpensyncExternalIntegrationCloud;
|
||||||
|
import com.telecominfraproject.wlan.profile.ProfileServiceInterface;
|
||||||
|
|
||||||
|
import sts.OpensyncStats.EventReport.DhcpNakEvent;
|
||||||
|
import sts.OpensyncStats.EventReport.DhcpOfferEvent;
|
||||||
|
import sts.OpensyncStats.EventReport.DhcpRequestEvent;
|
||||||
|
import sts.OpensyncStats;
|
||||||
|
import sts.OpensyncStats.EventReport.DhcpAckEvent;
|
||||||
|
|
||||||
|
import sts.OpensyncStats.EventReport.DhcpCommonData;
|
||||||
|
import sts.OpensyncStats.EventReport.DhcpDeclineEvent;
|
||||||
|
import sts.OpensyncStats.EventReport.DhcpDiscoverEvent;
|
||||||
|
import sts.OpensyncStats.EventReport.DhcpInformEvent;
|
||||||
|
import sts.OpensyncStats.EventReport.DhcpTransaction;
|
||||||
|
import sts.OpensyncStats.RadioBandType;
|
||||||
|
import sts.OpensyncStats.Report;
|
||||||
|
|
||||||
|
@RunWith(SpringRunner.class)
|
||||||
|
@ActiveProfiles(profiles = { "integration_test", })
|
||||||
|
@SpringBootTest(webEnvironment = WebEnvironment.NONE, classes = RealtimeEventPublisherTest.class)
|
||||||
|
@Import(value = { OpensyncExternalIntegrationCloud.class, RealtimeEventPublisherTest.Config.class,
|
||||||
|
|
||||||
|
})
|
||||||
|
public class RealtimeEventPublisherTest {
|
||||||
|
|
||||||
|
@MockBean
|
||||||
|
private CloudEventDispatcherInterface cloudEventDispatcherInterface;
|
||||||
|
|
||||||
|
@MockBean
|
||||||
|
private EquipmentServiceInterface equipmentServiceInterface;
|
||||||
|
|
||||||
|
@MockBean
|
||||||
|
private ProfileServiceInterface profileServiceInterface;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
RealtimeEventPublisher realtimeEventPublisher;
|
||||||
|
MockitoSession mockito;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
static class Config {
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public RealtimeEventPublisher realtimeEventPublisher() {
|
||||||
|
return new RealtimeEventPublisher();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Before
|
||||||
|
public void setUp() throws Exception {
|
||||||
|
|
||||||
|
mockito = Mockito.mockitoSession().initMocks(this).strictness(Strictness.STRICT_STUBS).startMocking();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@After
|
||||||
|
public void tearDown() throws Exception {
|
||||||
|
mockito.finishMocking();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ignore
|
||||||
|
public void testPublishChannelHopEvents() {
|
||||||
|
// TODO: implement
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ignore
|
||||||
|
public void testPublishClientConnectSuccessEvent() {
|
||||||
|
// TODO: implement
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ignore
|
||||||
|
public void testPublishClientDisconnectEvent() {
|
||||||
|
// TODO: implement
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testPublishClientAuthSystemEvent() throws Exception {
|
||||||
|
|
||||||
|
OpensyncStats.EventReport.ClientAuthEvent clientAuthEvent = OpensyncStats.EventReport.ClientAuthEvent
|
||||||
|
.newBuilder().setBand(RadioBandType.BAND5GL).setSsid("TipWlan-cloud-3-radios")
|
||||||
|
.setStaMac("c0:9a:d0:76:a9:69").setSessionId(Long.parseUnsignedLong("12377998144488079334"))
|
||||||
|
.setAuthStatus(WlanStatusCode.WLAN_STATUS_SUCCESS.getId()).setTimestampMs(1610050309).build();
|
||||||
|
|
||||||
|
realtimeEventPublisher.publishClientAuthSystemEvent(2, 1L, 0L, clientAuthEvent);
|
||||||
|
|
||||||
|
Mockito.verify(cloudEventDispatcherInterface, Mockito.times(1))
|
||||||
|
.publishEvent(Mockito.any(ClientAuthEvent.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testPublishClientAssocEvent() throws Exception {
|
||||||
|
|
||||||
|
OpensyncStats.EventReport.ClientAssocEvent clientAssocEvent = OpensyncStats.EventReport.ClientAssocEvent
|
||||||
|
.newBuilder().setBand(RadioBandType.BAND5GL).setRssi(-37).setSsid("TipWlan-cloud-3-radios")
|
||||||
|
.setStaMac("c0:9a:d0:76:a9:69").setSessionId(Long.parseUnsignedLong("12377998144488079334"))
|
||||||
|
.setUsing11K(true).setUsing11V(true).setStatus(WlanStatusCode.WLAN_STATUS_SUCCESS.getId())
|
||||||
|
.setTimestampMs(1610050309).build();
|
||||||
|
|
||||||
|
realtimeEventPublisher.publishClientAssocEvent(2, 1L, 0L, clientAssocEvent);
|
||||||
|
|
||||||
|
Mockito.verify(cloudEventDispatcherInterface, Mockito.times(1))
|
||||||
|
.publishEvent(Mockito.any(ClientAssocEvent.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ignore
|
||||||
|
public void testPublishClientFailureEvent() {
|
||||||
|
// TODO: implement
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ignore
|
||||||
|
public void testPublishClientFirstDataEvent() {
|
||||||
|
// TODO: implement
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ignore
|
||||||
|
public void testPublishClientIdEvent() {
|
||||||
|
// TODO: implement
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ignore
|
||||||
|
public void testPublishClientIpEvent() {
|
||||||
|
// TODO: implement
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ignore
|
||||||
|
public void testPublishClientTimeoutEvent() {
|
||||||
|
// TODO: implement
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testPublishDhcpTransactionEvents() throws Exception {
|
||||||
|
|
||||||
|
long timestamp = System.currentTimeMillis();
|
||||||
|
List<DhcpTransaction> dhcpTransactionList = new ArrayList<>();
|
||||||
|
DhcpAckEvent ackEvent = DhcpAckEvent.newBuilder()
|
||||||
|
.setDhcpCommonData(DhcpCommonData.newBuilder(DhcpCommonData.getDefaultInstance())
|
||||||
|
.setClientIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.250").getAddress()))
|
||||||
|
.setDhcpServerIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.1").getAddress()))
|
||||||
|
.setDeviceMacAddress("c0:9a:d0:76:a9:69")
|
||||||
|
.setXId(123456789)
|
||||||
|
.setTimestampMs(Long.valueOf(timestamp/1000).intValue()).build())
|
||||||
|
.setGatewayIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.1").getAddress()))
|
||||||
|
.setPrimaryDns(ByteString.copyFrom(InetAddress.getByName("64.71.255.204").getAddress()))
|
||||||
|
.setSecondaryDns(ByteString.copyFrom(InetAddress.getByName("64.71.255.198").getAddress()))
|
||||||
|
.setSubnetMask(ByteString.copyFrom(InetAddress.getByName("255.255.255.0").getAddress()))
|
||||||
|
.setLeaseTime(172800).setTimeOffset(10).build();
|
||||||
|
|
||||||
|
DhcpAckEvent ackEvent2 = DhcpAckEvent.newBuilder()
|
||||||
|
.setDhcpCommonData(DhcpCommonData.newBuilder(DhcpCommonData.getDefaultInstance())
|
||||||
|
.setClientIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.65").getAddress()))
|
||||||
|
.setDhcpServerIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.1").getAddress()))
|
||||||
|
.setDeviceMacAddress("f6:f0:65:99:e2:33")
|
||||||
|
.setXId(123456789)
|
||||||
|
.setTimestampMs(Long.valueOf(timestamp/1000).intValue()).build())
|
||||||
|
.setGatewayIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.1").getAddress()))
|
||||||
|
.setPrimaryDns(ByteString.copyFrom(InetAddress.getByName("64.71.255.204").getAddress()))
|
||||||
|
.setSecondaryDns(ByteString.copyFrom(InetAddress.getByName("64.71.255.198").getAddress()))
|
||||||
|
.setSubnetMask(ByteString.copyFrom(InetAddress.getByName("255.255.255.0").getAddress()))
|
||||||
|
.setLeaseTime(172800).setTimeOffset(10).build();
|
||||||
|
|
||||||
|
List<DhcpAckEvent> ackEventList = List.of(ackEvent, ackEvent2);
|
||||||
|
|
||||||
|
DhcpNakEvent nakEvent1 = DhcpNakEvent.newBuilder().setDhcpCommonData(DhcpCommonData.newBuilder(DhcpCommonData.getDefaultInstance())
|
||||||
|
.setClientIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.129").getAddress()))
|
||||||
|
.setDhcpServerIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.1").getAddress()))
|
||||||
|
.setDeviceMacAddress("24:f5:a2:ef:2e:53")
|
||||||
|
.setXId(123456789)
|
||||||
|
.setTimestampMs(Long.valueOf(timestamp/1000).intValue()).build()).setFromInternal(true).build();
|
||||||
|
|
||||||
|
List<DhcpNakEvent> nakEventList = List.of(nakEvent1);
|
||||||
|
|
||||||
|
DhcpOfferEvent offerEvent1 = DhcpOfferEvent.newBuilder().setDhcpCommonData(DhcpCommonData.newBuilder(DhcpCommonData.getDefaultInstance())
|
||||||
|
.setClientIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.250").getAddress()))
|
||||||
|
.setDhcpServerIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.1").getAddress()))
|
||||||
|
.setDeviceMacAddress("c0:9a:d0:76:a9:69")
|
||||||
|
.setXId(123456789)
|
||||||
|
.setTimestampMs(Long.valueOf(timestamp/1000).intValue()).build()).setFromInternal(true).build();
|
||||||
|
|
||||||
|
DhcpOfferEvent offerEvent2 = DhcpOfferEvent.newBuilder().setDhcpCommonData(DhcpCommonData.newBuilder(DhcpCommonData.getDefaultInstance())
|
||||||
|
.setClientIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.65").getAddress()))
|
||||||
|
.setDhcpServerIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.1").getAddress()))
|
||||||
|
.setDeviceMacAddress("f6:f0:65:99:e2:33")
|
||||||
|
.setXId(123456789)
|
||||||
|
.setTimestampMs(Long.valueOf(timestamp/1000).intValue()).build()).setFromInternal(true).build();
|
||||||
|
|
||||||
|
List<DhcpOfferEvent> offerEventList = List.of(offerEvent1,offerEvent2);
|
||||||
|
|
||||||
|
DhcpDiscoverEvent discoverEvent1 = DhcpDiscoverEvent.newBuilder().setDhcpCommonData(DhcpCommonData.newBuilder(DhcpCommonData.getDefaultInstance())
|
||||||
|
.setClientIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.250").getAddress()))
|
||||||
|
.setDhcpServerIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.1").getAddress()))
|
||||||
|
.setDeviceMacAddress("c0:9a:d0:76:a9:69")
|
||||||
|
.setXId(123456789)
|
||||||
|
.setTimestampMs(Long.valueOf(timestamp/1000).intValue()).build()).setHostname("My-iPhone").build();
|
||||||
|
|
||||||
|
DhcpDiscoverEvent discoverEvent2 = DhcpDiscoverEvent.newBuilder().setDhcpCommonData(DhcpCommonData.newBuilder(DhcpCommonData.getDefaultInstance())
|
||||||
|
.setClientIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.65").getAddress()))
|
||||||
|
.setDhcpServerIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.1").getAddress()))
|
||||||
|
.setDeviceMacAddress("f6:f0:65:99:e2:33")
|
||||||
|
.setXId(123456789)
|
||||||
|
.setTimestampMs(Long.valueOf(timestamp/1000).intValue()).build()).setHostname("My-iPad").build();
|
||||||
|
|
||||||
|
List<DhcpDiscoverEvent> discoverEventList = List.of(discoverEvent1,discoverEvent2);
|
||||||
|
|
||||||
|
DhcpRequestEvent requestEvent1 = DhcpRequestEvent.newBuilder().setDhcpCommonData(DhcpCommonData.newBuilder(DhcpCommonData.getDefaultInstance())
|
||||||
|
.setClientIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.250").getAddress()))
|
||||||
|
.setDhcpServerIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.1").getAddress()))
|
||||||
|
.setDeviceMacAddress("c0:9a:d0:76:a9:69")
|
||||||
|
.setXId(123456789)
|
||||||
|
.setTimestampMs(Long.valueOf(timestamp/1000).intValue()).build()).setHostname("My-iPhone").build();
|
||||||
|
|
||||||
|
DhcpRequestEvent requestEvent2 = DhcpRequestEvent.newBuilder().setDhcpCommonData(DhcpCommonData.newBuilder(DhcpCommonData.getDefaultInstance())
|
||||||
|
.setClientIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.65").getAddress()))
|
||||||
|
.setDhcpServerIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.1").getAddress()))
|
||||||
|
.setDeviceMacAddress("f6:f0:65:99:e2:33")
|
||||||
|
.setXId(123456789)
|
||||||
|
.setTimestampMs(Long.valueOf(timestamp/1000).intValue()).build()).setHostname("My-iPad").build();
|
||||||
|
|
||||||
|
List<DhcpRequestEvent> requestEventList = List.of(requestEvent1,requestEvent2);
|
||||||
|
|
||||||
|
DhcpInformEvent informEvent = DhcpInformEvent.newBuilder().setDhcpCommonData(DhcpCommonData.newBuilder(DhcpCommonData.getDefaultInstance())
|
||||||
|
.setClientIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.250").getAddress()))
|
||||||
|
.setDhcpServerIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.1").getAddress()))
|
||||||
|
.setDeviceMacAddress("c0:9a:d0:76:a9:69")
|
||||||
|
.setXId(123456789)
|
||||||
|
.setTimestampMs(Long.valueOf(timestamp/1000).intValue()).build()).build();
|
||||||
|
|
||||||
|
List<DhcpInformEvent> informEventList = List.of(informEvent);
|
||||||
|
|
||||||
|
|
||||||
|
DhcpDeclineEvent declineEvent = DhcpDeclineEvent.newBuilder().setDhcpCommonData(DhcpCommonData.newBuilder(DhcpCommonData.getDefaultInstance())
|
||||||
|
.setClientIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.129").getAddress()))
|
||||||
|
.setDhcpServerIp(ByteString.copyFrom(InetAddress.getByName("10.0.0.1").getAddress()))
|
||||||
|
.setDeviceMacAddress("24:f5:a2:ef:2e:53")
|
||||||
|
.setXId(123456789)
|
||||||
|
.setTimestampMs(Long.valueOf(timestamp/1000).intValue()).build()).build();
|
||||||
|
|
||||||
|
List<DhcpDeclineEvent> declineEventList = List.of(declineEvent);
|
||||||
|
|
||||||
|
|
||||||
|
DhcpTransaction dhcpTransaction = DhcpTransaction.newBuilder(DhcpTransaction.getDefaultInstance())
|
||||||
|
.addAllDhcpAckEvent(ackEventList).addAllDhcpNakEvent(nakEventList).addAllDhcpOfferEvent(offerEventList)
|
||||||
|
.addAllDhcpInformEvent(informEventList).addAllDhcpDeclineEvent(declineEventList)
|
||||||
|
.addAllDhcpDiscoverEvent(discoverEventList).addAllDhcpRequestEvent(requestEventList).setXId(123456789)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
dhcpTransactionList.add(dhcpTransaction);
|
||||||
|
|
||||||
|
realtimeEventPublisher.publishDhcpTransactionEvents(2, 1L, 0L, dhcpTransactionList);
|
||||||
|
|
||||||
|
Mockito.verify(cloudEventDispatcherInterface,Mockito.times(1)).publishEventsBulk(Mockito.anyList());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testPublishSipCallEvents() throws Exception {
|
||||||
|
|
||||||
|
OpensyncStats.VideoVoiceReport.Builder callStartVoiceReportBuilder = OpensyncStats.VideoVoiceReport.newBuilder()
|
||||||
|
.setCallStart(getDefaultCallStart());
|
||||||
|
OpensyncStats.VideoVoiceReport.Builder callReportGotPublishVoiceReportBuilder = OpensyncStats.VideoVoiceReport
|
||||||
|
.newBuilder().setCallReport(getDefaultCallReport(OpensyncStats.CallReport.CallReportReason.GOT_PUBLISH,
|
||||||
|
121, 1028, 1316, 1888, 298, 2, 100, 200));
|
||||||
|
OpensyncStats.VideoVoiceReport.Builder callReportRoamedToVoiceReportBuilder = OpensyncStats.VideoVoiceReport
|
||||||
|
.newBuilder().setCallReport(getDefaultCallReport(OpensyncStats.CallReport.CallReportReason.ROAMED_TO,
|
||||||
|
123, 1020, 1116, 1345, 223, 0, 102, 203));
|
||||||
|
OpensyncStats.VideoVoiceReport.Builder callReportRoamedFromVoiceReportBuilder = OpensyncStats.VideoVoiceReport
|
||||||
|
.newBuilder().setCallReport(getDefaultCallReport(OpensyncStats.CallReport.CallReportReason.ROAMED_FROM,
|
||||||
|
122, 1029, 1300, 1234, 111, 3, 101, 201));
|
||||||
|
OpensyncStats.VideoVoiceReport.Builder callStopVoiceReportBuilder = OpensyncStats.VideoVoiceReport.newBuilder()
|
||||||
|
.setCallStop(getDefaultCallStop());
|
||||||
|
// Create report with multiple voiceReports in one
|
||||||
|
Report multipleVoiceReportsInOneReport = Report.newBuilder().addVideoVoiceReport(callStartVoiceReportBuilder)
|
||||||
|
.addVideoVoiceReport(callReportGotPublishVoiceReportBuilder)
|
||||||
|
.addVideoVoiceReport(callReportRoamedFromVoiceReportBuilder)
|
||||||
|
.addVideoVoiceReport(callReportRoamedToVoiceReportBuilder)
|
||||||
|
.addVideoVoiceReport(callStopVoiceReportBuilder).setNodeID("1").build();
|
||||||
|
|
||||||
|
realtimeEventPublisher.publishSipCallEvents(1, 2L, 0L, multipleVoiceReportsInOneReport.getVideoVoiceReportList());
|
||||||
|
|
||||||
|
Mockito.verify(cloudEventDispatcherInterface, Mockito.times(1)).publishEventsBulk(Mockito.anyList());
|
||||||
|
}
|
||||||
|
|
||||||
|
private OpensyncStats.CallStart getDefaultCallStart() {
|
||||||
|
OpensyncStats.CallStart.Builder callStartBuilder = OpensyncStats.CallStart.newBuilder();
|
||||||
|
callStartBuilder.setBand(RadioBandType.BAND5G);
|
||||||
|
callStartBuilder.setChannel(40);
|
||||||
|
callStartBuilder.addCodecs("110 opus/48000/2");
|
||||||
|
callStartBuilder.addCodecs("102 iLBC/8000");
|
||||||
|
callStartBuilder.setClientMac(ByteString.copyFrom("C0:9A:D0:76:A9:69".getBytes()));
|
||||||
|
callStartBuilder.setDeviceInfo("Test Device");
|
||||||
|
callStartBuilder.setProviderDomain("skype");
|
||||||
|
callStartBuilder.setSessionId(123L);
|
||||||
|
callStartBuilder.setWifiSessionId(1234L);
|
||||||
|
|
||||||
|
return callStartBuilder.build();
|
||||||
|
}
|
||||||
|
|
||||||
|
private OpensyncStats.CallStop getDefaultCallStop() {
|
||||||
|
OpensyncStats.CallStop.Builder callStopBuilder = OpensyncStats.CallStop.newBuilder();
|
||||||
|
callStopBuilder.setBand(RadioBandType.BAND5G);
|
||||||
|
callStopBuilder.setChannel(40);
|
||||||
|
callStopBuilder.addCodecs("110 opus/48000/2");
|
||||||
|
callStopBuilder.addCodecs("102 iLBC/8000");
|
||||||
|
callStopBuilder.setClientMac(ByteString.copyFrom("C0:9A:D0:76:A9:69".getBytes()));
|
||||||
|
callStopBuilder.setCallDuration(1230);
|
||||||
|
callStopBuilder.setProviderDomain("skype");
|
||||||
|
callStopBuilder.setSessionId(123L);
|
||||||
|
callStopBuilder.setWifiSessionId(1234L);
|
||||||
|
callStopBuilder.setReason(OpensyncStats.CallStop.CallStopReason.BYE_OK);
|
||||||
|
callStopBuilder.addStats(getRtpFlowStats(121, 1380, 1400, 3000, 119, 3, 205, 350));
|
||||||
|
|
||||||
|
return callStopBuilder.build();
|
||||||
|
}
|
||||||
|
|
||||||
|
private OpensyncStats.RtpFlowStats getRtpFlowStats(int codec, int jitter, int latency, int totalPackets,
|
||||||
|
int totalPacketsLost, int mos, int firstRtpSeq, int lastRtpSeq) {
|
||||||
|
OpensyncStats.RtpFlowStats.Builder rtpFlowStatsBuilder = OpensyncStats.RtpFlowStats.newBuilder();
|
||||||
|
rtpFlowStatsBuilder.setCodec(codec);
|
||||||
|
rtpFlowStatsBuilder.setBlockCodecs(ByteString.copyFrom(new byte[] { (byte) 0xe6, 0x1 }));
|
||||||
|
rtpFlowStatsBuilder.setDirection(OpensyncStats.RtpFlowStats.RtpFlowDirection.RTP_DOWNSTREAM);
|
||||||
|
rtpFlowStatsBuilder.setRtpFlowType(OpensyncStats.RtpFlowStats.RtpFlowType.RTP_VOICE);
|
||||||
|
rtpFlowStatsBuilder.setJitter(jitter);
|
||||||
|
rtpFlowStatsBuilder.setLatency(latency);
|
||||||
|
rtpFlowStatsBuilder.setTotalPacketsSent(totalPackets);
|
||||||
|
rtpFlowStatsBuilder.setTotalPacketsLost(totalPacketsLost);
|
||||||
|
rtpFlowStatsBuilder.setMosx100(mos);
|
||||||
|
rtpFlowStatsBuilder.setRtpSeqFirst(firstRtpSeq);
|
||||||
|
rtpFlowStatsBuilder.setRtpSeqLast(lastRtpSeq);
|
||||||
|
|
||||||
|
return rtpFlowStatsBuilder.build();
|
||||||
|
}
|
||||||
|
|
||||||
|
private OpensyncStats.CallReport getDefaultCallReport(OpensyncStats.CallReport.CallReportReason reason, int codec,
|
||||||
|
int jitter, int latency, int totalPackets, int totalPacketsLost, int mos, int firstRtpSeq, int lastRtpSeq) {
|
||||||
|
OpensyncStats.CallReport.Builder callReportBuilder = OpensyncStats.CallReport.newBuilder();
|
||||||
|
callReportBuilder.setBand(RadioBandType.BAND5G);
|
||||||
|
callReportBuilder.setChannel(40);
|
||||||
|
callReportBuilder.addCodecs("110 opus/48000/2");
|
||||||
|
callReportBuilder.addCodecs("102 iLBC/8000");
|
||||||
|
callReportBuilder.setClientMac(ByteString.copyFrom("C0:9A:D0:76:A9:69".getBytes()));
|
||||||
|
callReportBuilder.setProviderDomain("skype");
|
||||||
|
callReportBuilder.setSessionId(123L);
|
||||||
|
callReportBuilder.setWifiSessionId(1234L);
|
||||||
|
callReportBuilder.setReason(reason);
|
||||||
|
callReportBuilder.addStats(
|
||||||
|
getRtpFlowStats(codec, jitter, latency, totalPackets, totalPacketsLost, mos, firstRtpSeq, lastRtpSeq));
|
||||||
|
|
||||||
|
return callReportBuilder.build();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"id": "1",
|
||||||
|
"hostname": "Host-1",
|
||||||
|
"ipAddr": "1.1.1.1",
|
||||||
|
"port": 123,
|
||||||
|
"gatewayType": "CEGW",
|
||||||
|
"createdTimestamp": 0,
|
||||||
|
"lastModifiedTimestamp": 0
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"id": 12,
|
||||||
|
"equipmentId": 123,
|
||||||
|
"customerId": 2,
|
||||||
|
"gatewayId": 110,
|
||||||
|
"createdTimestamp": 0,
|
||||||
|
"lastModifiedTimestamp": 0
|
||||||
|
}
|
||||||
@@ -1,11 +1,9 @@
|
|||||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<artifactId>tip-wlan-cloud-root-pom</artifactId>
|
<artifactId>tip-wlan-cloud-root-pom</artifactId>
|
||||||
<version>0.0.1-SNAPSHOT</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
<relativePath>../../wlan-cloud-root</relativePath>
|
<relativePath>../../wlan-cloud-root</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>opensync-ext-interface</artifactId>
|
<artifactId>opensync-ext-interface</artifactId>
|
||||||
@@ -15,43 +13,35 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<artifactId>base-models</artifactId>
|
<artifactId>base-models</artifactId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<artifactId>tip-wlan-opensync-protobuf</artifactId>
|
<artifactId>tip-wlan-opensync-protobuf</artifactId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<artifactId>customer-models</artifactId>
|
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>equipment-models</artifactId>
|
<artifactId>equipment-models</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>profile-models</artifactId>
|
<artifactId>profile-models</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>location-models</artifactId>
|
<artifactId>location-models</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>routing-models</artifactId>
|
<artifactId>routing-models</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<artifactId>client-models</artifactId>
|
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.vmware.ovsdb</groupId>
|
<groupId>com.vmware.ovsdb</groupId>
|
||||||
|
|||||||
@@ -1,14 +0,0 @@
|
|||||||
package com.telecominfraproject.wlan.opensync.external.integration;
|
|
||||||
|
|
||||||
import java.util.Set;
|
|
||||||
|
|
||||||
public interface ConnectusOvsdbClientInterface {
|
|
||||||
|
|
||||||
Set<String> getConnectedClientIds();
|
|
||||||
|
|
||||||
String changeRedirectorAddress(String apId, String newRedirectorAddress);
|
|
||||||
|
|
||||||
void processConfigChanged(String apId);
|
|
||||||
|
|
||||||
String closeSession(String apId);
|
|
||||||
}
|
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
package com.telecominfraproject.wlan.opensync.external.integration;
|
package com.telecominfraproject.wlan.opensync.external.integration;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
import com.telecominfraproject.wlan.opensync.external.integration.models.ConnectNodeInfo;
|
import com.telecominfraproject.wlan.opensync.external.integration.models.ConnectNodeInfo;
|
||||||
import com.telecominfraproject.wlan.opensync.external.integration.models.OpensyncAPConfig;
|
import com.telecominfraproject.wlan.opensync.external.integration.models.OpensyncAPConfig;
|
||||||
@@ -33,15 +34,24 @@ public interface OpensyncExternalIntegrationInterface {
|
|||||||
|
|
||||||
void wifiInetStateDbTableUpdate(List<OpensyncAPInetState> inetStateTables, String apId);
|
void wifiInetStateDbTableUpdate(List<OpensyncAPInetState> inetStateTables, String apId);
|
||||||
|
|
||||||
void processMqttMessage(String topic, Report report);
|
void wifiInetStateDbTableDelete(List<OpensyncAPInetState> inetStateTables, String apId);
|
||||||
|
|
||||||
void processMqttMessage(String topic, FlowReport flowReport);
|
|
||||||
|
|
||||||
void processMqttMessage(String topic, WCStatsReport wcStatsReport);
|
|
||||||
|
|
||||||
void wifiAssociatedClientsDbTableUpdate(List<OpensyncWifiAssociatedClients> wifiAssociatedClients, String apId);
|
void wifiAssociatedClientsDbTableUpdate(List<OpensyncWifiAssociatedClients> wifiAssociatedClients, String apId);
|
||||||
|
|
||||||
void wifiAssociatedClientsDbTableDelete(String deletedClientMac, String apId);
|
void wifiAssociatedClientsDbTableDelete(String deletedClientMac, String apId);
|
||||||
|
|
||||||
void awlanNodeDbTableUpdate(OpensyncAWLANNode opensyncAPState, String apId);
|
void awlanNodeDbTableUpdate(OpensyncAWLANNode opensyncAPState, String apId);
|
||||||
|
|
||||||
|
void dhcpLeasedIpDbTableUpdate(List<Map<String, String>> dhcpAttributes, String apId,
|
||||||
|
RowUpdateOperation rowUpdateOperation);
|
||||||
|
|
||||||
|
void commandStateDbTableUpdate(List<Map<String, String>> commandStateAttributes, String apId,
|
||||||
|
RowUpdateOperation rowUpdateOperation);
|
||||||
|
|
||||||
|
void apcStateDbTableUpdate(Map<String, String> apcStateAttributes, String apId,
|
||||||
|
RowUpdateOperation rowUpdateOperation);
|
||||||
|
|
||||||
|
void nodeStateDbTableUpdate(List<Map<String, String>> nodeStateAttributes, String apId);
|
||||||
|
|
||||||
|
void clearEquipmentStatus(String apId);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,41 @@
|
|||||||
|
package com.telecominfraproject.wlan.opensync.external.integration;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
import com.telecominfraproject.wlan.core.model.equipment.MacAddress;
|
||||||
|
import com.telecominfraproject.wlan.core.model.equipment.RadioType;
|
||||||
|
import com.telecominfraproject.wlan.equipment.models.CellSizeAttributes;
|
||||||
|
|
||||||
|
public interface OvsdbClientInterface {
|
||||||
|
|
||||||
|
Set<String> getConnectedClientIds();
|
||||||
|
|
||||||
|
String changeRedirectorHost(String apId, String newRedirectorHost);
|
||||||
|
|
||||||
|
String startDebugEngine(String apId, String gatewayHostname, Integer gatewayPort);
|
||||||
|
|
||||||
|
String stopDebugEngine(String apId);
|
||||||
|
|
||||||
|
String processBlinkRequest(String apId, boolean blinkAllLEDs);
|
||||||
|
|
||||||
|
void processConfigChanged(String apId);
|
||||||
|
|
||||||
|
void processClientBlocklistChange(String apId, List<MacAddress> blockList);
|
||||||
|
|
||||||
|
String processFirmwareDownload(String apId, String firmwareUrl, String firmwareVersion, String username);
|
||||||
|
|
||||||
|
String closeSession(String apId);
|
||||||
|
|
||||||
|
String processFirmwareFlash(String apId, String firmwareVersion, String username);
|
||||||
|
|
||||||
|
String processRebootRequest(String apId, boolean switchBanks);
|
||||||
|
|
||||||
|
String processFactoryResetRequest(String apId);
|
||||||
|
|
||||||
|
String processNewChannelsRequest(String apId, Map<RadioType,Integer> backupChannelMap, Map<RadioType,Integer> primaryChannelMap);
|
||||||
|
|
||||||
|
String processCellSizeAttributesRequest(String apId, Map<RadioType, CellSizeAttributes> cellSizeAttributeMap);
|
||||||
|
|
||||||
|
}
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
package com.telecominfraproject.wlan.opensync.external.integration;
|
package com.telecominfraproject.wlan.opensync.external.integration;
|
||||||
|
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
import com.vmware.ovsdb.service.OvsdbClient;
|
import com.vmware.ovsdb.service.OvsdbClient;
|
||||||
|
|
||||||
public class OvsdbSession {
|
public class OvsdbSession {
|
||||||
@@ -7,7 +9,7 @@ public class OvsdbSession {
|
|||||||
private String apId;
|
private String apId;
|
||||||
private long routingId;
|
private long routingId;
|
||||||
private long equipmentId;
|
private long equipmentId;
|
||||||
private int customerId;
|
private long mostRecentStatsTimestamp;
|
||||||
|
|
||||||
public OvsdbClient getOvsdbClient() {
|
public OvsdbClient getOvsdbClient() {
|
||||||
return ovsdbClient;
|
return ovsdbClient;
|
||||||
@@ -33,12 +35,34 @@ public class OvsdbSession {
|
|||||||
public void setEquipmentId(long equipmentId) {
|
public void setEquipmentId(long equipmentId) {
|
||||||
this.equipmentId = equipmentId;
|
this.equipmentId = equipmentId;
|
||||||
}
|
}
|
||||||
public int getCustomerId() {
|
public long getMostRecentStatsTimestamp() {
|
||||||
return customerId;
|
return mostRecentStatsTimestamp;
|
||||||
}
|
}
|
||||||
public void setCustomerId(int customerId) {
|
public void setMostRecentStatsTimestamp(long mostRecentStatsTimestamp) {
|
||||||
this.customerId = customerId;
|
this.mostRecentStatsTimestamp = mostRecentStatsTimestamp;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return Objects.hash(apId, equipmentId, mostRecentStatsTimestamp, ovsdbClient, routingId);
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object obj) {
|
||||||
|
if (this == obj)
|
||||||
|
return true;
|
||||||
|
if (obj == null)
|
||||||
|
return false;
|
||||||
|
if (getClass() != obj.getClass())
|
||||||
|
return false;
|
||||||
|
OvsdbSession other = (OvsdbSession) obj;
|
||||||
|
return Objects.equals(apId, other.apId) && equipmentId == other.equipmentId && mostRecentStatsTimestamp == other.mostRecentStatsTimestamp
|
||||||
|
&& Objects.equals(ovsdbClient, other.ovsdbClient) && routingId == other.routingId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "OvsdbSession [ovsdbClient=" + ovsdbClient + ", apId=" + apId + ", routingId=" + routingId + ", equipmentId=" + equipmentId
|
||||||
|
+ ", mostRecentStatsTimestamp=" + mostRecentStatsTimestamp + "]";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,10 +1,15 @@
|
|||||||
|
|
||||||
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
public class ConnectNodeInfo implements Cloneable{
|
public class ConnectNodeInfo implements Cloneable {
|
||||||
public Map<String,String> mqttSettings;
|
|
||||||
|
public Map<String, String> mqttSettings = new HashMap<>();
|
||||||
|
public Map<String, String> versionMatrix = new HashMap<>();
|
||||||
|
public Map<String, String> wifiRadioStates = new HashMap<>();
|
||||||
public String redirectorAddr;
|
public String redirectorAddr;
|
||||||
public String managerAddr;
|
public String managerAddr;
|
||||||
public String skuNumber;
|
public String skuNumber;
|
||||||
@@ -15,29 +20,83 @@ public class ConnectNodeInfo implements Cloneable{
|
|||||||
public String firmwareVersion;
|
public String firmwareVersion;
|
||||||
public String revision;
|
public String revision;
|
||||||
public String model;
|
public String model;
|
||||||
|
public String ifName;
|
||||||
|
public String ifType;
|
||||||
|
public String country;
|
||||||
|
public String lanIpV4Address;
|
||||||
|
public String lanIfName;
|
||||||
|
public String lanIfType;
|
||||||
|
public String lanMacAddress;
|
||||||
|
public String referenceDesign;
|
||||||
|
public Map<String, String> qrCode;
|
||||||
|
public String modelDescription;
|
||||||
|
public String manufacturerUrl;
|
||||||
|
public String manufacturerName;
|
||||||
|
public String manufacturerDate;
|
||||||
|
public String certificationRegion;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ConnectNodeInfo clone() {
|
public ConnectNodeInfo clone() {
|
||||||
try {
|
try {
|
||||||
ConnectNodeInfo ret = (ConnectNodeInfo)super.clone();
|
ConnectNodeInfo ret = (ConnectNodeInfo) super.clone();
|
||||||
if (this.mqttSettings!=null) {
|
if (this.mqttSettings != null) {
|
||||||
ret.mqttSettings = new HashMap<>(this.mqttSettings);
|
ret.mqttSettings = new HashMap<>(this.mqttSettings);
|
||||||
}
|
}
|
||||||
|
if (this.wifiRadioStates != null) {
|
||||||
|
ret.wifiRadioStates = new HashMap<>(this.wifiRadioStates);
|
||||||
|
}
|
||||||
|
if (this.versionMatrix != null) {
|
||||||
|
ret.versionMatrix = new HashMap<>(this.versionMatrix);
|
||||||
|
}
|
||||||
|
if (this.qrCode != null) {
|
||||||
|
ret.qrCode = new HashMap<>(this.qrCode);
|
||||||
|
}
|
||||||
return ret;
|
return ret;
|
||||||
}catch(CloneNotSupportedException e) {
|
} catch (CloneNotSupportedException e) {
|
||||||
throw new IllegalStateException("Cannot clone ", e);
|
throw new IllegalStateException("Cannot clone ", e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return Objects.hash(certificationRegion, country, firmwareVersion, ifName, ifType, ipV4Address, lanIfName, lanIfType, lanIpV4Address, lanMacAddress,
|
||||||
|
macAddress, managerAddr, manufacturerDate, manufacturerName, manufacturerUrl, model, modelDescription, mqttSettings, platformVersion, qrCode,
|
||||||
|
redirectorAddr, referenceDesign, revision, serialNumber, skuNumber, versionMatrix, wifiRadioStates);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object obj) {
|
||||||
|
if (this == obj)
|
||||||
|
return true;
|
||||||
|
if (obj == null)
|
||||||
|
return false;
|
||||||
|
if (getClass() != obj.getClass())
|
||||||
|
return false;
|
||||||
|
ConnectNodeInfo other = (ConnectNodeInfo) obj;
|
||||||
|
return Objects.equals(certificationRegion, other.certificationRegion) && Objects.equals(country, other.country)
|
||||||
|
&& Objects.equals(firmwareVersion, other.firmwareVersion) && Objects.equals(ifName, other.ifName) && Objects.equals(ifType, other.ifType)
|
||||||
|
&& Objects.equals(ipV4Address, other.ipV4Address) && Objects.equals(lanIfName, other.lanIfName) && Objects.equals(lanIfType, other.lanIfType)
|
||||||
|
&& Objects.equals(lanIpV4Address, other.lanIpV4Address) && Objects.equals(lanMacAddress, other.lanMacAddress)
|
||||||
|
&& Objects.equals(macAddress, other.macAddress) && Objects.equals(managerAddr, other.managerAddr)
|
||||||
|
&& Objects.equals(manufacturerDate, other.manufacturerDate) && Objects.equals(manufacturerName, other.manufacturerName)
|
||||||
|
&& Objects.equals(manufacturerUrl, other.manufacturerUrl) && Objects.equals(model, other.model)
|
||||||
|
&& Objects.equals(modelDescription, other.modelDescription) && Objects.equals(mqttSettings, other.mqttSettings)
|
||||||
|
&& Objects.equals(platformVersion, other.platformVersion) && Objects.equals(qrCode, other.qrCode)
|
||||||
|
&& Objects.equals(redirectorAddr, other.redirectorAddr) && Objects.equals(referenceDesign, other.referenceDesign)
|
||||||
|
&& Objects.equals(revision, other.revision) && Objects.equals(serialNumber, other.serialNumber) && Objects.equals(skuNumber, other.skuNumber)
|
||||||
|
&& Objects.equals(versionMatrix, other.versionMatrix) && Objects.equals(wifiRadioStates, other.wifiRadioStates);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return String.format(
|
return "ConnectNodeInfo [mqttSettings=" + mqttSettings + ", versionMatrix=" + versionMatrix + ", wifiRadioStates=" + wifiRadioStates
|
||||||
"ConnectNodeInfo [mqttSettings=%s, redirectorAddr=%s, managerAddr=%s, skuNumber=%s, serialNumber=%s, "
|
+ ", redirectorAddr=" + redirectorAddr + ", managerAddr=" + managerAddr + ", skuNumber=" + skuNumber + ", serialNumber=" + serialNumber
|
||||||
+ "macAddress=%s, ipV4Address=%s, platformVersion=%s, firmwareVersion=%s, revision=%s, model=%s]",
|
+ ", macAddress=" + macAddress + ", ipV4Address=" + ipV4Address + ", platformVersion=" + platformVersion + ", firmwareVersion="
|
||||||
mqttSettings, redirectorAddr, managerAddr, skuNumber, serialNumber, macAddress, ipV4Address,
|
+ firmwareVersion + ", revision=" + revision + ", model=" + model + ", ifName=" + ifName + ", ifType=" + ifType + ", country=" + country
|
||||||
platformVersion, firmwareVersion, revision, model);
|
+ ", lanIpV4Address=" + lanIpV4Address + ", lanIfName=" + lanIfName + ", lanIfType=" + lanIfType + ", lanMacAddress=" + lanMacAddress
|
||||||
|
+ ", referenceDesign=" + referenceDesign + ", qrCode=" + qrCode + ", modelDescription=" + modelDescription + ", manufacturerUrl="
|
||||||
|
+ manufacturerUrl + ", manufacturerName=" + manufacturerName + ", manufacturerDate=" + manufacturerDate + ", certificationRegion="
|
||||||
|
+ certificationRegion + "]";
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,30 @@
|
|||||||
|
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
||||||
|
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
import com.telecominfraproject.wlan.core.model.json.BaseJsonModel;
|
||||||
|
import com.vmware.ovsdb.protocol.operation.notation.Row;
|
||||||
|
|
||||||
|
public abstract class OpensyncAPBase extends BaseJsonModel {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = -68509242520818671L;
|
||||||
|
|
||||||
|
public static <T> T getSingleValueFromSet(Row row, String columnName) {
|
||||||
|
|
||||||
|
Set<T> set = row != null ? row.getSetColumn(columnName) : null;
|
||||||
|
T ret = (set != null) && !set.isEmpty() ? set.iterator().next() : null;
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
public OpensyncAPBase() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public <T> Set<T> getSet(Row row, String columnName) {
|
||||||
|
|
||||||
|
Set<T> set = row != null ? row.getSetColumn(columnName) : null;
|
||||||
|
|
||||||
|
return set;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -3,12 +3,13 @@ package com.telecominfraproject.wlan.opensync.external.integration.models;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Objects;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import com.telecominfraproject.wlan.core.model.entity.CountryCode;
|
import com.telecominfraproject.wlan.core.model.entity.CountryCode;
|
||||||
import com.telecominfraproject.wlan.core.model.equipment.EquipmentType;
|
import com.telecominfraproject.wlan.core.model.equipment.EquipmentType;
|
||||||
|
import com.telecominfraproject.wlan.core.model.equipment.MacAddress;
|
||||||
import com.telecominfraproject.wlan.core.model.equipment.RadioType;
|
import com.telecominfraproject.wlan.core.model.equipment.RadioType;
|
||||||
import com.telecominfraproject.wlan.core.model.json.BaseJsonModel;
|
|
||||||
import com.telecominfraproject.wlan.equipment.models.ApElementConfiguration;
|
import com.telecominfraproject.wlan.equipment.models.ApElementConfiguration;
|
||||||
import com.telecominfraproject.wlan.equipment.models.Equipment;
|
import com.telecominfraproject.wlan.equipment.models.Equipment;
|
||||||
import com.telecominfraproject.wlan.equipment.models.StateSetting;
|
import com.telecominfraproject.wlan.equipment.models.StateSetting;
|
||||||
@@ -22,188 +23,306 @@ import com.telecominfraproject.wlan.profile.ssid.models.SsidConfiguration.Secure
|
|||||||
import com.telecominfraproject.wlan.routing.models.EquipmentGatewayRecord;
|
import com.telecominfraproject.wlan.routing.models.EquipmentGatewayRecord;
|
||||||
import com.telecominfraproject.wlan.routing.models.EquipmentRoutingRecord;
|
import com.telecominfraproject.wlan.routing.models.EquipmentRoutingRecord;
|
||||||
|
|
||||||
public class OpensyncAPConfig extends BaseJsonModel {
|
public class OpensyncAPConfig extends OpensyncAPBase {
|
||||||
|
|
||||||
private static final long serialVersionUID = 3917975477206236668L;
|
private static final long serialVersionUID = 3917975477206236668L;
|
||||||
|
|
||||||
private Equipment customerEquipment;
|
public static long getSerialversionuid() {
|
||||||
private Profile apProfile;
|
return serialVersionUID;
|
||||||
private List<Profile> ssidProfile;
|
}
|
||||||
private List<Profile> radiusProfiles;
|
|
||||||
private Location equipmentLocation;
|
|
||||||
private EquipmentRoutingRecord equipmentRouting;
|
|
||||||
private EquipmentGatewayRecord equipmentGateway;
|
|
||||||
|
|
||||||
// Handle Legacy Config Support
|
private Equipment customerEquipment;
|
||||||
public void setRadioConfig(OpensyncAPRadioConfig radioConfig) {
|
private OpensyncAPHotspot20Config hotspotConfig;
|
||||||
|
private Profile apProfile;
|
||||||
|
private Profile rfProfile;
|
||||||
|
private List<Profile> ssidProfile;
|
||||||
|
private List<Profile> metricsProfile;
|
||||||
|
private List<Profile> radiusProfiles;
|
||||||
|
private Location equipmentLocation;
|
||||||
|
private EquipmentRoutingRecord equipmentRouting;
|
||||||
|
private EquipmentGatewayRecord equipmentGateway;
|
||||||
|
private List<Profile> captiveProfiles;
|
||||||
|
private List<Profile> bonjourGatewayProfiles;
|
||||||
|
|
||||||
if (customerEquipment == null) {
|
private List<MacAddress> blockedClients;
|
||||||
customerEquipment = new Equipment();
|
|
||||||
customerEquipment.setId(0);
|
|
||||||
customerEquipment.setEquipmentType(EquipmentType.AP);
|
|
||||||
customerEquipment.setDetails(ApElementConfiguration.createWithDefaults());
|
|
||||||
ApElementConfiguration apConfig = (ApElementConfiguration) customerEquipment.getDetails();
|
|
||||||
apConfig.getRadioMap().get(RadioType.is2dot4GHz).setChannelNumber(radioConfig.getRadioChannel24G());
|
|
||||||
apConfig.getRadioMap().get(RadioType.is5GHzL).setChannelNumber(radioConfig.getRadioChannel5LG());
|
|
||||||
apConfig.getRadioMap().get(RadioType.is5GHzU).setChannelNumber(radioConfig.getRadioChannel5HG());
|
|
||||||
customerEquipment.setDetails(apConfig);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (equipmentLocation == null) {
|
@Override
|
||||||
equipmentLocation = new Location();
|
public OpensyncAPConfig clone() {
|
||||||
equipmentLocation.setId(1);
|
OpensyncAPConfig ret = (OpensyncAPConfig) super.clone();
|
||||||
equipmentLocation.setDetails(LocationDetails.createWithDefaults());
|
|
||||||
((LocationDetails) equipmentLocation.getDetails())
|
|
||||||
.setCountryCode(CountryCode.getByName(radioConfig.getCountry().toLowerCase()));
|
|
||||||
customerEquipment.setLocationId(equipmentLocation.getId());
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
if (customerEquipment != null) {
|
||||||
|
ret.customerEquipment = customerEquipment.clone();
|
||||||
|
}
|
||||||
|
if (hotspotConfig != null) {
|
||||||
|
ret.hotspotConfig = hotspotConfig.clone();
|
||||||
|
}
|
||||||
|
if (equipmentLocation != null) {
|
||||||
|
ret.equipmentLocation = equipmentLocation.clone();
|
||||||
|
}
|
||||||
|
if (ssidProfile != null) {
|
||||||
|
List<Profile> ssidList = new ArrayList<Profile>();
|
||||||
|
for (Profile profile : ssidProfile) {
|
||||||
|
ssidList.add(profile.clone());
|
||||||
|
}
|
||||||
|
ret.ssidProfile = ssidList;
|
||||||
|
}
|
||||||
|
if (metricsProfile != null) {
|
||||||
|
List<Profile> metricsList = new ArrayList<Profile>();
|
||||||
|
for (Profile profile : metricsProfile) {
|
||||||
|
metricsList.add(profile.clone());
|
||||||
|
}
|
||||||
|
ret.metricsProfile = metricsList;
|
||||||
|
}
|
||||||
|
if (bonjourGatewayProfiles != null) {
|
||||||
|
List<Profile> bonjourGatewayProfilesList = new ArrayList<Profile>();
|
||||||
|
for (Profile profile : bonjourGatewayProfiles) {
|
||||||
|
bonjourGatewayProfilesList.add(profile.clone());
|
||||||
|
}
|
||||||
|
ret.bonjourGatewayProfiles = bonjourGatewayProfilesList;
|
||||||
|
}
|
||||||
|
if (apProfile != null) {
|
||||||
|
ret.apProfile = apProfile.clone();
|
||||||
|
}
|
||||||
|
if (rfProfile != null) {
|
||||||
|
ret.rfProfile = rfProfile.clone();
|
||||||
|
}
|
||||||
|
if (equipmentRouting != null) {
|
||||||
|
ret.equipmentRouting = equipmentRouting.clone();
|
||||||
|
}
|
||||||
|
if (equipmentGateway != null) {
|
||||||
|
ret.equipmentGateway = equipmentGateway.clone();
|
||||||
|
}
|
||||||
|
if (radiusProfiles != null) {
|
||||||
|
ret.radiusProfiles = new ArrayList<>();
|
||||||
|
for (Profile radiusProfile : this.radiusProfiles) {
|
||||||
|
ret.radiusProfiles.add(radiusProfile);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (captiveProfiles != null) {
|
||||||
|
ret.captiveProfiles = new ArrayList<>();
|
||||||
|
for (Profile cpConfig : this.captiveProfiles) {
|
||||||
|
ret.captiveProfiles.add(cpConfig);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (blockedClients != null) {
|
||||||
|
ret.blockedClients = new ArrayList<MacAddress>();
|
||||||
|
for (MacAddress blockedClient : this.blockedClients) {
|
||||||
|
ret.blockedClients.add(blockedClient);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Handle Legacy Config Support
|
return ret;
|
||||||
public void setSsidConfigs(List<OpensyncAPSsidConfig> ssidConfigs) {
|
}
|
||||||
|
|
||||||
if (apProfile == null) {
|
@Override
|
||||||
apProfile = new Profile();
|
public boolean equals(Object obj) {
|
||||||
apProfile.setName("GeneratedApProfile");
|
if (this == obj) {
|
||||||
apProfile.setId(2);
|
return true;
|
||||||
apProfile.setDetails(ApNetworkConfiguration.createWithDefaults());
|
}
|
||||||
}
|
if (obj == null) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (getClass() != obj.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
OpensyncAPConfig other = (OpensyncAPConfig) obj;
|
||||||
|
return Objects.equals(apProfile, other.apProfile) && Objects.equals(blockedClients, other.blockedClients)
|
||||||
|
&& Objects.equals(bonjourGatewayProfiles, other.bonjourGatewayProfiles)
|
||||||
|
&& Objects.equals(captiveProfiles, other.captiveProfiles)
|
||||||
|
&& Objects.equals(customerEquipment, other.customerEquipment)
|
||||||
|
&& Objects.equals(equipmentGateway, other.equipmentGateway)
|
||||||
|
&& Objects.equals(equipmentLocation, other.equipmentLocation)
|
||||||
|
&& Objects.equals(equipmentRouting, other.equipmentRouting)
|
||||||
|
&& Objects.equals(hotspotConfig, other.hotspotConfig)
|
||||||
|
&& Objects.equals(metricsProfile, other.metricsProfile)
|
||||||
|
&& Objects.equals(radiusProfiles, other.radiusProfiles) && Objects.equals(rfProfile, other.rfProfile)
|
||||||
|
&& Objects.equals(ssidProfile, other.ssidProfile);
|
||||||
|
}
|
||||||
|
|
||||||
long ssidProfileId = 3;
|
public Profile getApProfile() {
|
||||||
for (OpensyncAPSsidConfig ssidConfig : ssidConfigs) {
|
return apProfile;
|
||||||
|
}
|
||||||
|
|
||||||
Profile profile = new Profile();
|
public List<MacAddress> getBlockedClients() {
|
||||||
profile.setProfileType(ProfileType.ssid);
|
return blockedClients;
|
||||||
profile.setName(ssidConfig.getSsid());
|
}
|
||||||
SsidConfiguration cfg = SsidConfiguration.createWithDefaults();
|
|
||||||
Set<RadioType> appliedRadios = new HashSet<RadioType>();
|
|
||||||
appliedRadios.add(ssidConfig.getRadioType());
|
|
||||||
cfg.setAppliedRadios(appliedRadios);
|
|
||||||
cfg.setSsid(ssidConfig.getSsid());
|
|
||||||
if (ssidConfig.getEncryption().equals("WPA-PSK") && ssidConfig.getMode().equals("1"))
|
|
||||||
cfg.setSecureMode(SecureMode.wpaPSK);
|
|
||||||
else
|
|
||||||
cfg.setSecureMode(SecureMode.wpa2PSK);
|
|
||||||
cfg.setBroadcastSsid(ssidConfig.isBroadcast() ? StateSetting.enabled : StateSetting.disabled);
|
|
||||||
|
|
||||||
profile.setDetails(cfg);
|
public List<Profile> getBonjourGatewayProfiles() {
|
||||||
profile.setId(ssidProfileId);
|
return bonjourGatewayProfiles;
|
||||||
if (this.ssidProfile == null)
|
}
|
||||||
this.ssidProfile = new ArrayList<Profile>();
|
|
||||||
this.ssidProfile.add(profile);
|
|
||||||
apProfile.getChildProfileIds().add(ssidProfileId);
|
|
||||||
ssidProfileId++;
|
|
||||||
|
|
||||||
}
|
public List<Profile> getCaptiveProfiles() {
|
||||||
|
return captiveProfiles;
|
||||||
|
}
|
||||||
|
|
||||||
if (customerEquipment != null) {
|
public String getCountryCode() {
|
||||||
customerEquipment.setProfileId(apProfile.getId());
|
return Location.getCountryCode(this.equipmentLocation).toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
public Equipment getCustomerEquipment() {
|
||||||
|
return customerEquipment;
|
||||||
|
}
|
||||||
|
|
||||||
public EquipmentGatewayRecord getEquipmentGateway() {
|
public EquipmentGatewayRecord getEquipmentGateway() {
|
||||||
return equipmentGateway;
|
return equipmentGateway;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setEquipmentGateway(EquipmentGatewayRecord equipmentGateway) {
|
public Location getEquipmentLocation() {
|
||||||
this.equipmentGateway = equipmentGateway;
|
return equipmentLocation;
|
||||||
}
|
}
|
||||||
|
|
||||||
public EquipmentRoutingRecord getEquipmentRouting() {
|
public EquipmentRoutingRecord getEquipmentRouting() {
|
||||||
return equipmentRouting;
|
return equipmentRouting;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setEquipmentRouting(EquipmentRoutingRecord equipmentRouting) {
|
public OpensyncAPHotspot20Config getHotspotConfig() {
|
||||||
this.equipmentRouting = equipmentRouting;
|
return hotspotConfig;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Equipment getCustomerEquipment() {
|
public List<Profile> getMetricsProfiles() {
|
||||||
return customerEquipment;
|
return metricsProfile;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setCustomerEquipment(Equipment customerEquipment) {
|
public List<Profile> getRadiusProfiles() {
|
||||||
this.customerEquipment = customerEquipment;
|
return radiusProfiles;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Profile getApProfile() {
|
public Profile getRfProfile() {
|
||||||
return apProfile;
|
return rfProfile;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setApProfile(Profile apProfile) {
|
public List<Profile> getSsidProfile() {
|
||||||
this.apProfile = apProfile;
|
return ssidProfile;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<Profile> getSsidProfile() {
|
@Override
|
||||||
return ssidProfile;
|
public int hashCode() {
|
||||||
}
|
return Objects.hash(apProfile, blockedClients, bonjourGatewayProfiles, captiveProfiles, customerEquipment,
|
||||||
|
equipmentGateway, equipmentLocation, equipmentRouting, hotspotConfig, metricsProfile, radiusProfiles,
|
||||||
|
rfProfile, ssidProfile);
|
||||||
|
}
|
||||||
|
|
||||||
public void setSsidProfile(List<Profile> ssidProfile) {
|
public void setApProfile(Profile apProfile) {
|
||||||
this.ssidProfile = ssidProfile;
|
this.apProfile = apProfile;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Location getEquipmentLocation() {
|
public void setBlockedClients(List<MacAddress> blockedClients) {
|
||||||
return equipmentLocation;
|
this.blockedClients = blockedClients;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setEquipmentLocation(Location equipmentLocation) {
|
public void setBonjourGatewayProfiles(List<Profile> bonjourGatewayProfiles) {
|
||||||
this.equipmentLocation = equipmentLocation;
|
this.bonjourGatewayProfiles = bonjourGatewayProfiles;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getCountryCode() {
|
public void setCaptiveProfiles(List<Profile> captiveProfiles) {
|
||||||
return Location.getCountryCode(this.equipmentLocation).toString();
|
this.captiveProfiles = captiveProfiles;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static long getSerialversionuid() {
|
public void setCustomerEquipment(Equipment customerEquipment) {
|
||||||
return serialVersionUID;
|
this.customerEquipment = customerEquipment;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
public void setEquipmentGateway(EquipmentGatewayRecord equipmentGateway) {
|
||||||
public OpensyncAPConfig clone() {
|
this.equipmentGateway = equipmentGateway;
|
||||||
OpensyncAPConfig ret = (OpensyncAPConfig) super.clone();
|
}
|
||||||
|
|
||||||
if (customerEquipment != null)
|
public void setEquipmentLocation(Location equipmentLocation) {
|
||||||
ret.customerEquipment = customerEquipment.clone();
|
this.equipmentLocation = equipmentLocation;
|
||||||
if (equipmentLocation != null)
|
}
|
||||||
ret.equipmentLocation = equipmentLocation.clone();
|
|
||||||
if (ssidProfile != null) {
|
|
||||||
List<Profile> ssidList = new ArrayList<Profile>();
|
|
||||||
for (Profile profile : ssidProfile) {
|
|
||||||
ssidList.add(profile.clone());
|
|
||||||
}
|
|
||||||
ret.ssidProfile = ssidList;
|
|
||||||
}
|
|
||||||
if (apProfile != null)
|
|
||||||
ret.apProfile = apProfile.clone();
|
|
||||||
if (equipmentRouting != null)
|
|
||||||
ret.equipmentRouting = equipmentRouting.clone();
|
|
||||||
if (equipmentGateway != null)
|
|
||||||
ret.equipmentGateway = equipmentGateway.clone();
|
|
||||||
|
|
||||||
return ret;
|
public void setEquipmentRouting(EquipmentRoutingRecord equipmentRouting) {
|
||||||
}
|
this.equipmentRouting = equipmentRouting;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
public void setHotspotConfig(OpensyncAPHotspot20Config hotspotConfig) {
|
||||||
public String toString() {
|
this.hotspotConfig = hotspotConfig;
|
||||||
StringBuffer sb = new StringBuffer();
|
}
|
||||||
sb.append(customerEquipment.toString());
|
|
||||||
sb.append(apProfile.toString());
|
|
||||||
for (Profile ssid : ssidProfile) {
|
|
||||||
sb.append(ssid.toString());
|
|
||||||
}
|
|
||||||
sb.append(equipmentLocation.toString());
|
|
||||||
|
|
||||||
return sb.toString();
|
public void setMetricsProfiles(List<Profile> metricsProfileList) {
|
||||||
|
metricsProfile = metricsProfileList;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
// Handle Legacy Config Support
|
||||||
|
public void setRadioConfig(OpensyncAPRadioConfig radioConfig) {
|
||||||
|
|
||||||
public List<Profile> getRadiusProfiles() {
|
if (customerEquipment == null) {
|
||||||
return radiusProfiles;
|
customerEquipment = new Equipment();
|
||||||
}
|
customerEquipment.setId(0);
|
||||||
|
customerEquipment.setEquipmentType(EquipmentType.AP);
|
||||||
|
customerEquipment.setDetails(ApElementConfiguration.createWithDefaults());
|
||||||
|
ApElementConfiguration apConfig = (ApElementConfiguration) customerEquipment.getDetails();
|
||||||
|
apConfig.getRadioMap().get(RadioType.is2dot4GHz).setChannelNumber(radioConfig.getRadioChannel24G());
|
||||||
|
apConfig.getRadioMap().get(RadioType.is5GHzL).setChannelNumber(radioConfig.getRadioChannel5LG());
|
||||||
|
apConfig.getRadioMap().get(RadioType.is5GHzU).setChannelNumber(radioConfig.getRadioChannel5HG());
|
||||||
|
customerEquipment.setDetails(apConfig);
|
||||||
|
}
|
||||||
|
|
||||||
public void setRadiusProfiles(List<Profile> radiusProfiles) {
|
if (equipmentLocation == null) {
|
||||||
this.radiusProfiles = radiusProfiles;
|
equipmentLocation = new Location();
|
||||||
}
|
equipmentLocation.setId(1);
|
||||||
|
equipmentLocation.setDetails(LocationDetails.createWithDefaults());
|
||||||
|
equipmentLocation.getDetails()
|
||||||
|
.setCountryCode(CountryCode.getByName(radioConfig.getCountry().toLowerCase()));
|
||||||
|
customerEquipment.setLocationId(equipmentLocation.getId());
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRadiusProfiles(List<Profile> radiusProfiles) {
|
||||||
|
this.radiusProfiles = radiusProfiles;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRfProfile(Profile rfProfile) {
|
||||||
|
this.rfProfile = rfProfile;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Handle Legacy Config Support
|
||||||
|
public void setSsidConfigs(List<OpensyncAPSsidConfig> ssidConfigs) {
|
||||||
|
|
||||||
|
if (apProfile == null) {
|
||||||
|
apProfile = new Profile();
|
||||||
|
apProfile.setName("GeneratedApProfile");
|
||||||
|
apProfile.setId(2);
|
||||||
|
apProfile.setDetails(ApNetworkConfiguration.createWithDefaults());
|
||||||
|
}
|
||||||
|
|
||||||
|
long ssidProfileId = 3;
|
||||||
|
for (OpensyncAPSsidConfig ssidConfig : ssidConfigs) {
|
||||||
|
|
||||||
|
Profile profile = new Profile();
|
||||||
|
profile.setProfileType(ProfileType.ssid);
|
||||||
|
profile.setName(ssidConfig.getSsid());
|
||||||
|
SsidConfiguration cfg = SsidConfiguration.createWithDefaults();
|
||||||
|
Set<RadioType> appliedRadios = new HashSet<RadioType>();
|
||||||
|
appliedRadios.add(ssidConfig.getRadioType());
|
||||||
|
cfg.setAppliedRadios(appliedRadios);
|
||||||
|
cfg.setSsid(ssidConfig.getSsid());
|
||||||
|
if (ssidConfig.getEncryption().equals("WPA-PSK") && ssidConfig.getMode().equals("1")) {
|
||||||
|
cfg.setSecureMode(SecureMode.wpaPSK);
|
||||||
|
} else {
|
||||||
|
cfg.setSecureMode(SecureMode.wpa2PSK);
|
||||||
|
}
|
||||||
|
cfg.setBroadcastSsid(ssidConfig.isBroadcast() ? StateSetting.enabled : StateSetting.disabled);
|
||||||
|
|
||||||
|
profile.setDetails(cfg);
|
||||||
|
profile.setId(ssidProfileId);
|
||||||
|
if (this.ssidProfile == null) {
|
||||||
|
this.ssidProfile = new ArrayList<Profile>();
|
||||||
|
}
|
||||||
|
this.ssidProfile.add(profile);
|
||||||
|
apProfile.getChildProfileIds().add(ssidProfileId);
|
||||||
|
ssidProfileId++;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if (customerEquipment != null) {
|
||||||
|
customerEquipment.setProfileId(apProfile.getId());
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSsidProfile(List<Profile> ssidProfile) {
|
||||||
|
this.ssidProfile = ssidProfile;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,100 @@
|
|||||||
|
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
||||||
|
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.Objects;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
import com.telecominfraproject.wlan.profile.models.Profile;
|
||||||
|
|
||||||
|
public class OpensyncAPHotspot20Config extends OpensyncAPBase {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = -8495473152523219578L;
|
||||||
|
|
||||||
|
public static long getSerialversionuid() {
|
||||||
|
return serialVersionUID;
|
||||||
|
}
|
||||||
|
|
||||||
|
private Set<Profile> hotspot20ProfileSet;
|
||||||
|
private Set<Profile> hotspot20OperatorSet;
|
||||||
|
private Set<Profile> hotspot20VenueSet;
|
||||||
|
private Set<Profile> hotspot20ProviderSet;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public OpensyncAPHotspot20Config clone() {
|
||||||
|
OpensyncAPHotspot20Config ret = (OpensyncAPHotspot20Config) super.clone();
|
||||||
|
|
||||||
|
if (hotspot20OperatorSet != null) {
|
||||||
|
ret.hotspot20OperatorSet = new HashSet<Profile>(hotspot20OperatorSet);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (hotspot20ProfileSet != null) {
|
||||||
|
ret.hotspot20ProfileSet = new HashSet<Profile>(hotspot20ProfileSet);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (hotspot20VenueSet != null) {
|
||||||
|
ret.hotspot20VenueSet = new HashSet<Profile>(hotspot20VenueSet);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (hotspot20ProviderSet != null) {
|
||||||
|
ret.hotspot20ProviderSet = new HashSet<Profile>(hotspot20ProviderSet);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object obj) {
|
||||||
|
if (this == obj) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (obj == null) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (getClass() != obj.getClass()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
OpensyncAPHotspot20Config other = (OpensyncAPHotspot20Config) obj;
|
||||||
|
return Objects.equals(hotspot20OperatorSet, other.hotspot20OperatorSet)
|
||||||
|
&& Objects.equals(hotspot20ProfileSet, other.hotspot20ProfileSet)
|
||||||
|
&& Objects.equals(hotspot20ProviderSet, other.hotspot20ProviderSet)
|
||||||
|
&& Objects.equals(hotspot20VenueSet, other.hotspot20VenueSet);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<Profile> getHotspot20OperatorSet() {
|
||||||
|
return hotspot20OperatorSet;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<Profile> getHotspot20ProfileSet() {
|
||||||
|
return hotspot20ProfileSet;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<Profile> getHotspot20ProviderSet() {
|
||||||
|
return hotspot20ProviderSet;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<Profile> getHotspot20VenueSet() {
|
||||||
|
return hotspot20VenueSet;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return Objects.hash(hotspot20OperatorSet, hotspot20ProfileSet, hotspot20ProviderSet, hotspot20VenueSet);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setHotspot20OperatorSet(Set<Profile> hotspot20OperatorSet) {
|
||||||
|
this.hotspot20OperatorSet = hotspot20OperatorSet;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setHotspot20ProfileSet(Set<Profile> hotspot20ProfileSet) {
|
||||||
|
this.hotspot20ProfileSet = hotspot20ProfileSet;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setHotspot20ProviderSet(Set<Profile> hotspot20ProviderSet) {
|
||||||
|
this.hotspot20ProviderSet = hotspot20ProviderSet;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setHotspot20VenueSet(Set<Profile> hotspot20VenueSet) {
|
||||||
|
this.hotspot20VenueSet = hotspot20VenueSet;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -1,203 +1,480 @@
|
|||||||
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.UUID;
|
import java.util.Objects;
|
||||||
|
|
||||||
import com.telecominfraproject.wlan.core.model.json.BaseJsonModel;
|
import com.vmware.ovsdb.protocol.operation.notation.Row;
|
||||||
import com.vmware.ovsdb.protocol.operation.notation.Uuid;
|
import com.vmware.ovsdb.protocol.operation.notation.Uuid;
|
||||||
|
import com.vmware.ovsdb.protocol.operation.notation.Value;
|
||||||
|
|
||||||
public class OpensyncAPInetState extends BaseJsonModel {
|
public class OpensyncAPInetState extends OpensyncAPBase {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 1707053648715030173L;
|
||||||
|
|
||||||
private static final long serialVersionUID = 1707053648715030173L;
|
public static long getSerialversionuid() {
|
||||||
|
return serialVersionUID;
|
||||||
public String ifName;
|
}
|
||||||
public String dhcpd;
|
|
||||||
public String unpnpMode;
|
|
||||||
public String ifType;
|
|
||||||
public String softwdsMacAddr;
|
|
||||||
public boolean enabled;
|
|
||||||
public boolean sofwdsWrap;
|
|
||||||
public int vlanId;
|
|
||||||
public String netmask;
|
|
||||||
public boolean nat;
|
|
||||||
public String greRemoteInetAddr;
|
|
||||||
public String ifUuid;
|
|
||||||
public String inetAddr;
|
|
||||||
public String hwAddr;
|
|
||||||
public int mtw;
|
|
||||||
public boolean network;
|
|
||||||
public Map<String, String> dns;
|
|
||||||
public String parentIfName;
|
|
||||||
public String greIfName;
|
|
||||||
public String broadcast;
|
|
||||||
public Map<String, String> dhcpc;
|
|
||||||
public String gateway;
|
|
||||||
public String ipAssignScheme;
|
|
||||||
public String inetConfig;
|
|
||||||
public Uuid _uuid;
|
|
||||||
public Uuid version;
|
|
||||||
|
|
||||||
public String getIfName() {
|
public String ifName;
|
||||||
return ifName;
|
public Map<String, String> dhcpd;
|
||||||
}
|
public String unpnpMode;
|
||||||
public void setIfName(String ifName) {
|
public String ifType;
|
||||||
this.ifName = ifName;
|
public String softwdsMacAddr;
|
||||||
}
|
public boolean enabled;
|
||||||
public String getDhcpd() {
|
public boolean sofwdsWrap;
|
||||||
return dhcpd;
|
public int vlanId;
|
||||||
}
|
public String netmask;
|
||||||
public void setDhcpd(String dhcpd) {
|
public boolean nat;
|
||||||
this.dhcpd = dhcpd;
|
public String greRemoteInetAddr;
|
||||||
}
|
public String ifUuid;
|
||||||
public String getUnpnpMode() {
|
public String inetAddr;
|
||||||
return unpnpMode;
|
public String hwAddr;
|
||||||
}
|
public int mtw;
|
||||||
public void setUnpnpMode(String unpnpMode) {
|
public boolean network;
|
||||||
this.unpnpMode = unpnpMode;
|
public Map<String, String> dns;
|
||||||
}
|
public String parentIfName;
|
||||||
public String getIfType() {
|
public String greIfName;
|
||||||
return ifType;
|
public String broadcast;
|
||||||
}
|
public Map<String, String> dhcpc;
|
||||||
public void setIfType(String ifType) {
|
public String gateway;
|
||||||
this.ifType = ifType;
|
public String ipAssignScheme;
|
||||||
}
|
public String inetConfig;
|
||||||
public String getSoftwdsMacAddr() {
|
public Uuid _uuid;
|
||||||
return softwdsMacAddr;
|
public Uuid version;
|
||||||
}
|
public String greLocalInetAddr;
|
||||||
public void setSoftwdsMacAddr(String softwdsMacAddr) {
|
|
||||||
this.softwdsMacAddr = softwdsMacAddr;
|
public String greRemoteMacAddr;
|
||||||
}
|
|
||||||
public boolean isEnabled() {
|
public OpensyncAPInetState() {
|
||||||
return enabled;
|
dns = new HashMap<>();
|
||||||
}
|
dhcpc = new HashMap<>();
|
||||||
public void setEnabled(boolean enabled) {
|
}
|
||||||
this.enabled = enabled;
|
|
||||||
}
|
public OpensyncAPInetState(Row row) {
|
||||||
public boolean isSofwdsWrap() {
|
dns = new HashMap<>();
|
||||||
return sofwdsWrap;
|
dhcpc = new HashMap<>();
|
||||||
}
|
|
||||||
public void setSofwdsWrap(boolean sofwdsWrap) {
|
Map<String, Value> map = row.getColumns();
|
||||||
this.sofwdsWrap = sofwdsWrap;
|
|
||||||
}
|
if ((map.get("NAT") != null)
|
||||||
public int getVlanId() {
|
&& map.get("NAT").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
return vlanId;
|
this.setNat(row.getBooleanColumn("NAT"));
|
||||||
}
|
}
|
||||||
public void setVlanId(int vlanId) {
|
if ((map.get("enabled") != null)
|
||||||
this.vlanId = vlanId;
|
&& map.get("enabled").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setEnabled(row.getBooleanColumn("enabled"));
|
||||||
public String getNetmask() {
|
}
|
||||||
return netmask;
|
if ((map.get("if_name") != null)
|
||||||
}
|
&& map.get("if_name").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
public void setNetmask(String netmask) {
|
this.setIfName(row.getStringColumn("if_name"));
|
||||||
this.netmask = netmask;
|
}
|
||||||
}
|
if ((map.get("if_type") != null)
|
||||||
public boolean isNat() {
|
&& map.get("if_type").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
return nat;
|
this.setIfType(row.getStringColumn("if_type"));
|
||||||
}
|
}
|
||||||
public void setNat(boolean nat) {
|
|
||||||
this.nat = nat;
|
if (map.containsKey("dhcpc")) {
|
||||||
}
|
this.setDhcpc(row.getMapColumn("dhcpc"));
|
||||||
public String getGreRemoteInetAddr() {
|
}
|
||||||
return greRemoteInetAddr;
|
if (map.containsKey("dhcpd")) {
|
||||||
}
|
this.setDhcpd(row.getMapColumn("dhcpd"));
|
||||||
public void setGreRemoteInetAddr(String greRemoteInetAddr) {
|
}
|
||||||
this.greRemoteInetAddr = greRemoteInetAddr;
|
if (map.containsKey("dns")) {
|
||||||
}
|
this.setDns(row.getMapColumn("dns"));
|
||||||
public String getIfUuid() {
|
}
|
||||||
return ifUuid;
|
if (map.get("inet_addr") != null
|
||||||
}
|
&& map.get("inet_addr").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
public void setIfUuid(String ifUuid) {
|
this.setInetAddr(row.getStringColumn("inet_addr"));
|
||||||
this.ifUuid = ifUuid;
|
}
|
||||||
}
|
if (map.containsKey("netmask")) {
|
||||||
public String getInetAddr() {
|
this.setNetmask(getSingleValueFromSet(row, "netmask"));
|
||||||
return inetAddr;
|
}
|
||||||
}
|
if (map.get("vlan_id") != null
|
||||||
public void setInetAddr(String inetAddr) {
|
&& map.get("vlan_id").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
this.inetAddr = inetAddr;
|
this.setVlanId(row.getIntegerColumn("vlan_id").intValue());
|
||||||
}
|
}
|
||||||
public String getHwAddr() {
|
if (map.get("gre_ifname") != null
|
||||||
return hwAddr;
|
&& map.get("gre_ifname").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setGreIfName(row.getStringColumn("gre_ifname"));
|
||||||
public void setHwAddr(String hwAddr) {
|
}
|
||||||
this.hwAddr = hwAddr;
|
if (map.get("gre_remote_inet_addr") != null && map.get("gre_remote_inet_addr").getClass()
|
||||||
}
|
.equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
public int getMtw() {
|
this.setGreRemoteInetAddr(row.getStringColumn("gre_remote_inet_addr"));
|
||||||
return mtw;
|
}
|
||||||
}
|
if (map.get("gre_local_inet_addr") != null && map.get("gre_local_inet_addr").getClass()
|
||||||
public void setMtw(int mtw) {
|
.equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
this.mtw = mtw;
|
this.setGreLocalInetAddr(row.getStringColumn("gre_local_inet_addr"));
|
||||||
}
|
}
|
||||||
public boolean isNetwork() {
|
if (map.get("gre_remote_mac_addr") != null && map.get("gre_remote_mac_addr").getClass()
|
||||||
return network;
|
.equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setGreRemoteMacAddr(row.getStringColumn("gre_remote_mac_addr"));
|
||||||
public void setNetwork(boolean network) {
|
}
|
||||||
this.network = network;
|
|
||||||
}
|
if ((map.get("ip_assign_scheme") != null) && map.get("ip_assign_scheme").getClass()
|
||||||
public Map<String, String> getDns() {
|
.equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
return dns;
|
this.setIpAssignScheme(row.getStringColumn("ip_assign_scheme"));
|
||||||
}
|
}
|
||||||
public void setDns(Map<String, String> dns) {
|
if ((map.get("network") != null)
|
||||||
this.dns = dns;
|
&& map.get("network").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setNetwork(row.getBooleanColumn("network"));
|
||||||
public String getParentIfName() {
|
}
|
||||||
return parentIfName;
|
if ((map.get("hwaddr") != null)
|
||||||
}
|
&& map.get("hwaddr").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
public void setParentIfName(String parentIfName) {
|
this.setHwAddr(row.getStringColumn("hwaddr"));
|
||||||
this.parentIfName = parentIfName;
|
}
|
||||||
}
|
if ((map.get("_version") != null)
|
||||||
public String getGreIfName() {
|
&& map.get("_version").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
return greIfName;
|
this.setVersion(row.getUuidColumn("_version"));
|
||||||
}
|
}
|
||||||
public void setGreIfName(String greIfName) {
|
if ((map.get("_uuid") != null)
|
||||||
this.greIfName = greIfName;
|
&& map.get("_uuid").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setVersion(row.getUuidColumn("_uuid"));
|
||||||
public String getBroadcast() {
|
}
|
||||||
return broadcast;
|
}
|
||||||
}
|
|
||||||
public void setBroadcast(String broadcast) {
|
@Override
|
||||||
this.broadcast = broadcast;
|
public boolean equals(Object obj) {
|
||||||
}
|
if (this == obj) {
|
||||||
public Map<String, String> getDhcpc() {
|
return true;
|
||||||
return dhcpc;
|
}
|
||||||
}
|
if (obj == null) {
|
||||||
public void setDhcpc(Map<String, String> dhcpc) {
|
return false;
|
||||||
this.dhcpc = dhcpc;
|
}
|
||||||
}
|
if (getClass() != obj.getClass()) {
|
||||||
public String getGateway() {
|
return false;
|
||||||
return gateway;
|
}
|
||||||
}
|
OpensyncAPInetState other = (OpensyncAPInetState) obj;
|
||||||
public void setGateway(String gateway) {
|
if (!Objects.equals(_uuid, other._uuid)) {
|
||||||
this.gateway = gateway;
|
return false;
|
||||||
}
|
}
|
||||||
public String getIpAssignScheme() {
|
if (!Objects.equals(broadcast, other.broadcast)) {
|
||||||
return ipAssignScheme;
|
return false;
|
||||||
}
|
}
|
||||||
public void setIpAssignScheme(String ipAssignScheme) {
|
if (!Objects.equals(dhcpc, other.dhcpc)) {
|
||||||
this.ipAssignScheme = ipAssignScheme;
|
return false;
|
||||||
}
|
}
|
||||||
public String getInetConfig() {
|
if (!Objects.equals(dhcpd, other.dhcpd)) {
|
||||||
return inetConfig;
|
return false;
|
||||||
}
|
}
|
||||||
public void setInetConfig(String inetConfig) {
|
if (!Objects.equals(dns, other.dns)) {
|
||||||
this.inetConfig = inetConfig;
|
return false;
|
||||||
}
|
}
|
||||||
public static long getSerialversionuid() {
|
if (enabled != other.enabled) {
|
||||||
return serialVersionUID;
|
return false;
|
||||||
}
|
}
|
||||||
public Uuid get_uuid() {
|
if (!Objects.equals(gateway, other.gateway)) {
|
||||||
return _uuid;
|
return false;
|
||||||
}
|
}
|
||||||
public void set_uuid(Uuid _uuid) {
|
if (!Objects.equals(greIfName, other.greIfName)) {
|
||||||
this._uuid = _uuid;
|
return false;
|
||||||
}
|
}
|
||||||
public Uuid getVersion() {
|
if (!Objects.equals(greLocalInetAddr, other.greLocalInetAddr)) {
|
||||||
return version;
|
return false;
|
||||||
}
|
}
|
||||||
public void setVersion(Uuid version) {
|
if (!Objects.equals(greRemoteInetAddr, other.greRemoteInetAddr)) {
|
||||||
this.version = version;
|
return false;
|
||||||
}
|
}
|
||||||
|
if (!Objects.equals(hwAddr, other.hwAddr)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!Objects.equals(ifName, other.ifName)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!Objects.equals(ifType, other.ifType)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!Objects.equals(ifUuid, other.ifUuid)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!Objects.equals(inetAddr, other.inetAddr)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!Objects.equals(inetConfig, other.inetConfig)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!Objects.equals(ipAssignScheme, other.ipAssignScheme)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (mtw != other.mtw) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (nat != other.nat) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!Objects.equals(netmask, other.netmask)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (network != other.network) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!Objects.equals(parentIfName, other.parentIfName)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!Objects.equals(greRemoteMacAddr, other.greRemoteMacAddr)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!Objects.equals(softwdsMacAddr, other.softwdsMacAddr)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (sofwdsWrap != other.sofwdsWrap) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!Objects.equals(unpnpMode, other.unpnpMode)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!Objects.equals(version, other.version)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (vlanId != other.vlanId) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Uuid get_uuid() {
|
||||||
|
return _uuid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getBroadcast() {
|
||||||
|
return broadcast;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<String, String> getDhcpc() {
|
||||||
|
return dhcpc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<String, String> getDhcpd() {
|
||||||
|
return dhcpd;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<String, String> getDns() {
|
||||||
|
return dns;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getGateway() {
|
||||||
|
return gateway;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getGreIfName() {
|
||||||
|
return greIfName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getGreLocalInetAddr() {
|
||||||
|
return greLocalInetAddr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getGreRemoteInetAddr() {
|
||||||
|
return greRemoteInetAddr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getGreRemoteMacAddr() {
|
||||||
|
return this.greRemoteMacAddr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getHwAddr() {
|
||||||
|
return hwAddr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getIfName() {
|
||||||
|
return ifName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getIfType() {
|
||||||
|
return ifType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getIfUuid() {
|
||||||
|
return ifUuid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInetAddr() {
|
||||||
|
return inetAddr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInetConfig() {
|
||||||
|
return inetConfig;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getIpAssignScheme() {
|
||||||
|
return ipAssignScheme;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getMtw() {
|
||||||
|
return mtw;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getNetmask() {
|
||||||
|
return netmask;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getParentIfName() {
|
||||||
|
return parentIfName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSoftwdsMacAddr() {
|
||||||
|
return softwdsMacAddr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUnpnpMode() {
|
||||||
|
return unpnpMode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Uuid getVersion() {
|
||||||
|
return version;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getVlanId() {
|
||||||
|
return vlanId;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return Objects.hash(_uuid, broadcast, dhcpc, dhcpd, dns, enabled, gateway, greIfName, greLocalInetAddr, greRemoteInetAddr,
|
||||||
|
hwAddr, ifName, ifType, ifUuid, inetAddr, inetConfig, ipAssignScheme, mtw, nat, netmask, network,
|
||||||
|
parentIfName, greRemoteMacAddr, softwdsMacAddr, sofwdsWrap, unpnpMode, version, vlanId);
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isEnabled() {
|
||||||
|
return enabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isNat() {
|
||||||
|
return nat;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isNetwork() {
|
||||||
|
return network;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isSofwdsWrap() {
|
||||||
|
return sofwdsWrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void set_uuid(Uuid _uuid) {
|
||||||
|
this._uuid = _uuid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBroadcast(String broadcast) {
|
||||||
|
this.broadcast = broadcast;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDhcpc(Map<String, String> dhcpc) {
|
||||||
|
this.dhcpc = dhcpc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDhcpd(Map<String, String> dhcpd) {
|
||||||
|
this.dhcpd = dhcpd;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDns(Map<String, String> dns) {
|
||||||
|
this.dns = dns;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEnabled(boolean enabled) {
|
||||||
|
this.enabled = enabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setGateway(String gateway) {
|
||||||
|
this.gateway = gateway;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setGreIfName(String greIfName) {
|
||||||
|
this.greIfName = greIfName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setGreLocalInetAddr(String greLocalInetAddr) {
|
||||||
|
this.greLocalInetAddr = greLocalInetAddr;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setGreRemoteInetAddr(String greRemoteInetAddr) {
|
||||||
|
this.greRemoteInetAddr = greRemoteInetAddr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setGreRemoteMacAddr(String greRemoteMacAddr) {
|
||||||
|
this.greRemoteMacAddr = greRemoteMacAddr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setHwAddr(String hwAddr) {
|
||||||
|
this.hwAddr = hwAddr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIfName(String ifName) {
|
||||||
|
this.ifName = ifName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIfType(String ifType) {
|
||||||
|
this.ifType = ifType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIfUuid(String ifUuid) {
|
||||||
|
this.ifUuid = ifUuid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setInetAddr(String inetAddr) {
|
||||||
|
this.inetAddr = inetAddr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setInetConfig(String inetConfig) {
|
||||||
|
this.inetConfig = inetConfig;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIpAssignScheme(String ipAssignScheme) {
|
||||||
|
this.ipAssignScheme = ipAssignScheme;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMtw(int mtw) {
|
||||||
|
this.mtw = mtw;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setNat(boolean nat) {
|
||||||
|
this.nat = nat;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setNetmask(String netmask) {
|
||||||
|
this.netmask = netmask;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setNetwork(boolean network) {
|
||||||
|
this.network = network;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setParentIfName(String parentIfName) {
|
||||||
|
this.parentIfName = parentIfName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSoftwdsMacAddr(String softwdsMacAddr) {
|
||||||
|
this.softwdsMacAddr = softwdsMacAddr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSofwdsWrap(boolean sofwdsWrap) {
|
||||||
|
this.sofwdsWrap = sofwdsWrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUnpnpMode(String unpnpMode) {
|
||||||
|
this.unpnpMode = unpnpMode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setVersion(Uuid version) {
|
||||||
|
this.version = version;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setVlanId(int vlanId) {
|
||||||
|
this.vlanId = vlanId;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "OpensyncAPInetState [ifName=" + ifName + ", dhcpd=" + dhcpd + ", unpnpMode=" + unpnpMode + ", ifType="
|
||||||
|
+ ifType + ", softwdsMacAddr=" + softwdsMacAddr + ", enabled=" + enabled + ", sofwdsWrap=" + sofwdsWrap
|
||||||
|
+ ", vlanId=" + vlanId + ", netmask=" + netmask + ", nat=" + nat + ", greRemoteInetAddr="
|
||||||
|
+ greRemoteInetAddr + ", ifUuid=" + ifUuid + ", inetAddr=" + inetAddr + ", hwAddr=" + hwAddr + ", mtw="
|
||||||
|
+ mtw + ", network=" + network + ", dns=" + dns + ", parentIfName=" + parentIfName + ", greIfName="
|
||||||
|
+ greIfName + ", broadcast=" + broadcast + ", dhcpc=" + dhcpc + ", gateway=" + gateway
|
||||||
|
+ ", ipAssignScheme=" + ipAssignScheme + ", inetConfig=" + inetConfig + ", _uuid=" + _uuid
|
||||||
|
+ ", version=" + version + ", greLocalInetAddr=" + greLocalInetAddr + ", greRemoteMacAddr="
|
||||||
|
+ greRemoteMacAddr + "]";
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
||||||
|
|
||||||
import com.telecominfraproject.wlan.core.model.json.BaseJsonModel;
|
public class OpensyncAPRadioConfig extends OpensyncAPBase {
|
||||||
|
|
||||||
public class OpensyncAPRadioConfig extends BaseJsonModel {
|
|
||||||
|
|
||||||
private static final long serialVersionUID = 5683558403622855381L;
|
private static final long serialVersionUID = 5683558403622855381L;
|
||||||
|
|
||||||
@@ -10,41 +8,41 @@ public class OpensyncAPRadioConfig extends BaseJsonModel {
|
|||||||
private int radioChannel24G;
|
private int radioChannel24G;
|
||||||
private int radioChannel5LG;
|
private int radioChannel5LG;
|
||||||
private int radioChannel5HG;
|
private int radioChannel5HG;
|
||||||
|
|
||||||
public int getRadioChannel24G() {
|
|
||||||
return radioChannel24G;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setRadioChannel24G(int radioChannel24G) {
|
@Override
|
||||||
this.radioChannel24G = radioChannel24G;
|
public OpensyncAPRadioConfig clone() {
|
||||||
}
|
return (OpensyncAPRadioConfig) super.clone();
|
||||||
|
|
||||||
public int getRadioChannel5LG() {
|
|
||||||
return radioChannel5LG;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setRadioChannel5LG(int radioChannel5LG) {
|
|
||||||
this.radioChannel5LG = radioChannel5LG;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getRadioChannel5HG() {
|
|
||||||
return radioChannel5HG;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setRadioChannel5HG(int radioChannel5HG) {
|
|
||||||
this.radioChannel5HG = radioChannel5HG;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getCountry() {
|
public String getCountry() {
|
||||||
return country;
|
return country;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int getRadioChannel24G() {
|
||||||
|
return radioChannel24G;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getRadioChannel5HG() {
|
||||||
|
return radioChannel5HG;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getRadioChannel5LG() {
|
||||||
|
return radioChannel5LG;
|
||||||
|
}
|
||||||
|
|
||||||
public void setCountry(String country) {
|
public void setCountry(String country) {
|
||||||
this.country = country;
|
this.country = country;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
public void setRadioChannel24G(int radioChannel24G) {
|
||||||
public OpensyncAPRadioConfig clone() {
|
this.radioChannel24G = radioChannel24G;
|
||||||
return (OpensyncAPRadioConfig)super.clone();
|
}
|
||||||
|
|
||||||
|
public void setRadioChannel5HG(int radioChannel5HG) {
|
||||||
|
this.radioChannel5HG = radioChannel5HG;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRadioChannel5LG(int radioChannel5LG) {
|
||||||
|
this.radioChannel5LG = radioChannel5LG;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,23 +1,30 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.HashSet;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import com.telecominfraproject.wlan.core.model.equipment.RadioType;
|
import com.telecominfraproject.wlan.core.model.equipment.RadioType;
|
||||||
import com.telecominfraproject.wlan.core.model.json.BaseJsonModel;
|
import com.vmware.ovsdb.protocol.operation.notation.Row;
|
||||||
import com.vmware.ovsdb.protocol.operation.notation.Uuid;
|
import com.vmware.ovsdb.protocol.operation.notation.Uuid;
|
||||||
|
import com.vmware.ovsdb.protocol.operation.notation.Value;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author mikehansen
|
* @author mikehansen
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class OpensyncAPRadioState extends BaseJsonModel {
|
public class OpensyncAPRadioState extends OpensyncAPBase {
|
||||||
|
|
||||||
private static final long serialVersionUID = 5003143778489404219L;
|
private static final long serialVersionUID = 5003143778489404219L;
|
||||||
|
|
||||||
|
public static long getSerialversionuid() {
|
||||||
|
return serialVersionUID;
|
||||||
|
}
|
||||||
|
|
||||||
public int temperatureControl;
|
public int temperatureControl;
|
||||||
public boolean thermalDowngraded;
|
public boolean thermalDowngraded;
|
||||||
public boolean dfsDemo;
|
public boolean dfsDemo;
|
||||||
@@ -44,244 +51,350 @@ public class OpensyncAPRadioState extends BaseJsonModel {
|
|||||||
public Map<String, String> hwParams;
|
public Map<String, String> hwParams;
|
||||||
public RadioType freqBand;
|
public RadioType freqBand;
|
||||||
public int thermalIntegration;
|
public int thermalIntegration;
|
||||||
|
|
||||||
|
public Set<Uuid> vifStates;
|
||||||
|
|
||||||
public String channelMode;
|
public String channelMode;
|
||||||
|
|
||||||
public Uuid _uuid;
|
public Uuid _uuid;
|
||||||
public Uuid version;
|
public Uuid version;
|
||||||
|
|
||||||
public int getTemperatureControl() {
|
public OpensyncAPRadioState() {
|
||||||
return temperatureControl;
|
allowedChannels = new HashSet<>();
|
||||||
|
hwConfig = new HashMap<>();
|
||||||
|
channels = new HashMap<>();
|
||||||
|
hwParams = new HashMap<>();
|
||||||
|
vifStates = new HashSet<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setTemperatureControl(int temperatureControl) {
|
public OpensyncAPRadioState(Row row) {
|
||||||
this.temperatureControl = temperatureControl;
|
this();
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isThermalDowngraded() {
|
Map<String, Value> map = row.getColumns();
|
||||||
return thermalDowngraded;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setThermalDowngraded(boolean thermalDowngraded) {
|
if ((map.get("mac") != null)
|
||||||
this.thermalDowngraded = thermalDowngraded;
|
&& map.get("mac").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setMac(row.getStringColumn("mac"));
|
||||||
|
}
|
||||||
|
if ((map.get("channel") != null)
|
||||||
|
&& map.get("channel").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setChannel(row.getIntegerColumn("channel").intValue());
|
||||||
|
}
|
||||||
|
if ((map.get("freq_band") != null)
|
||||||
|
&& map.get("freq_band").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
String frequencyBand = row.getStringColumn("freq_band");
|
||||||
|
switch (frequencyBand) {
|
||||||
|
case "2.4G":
|
||||||
|
this.setFreqBand(RadioType.is2dot4GHz);
|
||||||
|
break;
|
||||||
|
case "5G":
|
||||||
|
this.setFreqBand(RadioType.is5GHz);
|
||||||
|
break;
|
||||||
|
case "5GL":
|
||||||
|
this.setFreqBand(RadioType.is5GHzL);
|
||||||
|
break;
|
||||||
|
case "5GU":
|
||||||
|
this.setFreqBand(RadioType.is5GHzU);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
this.setFreqBand(RadioType.UNSUPPORTED);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ((map.get("if_name") != null)
|
||||||
|
&& map.get("if_name").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setIfName(row.getStringColumn("if_name"));
|
||||||
|
}
|
||||||
|
if ((map.get("channel_mode") != null)
|
||||||
|
&& map.get("channel_mode").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setChannelMode(row.getStringColumn("channel_mode"));
|
||||||
|
}
|
||||||
|
if ((map.get("country") != null)
|
||||||
|
&& map.get("country").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setCountry(row.getStringColumn("country").toUpperCase());
|
||||||
|
}
|
||||||
|
if ((map.get("enabled") != null)
|
||||||
|
&& map.get("enabled").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setEnabled(row.getBooleanColumn("enabled"));
|
||||||
|
}
|
||||||
|
if ((map.get("ht_mode") != null)
|
||||||
|
&& map.get("ht_mode").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setHtMode(row.getStringColumn("ht_mode"));
|
||||||
|
}
|
||||||
|
if ((map.get("tx_power") != null)
|
||||||
|
&& map.get("tx_power").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setTxPower(row.getIntegerColumn("tx_power").intValue());
|
||||||
|
}
|
||||||
|
if ((map.get("hw_config") != null)
|
||||||
|
&& map.get("hw_config").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Map.class)) {
|
||||||
|
this.setHwConfig(row.getMapColumn("hw_config"));
|
||||||
|
}
|
||||||
|
if ((map.get("_version") != null)
|
||||||
|
&& map.get("_version").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setVersion(row.getUuidColumn("_version"));
|
||||||
|
}
|
||||||
|
if ((map.get("_uuid") != null)
|
||||||
|
&& map.get("_uuid").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setVersion(row.getUuidColumn("_uuid"));
|
||||||
|
}
|
||||||
|
if (map.get("allowed_channels") != null) {
|
||||||
|
|
||||||
public boolean isDfsDemo() {
|
Set<Long> allowedChannels = getSet(row, "allowed_channels");
|
||||||
return dfsDemo;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDfsDemo(boolean dfsDemo) {
|
Set<Integer> allowed = new HashSet<>();
|
||||||
this.dfsDemo = dfsDemo;
|
for (Long channel : allowedChannels) {
|
||||||
}
|
allowed.add(channel.intValue());
|
||||||
|
}
|
||||||
|
this.setAllowedChannels(allowed);
|
||||||
|
}
|
||||||
|
if (map.get("channels") != null) {
|
||||||
|
|
||||||
public String getIfName() {
|
Map<String, String> channels = row.getMapColumn("channels");
|
||||||
return ifName;
|
this.setChannels(channels);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setIfName(String ifName) {
|
Set<Uuid> vifStates = row.getSetColumn("vif_states");
|
||||||
this.ifName = ifName;
|
this.setVifStates(vifStates);
|
||||||
}
|
|
||||||
|
|
||||||
public String getMac() {
|
|
||||||
return mac;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setMac(String mac) {
|
|
||||||
this.mac = mac;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getBcnInt() {
|
|
||||||
return bcnInt;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setBcnInt(int bcnInt) {
|
|
||||||
this.bcnInt = bcnInt;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getThermalTxChainmask() {
|
|
||||||
return thermalTxChainmask;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setThermalTxChainmask(int thermalTxChainmask) {
|
|
||||||
this.thermalTxChainmask = thermalTxChainmask;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Set<Integer> getAllowedChannels() {
|
|
||||||
return allowedChannels;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setAllowedChannels(Set<Integer> allowedChannels) {
|
|
||||||
this.allowedChannels = allowedChannels;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getThermalShutdown() {
|
|
||||||
return thermalShutdown;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setThermalShutdown(int thermalShutdown) {
|
|
||||||
this.thermalShutdown = thermalShutdown;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getChannelSync() {
|
|
||||||
return channelSync;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setChannelSync(int channelSync) {
|
|
||||||
this.channelSync = channelSync;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getHwType() {
|
|
||||||
return hwType;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setHwType(int hwType) {
|
|
||||||
this.hwType = hwType;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getTxChainmask() {
|
|
||||||
return txChainmask;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setTxChainmask(int txChainmask) {
|
|
||||||
this.txChainmask = txChainmask;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getRadar() {
|
|
||||||
return radar;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setRadar(String radar) {
|
|
||||||
this.radar = radar;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getCountry() {
|
|
||||||
return country;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setCountry(String country) {
|
|
||||||
this.country = country;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Map<String, String> getHwConfig() {
|
|
||||||
return hwConfig;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setHwConfig(Map<String, String> hwConfig) {
|
|
||||||
this.hwConfig = hwConfig;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getChannel() {
|
|
||||||
return channel;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setChannel(int channel) {
|
|
||||||
this.channel = channel;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getTxPower() {
|
|
||||||
return txPower;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setTxPower(int txPower) {
|
|
||||||
this.txPower = txPower;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getHtMode() {
|
|
||||||
return htMode;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setHtMode(String htMode) {
|
|
||||||
this.htMode = htMode;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getThermalDowngradeTemp() {
|
|
||||||
return thermalDowngradeTemp;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setThermalDowngradeTemp(int thermalDowngradeTemp) {
|
|
||||||
this.thermalDowngradeTemp = thermalDowngradeTemp;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getHwMode() {
|
|
||||||
return hwMode;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setHwMode(String hwMode) {
|
|
||||||
this.hwMode = hwMode;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isEnabled() {
|
|
||||||
return enabled;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setEnabled(boolean enabled) {
|
|
||||||
this.enabled = enabled;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Map<String, String> getChannels() {
|
|
||||||
return channels;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setChannels(Map<String, String> channels) {
|
|
||||||
this.channels = channels;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getThermalUpgradeTemp() {
|
|
||||||
return thermalUpgradeTemp;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setThermalUpgradeTemp(int thermalUpgradeTemp) {
|
|
||||||
this.thermalUpgradeTemp = thermalUpgradeTemp;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Map<String, String> getHwParams() {
|
|
||||||
return hwParams;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setHwParams(Map<String, String> hwParams) {
|
|
||||||
this.hwParams = hwParams;
|
|
||||||
}
|
|
||||||
|
|
||||||
public RadioType getFreqBand() {
|
|
||||||
return freqBand;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setFreqBand(RadioType freqBand) {
|
|
||||||
this.freqBand = freqBand;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getThermalIntegration() {
|
|
||||||
return thermalIntegration;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setThermalIntegration(int thermalIntegration) {
|
|
||||||
this.thermalIntegration = thermalIntegration;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getChannelMode() {
|
|
||||||
return channelMode;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setChannelMode(String channelMode) {
|
|
||||||
this.channelMode = channelMode;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static long getSerialversionuid() {
|
|
||||||
return serialVersionUID;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Uuid get_uuid() {
|
public Uuid get_uuid() {
|
||||||
return _uuid;
|
return _uuid;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void set_uuid(Uuid _uuid) {
|
public Set<Integer> getAllowedChannels() {
|
||||||
this._uuid = _uuid;
|
return allowedChannels;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getBcnInt() {
|
||||||
|
return bcnInt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getChannel() {
|
||||||
|
return channel;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getChannelMode() {
|
||||||
|
return channelMode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<String, String> getChannels() {
|
||||||
|
return channels;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getChannelSync() {
|
||||||
|
return channelSync;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCountry() {
|
||||||
|
return country;
|
||||||
|
}
|
||||||
|
|
||||||
|
public RadioType getFreqBand() {
|
||||||
|
return freqBand;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getHtMode() {
|
||||||
|
return htMode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<String, String> getHwConfig() {
|
||||||
|
return hwConfig;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getHwMode() {
|
||||||
|
return hwMode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<String, String> getHwParams() {
|
||||||
|
return hwParams;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getHwType() {
|
||||||
|
return hwType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getIfName() {
|
||||||
|
return ifName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMac() {
|
||||||
|
return mac;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getRadar() {
|
||||||
|
return radar;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getTemperatureControl() {
|
||||||
|
return temperatureControl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getThermalDowngradeTemp() {
|
||||||
|
return thermalDowngradeTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getThermalIntegration() {
|
||||||
|
return thermalIntegration;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getThermalShutdown() {
|
||||||
|
return thermalShutdown;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getThermalTxChainmask() {
|
||||||
|
return thermalTxChainmask;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getThermalUpgradeTemp() {
|
||||||
|
return thermalUpgradeTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getTxChainmask() {
|
||||||
|
return txChainmask;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getTxPower() {
|
||||||
|
return txPower;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Uuid getVersion() {
|
public Uuid getVersion() {
|
||||||
return version;
|
return version;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Set<Uuid> getVifStates() {
|
||||||
|
return vifStates;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isDfsDemo() {
|
||||||
|
return dfsDemo;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isEnabled() {
|
||||||
|
return enabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isThermalDowngraded() {
|
||||||
|
return thermalDowngraded;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void set_uuid(Uuid _uuid) {
|
||||||
|
this._uuid = _uuid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAllowedChannels(Set<Integer> allowedChannels) {
|
||||||
|
this.allowedChannels = allowedChannels;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBcnInt(int bcnInt) {
|
||||||
|
this.bcnInt = bcnInt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setChannel(int channel) {
|
||||||
|
this.channel = channel;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setChannelMode(String channelMode) {
|
||||||
|
this.channelMode = channelMode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setChannels(Map<String, String> channels) {
|
||||||
|
this.channels = channels;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setChannelSync(int channelSync) {
|
||||||
|
this.channelSync = channelSync;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCountry(String country) {
|
||||||
|
this.country = country;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDfsDemo(boolean dfsDemo) {
|
||||||
|
this.dfsDemo = dfsDemo;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEnabled(boolean enabled) {
|
||||||
|
this.enabled = enabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFreqBand(RadioType freqBand) {
|
||||||
|
this.freqBand = freqBand;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setHtMode(String htMode) {
|
||||||
|
this.htMode = htMode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setHwConfig(Map<String, String> hwConfig) {
|
||||||
|
this.hwConfig = hwConfig;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setHwMode(String hwMode) {
|
||||||
|
this.hwMode = hwMode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setHwParams(Map<String, String> hwParams) {
|
||||||
|
this.hwParams = hwParams;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setHwType(int hwType) {
|
||||||
|
this.hwType = hwType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIfName(String ifName) {
|
||||||
|
this.ifName = ifName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMac(String mac) {
|
||||||
|
this.mac = mac;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRadar(String radar) {
|
||||||
|
this.radar = radar;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTemperatureControl(int temperatureControl) {
|
||||||
|
this.temperatureControl = temperatureControl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setThermalDowngraded(boolean thermalDowngraded) {
|
||||||
|
this.thermalDowngraded = thermalDowngraded;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setThermalDowngradeTemp(int thermalDowngradeTemp) {
|
||||||
|
this.thermalDowngradeTemp = thermalDowngradeTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setThermalIntegration(int thermalIntegration) {
|
||||||
|
this.thermalIntegration = thermalIntegration;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setThermalShutdown(int thermalShutdown) {
|
||||||
|
this.thermalShutdown = thermalShutdown;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setThermalTxChainmask(int thermalTxChainmask) {
|
||||||
|
this.thermalTxChainmask = thermalTxChainmask;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setThermalUpgradeTemp(int thermalUpgradeTemp) {
|
||||||
|
this.thermalUpgradeTemp = thermalUpgradeTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTxChainmask(int txChainmask) {
|
||||||
|
this.txChainmask = txChainmask;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTxPower(int txPower) {
|
||||||
|
this.txPower = txPower;
|
||||||
|
}
|
||||||
|
|
||||||
public void setVersion(Uuid version) {
|
public void setVersion(Uuid version) {
|
||||||
this.version = version;
|
this.version = version;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setVifStates(Set<Uuid> vifStates) {
|
||||||
|
this.vifStates = vifStates;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
||||||
|
|
||||||
import com.telecominfraproject.wlan.core.model.equipment.RadioType;
|
import com.telecominfraproject.wlan.core.model.equipment.RadioType;
|
||||||
import com.telecominfraproject.wlan.core.model.json.BaseJsonModel;
|
|
||||||
|
|
||||||
public class OpensyncAPSsidConfig extends BaseJsonModel {
|
public class OpensyncAPSsidConfig extends OpensyncAPBase {
|
||||||
|
|
||||||
private static final long serialVersionUID = -8540144450360788799L;
|
private static final long serialVersionUID = -8540144450360788799L;
|
||||||
|
|
||||||
@@ -13,45 +12,30 @@ public class OpensyncAPSsidConfig extends BaseJsonModel {
|
|||||||
private String key;
|
private String key;
|
||||||
private String mode;
|
private String mode;
|
||||||
private boolean broadcast;
|
private boolean broadcast;
|
||||||
|
|
||||||
public RadioType getRadioType() {
|
|
||||||
return radioType;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setRadioType(RadioType radioType) {
|
@Override
|
||||||
this.radioType = radioType;
|
public OpensyncAPSsidConfig clone() {
|
||||||
}
|
return (OpensyncAPSsidConfig) super.clone();
|
||||||
|
|
||||||
public String getSsid() {
|
|
||||||
return ssid;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSsid(String ssid) {
|
|
||||||
this.ssid = ssid;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getEncryption() {
|
public String getEncryption() {
|
||||||
return encryption;
|
return encryption;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setEncryption(String encryption) {
|
|
||||||
this.encryption = encryption;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getKey() {
|
public String getKey() {
|
||||||
return key;
|
return key;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setKey(String key) {
|
|
||||||
this.key = key;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getMode() {
|
public String getMode() {
|
||||||
return mode;
|
return mode;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setMode(String mode) {
|
public RadioType getRadioType() {
|
||||||
this.mode = mode;
|
return radioType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSsid() {
|
||||||
|
return ssid;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isBroadcast() {
|
public boolean isBroadcast() {
|
||||||
@@ -62,9 +46,24 @@ public class OpensyncAPSsidConfig extends BaseJsonModel {
|
|||||||
this.broadcast = broadcast;
|
this.broadcast = broadcast;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
public void setEncryption(String encryption) {
|
||||||
public OpensyncAPSsidConfig clone() {
|
this.encryption = encryption;
|
||||||
return (OpensyncAPSsidConfig)super.clone();
|
}
|
||||||
|
|
||||||
|
public void setKey(String key) {
|
||||||
|
this.key = key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMode(String mode) {
|
||||||
|
this.mode = mode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRadioType(RadioType radioType) {
|
||||||
|
this.radioType = radioType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSsid(String ssid) {
|
||||||
|
this.ssid = ssid;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -1,16 +1,23 @@
|
|||||||
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.UUID;
|
|
||||||
|
|
||||||
import com.telecominfraproject.wlan.core.model.json.BaseJsonModel;
|
import com.vmware.ovsdb.protocol.operation.notation.Row;
|
||||||
import com.vmware.ovsdb.protocol.operation.notation.Uuid;
|
import com.vmware.ovsdb.protocol.operation.notation.Uuid;
|
||||||
|
import com.vmware.ovsdb.protocol.operation.notation.Value;
|
||||||
|
|
||||||
public class OpensyncAPVIFState extends BaseJsonModel {
|
public class OpensyncAPVIFState extends OpensyncAPBase {
|
||||||
|
|
||||||
private static final long serialVersionUID = -4916251246542770881L;
|
private static final long serialVersionUID = -4916251246542770881L;
|
||||||
|
|
||||||
|
public static long getSerialversionuid() {
|
||||||
|
return serialVersionUID;
|
||||||
|
}
|
||||||
|
|
||||||
public String ifName;
|
public String ifName;
|
||||||
public int vifRadioIdx;
|
public int vifRadioIdx;
|
||||||
public String parent;
|
public String parent;
|
||||||
@@ -22,7 +29,8 @@ public class OpensyncAPVIFState extends BaseJsonModel {
|
|||||||
public String ssid;
|
public String ssid;
|
||||||
public Map<String, String> security;
|
public Map<String, String> security;
|
||||||
public String macList;
|
public String macList;
|
||||||
public Set<Uuid> associatedClients;
|
|
||||||
|
public List<Uuid> associatedClients;
|
||||||
public boolean enabled;
|
public boolean enabled;
|
||||||
public int vlanId;
|
public int vlanId;
|
||||||
public int btm;
|
public int btm;
|
||||||
@@ -37,226 +45,321 @@ public class OpensyncAPVIFState extends BaseJsonModel {
|
|||||||
public boolean dynamicBeacon;
|
public boolean dynamicBeacon;
|
||||||
public int channel;
|
public int channel;
|
||||||
public Uuid _uuid;
|
public Uuid _uuid;
|
||||||
|
|
||||||
public Uuid version;
|
public Uuid version;
|
||||||
|
|
||||||
public String getIfName() {
|
public OpensyncAPVIFState() {
|
||||||
return ifName;
|
security = new HashMap<>();
|
||||||
|
associatedClients = new ArrayList<>();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setIfName(String ifName) {
|
public OpensyncAPVIFState(Row row) {
|
||||||
this.ifName = ifName;
|
Map<String, Value> map = row.getColumns();
|
||||||
}
|
|
||||||
|
|
||||||
public int getVifRadioIdx() {
|
if ((map.get("mac") != null)
|
||||||
return vifRadioIdx;
|
&& map.get("mac").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setMac(row.getStringColumn("mac"));
|
||||||
|
}
|
||||||
|
if ((map.get("bridge") != null)
|
||||||
|
&& map.get("bridge").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setBridge(row.getStringColumn("bridge"));
|
||||||
|
}
|
||||||
|
if ((map.get("btm") != null)
|
||||||
|
&& map.get("btm").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setBtm(row.getIntegerColumn("btm").intValue());
|
||||||
|
}
|
||||||
|
|
||||||
public void setVifRadioIdx(int vifRadioIdx) {
|
if ((map.get("channel") != null)
|
||||||
this.vifRadioIdx = vifRadioIdx;
|
&& map.get("channel").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setChannel(row.getIntegerColumn("channel").intValue());
|
||||||
|
}
|
||||||
|
|
||||||
public String getParent() {
|
if ((map.get("enabled") != null)
|
||||||
return parent;
|
&& map.get("enabled").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setEnabled(row.getBooleanColumn("enabled"));
|
||||||
|
}
|
||||||
|
|
||||||
public void setParent(String parent) {
|
Long ftPsk = getSingleValueFromSet(row, "ft_psk");
|
||||||
this.parent = parent;
|
if (ftPsk != null) {
|
||||||
}
|
this.setFtPsk(ftPsk.intValue());
|
||||||
|
}
|
||||||
|
|
||||||
public String getState() {
|
Long ftMobilityDomain = getSingleValueFromSet(row, "ft_mobility_domain");
|
||||||
return state;
|
if (ftMobilityDomain != null) {
|
||||||
}
|
this.setFtMobilityDomain(ftMobilityDomain.intValue());
|
||||||
|
}
|
||||||
|
|
||||||
public void setState(String state) {
|
if ((map.get("group_rekey") != null)
|
||||||
this.state = state;
|
&& map.get("group_rekey").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setGroupRekey(row.getIntegerColumn("group_rekey").intValue());
|
||||||
|
}
|
||||||
|
if ((map.get("if_name") != null)
|
||||||
|
&& map.get("if_name").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setIfName(row.getStringColumn("if_name"));
|
||||||
|
}
|
||||||
|
|
||||||
public String getMac() {
|
if ((map.get("mode") != null)
|
||||||
return mac;
|
&& map.get("mode").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setMode(row.getStringColumn("mode"));
|
||||||
|
}
|
||||||
|
|
||||||
public void setMac(String mac) {
|
if ((map.get("rrm") != null)
|
||||||
this.mac = mac;
|
&& map.get("rrm").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setRrm(row.getIntegerColumn("rrm").intValue());
|
||||||
|
}
|
||||||
|
if ((map.get("ssid") != null)
|
||||||
|
&& map.get("ssid").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setSsid(row.getStringColumn("ssid"));
|
||||||
|
}
|
||||||
|
|
||||||
public boolean isApBridge() {
|
if ((map.get("ssid_broadcast") != null) && map.get("ssid_broadcast").getClass()
|
||||||
return apBridge;
|
.equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setSsidBroadcast(row.getStringColumn("ssid_broadcast"));
|
||||||
|
}
|
||||||
|
if ((map.get("uapsd_enable") != null)
|
||||||
|
&& map.get("uapsd_enable").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setUapsdEnable(row.getBooleanColumn("uapsd_enable"));
|
||||||
|
}
|
||||||
|
if ((map.get("vif_radio_idx") != null) && map.get("vif_radio_idx").getClass()
|
||||||
|
.equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setVifRadioIdx(row.getIntegerColumn("vif_radio_idx").intValue());
|
||||||
|
}
|
||||||
|
|
||||||
public void setApBridge(boolean apBridge) {
|
List<Uuid> associatedClientsList = new ArrayList<>();
|
||||||
this.apBridge = apBridge;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isUapsdEnable() {
|
Set<Uuid> clients = row.getSetColumn("associated_clients");
|
||||||
return uapsdEnable;
|
associatedClientsList.addAll(clients);
|
||||||
}
|
|
||||||
|
|
||||||
public void setUapsdEnable(boolean uapsdEnable) {
|
this.setAssociatedClients(associatedClientsList);
|
||||||
this.uapsdEnable = uapsdEnable;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isWds() {
|
if (map.get("security") != null) {
|
||||||
return wds;
|
this.setSecurity(row.getMapColumn("security"));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setWds(boolean wds) {
|
if ((map.get("_version") != null)
|
||||||
this.wds = wds;
|
&& map.get("_version").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setVersion(row.getUuidColumn("_version"));
|
||||||
|
}
|
||||||
public String getSsid() {
|
if ((map.get("_uuid") != null)
|
||||||
return ssid;
|
&& map.get("_uuid").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setVersion(row.getUuidColumn("_uuid"));
|
||||||
|
}
|
||||||
public void setSsid(String ssid) {
|
|
||||||
this.ssid = ssid;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Map<String, String> getSecurity() {
|
|
||||||
return security;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSecurity(Map<String, String> security) {
|
|
||||||
this.security = security;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getMacList() {
|
|
||||||
return macList;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setMacList(String macList) {
|
|
||||||
this.macList = macList;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Set<Uuid> getAssociatedClients() {
|
|
||||||
return associatedClients;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setAssociatedClients(Set<Uuid> list) {
|
|
||||||
this.associatedClients = list;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isEnabled() {
|
|
||||||
return enabled;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setEnabled(boolean enabled) {
|
|
||||||
this.enabled = enabled;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getVlanId() {
|
|
||||||
return vlanId;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setVlanId(int vlanId) {
|
|
||||||
this.vlanId = vlanId;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getBtm() {
|
|
||||||
return btm;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setBtm(int btm) {
|
|
||||||
this.btm = btm;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getMinHwMode() {
|
|
||||||
return minHwMode;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setMinHwMode(String minHwMode) {
|
|
||||||
this.minHwMode = minHwMode;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getSsidBroadcast() {
|
|
||||||
return ssidBroadcast;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSsidBroadcast(String ssidBroadcast) {
|
|
||||||
this.ssidBroadcast = ssidBroadcast;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getMode() {
|
|
||||||
return mode;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setMode(String mode) {
|
|
||||||
this.mode = mode;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getBridge() {
|
|
||||||
return bridge;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setBridge(String bridge) {
|
|
||||||
this.bridge = bridge;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getGroupRekey() {
|
|
||||||
return groupRekey;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setGroupRekey(int groupRekey) {
|
|
||||||
this.groupRekey = groupRekey;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getFtMobilityDomain() {
|
|
||||||
return ftMobilityDomain;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setFtMobilityDomain(int ftMobilityDomain) {
|
|
||||||
this.ftMobilityDomain = ftMobilityDomain;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getFtPsk() {
|
|
||||||
return ftPsk;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setFtPsk(int ftPsk) {
|
|
||||||
this.ftPsk = ftPsk;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getRrm() {
|
|
||||||
return rrm;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setRrm(int rrm) {
|
|
||||||
this.rrm = rrm;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isDynamicBeacon() {
|
|
||||||
return dynamicBeacon;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDynamicBeacon(boolean dynamicBeacon) {
|
|
||||||
this.dynamicBeacon = dynamicBeacon;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getChannel() {
|
|
||||||
return channel;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setChannel(int channel) {
|
|
||||||
this.channel = channel;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static long getSerialversionuid() {
|
|
||||||
return serialVersionUID;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Uuid get_uuid() {
|
public Uuid get_uuid() {
|
||||||
return _uuid;
|
return _uuid;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void set_uuid(Uuid _uuid) {
|
public List<Uuid> getAssociatedClients() {
|
||||||
this._uuid = _uuid;
|
return associatedClients;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getBridge() {
|
||||||
|
return bridge;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getBtm() {
|
||||||
|
return btm;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getChannel() {
|
||||||
|
return channel;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getFtMobilityDomain() {
|
||||||
|
return ftMobilityDomain;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getFtPsk() {
|
||||||
|
return ftPsk;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getGroupRekey() {
|
||||||
|
return groupRekey;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getIfName() {
|
||||||
|
return ifName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMac() {
|
||||||
|
return mac;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMacList() {
|
||||||
|
return macList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMinHwMode() {
|
||||||
|
return minHwMode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMode() {
|
||||||
|
return mode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getParent() {
|
||||||
|
return parent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getRrm() {
|
||||||
|
return rrm;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<String, String> getSecurity() {
|
||||||
|
return security;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSsid() {
|
||||||
|
return ssid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSsidBroadcast() {
|
||||||
|
return ssidBroadcast;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getState() {
|
||||||
|
return state;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Uuid getVersion() {
|
public Uuid getVersion() {
|
||||||
return version;
|
return version;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int getVifRadioIdx() {
|
||||||
|
return vifRadioIdx;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getVlanId() {
|
||||||
|
return vlanId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isApBridge() {
|
||||||
|
return apBridge;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isDynamicBeacon() {
|
||||||
|
return dynamicBeacon;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isEnabled() {
|
||||||
|
return enabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isUapsdEnable() {
|
||||||
|
return uapsdEnable;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isWds() {
|
||||||
|
return wds;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void set_uuid(Uuid _uuid) {
|
||||||
|
this._uuid = _uuid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setApBridge(boolean apBridge) {
|
||||||
|
this.apBridge = apBridge;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAssociatedClients(List<Uuid> list) {
|
||||||
|
this.associatedClients = list;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBridge(String bridge) {
|
||||||
|
this.bridge = bridge;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBtm(int btm) {
|
||||||
|
this.btm = btm;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setChannel(int channel) {
|
||||||
|
this.channel = channel;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDynamicBeacon(boolean dynamicBeacon) {
|
||||||
|
this.dynamicBeacon = dynamicBeacon;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEnabled(boolean enabled) {
|
||||||
|
this.enabled = enabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFtMobilityDomain(int ftMobilityDomain) {
|
||||||
|
this.ftMobilityDomain = ftMobilityDomain;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFtPsk(int ftPsk) {
|
||||||
|
this.ftPsk = ftPsk;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setGroupRekey(int groupRekey) {
|
||||||
|
this.groupRekey = groupRekey;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIfName(String ifName) {
|
||||||
|
this.ifName = ifName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMac(String mac) {
|
||||||
|
this.mac = mac;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMacList(String macList) {
|
||||||
|
this.macList = macList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinHwMode(String minHwMode) {
|
||||||
|
this.minHwMode = minHwMode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMode(String mode) {
|
||||||
|
this.mode = mode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setParent(String parent) {
|
||||||
|
this.parent = parent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRrm(int rrm) {
|
||||||
|
this.rrm = rrm;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSecurity(Map<String, String> security) {
|
||||||
|
this.security = security;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSsid(String ssid) {
|
||||||
|
this.ssid = ssid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSsidBroadcast(String ssidBroadcast) {
|
||||||
|
this.ssidBroadcast = ssidBroadcast;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setState(String state) {
|
||||||
|
this.state = state;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUapsdEnable(boolean uapsdEnable) {
|
||||||
|
this.uapsdEnable = uapsdEnable;
|
||||||
|
}
|
||||||
|
|
||||||
public void setVersion(Uuid version) {
|
public void setVersion(Uuid version) {
|
||||||
this.version = version;
|
this.version = version;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setVifRadioIdx(int vifRadioIdx) {
|
||||||
|
this.vifRadioIdx = vifRadioIdx;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setVlanId(int vlanId) {
|
||||||
|
this.vlanId = vlanId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setWds(boolean wds) {
|
||||||
|
this.wds = wds;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,22 +1,28 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.UUID;
|
|
||||||
|
|
||||||
import com.telecominfraproject.wlan.core.model.json.BaseJsonModel;
|
import com.vmware.ovsdb.protocol.operation.notation.Row;
|
||||||
import com.vmware.ovsdb.protocol.operation.notation.Uuid;
|
import com.vmware.ovsdb.protocol.operation.notation.Uuid;
|
||||||
|
import com.vmware.ovsdb.protocol.operation.notation.Value;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author mikehansen
|
* @author mikehansen
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class OpensyncAWLANNode extends BaseJsonModel {
|
public class OpensyncAWLANNode extends OpensyncAPBase {
|
||||||
|
|
||||||
private static final long serialVersionUID = -6172956297643126710L;
|
private static final long serialVersionUID = -6172956297643126710L;
|
||||||
|
|
||||||
|
public static long getSerialversionuid() {
|
||||||
|
return serialVersionUID;
|
||||||
|
}
|
||||||
|
|
||||||
public Map<Object, Object> mqttSettings;
|
public Map<Object, Object> mqttSettings;
|
||||||
public String model;
|
public String model;
|
||||||
public String skuNumber;
|
public String skuNumber;
|
||||||
@@ -40,211 +46,411 @@ public class OpensyncAWLANNode extends BaseJsonModel {
|
|||||||
public String revision;
|
public String revision;
|
||||||
public String managerAddr;
|
public String managerAddr;
|
||||||
public boolean factoryReset;
|
public boolean factoryReset;
|
||||||
|
public String referenceDesign;
|
||||||
|
public Map<String, String> qrCode;
|
||||||
|
public String modelDescription;
|
||||||
|
public String manufacturerUrl;
|
||||||
|
public String manufacturerName;
|
||||||
|
public String manufacturerDate;
|
||||||
|
public String certificationRegion;
|
||||||
|
|
||||||
public Uuid _uuid;
|
public Uuid _uuid;
|
||||||
|
|
||||||
public Uuid version;
|
public Uuid version;
|
||||||
|
|
||||||
public Map<Object, Object> getMqttSettings() {
|
public OpensyncAWLANNode() {
|
||||||
return mqttSettings;
|
mqttSettings = new HashMap<>();
|
||||||
|
versionMatrix = new HashMap<>();
|
||||||
|
ledConfig = new HashMap<>();
|
||||||
|
mqttHeaders = new HashMap<>();
|
||||||
|
mqttTopics = new HashMap<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setMqttSettings(Map<Object, Object> map) {
|
public OpensyncAWLANNode(Row row) {
|
||||||
this.mqttSettings = map;
|
this();
|
||||||
}
|
|
||||||
|
// mqtt_settings {"key":"string","max":"unlimited","min":0,"value":"string"}
|
||||||
public String getModel() {
|
// model {"key":"string","min":0}
|
||||||
return model;
|
// sku_number {"key":"string","min":0}
|
||||||
}
|
// version_matrix {"key":"string","max":"unlimited","min":0,"value":{"maxLength":128,"type":"string"}}
|
||||||
|
// model_description "string"
|
||||||
public void setModel(String model) {
|
// certification_region "string"
|
||||||
this.model = model;
|
// id "string"
|
||||||
}
|
// firmware_version "string"
|
||||||
|
// firmware_url {"key":{"maxLength":256,"type":"string"}}
|
||||||
public String getSkuNumber() {
|
// _uuid "uuid"
|
||||||
return skuNumber;
|
// upgrade_dl_timer "integer"
|
||||||
}
|
// reference_design "string"
|
||||||
|
// platform_version "string"
|
||||||
public void setSkuNumber(String skuNumber) {
|
// firmware_pass {"key":{"maxLength":256,"type":"string"}}
|
||||||
this.skuNumber = skuNumber;
|
// upgrade_timer "integer"
|
||||||
}
|
// redirector_addr "string"
|
||||||
|
// led_config {"key":"string","max":"unlimited","min":0,"value":"string"}
|
||||||
public String getId() {
|
// max_backoff "integer"
|
||||||
return id;
|
// mqtt_headers {"key":"string","max":"unlimited","min":0,"value":"string"}
|
||||||
}
|
// serial_number {"key":"string","min":0}
|
||||||
|
// _version "uuid"
|
||||||
public void setId(String id) {
|
// upgrade_status "integer"
|
||||||
this.id = id;
|
// device_mode {"key":{"enum":["set",["battery","cloud","custom","monitor"]],"type":"string"},"min":0}
|
||||||
}
|
// min_backoff "integer"
|
||||||
|
// manufacturer_date "string"
|
||||||
public Map<String, String> getVersionMatrix() {
|
// mqtt_topics {"key":"string","max":"unlimited","min":0,"value":{"maxLength":128,"type":"string"}}
|
||||||
return versionMatrix;
|
// revision "string"
|
||||||
}
|
// manufacturer_name "string"
|
||||||
|
// manufacturer_url "string"
|
||||||
public void setVersionMatrix(Map<String, String> versionMatrix) {
|
// manager_addr "string"
|
||||||
this.versionMatrix = versionMatrix;
|
// factory_reset {"key":"boolean","min":0}
|
||||||
}
|
Map<String, Value> map = row.getColumns();
|
||||||
|
if (map.get("mqtt_settings") != null) {
|
||||||
public String getFirmwareVersion() {
|
this.setMqttSettings(row.getMapColumn("mqtt_settings"));
|
||||||
return firmwareVersion;
|
}
|
||||||
}
|
if (map.get("mqtt_headers") != null) {
|
||||||
|
this.setMqttHeaders(row.getMapColumn("mqtt_headers"));
|
||||||
public void setFirmwareVersion(String firmwareVersion) {
|
}
|
||||||
this.firmwareVersion = firmwareVersion;
|
if (map.get("mqtt_topics") != null) {
|
||||||
}
|
this.setMqttHeaders(row.getMapColumn("mqtt_topics"));
|
||||||
|
}
|
||||||
public String getFirmwareUrl() {
|
if ((map.get("model") != null) && map.get("model").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
return firmwareUrl;
|
this.setModel(row.getStringColumn("model"));
|
||||||
}
|
}
|
||||||
|
if ((map.get("sku_number") != null) && map.get("sku_number").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
public void setFirmwareUrl(String firmwareUrl) {
|
this.setSkuNumber(row.getStringColumn("sku_number"));
|
||||||
this.firmwareUrl = firmwareUrl;
|
}
|
||||||
}
|
if (map.get("id") != null) {
|
||||||
|
this.setId(getSingleValueFromSet(row, "id"));
|
||||||
public int getUpgradeDlTimer() {
|
}
|
||||||
return upgradeDlTimer;
|
if (map.get("reference_design") != null) {
|
||||||
}
|
this.setReferenceDesign(row.getStringColumn("reference_design"));
|
||||||
|
}
|
||||||
public void setUpgradeDlTimer(int upgradeDlTimer) {
|
if (map.get("qr_code") != null) {
|
||||||
this.upgradeDlTimer = upgradeDlTimer;
|
this.setQrCode(row.getMapColumn("qr_code"));
|
||||||
}
|
}
|
||||||
|
if ((map.get("model_description") != null)) {
|
||||||
public String getPlatformVersion() {
|
this.setModelDescription(row.getStringColumn("model_description"));
|
||||||
return platformVersion;
|
}
|
||||||
}
|
if ((map.get("manufacturer_url") != null)) {
|
||||||
|
this.setManufacturerUrl(row.getStringColumn("manufacturer_url"));
|
||||||
public void setPlatformVersion(String platformVersion) {
|
}
|
||||||
this.platformVersion = platformVersion;
|
if ((map.get("manufacturer_name") != null)) {
|
||||||
}
|
this.setManufacturerName(row.getStringColumn("manufacturer_name"));
|
||||||
|
}
|
||||||
public String getFirmwarePass() {
|
if ((map.get("manufacturer_date") != null)) {
|
||||||
return firmwarePass;
|
this.setManufacturerDate(row.getStringColumn("manufacturer_date"));
|
||||||
}
|
}
|
||||||
|
if (map.get("certification_region") != null) {
|
||||||
public void setFirmwarePass(String firmwarePass) {
|
this.setCertificationRegion(row.getStringColumn("certification_region"));
|
||||||
this.firmwarePass = firmwarePass;
|
}
|
||||||
}
|
if (map.get("version_matrix") != null) {
|
||||||
|
this.setVersionMatrix(row.getMapColumn("version_matrix"));
|
||||||
public int getUpgradeTimer() {
|
}
|
||||||
return upgradeTimer;
|
if ((map.get("firmware_version") != null) && map.get("firmware_version").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setFirmwareVersion(row.getStringColumn("firmware_version"));
|
||||||
|
}
|
||||||
public void setUpgradeTimer(int upgradeTimer) {
|
if ((map.get("firmware_url") != null) && map.get("firmware_url").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
this.upgradeTimer = upgradeTimer;
|
this.setFirmwareUrl(row.getStringColumn("firmware_url"));
|
||||||
}
|
}
|
||||||
|
if ((map.get("_uuid") != null) && map.get("_uuid").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
public int getMaxBackoff() {
|
this.setVersion(row.getUuidColumn("_uuid"));
|
||||||
return maxBackoff;
|
}
|
||||||
}
|
if ((map.get("upgrade_dl_timer") != null) && map.get("upgrade_dl_timer").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setUpgradeDlTimer(row.getIntegerColumn("upgrade_dl_timer").intValue());
|
||||||
public void setMaxBackoff(int maxBackoff) {
|
}
|
||||||
this.maxBackoff = maxBackoff;
|
if ((map.get("platform_version") != null) && map.get("platform_version").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setPlatformVersion(row.getStringColumn("platform_version"));
|
||||||
|
}
|
||||||
public Map<String, String> getLedConfig() {
|
if ((map.get("firmware_pass") != null) && map.get("firmware_pass").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
return ledConfig;
|
this.setFirmwarePass(row.getStringColumn("firmware_pass"));
|
||||||
}
|
}
|
||||||
|
if ((map.get("upgrade_timer") != null) && map.get("upgrade_timer").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
public void setLedConfig(Map<String, String> ledConfig) {
|
this.setUpgradeTimer(row.getIntegerColumn("upgrade_timer").intValue());
|
||||||
this.ledConfig = ledConfig;
|
}
|
||||||
}
|
if ((map.get("max_backoff") != null) && map.get("max_backoff").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setMaxBackoff(row.getIntegerColumn("max_backoff").intValue());
|
||||||
public String getRedirectorAddr() {
|
}
|
||||||
return redirectorAddr;
|
if (map.get("led_config") != null) {
|
||||||
}
|
this.setLedConfig(row.getMapColumn("led_config"));
|
||||||
|
}
|
||||||
public void setRedirectorAddr(String redirectorAddr) {
|
if ((map.get("redirector_addr") != null) && map.get("redirector_addr").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
this.redirectorAddr = redirectorAddr;
|
this.setRedirectorAddr(row.getStringColumn("redirector_addr"));
|
||||||
}
|
}
|
||||||
|
if ((map.get("serial_number") != null) && map.get("serial_number").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
public Map<String, String> getMqttHeaders() {
|
this.setSerialNumber(row.getStringColumn("serial_number"));
|
||||||
return mqttHeaders;
|
}
|
||||||
}
|
if ((map.get("_version") != null) && map.get("_version").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setVersion(row.getUuidColumn("_version"));
|
||||||
public void setMqttHeaders(Map<String, String> mqttHeaders) {
|
}
|
||||||
this.mqttHeaders = mqttHeaders;
|
this.setUpgradeStatus(row.getIntegerColumn("upgrade_status").intValue());
|
||||||
}
|
if ((map.get("device_mode") != null) && map.get("device_mode").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setDeviceMode(row.getStringColumn("device_mode"));
|
||||||
public String getSerialNumber() {
|
}
|
||||||
return serialNumber;
|
if ((map.get("min_backoff") != null) && map.get("min_backoff").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setMinBackoff(row.getIntegerColumn("min_backoff").intValue());
|
||||||
|
}
|
||||||
public void setSerialNumber(String serialNumber) {
|
if ((map.get("revision") != null) && map.get("revision").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
this.serialNumber = serialNumber;
|
this.setRevision(row.getStringColumn("revision"));
|
||||||
}
|
}
|
||||||
|
if ((map.get("manager_addr") != null) && map.get("manager_addr").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
public int getUpgradeStatus() {
|
this.setManagerAddr(row.getStringColumn("manager_addr"));
|
||||||
return upgradeStatus;
|
}
|
||||||
}
|
if ((map.get("factory_reset") != null) && map.get("factory_reset").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
|
this.setFactoryReset(row.getBooleanColumn("factory_reset"));
|
||||||
public void setUpgradeStatus(int upgradeStatus) {
|
}
|
||||||
this.upgradeStatus = upgradeStatus;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getDeviceMode() {
|
|
||||||
return deviceMode;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDeviceMode(String deviceMode) {
|
|
||||||
this.deviceMode = deviceMode;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getMinBackoff() {
|
|
||||||
return minBackoff;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setMinBackoff(int minBackoff) {
|
|
||||||
this.minBackoff = minBackoff;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Map<String, String> getMqttTopics() {
|
|
||||||
return mqttTopics;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setMqttTopics(Map<String, String> mqttTopics) {
|
|
||||||
this.mqttTopics = mqttTopics;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getRevision() {
|
|
||||||
return revision;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setRevision(String revision) {
|
|
||||||
this.revision = revision;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getManagerAddr() {
|
|
||||||
return managerAddr;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setManagerAddr(String managerAddr) {
|
|
||||||
this.managerAddr = managerAddr;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isFactoryReset() {
|
|
||||||
return factoryReset;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setFactoryReset(boolean factoryReset) {
|
|
||||||
this.factoryReset = factoryReset;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static long getSerialversionuid() {
|
|
||||||
return serialVersionUID;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Uuid get_uuid() {
|
public Uuid get_uuid() {
|
||||||
return _uuid;
|
return _uuid;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void set_uuid(Uuid _uuid) {
|
public String getDeviceMode() {
|
||||||
this._uuid = _uuid;
|
return deviceMode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getFirmwarePass() {
|
||||||
|
return firmwarePass;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getFirmwareUrl() {
|
||||||
|
return firmwareUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getFirmwareVersion() {
|
||||||
|
return firmwareVersion;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<String, String> getLedConfig() {
|
||||||
|
return ledConfig;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getManagerAddr() {
|
||||||
|
return managerAddr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getMaxBackoff() {
|
||||||
|
return maxBackoff;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getMinBackoff() {
|
||||||
|
return minBackoff;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getModel() {
|
||||||
|
return model;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<String, String> getMqttHeaders() {
|
||||||
|
return mqttHeaders;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<Object, Object> getMqttSettings() {
|
||||||
|
return mqttSettings;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<String, String> getMqttTopics() {
|
||||||
|
return mqttTopics;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPlatformVersion() {
|
||||||
|
return platformVersion;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getRedirectorAddr() {
|
||||||
|
return redirectorAddr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getRevision() {
|
||||||
|
return revision;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSerialNumber() {
|
||||||
|
return serialNumber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSkuNumber() {
|
||||||
|
return skuNumber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getUpgradeDlTimer() {
|
||||||
|
return upgradeDlTimer;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getUpgradeStatus() {
|
||||||
|
return upgradeStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getUpgradeTimer() {
|
||||||
|
return upgradeTimer;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Uuid getVersion() {
|
public Uuid getVersion() {
|
||||||
return version;
|
return version;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Map<String, String> getVersionMatrix() {
|
||||||
|
return versionMatrix;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isFactoryReset() {
|
||||||
|
return factoryReset;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getReferenceDesign() {
|
||||||
|
return referenceDesign;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setReferenceDesign(String referenceDesign) {
|
||||||
|
this.referenceDesign = referenceDesign;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<String, String> getQrCode() {
|
||||||
|
return qrCode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setQrCode(Map<String, String> qrCode) {
|
||||||
|
this.qrCode = qrCode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getModelDescription() {
|
||||||
|
return modelDescription;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setModelDescription(String modelDescription) {
|
||||||
|
this.modelDescription = modelDescription;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getManufacturerUrl() {
|
||||||
|
return manufacturerUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setManufacturerUrl(String manufacturerUrl) {
|
||||||
|
this.manufacturerUrl = manufacturerUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getManufacturerName() {
|
||||||
|
return manufacturerName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setManufacturerName(String manufacturerName) {
|
||||||
|
this.manufacturerName = manufacturerName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getManufacturerDate() {
|
||||||
|
return manufacturerDate;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setManufacturerDate(String manufacturerDate) {
|
||||||
|
this.manufacturerDate = manufacturerDate;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCertificationRegion() {
|
||||||
|
return certificationRegion;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCertificationRegion(String certificationRegion) {
|
||||||
|
this.certificationRegion = certificationRegion;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void set_uuid(Uuid _uuid) {
|
||||||
|
this._uuid = _uuid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDeviceMode(String deviceMode) {
|
||||||
|
this.deviceMode = deviceMode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFactoryReset(boolean factoryReset) {
|
||||||
|
this.factoryReset = factoryReset;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFirmwarePass(String firmwarePass) {
|
||||||
|
this.firmwarePass = firmwarePass;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFirmwareUrl(String firmwareUrl) {
|
||||||
|
this.firmwareUrl = firmwareUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFirmwareVersion(String firmwareVersion) {
|
||||||
|
this.firmwareVersion = firmwareVersion;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(String id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLedConfig(Map<String, String> ledConfig) {
|
||||||
|
this.ledConfig = ledConfig;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setManagerAddr(String managerAddr) {
|
||||||
|
this.managerAddr = managerAddr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxBackoff(int maxBackoff) {
|
||||||
|
this.maxBackoff = maxBackoff;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinBackoff(int minBackoff) {
|
||||||
|
this.minBackoff = minBackoff;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setModel(String model) {
|
||||||
|
this.model = model;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMqttHeaders(Map<String, String> mqttHeaders) {
|
||||||
|
this.mqttHeaders = mqttHeaders;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMqttSettings(Map<Object, Object> map) {
|
||||||
|
this.mqttSettings = map;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMqttTopics(Map<String, String> mqttTopics) {
|
||||||
|
this.mqttTopics = mqttTopics;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPlatformVersion(String platformVersion) {
|
||||||
|
this.platformVersion = platformVersion;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRedirectorAddr(String redirectorAddr) {
|
||||||
|
this.redirectorAddr = redirectorAddr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRevision(String revision) {
|
||||||
|
this.revision = revision;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSerialNumber(String serialNumber) {
|
||||||
|
this.serialNumber = serialNumber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSkuNumber(String skuNumber) {
|
||||||
|
this.skuNumber = skuNumber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUpgradeDlTimer(int upgradeDlTimer) {
|
||||||
|
this.upgradeDlTimer = upgradeDlTimer;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUpgradeStatus(int upgradeStatus) {
|
||||||
|
this.upgradeStatus = upgradeStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUpgradeTimer(int upgradeTimer) {
|
||||||
|
this.upgradeTimer = upgradeTimer;
|
||||||
|
}
|
||||||
|
|
||||||
public void setVersion(Uuid version) {
|
public void setVersion(Uuid version) {
|
||||||
this.version = version;
|
this.version = version;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setVersionMatrix(Map<String, String> versionMatrix) {
|
||||||
|
this.versionMatrix = versionMatrix;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,22 +1,28 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
package com.telecominfraproject.wlan.opensync.external.integration.models;
|
||||||
|
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.UUID;
|
|
||||||
|
|
||||||
import com.telecominfraproject.wlan.core.model.json.BaseJsonModel;
|
import com.vmware.ovsdb.protocol.operation.notation.Row;
|
||||||
import com.vmware.ovsdb.protocol.operation.notation.Uuid;
|
import com.vmware.ovsdb.protocol.operation.notation.Uuid;
|
||||||
|
import com.vmware.ovsdb.protocol.operation.notation.Value;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author mikehansen
|
* @author mikehansen
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class OpensyncWifiAssociatedClients extends BaseJsonModel {
|
public class OpensyncWifiAssociatedClients extends OpensyncAPBase {
|
||||||
|
|
||||||
private static final long serialVersionUID = -7088651136971662138L;
|
private static final long serialVersionUID = -7088651136971662138L;
|
||||||
|
|
||||||
|
public static long getSerialversionuid() {
|
||||||
|
return serialVersionUID;
|
||||||
|
}
|
||||||
|
|
||||||
public String keyId;
|
public String keyId;
|
||||||
public String mac;
|
public String mac;
|
||||||
public String state;
|
public String state;
|
||||||
@@ -25,80 +31,107 @@ public class OpensyncWifiAssociatedClients extends BaseJsonModel {
|
|||||||
public String kick;
|
public String kick;
|
||||||
public String oftag;
|
public String oftag;
|
||||||
public Uuid _uuid;
|
public Uuid _uuid;
|
||||||
|
|
||||||
public Uuid version;
|
public Uuid version;
|
||||||
|
|
||||||
public String getKeyId() {
|
public OpensyncWifiAssociatedClients() {
|
||||||
return keyId;
|
capabilities = new HashSet<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setKeyId(String keyId) {
|
public OpensyncWifiAssociatedClients(Row row) {
|
||||||
this.keyId = keyId;
|
this();
|
||||||
}
|
|
||||||
|
|
||||||
public String getMac() {
|
Map<String, Value> map = row.getColumns();
|
||||||
return mac;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setMac(String mac) {
|
if ((map.get("mac") != null)
|
||||||
this.mac = mac;
|
&& map.get("mac").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
}
|
this.setMac(row.getStringColumn("mac"));
|
||||||
|
}
|
||||||
public String getState() {
|
if (row.getSetColumn("capabilities") != null) {
|
||||||
return state;
|
this.setCapabilities(row.getSetColumn("capabilities"));
|
||||||
}
|
}
|
||||||
|
if ((map.get("state") != null)
|
||||||
public void setState(String state) {
|
&& map.get("state").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
this.state = state;
|
this.setState(row.getStringColumn("state"));
|
||||||
}
|
}
|
||||||
|
if ((map.get("_version") != null)
|
||||||
public Set<String> getCapabilities() {
|
&& map.get("_version").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
return capabilities;
|
this.setVersion(row.getUuidColumn("_version"));
|
||||||
}
|
}
|
||||||
|
if ((map.get("_uuid") != null)
|
||||||
public void setCapabilities(Set<String> set) {
|
&& map.get("_uuid").getClass().equals(com.vmware.ovsdb.protocol.operation.notation.Atom.class)) {
|
||||||
this.capabilities = set;
|
this.setVersion(row.getUuidColumn("_uuid"));
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getUapsd() {
|
|
||||||
return uapsd;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setUapsd(int uapsd) {
|
|
||||||
this.uapsd = uapsd;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getKick() {
|
|
||||||
return kick;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setKick(String kick) {
|
|
||||||
this.kick = kick;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getOftag() {
|
|
||||||
return oftag;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setOftag(String oftag) {
|
|
||||||
this.oftag = oftag;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static long getSerialversionuid() {
|
|
||||||
return serialVersionUID;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Uuid get_uuid() {
|
public Uuid get_uuid() {
|
||||||
return _uuid;
|
return _uuid;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void set_uuid(Uuid _uuid) {
|
public Set<String> getCapabilities() {
|
||||||
this._uuid = _uuid;
|
return capabilities;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getKeyId() {
|
||||||
|
return keyId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getKick() {
|
||||||
|
return kick;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMac() {
|
||||||
|
return mac;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getOftag() {
|
||||||
|
return oftag;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getState() {
|
||||||
|
return state;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getUapsd() {
|
||||||
|
return uapsd;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Uuid getVersion() {
|
public Uuid getVersion() {
|
||||||
return version;
|
return version;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void set_uuid(Uuid _uuid) {
|
||||||
|
this._uuid = _uuid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCapabilities(Set<String> set) {
|
||||||
|
this.capabilities = set;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setKeyId(String keyId) {
|
||||||
|
this.keyId = keyId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setKick(String kick) {
|
||||||
|
this.kick = kick;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMac(String mac) {
|
||||||
|
this.mac = mac;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOftag(String oftag) {
|
||||||
|
this.oftag = oftag;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setState(String state) {
|
||||||
|
this.state = state;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUapsd(int uapsd) {
|
||||||
|
this.uapsd = uapsd;
|
||||||
|
}
|
||||||
|
|
||||||
public void setVersion(Uuid version) {
|
public void setVersion(Uuid version) {
|
||||||
this.version = version;
|
this.version = version;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,14 @@
|
|||||||
|
|
||||||
|
package com.telecominfraproject.wlan.opensync.external.integration.utils;
|
||||||
|
|
||||||
|
import com.telecominfraproject.wlan.systemevent.models.SystemEvent;
|
||||||
|
|
||||||
|
import sts.OpensyncStats.Report;
|
||||||
|
|
||||||
|
public interface StatsPublisherInterface {
|
||||||
|
|
||||||
|
void processMqttMessage(String topic, Report report);
|
||||||
|
|
||||||
|
void publishSystemEventFromTableStateMonitor(SystemEvent event);
|
||||||
|
|
||||||
|
}
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<artifactId>tip-wlan-cloud-root-pom</artifactId>
|
<artifactId>tip-wlan-cloud-root-pom</artifactId>
|
||||||
<version>0.0.1-SNAPSHOT</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
<relativePath>../../wlan-cloud-root</relativePath>
|
<relativePath>../../wlan-cloud-root</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>opensync-ext-static</artifactId>
|
<artifactId>opensync-ext-static</artifactId>
|
||||||
@@ -12,8 +12,8 @@
|
|||||||
<dependencies>
|
<dependencies>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<artifactId>opensync-ext-interface</artifactId>
|
<artifactId>opensync-gateway</artifactId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
</project>
|
</project>
|
||||||
|
|||||||
@@ -1,7 +1,9 @@
|
|||||||
package com.telecominfraproject.wlan.opensync.external.integration;
|
package com.telecominfraproject.wlan.opensync.external.integration;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
import javax.annotation.PostConstruct;
|
import javax.annotation.PostConstruct;
|
||||||
|
|
||||||
@@ -29,139 +31,185 @@ import wc.stats.IpDnsTelemetry.WCStatsReport;
|
|||||||
@Component
|
@Component
|
||||||
public class OpensyncExternalIntegrationSimple implements OpensyncExternalIntegrationInterface {
|
public class OpensyncExternalIntegrationSimple implements OpensyncExternalIntegrationInterface {
|
||||||
|
|
||||||
private static final Logger LOG = LoggerFactory.getLogger(OpensyncExternalIntegrationSimple.class);
|
private static final Logger LOG = LoggerFactory.getLogger(OpensyncExternalIntegrationSimple.class);
|
||||||
|
|
||||||
@Value("${connectus.ovsdb.customerEquipmentFileName:/app/config/EquipmentExample.json}")
|
@Value("${tip.wlan.ovsdb.customerEquipmentFileName:/app/config/EquipmentExample.json}")
|
||||||
private String customerEquipmentFileName;
|
private String customerEquipmentFileName;
|
||||||
|
|
||||||
@Value("${connectus.ovsdb.apProfileFileName:/app/config/ProfileAPExample.json}")
|
@Value("${tip.wlan.ovsdb.apProfileFileName:/app/config/ProfileAPExample.json}")
|
||||||
private String apProfileFileName;
|
private String apProfileFileName;
|
||||||
|
|
||||||
@Value("${connectus.ovsdb.ssidProfileFileName:/app/config/ProfileSsid.json}")
|
@Value("${tip.wlan.ovsdb.rfProfileFileName:/app/config/ProfileRf.json}")
|
||||||
private String ssidProfileFileName;
|
private String rfProfileFileName;
|
||||||
|
|
||||||
@Value("${connectus.ovsdb.radiusProfileFileName:/app/config/ProfileRadius.json}")
|
@Value("${tip.wlan.ovsdb.ssidProfileFileName:/app/config/ProfileSsid.json}")
|
||||||
private String radiusProfileFileName;
|
private String ssidProfileFileName;
|
||||||
|
|
||||||
@Value("${connectus.ovsdb.locationFileName:/app/config/LocationBuildingExample.json}")
|
@Value("${tip.wlan.ovsdb.radiusProfileFileName:/app/config/ProfileRadius.json}")
|
||||||
private String locationFileName;
|
private String radiusProfileFileName;
|
||||||
|
|
||||||
private String serialNumber = "";
|
@Value("${tip.wlan.ovsdb.locationFileName:/app/config/LocationBuildingExample.json}")
|
||||||
|
private String locationFileName;
|
||||||
|
|
||||||
@PostConstruct
|
private String serialNumber = "";
|
||||||
private void postCreate() {
|
|
||||||
LOG.info("Using Static integration");
|
|
||||||
}
|
|
||||||
|
|
||||||
public void apConnected(String apId, ConnectNodeInfo connectNodeInfo) {
|
@PostConstruct
|
||||||
serialNumber = connectNodeInfo.serialNumber;
|
private void postCreate() {
|
||||||
LOG.info("AP {} got connected to the gateway", apId);
|
LOG.info("Using Static integration");
|
||||||
LOG.info("ConnectNodeInfo {}", connectNodeInfo);
|
}
|
||||||
|
|
||||||
}
|
public void apConnected(String apId, ConnectNodeInfo connectNodeInfo) {
|
||||||
|
serialNumber = connectNodeInfo.serialNumber;
|
||||||
|
LOG.info("AP {} got connected to the gateway", apId);
|
||||||
|
LOG.info("ConnectNodeInfo {}", connectNodeInfo);
|
||||||
|
}
|
||||||
|
|
||||||
public void apDisconnected(String apId) {
|
public void apDisconnected(String apId) {
|
||||||
LOG.info("AP {} got disconnected from the gateway", apId);
|
LOG.info("AP {} got disconnected from the gateway", apId);
|
||||||
}
|
}
|
||||||
|
|
||||||
public OpensyncAPConfig getApConfig(String apId) {
|
public OpensyncAPConfig getApConfig(String apId) {
|
||||||
LOG.info("Retrieving config for AP {}", apId);
|
LOG.info("Retrieving config for AP {}", apId);
|
||||||
OpensyncAPConfig ret = null;
|
OpensyncAPConfig ret = null;
|
||||||
|
try {
|
||||||
|
Equipment equipment = Equipment.fromFile(customerEquipmentFileName, Equipment.class);
|
||||||
|
equipment.setInventoryId(apId);
|
||||||
|
equipment.setName(apId);
|
||||||
|
equipment.setSerial(serialNumber);
|
||||||
|
com.telecominfraproject.wlan.profile.models.Profile apProfile = com.telecominfraproject.wlan.profile.models.Profile
|
||||||
|
.fromFile(apProfileFileName, com.telecominfraproject.wlan.profile.models.Profile.class);
|
||||||
|
com.telecominfraproject.wlan.profile.models.Profile rfProfile = com.telecominfraproject.wlan.profile.models.Profile
|
||||||
|
.fromFile(rfProfileFileName, com.telecominfraproject.wlan.profile.models.Profile.class);
|
||||||
|
apProfile.getChildProfileIds().add(rfProfile.getId());
|
||||||
|
List<com.telecominfraproject.wlan.profile.models.Profile> ssidProfiles = com.telecominfraproject.wlan.profile.models.Profile
|
||||||
|
.listFromFile(ssidProfileFileName, com.telecominfraproject.wlan.profile.models.Profile.class);
|
||||||
|
ssidProfiles.stream().forEach(p -> apProfile.getChildProfileIds().add(p.getId()));
|
||||||
|
|
||||||
try {
|
equipment.setProfileId(apProfile.getId());
|
||||||
|
Location location = Location.fromFile(locationFileName, Location.class);
|
||||||
|
equipment.setLocationId(location.getId());
|
||||||
|
ret = new OpensyncAPConfig();
|
||||||
|
ret.setCustomerEquipment(equipment);
|
||||||
|
ret.setApProfile(apProfile);
|
||||||
|
ret.setRfProfile(rfProfile);
|
||||||
|
ret.setSsidProfile(ssidProfiles);
|
||||||
|
File radiusFile = new File(radiusProfileFileName);
|
||||||
|
if (radiusFile.exists()) {
|
||||||
|
List<com.telecominfraproject.wlan.profile.models.Profile> radiusProfiles = com.telecominfraproject.wlan.profile.models.Profile
|
||||||
|
.listFromFile(radiusProfileFileName, com.telecominfraproject.wlan.profile.models.Profile.class);
|
||||||
|
ret.setRadiusProfiles(radiusProfiles);
|
||||||
|
} else {
|
||||||
|
LOG.debug("No radius file present at {}", radiusFile.getAbsolutePath());
|
||||||
|
}
|
||||||
|
ret.setEquipmentLocation(location);
|
||||||
|
} catch (IOException e) {
|
||||||
|
LOG.error("Cannot read config file", e);
|
||||||
|
}
|
||||||
|
LOG.debug("Config content : {}", ret);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
Equipment equipment = Equipment.fromFile(customerEquipmentFileName, Equipment.class);
|
public void processMqttMessage(String topic, Report report) {
|
||||||
equipment.setInventoryId(apId);
|
LOG.info("Received OpensyncStatsReport on topic {} for ap {}\n{}", topic, report.getNodeID(), report);
|
||||||
equipment.setName(apId);
|
|
||||||
|
|
||||||
equipment.setSerial(serialNumber);
|
report.getVideoVoiceReportList().stream().forEach(v -> {
|
||||||
|
LOG.info("VideoVoiceReport {}", v);
|
||||||
|
});
|
||||||
|
report.getEventReportList().stream().forEach(e -> {
|
||||||
|
LOG.info("Received EventReport {}", e);
|
||||||
|
});
|
||||||
|
|
||||||
com.telecominfraproject.wlan.profile.models.Profile apProfile = com.telecominfraproject.wlan.profile.models.Profile
|
}
|
||||||
.fromFile(apProfileFileName, com.telecominfraproject.wlan.profile.models.Profile.class);
|
|
||||||
|
|
||||||
List<com.telecominfraproject.wlan.profile.models.Profile> ssidProfiles = com.telecominfraproject.wlan.profile.models.Profile
|
public void processMqttMessage(String topic, FlowReport flowReport) {
|
||||||
.listFromFile(ssidProfileFileName, com.telecominfraproject.wlan.profile.models.Profile.class);
|
LOG.info("Received FlowReport on topic {} for ap {}", topic, flowReport.getObservationPoint().getNodeId());
|
||||||
|
}
|
||||||
|
|
||||||
ssidProfiles.stream().forEach(p -> apProfile.getChildProfileIds().add(p.getId()));
|
public void processMqttMessage(String topic, WCStatsReport wcStatsReport) {
|
||||||
|
LOG.info("Received WCStatsReport on topic {} for ap {}", topic,
|
||||||
|
wcStatsReport.getObservationPoint().getNodeId());
|
||||||
|
}
|
||||||
|
|
||||||
List<com.telecominfraproject.wlan.profile.models.Profile> radiusProfiles = com.telecominfraproject.wlan.profile.models.Profile
|
@Override
|
||||||
.listFromFile(radiusProfileFileName, com.telecominfraproject.wlan.profile.models.Profile.class);
|
public void wifiVIFStateDbTableUpdate(List<OpensyncAPVIFState> vifStateTables, String apId) {
|
||||||
|
LOG.info("Received table state update {} for ap {}", vifStateTables, apId);
|
||||||
|
}
|
||||||
|
|
||||||
equipment.setProfileId(apProfile.getId());
|
@Override
|
||||||
|
public void wifiRadioStatusDbTableUpdate(List<OpensyncAPRadioState> radioStateTable, String apId) {
|
||||||
|
LOG.info("Received table state update {} for ap {}", radioStateTable, apId);
|
||||||
|
|
||||||
Location location = Location.fromFile(locationFileName, Location.class);
|
}
|
||||||
|
|
||||||
equipment.setLocationId(location.getId());
|
@Override
|
||||||
|
public void wifiInetStateDbTableUpdate(List<OpensyncAPInetState> inetStateTable, String apId) {
|
||||||
|
LOG.info("Received table state update {} for ap {}", inetStateTable, apId);
|
||||||
|
|
||||||
ret = new OpensyncAPConfig();
|
}
|
||||||
ret.setCustomerEquipment(equipment);
|
|
||||||
ret.setApProfile(apProfile);
|
|
||||||
ret.setSsidProfile(ssidProfiles);
|
|
||||||
ret.setRadiusProfiles(radiusProfiles);
|
|
||||||
ret.setEquipmentLocation(location);
|
|
||||||
|
|
||||||
} catch (IOException e) {
|
@Override
|
||||||
LOG.error("Cannot read config file", e);
|
public void wifiAssociatedClientsDbTableUpdate(List<OpensyncWifiAssociatedClients> wifiAssociatedClients,
|
||||||
}
|
String apId) {
|
||||||
|
LOG.info("Received table state update {} for ap {}", wifiAssociatedClients, apId);
|
||||||
|
|
||||||
LOG.debug("Config content : {}", ret);
|
}
|
||||||
|
|
||||||
return ret;
|
@Override
|
||||||
}
|
public void awlanNodeDbTableUpdate(OpensyncAWLANNode opensyncAPState, String apId) {
|
||||||
|
LOG.info("Received table state update {} for ap {}", opensyncAPState, apId);
|
||||||
|
|
||||||
public void processMqttMessage(String topic, Report report) {
|
}
|
||||||
LOG.info("Received PlumeStatsReport on topic {} for ap {}\n{}", topic, report.getNodeID(), report);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void processMqttMessage(String topic, FlowReport flowReport) {
|
@Override
|
||||||
LOG.info("Received flowReport on topic {} for ap {}", topic, flowReport.getObservationPoint().getNodeId());
|
public void wifiVIFStateDbTableDelete(List<OpensyncAPVIFState> vifStateTables, String apId) {
|
||||||
}
|
LOG.info("Received table delete {} for ap {}", vifStateTables, apId);
|
||||||
|
|
||||||
public void processMqttMessage(String topic, WCStatsReport wcStatsReport) {
|
}
|
||||||
LOG.info("Received wcStatsReport on topic {} for ap {}", topic,
|
|
||||||
wcStatsReport.getObservationPoint().getNodeId());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void wifiVIFStateDbTableUpdate(List<OpensyncAPVIFState> vifStateTables, String apId) {
|
public void wifiAssociatedClientsDbTableDelete(String deletedClientMac, String apId) {
|
||||||
LOG.info("Received table state update {} for ap {}", vifStateTables, apId);
|
LOG.info("Received Wifi_Associated_Clients row delete {} for ap {}", deletedClientMac, apId);
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
}
|
||||||
public void wifiRadioStatusDbTableUpdate(List<OpensyncAPRadioState> radioStateTable, String apId) {
|
|
||||||
LOG.info("Received table state update {} for ap {}", radioStateTable, apId);
|
|
||||||
|
|
||||||
}
|
@Override
|
||||||
|
public void wifiInetStateDbTableDelete(List<OpensyncAPInetState> inetStateTables, String apId) {
|
||||||
|
LOG.info("Received Wifi_VIF_State row(s) delete {} for ap {}", inetStateTables, apId);
|
||||||
|
|
||||||
@Override
|
}
|
||||||
public void wifiInetStateDbTableUpdate(List<OpensyncAPInetState> inetStateTable, String apId) {
|
|
||||||
LOG.info("Received table state update {} for ap {}", inetStateTable, apId);
|
|
||||||
|
|
||||||
}
|
@Override
|
||||||
|
public void dhcpLeasedIpDbTableUpdate(List<Map<String, String>> dhcpAttributes, String apId,
|
||||||
|
RowUpdateOperation rowUpdateOperation) {
|
||||||
|
LOG.info("Received DHCP_Leased_IP row(s) {} rowUpdateOperation {} for ap {}", dhcpAttributes,
|
||||||
|
rowUpdateOperation, apId);
|
||||||
|
|
||||||
@Override
|
}
|
||||||
public void wifiAssociatedClientsDbTableUpdate(List<OpensyncWifiAssociatedClients> wifiAssociatedClients,
|
|
||||||
String apId) {
|
|
||||||
LOG.info("Received table state update {} for ap {}", wifiAssociatedClients, apId);
|
|
||||||
|
|
||||||
}
|
@Override
|
||||||
|
public void commandStateDbTableUpdate(List<Map<String, String>> commandStateAttributes, String apId,
|
||||||
|
RowUpdateOperation rowUpdateOperation) {
|
||||||
|
LOG.info("Received Command_State row(s) {} rowUpdateOperation {} for ap {}", commandStateAttributes,
|
||||||
|
rowUpdateOperation, apId);
|
||||||
|
|
||||||
@Override
|
}
|
||||||
public void awlanNodeDbTableUpdate(OpensyncAWLANNode opensyncAPState, String apId) {
|
|
||||||
LOG.info("Received table state update {} for ap {}", opensyncAPState, apId);
|
|
||||||
|
|
||||||
}
|
@Override
|
||||||
|
public void clearEquipmentStatus(String apId) {
|
||||||
|
LOG.info("Received clearEquipmentStatus for ap {}", apId);
|
||||||
|
|
||||||
@Override
|
}
|
||||||
public void wifiVIFStateDbTableDelete(List<OpensyncAPVIFState> vifStateTables, String apId) {
|
|
||||||
LOG.info("Received table delete {} for ap {}", vifStateTables, apId);
|
|
||||||
|
|
||||||
}
|
@Override
|
||||||
|
public void apcStateDbTableUpdate(Map<String, String> apcStateAttributes, String apId,
|
||||||
|
RowUpdateOperation rowUpdateOperation) {
|
||||||
|
LOG.info("Received APC_State {} for operation {}", apcStateAttributes, rowUpdateOperation);
|
||||||
|
|
||||||
@Override
|
}
|
||||||
public void wifiAssociatedClientsDbTableDelete(String deletedClientMac, String apId) {
|
|
||||||
LOG.info("Received Wifi_Associated_Clients row delete {} for ap {}", deletedClientMac, apId);
|
|
||||||
|
|
||||||
}
|
@Override
|
||||||
|
public void nodeStateDbTableUpdate(List<Map<String, String>> nodeStateAttributes, String apId) {
|
||||||
|
LOG.info("nodeStateDbTableUpdate for AP {}", apId);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,293 +1,472 @@
|
|||||||
{
|
{
|
||||||
"model_type": "Equipment",
|
"model_type": "Equipment",
|
||||||
"id": 51,
|
"id": 1,
|
||||||
"customerId": 2,
|
"customerId": 2,
|
||||||
"profileId": 5,
|
"profileId": 8,
|
||||||
"locationId": 8,
|
"locationId": 8,
|
||||||
"equipmentType": "AP",
|
|
||||||
"inventoryId": "Test_Client_21P10C68818122",
|
|
||||||
"name": "Test_Client_21P10C68818122",
|
|
||||||
"details": {
|
|
||||||
"model_type": "ApElementConfiguration",
|
|
||||||
"equipmentModel": "EA8300-CA",
|
|
||||||
"elementConfigVersion": "AP-V1",
|
|
||||||
"equipmentType": "AP",
|
"equipmentType": "AP",
|
||||||
"deviceMode": "standaloneAP",
|
"inventoryId": "Open_AP_21P10C68818122",
|
||||||
"gettingIP": "dhcp",
|
"name": "Open_AP_21P10C68818122",
|
||||||
"staticIP": null,
|
"details": {
|
||||||
"staticIpMaskCidr": null,
|
"model_type": "ApElementConfiguration",
|
||||||
"staticIpGw": null,
|
"equipmentModel": "EA8300-CA",
|
||||||
"gettingDNS": "dhcp",
|
"elementConfigVersion": "AP-V1",
|
||||||
"staticDnsIp1": null,
|
"equipmentType": "AP",
|
||||||
"staticDnsIp2": null,
|
"deviceMode": "standaloneAP",
|
||||||
"peerInfoList": [],
|
"gettingIP": "dhcp",
|
||||||
"deviceName": "Default Device Name",
|
"staticIP": null,
|
||||||
"locationData": null,
|
"staticIpMaskCidr": null,
|
||||||
"locallyConfiguredMgmtVlan": 0,
|
"staticIpGw": null,
|
||||||
"locallyConfigured": false,
|
"gettingDNS": "dhcp",
|
||||||
"deploymentType": "CEILING",
|
"staticDnsIp1": null,
|
||||||
"syntheticClientEnabled": null,
|
"staticDnsIp2": null,
|
||||||
"frameReportThrottleEnabled": true,
|
"peerInfoList": [],
|
||||||
"antennaType": "OMNI",
|
"deviceName": "Open_AP_21P10C68818122",
|
||||||
"costSavingEventsEnabled": true,
|
"locationData": null,
|
||||||
"forwardMode": "BRIDGE",
|
"locallyConfiguredMgmtVlan": 0,
|
||||||
"radioMap": {
|
"locallyConfigured": false,
|
||||||
"is2dot4GHz": {
|
"deploymentType": "CEILING",
|
||||||
"model_type": "ElementRadioConfiguration",
|
"syntheticClientEnabled": null,
|
||||||
"radioType": "is2dot4GHz",
|
"frameReportThrottleEnabled": true,
|
||||||
"channelNumber": 6,
|
"antennaType": "OMNI",
|
||||||
"manualChannelNumber": 6,
|
"costSavingEventsEnabled": true,
|
||||||
"backupChannelNumber": 11,
|
"forwardMode": "BRIDGE",
|
||||||
"autoChannelSelection": false,
|
"radioMap": {
|
||||||
"channelBandwidth": "is20MHz",
|
"is5GHzU": {
|
||||||
"bannedChannels": [],
|
"model_type": "ElementRadioConfiguration",
|
||||||
"allowedChannels": [],
|
"radioType": "is5GHzU",
|
||||||
"rxCellSizeDb": {
|
"channelNumber": 149,
|
||||||
"model_type": "AutoOrManualValue",
|
"manualChannelNumber": 149,
|
||||||
"auto": true,
|
"backupChannelNumber": 157,
|
||||||
"value": -90
|
"manualBackupChannelNumber": 157,
|
||||||
|
"rxCellSizeDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"probeResponseThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"clientDisconnectThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"eirpTxPower": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": 18
|
||||||
|
},
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"bestAPSteerType": "both",
|
||||||
|
"deauthAttackDetection": null,
|
||||||
|
"allowedChannelsPowerLevels": [
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 161,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 100,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 132,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 165,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 104,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 136,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 108,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 140,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 112,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 144,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 116,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 149,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 153,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 157,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"is2dot4GHz": {
|
||||||
|
"model_type": "ElementRadioConfiguration",
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"channelNumber": 6,
|
||||||
|
"manualChannelNumber": 6,
|
||||||
|
"backupChannelNumber": 11,
|
||||||
|
"manualBackupChannelNumber": 11,
|
||||||
|
"rxCellSizeDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"probeResponseThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"clientDisconnectThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"eirpTxPower": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": 18
|
||||||
|
},
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"bestAPSteerType": "both",
|
||||||
|
"deauthAttackDetection": null,
|
||||||
|
"allowedChannelsPowerLevels": [
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 1,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 2,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 3,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 4,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 5,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 6,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 7,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 8,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 9,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 10,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 11,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"is5GHzL": {
|
||||||
|
"model_type": "ElementRadioConfiguration",
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"channelNumber": 36,
|
||||||
|
"manualChannelNumber": 36,
|
||||||
|
"backupChannelNumber": 44,
|
||||||
|
"manualBackupChannelNumber": 44,
|
||||||
|
"rxCellSizeDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"probeResponseThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"clientDisconnectThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"eirpTxPower": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": 18
|
||||||
|
},
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"bestAPSteerType": "both",
|
||||||
|
"deauthAttackDetection": null,
|
||||||
|
"allowedChannelsPowerLevels": [
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 52,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 36,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 56,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 40,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 60,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 44,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 64,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 48,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"probeResponseThresholdDb": {
|
"advancedRadioMap": {
|
||||||
"model_type": "AutoOrManualValue",
|
"is2dot4GHz": {
|
||||||
"auto": true,
|
"model_type": "RadioConfiguration",
|
||||||
"value": -90
|
"radioType": "is2dot4GHz",
|
||||||
},
|
"radioAdminState": "enabled",
|
||||||
"clientDisconnectThresholdDb": {
|
"fragmentationThresholdBytes": 2346,
|
||||||
"model_type": "AutoOrManualValue",
|
"uapsdState": "enabled",
|
||||||
"auto": true,
|
"stationIsolation": "disabled",
|
||||||
"value": -90
|
"multicastRate": {
|
||||||
},
|
"model_type": "SourceSelectionMulticast",
|
||||||
"eirpTxPower": {
|
"source": "profile",
|
||||||
"model_type": "AutoOrManualValue",
|
"value": "auto"
|
||||||
"auto": false,
|
},
|
||||||
"value": 32
|
"managementRate": {
|
||||||
},
|
"model_type": "SourceSelectionManagement",
|
||||||
"bestApEnabled": null,
|
"source": "profile",
|
||||||
"neighbouringListApConfig": {
|
"value": "auto"
|
||||||
"model_type": "NeighbouringAPListConfiguration",
|
},
|
||||||
"minSignal": -85,
|
"bestApSettings": {
|
||||||
"maxAps": 25
|
"model_type": "SourceSelectionSteering",
|
||||||
},
|
"source": "manual",
|
||||||
"minAutoCellSize": -80,
|
"value": {
|
||||||
"perimeterDetectionEnabled": true,
|
"model_type": "RadioBestApSettings",
|
||||||
"bestAPSteerType": "both",
|
"mlComputed": true,
|
||||||
"deauthAttackDetection": null,
|
"dropInSnrPercentage": 20,
|
||||||
"allowedChannelsPowerLevels": [],
|
"minLoadFactor": 50
|
||||||
"activeChannel": 6
|
}
|
||||||
},
|
},
|
||||||
"is5GHzU": {
|
"legacyBSSRate": "enabled",
|
||||||
"model_type": "ElementRadioConfiguration",
|
"dtimPeriod": 2,
|
||||||
"radioType": "is5GHzU",
|
"deauthAttackDetection": null
|
||||||
"channelNumber": 149,
|
},
|
||||||
"manualChannelNumber": 149,
|
"is5GHzU": {
|
||||||
"backupChannelNumber": 154,
|
"model_type": "RadioConfiguration",
|
||||||
"autoChannelSelection": false,
|
"radioType": "is5GHzU",
|
||||||
"channelBandwidth": "is80MHz",
|
"radioAdminState": "enabled",
|
||||||
"bannedChannels": [],
|
"fragmentationThresholdBytes": 2346,
|
||||||
"allowedChannels": [],
|
"uapsdState": "enabled",
|
||||||
"rxCellSizeDb": {
|
"stationIsolation": "disabled",
|
||||||
"model_type": "AutoOrManualValue",
|
"multicastRate": {
|
||||||
"auto": true,
|
"model_type": "SourceSelectionMulticast",
|
||||||
"value": -90
|
"source": "profile",
|
||||||
},
|
"value": "auto"
|
||||||
"probeResponseThresholdDb": {
|
},
|
||||||
"model_type": "AutoOrManualValue",
|
"managementRate": {
|
||||||
"auto": true,
|
"model_type": "SourceSelectionManagement",
|
||||||
"value": -90
|
"source": "profile",
|
||||||
},
|
"value": "auto"
|
||||||
"clientDisconnectThresholdDb": {
|
},
|
||||||
"model_type": "AutoOrManualValue",
|
"bestApSettings": {
|
||||||
"auto": true,
|
"model_type": "SourceSelectionSteering",
|
||||||
"value": -90
|
"source": "manual",
|
||||||
},
|
"value": {
|
||||||
"eirpTxPower": {
|
"model_type": "RadioBestApSettings",
|
||||||
"model_type": "AutoOrManualValue",
|
"mlComputed": true,
|
||||||
"auto": false,
|
"dropInSnrPercentage": 30,
|
||||||
"value": 32
|
"minLoadFactor": 40
|
||||||
},
|
}
|
||||||
"bestApEnabled": null,
|
},
|
||||||
"neighbouringListApConfig": {
|
"legacyBSSRate": "enabled",
|
||||||
"model_type": "NeighbouringAPListConfiguration",
|
"dtimPeriod": 2,
|
||||||
"minSignal": -85,
|
"deauthAttackDetection": null
|
||||||
"maxAps": 25
|
},
|
||||||
},
|
"is5GHzL": {
|
||||||
"minAutoCellSize": -80,
|
"model_type": "RadioConfiguration",
|
||||||
"perimeterDetectionEnabled": true,
|
"radioType": "is5GHzL",
|
||||||
"bestAPSteerType": "both",
|
"radioAdminState": "enabled",
|
||||||
"deauthAttackDetection": null,
|
"fragmentationThresholdBytes": 2346,
|
||||||
"allowedChannelsPowerLevels": [],
|
"uapsdState": "enabled",
|
||||||
"activeChannel": 149
|
"stationIsolation": "disabled",
|
||||||
},
|
"multicastRate": {
|
||||||
"is5GHzL": {
|
"model_type": "SourceSelectionMulticast",
|
||||||
"model_type": "ElementRadioConfiguration",
|
"source": "profile",
|
||||||
"radioType": "is5GHzL",
|
"value": "auto"
|
||||||
"channelNumber": 36,
|
},
|
||||||
"manualChannelNumber": 36,
|
"managementRate": {
|
||||||
"backupChannelNumber": 44,
|
"model_type": "SourceSelectionManagement",
|
||||||
"autoChannelSelection": false,
|
"source": "profile",
|
||||||
"channelBandwidth": "is80MHz",
|
"value": "auto"
|
||||||
"bannedChannels": [],
|
},
|
||||||
"allowedChannels": [],
|
"bestApSettings": {
|
||||||
"rxCellSizeDb": {
|
"model_type": "SourceSelectionSteering",
|
||||||
"model_type": "AutoOrManualValue",
|
"source": "manual",
|
||||||
"auto": true,
|
"value": {
|
||||||
"value": -90
|
"model_type": "RadioBestApSettings",
|
||||||
},
|
"mlComputed": true,
|
||||||
"probeResponseThresholdDb": {
|
"dropInSnrPercentage": 30,
|
||||||
"model_type": "AutoOrManualValue",
|
"minLoadFactor": 40
|
||||||
"auto": true,
|
}
|
||||||
"value": -90
|
},
|
||||||
},
|
"legacyBSSRate": "enabled",
|
||||||
"clientDisconnectThresholdDb": {
|
"dtimPeriod": 2,
|
||||||
"model_type": "AutoOrManualValue",
|
"deauthAttackDetection": null
|
||||||
"auto": true,
|
}
|
||||||
"value": -90
|
}
|
||||||
},
|
|
||||||
"eirpTxPower": {
|
|
||||||
"model_type": "AutoOrManualValue",
|
|
||||||
"auto": false,
|
|
||||||
"value": 32
|
|
||||||
},
|
|
||||||
"bestApEnabled": null,
|
|
||||||
"neighbouringListApConfig": {
|
|
||||||
"model_type": "NeighbouringAPListConfiguration",
|
|
||||||
"minSignal": -85,
|
|
||||||
"maxAps": 25
|
|
||||||
},
|
|
||||||
"minAutoCellSize": -80,
|
|
||||||
"perimeterDetectionEnabled": true,
|
|
||||||
"bestAPSteerType": "both",
|
|
||||||
"deauthAttackDetection": null,
|
|
||||||
"allowedChannelsPowerLevels": [],
|
|
||||||
"activeChannel": 36
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"advancedRadioMap": {
|
"latitude": null,
|
||||||
"is2dot4GHz": {
|
"longitude": null,
|
||||||
"model_type": "RadioConfiguration",
|
"baseMacAddress": {
|
||||||
"radioType": "is2dot4GHz",
|
"model_type": "MacAddress",
|
||||||
"radioAdminState": "enabled",
|
"address": "JPWi7y5T",
|
||||||
"fragmentationThresholdBytes": 2346,
|
"addressAsString": "24:f5:a2:ef:2e:53"
|
||||||
"rtsCtsThreshold": 65535,
|
},
|
||||||
"autoChannelSelection": "disabled",
|
"serial": "21P10C68818122",
|
||||||
"radioMode": "modeN",
|
"createdTimestamp": 1612285288821,
|
||||||
"mimoMode": "twoByTwo",
|
"lastModifiedTimestamp": 1612285293922
|
||||||
"wmmState": "enabled",
|
|
||||||
"uapsdState": "enabled",
|
|
||||||
"maxNumClients": 100,
|
|
||||||
"stationIsolation": "disabled",
|
|
||||||
"multicastRate": "auto",
|
|
||||||
"managementRate": "auto",
|
|
||||||
"activeScanSettings": {
|
|
||||||
"model_type": "ActiveScanSettings",
|
|
||||||
"enabled": true,
|
|
||||||
"scanFrequencySeconds": 10,
|
|
||||||
"scanDurationMillis": 65
|
|
||||||
},
|
|
||||||
"channelHopSettings": {
|
|
||||||
"model_type": "ChannelHopSettings",
|
|
||||||
"noiseFloorThresholdInDB": -75,
|
|
||||||
"noiseFloorThresholdTimeInSeconds": 180,
|
|
||||||
"nonWifiThresholdInPercentage": 50,
|
|
||||||
"nonWifiThresholdTimeInSeconds": 180,
|
|
||||||
"obssHopMode": "NON_WIFI"
|
|
||||||
},
|
|
||||||
"bestApSettings": {
|
|
||||||
"model_type": "RadioBestApSettings",
|
|
||||||
"mlComputed": true,
|
|
||||||
"dropInSnrPercentage": 20,
|
|
||||||
"minLoadFactor": 50
|
|
||||||
},
|
|
||||||
"forceScanDuringVoice": "disabled",
|
|
||||||
"legacyBSSRate": "enabled",
|
|
||||||
"beaconInterval": 100,
|
|
||||||
"deauthAttackDetection": null
|
|
||||||
},
|
|
||||||
"is5GHzU": {
|
|
||||||
"model_type": "RadioConfiguration",
|
|
||||||
"radioType": "is5GHzU",
|
|
||||||
"radioAdminState": "enabled",
|
|
||||||
"fragmentationThresholdBytes": 2346,
|
|
||||||
"rtsCtsThreshold": 65535,
|
|
||||||
"autoChannelSelection": "disabled",
|
|
||||||
"radioMode": "modeAC",
|
|
||||||
"mimoMode": "twoByTwo",
|
|
||||||
"wmmState": "enabled",
|
|
||||||
"uapsdState": "enabled",
|
|
||||||
"maxNumClients": 100,
|
|
||||||
"stationIsolation": "disabled",
|
|
||||||
"multicastRate": "auto",
|
|
||||||
"managementRate": "auto",
|
|
||||||
"activeScanSettings": {
|
|
||||||
"model_type": "ActiveScanSettings",
|
|
||||||
"enabled": true,
|
|
||||||
"scanFrequencySeconds": 10,
|
|
||||||
"scanDurationMillis": 65
|
|
||||||
},
|
|
||||||
"channelHopSettings": {
|
|
||||||
"model_type": "ChannelHopSettings",
|
|
||||||
"noiseFloorThresholdInDB": -75,
|
|
||||||
"noiseFloorThresholdTimeInSeconds": 180,
|
|
||||||
"nonWifiThresholdInPercentage": 50,
|
|
||||||
"nonWifiThresholdTimeInSeconds": 180,
|
|
||||||
"obssHopMode": "NON_WIFI"
|
|
||||||
},
|
|
||||||
"bestApSettings": {
|
|
||||||
"model_type": "RadioBestApSettings",
|
|
||||||
"mlComputed": true,
|
|
||||||
"dropInSnrPercentage": 30,
|
|
||||||
"minLoadFactor": 40
|
|
||||||
},
|
|
||||||
"forceScanDuringVoice": "disabled",
|
|
||||||
"legacyBSSRate": "enabled",
|
|
||||||
"beaconInterval": 100,
|
|
||||||
"deauthAttackDetection": null
|
|
||||||
},
|
|
||||||
"is5GHzL": {
|
|
||||||
"model_type": "RadioConfiguration",
|
|
||||||
"radioType": "is5GHzL",
|
|
||||||
"radioAdminState": "enabled",
|
|
||||||
"fragmentationThresholdBytes": 2346,
|
|
||||||
"rtsCtsThreshold": 65535,
|
|
||||||
"autoChannelSelection": "disabled",
|
|
||||||
"radioMode": "modeAC",
|
|
||||||
"mimoMode": "twoByTwo",
|
|
||||||
"wmmState": "enabled",
|
|
||||||
"uapsdState": "enabled",
|
|
||||||
"maxNumClients": 100,
|
|
||||||
"stationIsolation": "disabled",
|
|
||||||
"multicastRate": "auto",
|
|
||||||
"managementRate": "auto",
|
|
||||||
"activeScanSettings": {
|
|
||||||
"model_type": "ActiveScanSettings",
|
|
||||||
"enabled": true,
|
|
||||||
"scanFrequencySeconds": 10,
|
|
||||||
"scanDurationMillis": 65
|
|
||||||
},
|
|
||||||
"channelHopSettings": {
|
|
||||||
"model_type": "ChannelHopSettings",
|
|
||||||
"noiseFloorThresholdInDB": -75,
|
|
||||||
"noiseFloorThresholdTimeInSeconds": 180,
|
|
||||||
"nonWifiThresholdInPercentage": 50,
|
|
||||||
"nonWifiThresholdTimeInSeconds": 180,
|
|
||||||
"obssHopMode": "NON_WIFI"
|
|
||||||
},
|
|
||||||
"bestApSettings": {
|
|
||||||
"model_type": "RadioBestApSettings",
|
|
||||||
"mlComputed": true,
|
|
||||||
"dropInSnrPercentage": 30,
|
|
||||||
"minLoadFactor": 40
|
|
||||||
},
|
|
||||||
"forceScanDuringVoice": "disabled",
|
|
||||||
"legacyBSSRate": "enabled",
|
|
||||||
"beaconInterval": 100,
|
|
||||||
"deauthAttackDetection": null
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"latitude": null,
|
|
||||||
"longitude": null,
|
|
||||||
"serial": "21P10C68818122",
|
|
||||||
"createdTimestamp": 1591653239821,
|
|
||||||
"lastModifiedTimestamp": 1591653241398
|
|
||||||
}
|
}
|
||||||
@@ -1,67 +1,61 @@
|
|||||||
{
|
{
|
||||||
"model_type" : "Location",
|
"model_type": "Location",
|
||||||
"id" : 8,
|
"id": 8,
|
||||||
"parentId" : 0,
|
"parentId": 0,
|
||||||
"locationType" : "SITE",
|
"locationType": "SITE",
|
||||||
"customerId" : 2,
|
"customerId": 2,
|
||||||
"name" : "Ottawa",
|
"name": "Ottawa",
|
||||||
"details" : {
|
"details": {
|
||||||
"model_type" : "LocationDetails",
|
"model_type": "LocationDetails",
|
||||||
"countryCode" : "ca",
|
"countryCode": "CA",
|
||||||
"maintenanceWindow" : null,
|
"dailyActivityDetails": {
|
||||||
"rrmEnabled" : true,
|
"SUNDAY": {
|
||||||
"dailyRebalancingDetails" : {
|
"model_type": "LocationActivityDetails",
|
||||||
"SUNDAY" : {
|
"busyTime": "13:30",
|
||||||
"model_type" : "LocationActivityDetails",
|
"quietTime": "3:00",
|
||||||
"busyTime" : "13:30",
|
"timezone": "US/Eastern"
|
||||||
"quietTime" : "3:30",
|
},
|
||||||
"timezone" : "US/Eastern",
|
"MONDAY": {
|
||||||
"lastBusySnapshot" : 0
|
"model_type": "LocationActivityDetails",
|
||||||
},
|
"busyTime": "13:30",
|
||||||
"MONDAY" : {
|
"quietTime": "3:00",
|
||||||
"model_type" : "LocationActivityDetails",
|
"timezone": "US/Eastern"
|
||||||
"busyTime" : "13:30",
|
},
|
||||||
"quietTime" : "3:30",
|
"TUESDAY": {
|
||||||
"timezone" : "US/Eastern",
|
"model_type": "LocationActivityDetails",
|
||||||
"lastBusySnapshot" : 0
|
"busyTime": "13:30",
|
||||||
},
|
"quietTime": "3:00",
|
||||||
"TUESDAY" : {
|
"timezone": "US/Eastern"
|
||||||
"model_type" : "LocationActivityDetails",
|
},
|
||||||
"busyTime" : "13:30",
|
"WEDNESDAY": {
|
||||||
"quietTime" : "3:30",
|
"model_type": "LocationActivityDetails",
|
||||||
"timezone" : "US/Eastern",
|
"busyTime": "13:30",
|
||||||
"lastBusySnapshot" : 0
|
"quietTime": "3:00",
|
||||||
},
|
"timezone": "US/Eastern"
|
||||||
"WEDNESDAY" : {
|
},
|
||||||
"model_type" : "LocationActivityDetails",
|
"THURSDAY": {
|
||||||
"busyTime" : "13:30",
|
"model_type": "LocationActivityDetails",
|
||||||
"quietTime" : "3:30",
|
"busyTime": "13:30",
|
||||||
"timezone" : "US/Eastern",
|
"quietTime": "3:00",
|
||||||
"lastBusySnapshot" : 0
|
"timezone": "US/Eastern"
|
||||||
},
|
},
|
||||||
"THURSDAY" : {
|
"FRIDAY": {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type": "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime": "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime": "3:00",
|
||||||
"timezone" : "US/Eastern",
|
"timezone": "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
},
|
||||||
},
|
"SATURDAY": {
|
||||||
"FRIDAY" : {
|
"model_type": "LocationActivityDetails",
|
||||||
"model_type" : "LocationActivityDetails",
|
"busyTime": "13:30",
|
||||||
"busyTime" : "13:30",
|
"quietTime": "3:00",
|
||||||
"quietTime" : "3:30",
|
"timezone": "US/Eastern"
|
||||||
"timezone" : "US/Eastern",
|
}
|
||||||
"lastBusySnapshot" : 0
|
},
|
||||||
},
|
"maintenanceWindow": null,
|
||||||
"SATURDAY" : {
|
"rrmEnabled": true,
|
||||||
"model_type" : "LocationActivityDetails",
|
"timezone": "US/Eastern"
|
||||||
"busyTime" : "13:30",
|
},
|
||||||
"quietTime" : "3:30",
|
"createdTimestamp": 1612285243534,
|
||||||
"timezone" : "US/Eastern",
|
"lastModifiedTimestamp": 1612285243534
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"createdTimestamp" : 1590607043540,
|
|
||||||
"lastModifiedTimestamp" : 1590607043540
|
|
||||||
}
|
}
|
||||||
@@ -1,54 +1,58 @@
|
|||||||
{
|
{
|
||||||
"model_type": "Profile",
|
"model_type": "Profile",
|
||||||
"id": 5,
|
"id": 8,
|
||||||
"customerId": 2,
|
"customerId": 2,
|
||||||
"profileType": "equipment_ap",
|
"profileType": "equipment_ap",
|
||||||
"name": "DefaultApProfile",
|
"name": "ApProfile-3-radios",
|
||||||
"details": {
|
"details": {
|
||||||
"model_type": "ApNetworkConfiguration",
|
"model_type": "ApNetworkConfiguration",
|
||||||
"networkConfigVersion": "AP-1",
|
"networkConfigVersion": "AP-1",
|
||||||
"equipmentType": "AP",
|
"equipmentType": "AP",
|
||||||
"vlanNative": true,
|
"vlanNative": true,
|
||||||
"vlan": 0,
|
"vlan": 0,
|
||||||
"ntpServer": {
|
"ntpServer": {
|
||||||
"model_type": "AutoOrManualString",
|
"model_type": "AutoOrManualString",
|
||||||
"auto": true,
|
"auto": true,
|
||||||
"value": "pool.ntp.org"
|
"value": "pool.ntp.org"
|
||||||
|
},
|
||||||
|
"syslogRelay": null,
|
||||||
|
"rtlsSettings": null,
|
||||||
|
"syntheticClientEnabled": true,
|
||||||
|
"ledControlEnabled": true,
|
||||||
|
"equipmentDiscovery": false,
|
||||||
|
"radioMap": {
|
||||||
|
"is2dot4GHz": {
|
||||||
|
"model_type": "RadioProfileConfiguration",
|
||||||
|
"bestApEnabled": true,
|
||||||
|
"bestAPSteerType": "both"
|
||||||
|
},
|
||||||
|
"is5GHzU": {
|
||||||
|
"model_type": "RadioProfileConfiguration",
|
||||||
|
"bestApEnabled": true,
|
||||||
|
"bestAPSteerType": "both"
|
||||||
|
},
|
||||||
|
"is5GHzL": {
|
||||||
|
"model_type": "RadioProfileConfiguration",
|
||||||
|
"bestApEnabled": true,
|
||||||
|
"bestAPSteerType": "both"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"greTunnelConfigurations": [
|
||||||
|
{
|
||||||
|
"model_type": "GreTunnelConfiguration",
|
||||||
|
"greTunnelName": "gre1",
|
||||||
|
"greRemoteInetAddr": "192.168.1.101",
|
||||||
|
"vlanIdsInGreTunnel": [
|
||||||
|
100
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"profileType": "equipment_ap"
|
||||||
},
|
},
|
||||||
"syslogRelay": null,
|
"createdTimestamp": 1612285248925,
|
||||||
"rtlsSettings": null,
|
"lastModifiedTimestamp": 1612285628377,
|
||||||
"syntheticClientEnabled": true,
|
"childProfileIds": [
|
||||||
"ledControlEnabled": true,
|
2,
|
||||||
"equipmentDiscovery": false,
|
4
|
||||||
"radioMap": {
|
]
|
||||||
"is5GHz": {
|
|
||||||
"model_type": "RadioProfileConfiguration",
|
|
||||||
"bestApEnabled": true,
|
|
||||||
"bestAPSteerType": "both"
|
|
||||||
},
|
|
||||||
"is2dot4GHz": {
|
|
||||||
"model_type": "RadioProfileConfiguration",
|
|
||||||
"bestApEnabled": true,
|
|
||||||
"bestAPSteerType": "both"
|
|
||||||
},
|
|
||||||
"is5GHzU": {
|
|
||||||
"model_type": "RadioProfileConfiguration",
|
|
||||||
"bestApEnabled": true,
|
|
||||||
"bestAPSteerType": "both"
|
|
||||||
},
|
|
||||||
"is5GHzL": {
|
|
||||||
"model_type": "RadioProfileConfiguration",
|
|
||||||
"bestApEnabled": true,
|
|
||||||
"bestAPSteerType": "both"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"profileType": "equipment_ap"
|
|
||||||
},
|
|
||||||
"createdTimestamp": 1591653239947,
|
|
||||||
"lastModifiedTimestamp": 1591654336724,
|
|
||||||
"childProfileIds": [
|
|
||||||
6,
|
|
||||||
7,
|
|
||||||
8
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
58
opensync-ext-static/src/main/resources/ProfileCaptive.json
Normal file
58
opensync-ext-static/src/main/resources/ProfileCaptive.json
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 5,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "captive_portal",
|
||||||
|
"name": "Captive-portal",
|
||||||
|
"details": {
|
||||||
|
"model_type": "CaptivePortalConfiguration",
|
||||||
|
"name": "Default",
|
||||||
|
"browserTitle": "Captive-portal",
|
||||||
|
"headerContent": "Captive Portal",
|
||||||
|
"userAcceptancePolicy": "Please agree to the following terms for using this network:",
|
||||||
|
"successPageMarkdownText": "You are now authorized and connected to the network.",
|
||||||
|
"redirectURL": "https://www.google.com",
|
||||||
|
"externalCaptivePortalURL": null,
|
||||||
|
"sessionTimeoutInMinutes": 10,
|
||||||
|
"logoFile": {
|
||||||
|
"model_type": "ManagedFileInfo",
|
||||||
|
"md5checksum": null,
|
||||||
|
"lastModifiedTimestamp": null,
|
||||||
|
"apExportUrl": "/filestore/tip-logo-mobile",
|
||||||
|
"fileCategory": "CaptivePortalLogo",
|
||||||
|
"fileType": "PNG",
|
||||||
|
"altSlot": false
|
||||||
|
},
|
||||||
|
"backgroundFile": {
|
||||||
|
"model_type": "ManagedFileInfo",
|
||||||
|
"md5checksum": null,
|
||||||
|
"lastModifiedTimestamp": null,
|
||||||
|
"apExportUrl": "/filestore/tip-logo",
|
||||||
|
"fileCategory": "CaptivePortalBackground",
|
||||||
|
"fileType": "PNG",
|
||||||
|
"altSlot": false
|
||||||
|
},
|
||||||
|
"walledGardenAllowlist": [
|
||||||
|
],
|
||||||
|
"usernamePasswordFile": null,
|
||||||
|
"authenticationType": "guest",
|
||||||
|
"radiusAuthMethod": "CHAP",
|
||||||
|
"maxUsersWithSameCredentials": 3,
|
||||||
|
"externalPolicyFile": null,
|
||||||
|
"backgroundPosition": "left_top",
|
||||||
|
"backgroundRepeat": "no_repeat",
|
||||||
|
"radiusServiceId": 0,
|
||||||
|
"expiryType": "time_limited",
|
||||||
|
"userList": [
|
||||||
|
],
|
||||||
|
"macAllowList": [
|
||||||
|
],
|
||||||
|
"profileType": "captive_portal"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1611857459118,
|
||||||
|
"lastModifiedTimestamp": 1611857459118,
|
||||||
|
"childProfileIds": [
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -1,34 +0,0 @@
|
|||||||
[
|
|
||||||
{
|
|
||||||
"model_type": "Profile",
|
|
||||||
"id": 1,
|
|
||||||
"customerId": 2,
|
|
||||||
"profileType": "radius",
|
|
||||||
"name": "RadiusProfileOttawa",
|
|
||||||
"details": {
|
|
||||||
"model_type": "RadiusProfile",
|
|
||||||
"subnetConfiguration": null,
|
|
||||||
"serviceRegionMap": {
|
|
||||||
"Ottawa": {
|
|
||||||
"model_type": "RadiusServiceRegion",
|
|
||||||
"serverMap": {
|
|
||||||
"RadiusProfileOttawa": [
|
|
||||||
{
|
|
||||||
"model_type": "RadiusServer",
|
|
||||||
"ipAddress": "localhost",
|
|
||||||
"secret": "testing123",
|
|
||||||
"authPort": 1812,
|
|
||||||
"timeout": null
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"regionName": "Ottawa"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"profileType": "radius"
|
|
||||||
},
|
|
||||||
"createdTimestamp": 1591653174195,
|
|
||||||
"lastModifiedTimestamp": 1591653174195,
|
|
||||||
"childProfileIds": []
|
|
||||||
}
|
|
||||||
]
|
|
||||||
204
opensync-ext-static/src/main/resources/ProfileRf.json
Normal file
204
opensync-ext-static/src/main/resources/ProfileRf.json
Normal file
@@ -0,0 +1,204 @@
|
|||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 4,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "rf",
|
||||||
|
"name": "TipWlan-rf",
|
||||||
|
"details": {
|
||||||
|
"model_type": "RfConfiguration",
|
||||||
|
"rfConfigMap": {
|
||||||
|
"is5GHz": {
|
||||||
|
"model_type": "RfElementConfiguration",
|
||||||
|
"radioType": "is5GHz",
|
||||||
|
"radioMode": "modeAC",
|
||||||
|
"rf": "TipWlan-rf",
|
||||||
|
"beaconInterval": 100,
|
||||||
|
"forceScanDuringVoice": "disabled",
|
||||||
|
"rtsCtsThreshold": 65535,
|
||||||
|
"channelBandwidth": "is80MHz",
|
||||||
|
"mimoMode": "twoByTwo",
|
||||||
|
"maxNumClients": 100,
|
||||||
|
"autoChannelSelection": false,
|
||||||
|
"activeScanSettings": {
|
||||||
|
"model_type": "ActiveScanSettings",
|
||||||
|
"enabled": true,
|
||||||
|
"scanFrequencySeconds": 10,
|
||||||
|
"scanDurationMillis": 65
|
||||||
|
},
|
||||||
|
"neighbouringListApConfig": {
|
||||||
|
"model_type": "NeighbouringAPListConfiguration",
|
||||||
|
"minSignal": -85,
|
||||||
|
"maxAps": 25
|
||||||
|
},
|
||||||
|
"minAutoCellSize": -65,
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"channelHopSettings": {
|
||||||
|
"model_type": "ChannelHopSettings",
|
||||||
|
"noiseFloorThresholdInDB": -75,
|
||||||
|
"noiseFloorThresholdTimeInSeconds": 180,
|
||||||
|
"nonWifiThresholdInPercentage": 50,
|
||||||
|
"nonWifiThresholdTimeInSeconds": 180,
|
||||||
|
"obssHopMode": "NON_WIFI"
|
||||||
|
},
|
||||||
|
"bestApEnabled": null,
|
||||||
|
"multicastRate": "auto",
|
||||||
|
"managementRate": "auto",
|
||||||
|
"rxCellSizeDb": -90,
|
||||||
|
"probeResponseThresholdDb": -90,
|
||||||
|
"clientDisconnectThresholdDb": -90,
|
||||||
|
"eirpTxPower": 18,
|
||||||
|
"bestApSettings": {
|
||||||
|
"model_type": "RadioBestApSettings",
|
||||||
|
"mlComputed": true,
|
||||||
|
"dropInSnrPercentage": 30,
|
||||||
|
"minLoadFactor": 40
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"is2dot4GHz": {
|
||||||
|
"model_type": "RfElementConfiguration",
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"radioMode": "modeN",
|
||||||
|
"rf": "TipWlan-rf",
|
||||||
|
"beaconInterval": 100,
|
||||||
|
"forceScanDuringVoice": "disabled",
|
||||||
|
"rtsCtsThreshold": 65535,
|
||||||
|
"channelBandwidth": "is20MHz",
|
||||||
|
"mimoMode": "twoByTwo",
|
||||||
|
"maxNumClients": 100,
|
||||||
|
"autoChannelSelection": false,
|
||||||
|
"activeScanSettings": {
|
||||||
|
"model_type": "ActiveScanSettings",
|
||||||
|
"enabled": true,
|
||||||
|
"scanFrequencySeconds": 10,
|
||||||
|
"scanDurationMillis": 65
|
||||||
|
},
|
||||||
|
"neighbouringListApConfig": {
|
||||||
|
"model_type": "NeighbouringAPListConfiguration",
|
||||||
|
"minSignal": -85,
|
||||||
|
"maxAps": 25
|
||||||
|
},
|
||||||
|
"minAutoCellSize": -65,
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"channelHopSettings": {
|
||||||
|
"model_type": "ChannelHopSettings",
|
||||||
|
"noiseFloorThresholdInDB": -75,
|
||||||
|
"noiseFloorThresholdTimeInSeconds": 180,
|
||||||
|
"nonWifiThresholdInPercentage": 50,
|
||||||
|
"nonWifiThresholdTimeInSeconds": 180,
|
||||||
|
"obssHopMode": "NON_WIFI"
|
||||||
|
},
|
||||||
|
"bestApEnabled": null,
|
||||||
|
"multicastRate": "auto",
|
||||||
|
"managementRate": "auto",
|
||||||
|
"rxCellSizeDb": -90,
|
||||||
|
"probeResponseThresholdDb": -90,
|
||||||
|
"clientDisconnectThresholdDb": -90,
|
||||||
|
"eirpTxPower": 18,
|
||||||
|
"bestApSettings": {
|
||||||
|
"model_type": "RadioBestApSettings",
|
||||||
|
"mlComputed": true,
|
||||||
|
"dropInSnrPercentage": 20,
|
||||||
|
"minLoadFactor": 50
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"is5GHzU": {
|
||||||
|
"model_type": "RfElementConfiguration",
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"radioMode": "modeAC",
|
||||||
|
"rf": "TipWlan-rf",
|
||||||
|
"beaconInterval": 100,
|
||||||
|
"forceScanDuringVoice": "disabled",
|
||||||
|
"rtsCtsThreshold": 65535,
|
||||||
|
"channelBandwidth": "is80MHz",
|
||||||
|
"mimoMode": "twoByTwo",
|
||||||
|
"maxNumClients": 100,
|
||||||
|
"autoChannelSelection": false,
|
||||||
|
"activeScanSettings": {
|
||||||
|
"model_type": "ActiveScanSettings",
|
||||||
|
"enabled": true,
|
||||||
|
"scanFrequencySeconds": 10,
|
||||||
|
"scanDurationMillis": 65
|
||||||
|
},
|
||||||
|
"neighbouringListApConfig": {
|
||||||
|
"model_type": "NeighbouringAPListConfiguration",
|
||||||
|
"minSignal": -85,
|
||||||
|
"maxAps": 25
|
||||||
|
},
|
||||||
|
"minAutoCellSize": -65,
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"channelHopSettings": {
|
||||||
|
"model_type": "ChannelHopSettings",
|
||||||
|
"noiseFloorThresholdInDB": -75,
|
||||||
|
"noiseFloorThresholdTimeInSeconds": 180,
|
||||||
|
"nonWifiThresholdInPercentage": 50,
|
||||||
|
"nonWifiThresholdTimeInSeconds": 180,
|
||||||
|
"obssHopMode": "NON_WIFI"
|
||||||
|
},
|
||||||
|
"bestApEnabled": null,
|
||||||
|
"multicastRate": "auto",
|
||||||
|
"managementRate": "auto",
|
||||||
|
"rxCellSizeDb": -90,
|
||||||
|
"probeResponseThresholdDb": -90,
|
||||||
|
"clientDisconnectThresholdDb": -90,
|
||||||
|
"eirpTxPower": 18,
|
||||||
|
"bestApSettings": {
|
||||||
|
"model_type": "RadioBestApSettings",
|
||||||
|
"mlComputed": true,
|
||||||
|
"dropInSnrPercentage": 30,
|
||||||
|
"minLoadFactor": 40
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"is5GHzL": {
|
||||||
|
"model_type": "RfElementConfiguration",
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"radioMode": "modeAC",
|
||||||
|
"rf": "TipWlan-rf",
|
||||||
|
"beaconInterval": 100,
|
||||||
|
"forceScanDuringVoice": "disabled",
|
||||||
|
"rtsCtsThreshold": 65535,
|
||||||
|
"channelBandwidth": "is80MHz",
|
||||||
|
"mimoMode": "twoByTwo",
|
||||||
|
"maxNumClients": 100,
|
||||||
|
"autoChannelSelection": false,
|
||||||
|
"activeScanSettings": {
|
||||||
|
"model_type": "ActiveScanSettings",
|
||||||
|
"enabled": true,
|
||||||
|
"scanFrequencySeconds": 10,
|
||||||
|
"scanDurationMillis": 65
|
||||||
|
},
|
||||||
|
"neighbouringListApConfig": {
|
||||||
|
"model_type": "NeighbouringAPListConfiguration",
|
||||||
|
"minSignal": -85,
|
||||||
|
"maxAps": 25
|
||||||
|
},
|
||||||
|
"minAutoCellSize": -65,
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"channelHopSettings": {
|
||||||
|
"model_type": "ChannelHopSettings",
|
||||||
|
"noiseFloorThresholdInDB": -75,
|
||||||
|
"noiseFloorThresholdTimeInSeconds": 180,
|
||||||
|
"nonWifiThresholdInPercentage": 50,
|
||||||
|
"nonWifiThresholdTimeInSeconds": 180,
|
||||||
|
"obssHopMode": "NON_WIFI"
|
||||||
|
},
|
||||||
|
"bestApEnabled": null,
|
||||||
|
"multicastRate": "auto",
|
||||||
|
"managementRate": "auto",
|
||||||
|
"rxCellSizeDb": -90,
|
||||||
|
"probeResponseThresholdDb": -90,
|
||||||
|
"clientDisconnectThresholdDb": -90,
|
||||||
|
"eirpTxPower": 18,
|
||||||
|
"bestApSettings": {
|
||||||
|
"model_type": "RadioBestApSettings",
|
||||||
|
"mlComputed": true,
|
||||||
|
"dropInSnrPercentage": 30,
|
||||||
|
"minLoadFactor": 40
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"profileType": "rf"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1612285248650,
|
||||||
|
"lastModifiedTimestamp": 1612285248650,
|
||||||
|
"childProfileIds": []
|
||||||
|
}
|
||||||
@@ -1,184 +1,75 @@
|
|||||||
[
|
[
|
||||||
{
|
{
|
||||||
"model_type": "Profile",
|
"model_type": "Profile",
|
||||||
"id": 6,
|
"id": 2,
|
||||||
"customerId": 2,
|
"customerId": 2,
|
||||||
"profileType": "ssid",
|
"profileType": "ssid",
|
||||||
"name": "DefaultSsid-2g",
|
"name": "TipWlan-cloud-3-radios",
|
||||||
"details": {
|
"details": {
|
||||||
"model_type": "SsidConfiguration",
|
"model_type": "SsidConfiguration",
|
||||||
"ssid": "Default-SSID-2g",
|
"ssid": "TipWlan-cloud-3-radios",
|
||||||
"appliedRadios": [
|
"appliedRadios": [
|
||||||
"is2dot4GHz"
|
"is5GHzU",
|
||||||
],
|
"is2dot4GHz",
|
||||||
"ssidAdminState": "enabled",
|
"is5GHzL"
|
||||||
"secureMode": "wpa2PSK",
|
],
|
||||||
"vlanId": 1,
|
"ssidAdminState": "enabled",
|
||||||
"keyStr": "12345678",
|
"secureMode": "wpa2OnlyPSK",
|
||||||
"broadcastSsid": "enabled",
|
"vlanId": 1,
|
||||||
"keyRefresh": 0,
|
"keyStr": "openwifi",
|
||||||
"noLocalSubnets": false,
|
"broadcastSsid": "enabled",
|
||||||
"radiusServiceName": null,
|
"keyRefresh": 0,
|
||||||
"captivePortalId": null,
|
"noLocalSubnets": false,
|
||||||
"bandwidthLimitDown": 0,
|
"radiusServiceId": 0,
|
||||||
"bandwidthLimitUp": 0,
|
"radiusAcountingServiceInterval": 60,
|
||||||
"videoTrafficOnly": false,
|
"captivePortalId": null,
|
||||||
"radioBasedConfigs": {
|
"bandwidthLimitDown": 0,
|
||||||
"is5GHz": {
|
"bandwidthLimitUp": 0,
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
"clientBandwidthLimitDown": 0,
|
||||||
"enable80211r": null,
|
"clientBandwidthLimitUp": 0,
|
||||||
"enable80211k": null,
|
"videoTrafficOnly": false,
|
||||||
"enable80211v": null
|
"radioBasedConfigs": {
|
||||||
},
|
"is5GHzU": {
|
||||||
"is2dot4GHz": {
|
"model_type": "RadioBasedSsidConfiguration",
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
"enable80211r": null,
|
||||||
"enable80211r": null,
|
"enable80211k": null,
|
||||||
"enable80211k": null,
|
"enable80211v": null
|
||||||
"enable80211v": null
|
},
|
||||||
},
|
"is2dot4GHz": {
|
||||||
"is5GHzU": {
|
"model_type": "RadioBasedSsidConfiguration",
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
"enable80211r": null,
|
||||||
"enable80211r": null,
|
"enable80211k": null,
|
||||||
"enable80211k": null,
|
"enable80211v": null
|
||||||
"enable80211v": null
|
},
|
||||||
},
|
"is5GHz": {
|
||||||
"is5GHzL": {
|
"model_type": "RadioBasedSsidConfiguration",
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
"enable80211r": null,
|
||||||
"enable80211r": null,
|
"enable80211k": null,
|
||||||
"enable80211k": null,
|
"enable80211v": null
|
||||||
"enable80211v": null
|
},
|
||||||
}
|
"is5GHzL": {
|
||||||
|
"model_type": "RadioBasedSsidConfiguration",
|
||||||
|
"enable80211r": null,
|
||||||
|
"enable80211k": null,
|
||||||
|
"enable80211v": null
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"bonjourGatewayProfileId": null,
|
||||||
|
"enable80211w": null,
|
||||||
|
"wepConfig": null,
|
||||||
|
"forwardMode": "BRIDGE",
|
||||||
|
"profileType": "ssid",
|
||||||
|
"radiusClientConfiguration": {
|
||||||
|
"model_type": "RadiusNasConfiguration",
|
||||||
|
"nasClientId": "DEFAULT",
|
||||||
|
"nasClientIp": "WAN_IP",
|
||||||
|
"userDefinedNasId": null,
|
||||||
|
"userDefinedNasIp": null,
|
||||||
|
"operatorId": null
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"bonjourGatewayProfileId": null,
|
"createdTimestamp": 1612285248638,
|
||||||
"enable80211w": null,
|
"lastModifiedTimestamp": 1612285248638,
|
||||||
"wepConfig": null,
|
"childProfileIds": []
|
||||||
"forwardMode": null,
|
|
||||||
"profileType": "ssid"
|
|
||||||
},
|
|
||||||
"createdTimestamp": 1591653239983,
|
|
||||||
"lastModifiedTimestamp": 1591653239983,
|
|
||||||
"childProfileIds": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"model_type": "Profile",
|
|
||||||
"id": 7,
|
|
||||||
"customerId": 2,
|
|
||||||
"profileType": "ssid",
|
|
||||||
"name": "DefaultSsid-5gl",
|
|
||||||
"details": {
|
|
||||||
"model_type": "SsidConfiguration",
|
|
||||||
"ssid": "Default-SSID-5gl",
|
|
||||||
"appliedRadios": [
|
|
||||||
"is5GHzL"
|
|
||||||
],
|
|
||||||
"ssidAdminState": "enabled",
|
|
||||||
"secureMode": "wpaEAP",
|
|
||||||
"vlanId": 1,
|
|
||||||
"keyStr": "12345678",
|
|
||||||
"broadcastSsid": "enabled",
|
|
||||||
"keyRefresh": 0,
|
|
||||||
"noLocalSubnets": false,
|
|
||||||
"radiusServiceName": "RadiusProfileOttawa",
|
|
||||||
"captivePortalId": null,
|
|
||||||
"bandwidthLimitDown": 0,
|
|
||||||
"bandwidthLimitUp": 0,
|
|
||||||
"videoTrafficOnly": false,
|
|
||||||
"radioBasedConfigs": {
|
|
||||||
"is5GHz": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is2dot4GHz": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is5GHzU": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is5GHzL": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"bonjourGatewayProfileId": null,
|
|
||||||
"enable80211w": null,
|
|
||||||
"wepConfig": null,
|
|
||||||
"forwardMode": null,
|
|
||||||
"profileType": "ssid"
|
|
||||||
},
|
|
||||||
"createdTimestamp": 1591653240017,
|
|
||||||
"lastModifiedTimestamp": 1591654215374,
|
|
||||||
"childProfileIds": [
|
|
||||||
1
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"model_type": "Profile",
|
|
||||||
"id": 8,
|
|
||||||
"customerId": 2,
|
|
||||||
"profileType": "ssid",
|
|
||||||
"name": "DefaultSsid-5gu",
|
|
||||||
"details": {
|
|
||||||
"model_type": "SsidConfiguration",
|
|
||||||
"ssid": "Default-SSID-5gu",
|
|
||||||
"appliedRadios": [
|
|
||||||
"is5GHzU"
|
|
||||||
],
|
|
||||||
"ssidAdminState": "enabled",
|
|
||||||
"secureMode": "wpa2PSK",
|
|
||||||
"vlanId": 1,
|
|
||||||
"keyStr": "12345678",
|
|
||||||
"broadcastSsid": "enabled",
|
|
||||||
"keyRefresh": 0,
|
|
||||||
"noLocalSubnets": false,
|
|
||||||
"radiusServiceName": null,
|
|
||||||
"captivePortalId": null,
|
|
||||||
"bandwidthLimitDown": 0,
|
|
||||||
"bandwidthLimitUp": 0,
|
|
||||||
"videoTrafficOnly": false,
|
|
||||||
"radioBasedConfigs": {
|
|
||||||
"is5GHz": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is2dot4GHz": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is5GHzU": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is5GHzL": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"bonjourGatewayProfileId": null,
|
|
||||||
"enable80211w": null,
|
|
||||||
"wepConfig": null,
|
|
||||||
"forwardMode": null,
|
|
||||||
"profileType": "ssid"
|
|
||||||
},
|
|
||||||
"createdTimestamp": 1591654301763,
|
|
||||||
"lastModifiedTimestamp": 1591654301763,
|
|
||||||
"childProfileIds": []
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
"ssidConfigs" : [ {
|
"ssidConfigs" : [ {
|
||||||
"model_type" : "OpensyncAPSsidConfig",
|
"model_type" : "OpensyncAPSsidConfig",
|
||||||
"radioType" : "is2dot4GHz",
|
"radioType" : "is2dot4GHz",
|
||||||
"ssid" : "Connectus-local",
|
"ssid" : "Tip-wlan-local",
|
||||||
"encryption" : "WPA-PSK",
|
"encryption" : "WPA-PSK",
|
||||||
"key" : "12345678",
|
"key" : "12345678",
|
||||||
"mode" : "2",
|
"mode" : "2",
|
||||||
@@ -18,7 +18,7 @@
|
|||||||
}, {
|
}, {
|
||||||
"model_type" : "OpensyncAPSsidConfig",
|
"model_type" : "OpensyncAPSsidConfig",
|
||||||
"radioType" : "is5GHzL",
|
"radioType" : "is5GHzL",
|
||||||
"ssid" : "Connectus-local-5l",
|
"ssid" : "Tip-wlan-local-5l",
|
||||||
"encryption" : "WPA-PSK",
|
"encryption" : "WPA-PSK",
|
||||||
"key" : "12345678",
|
"key" : "12345678",
|
||||||
"mode" : "2",
|
"mode" : "2",
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<artifactId>tip-wlan-cloud-root-pom</artifactId>
|
<artifactId>tip-wlan-cloud-root-pom</artifactId>
|
||||||
<version>0.0.1-SNAPSHOT</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
<relativePath>../../wlan-cloud-root</relativePath>
|
<relativePath>../../wlan-cloud-root</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>opensync-gateway-build</artifactId>
|
<artifactId>opensync-gateway-build</artifactId>
|
||||||
@@ -20,10 +20,10 @@
|
|||||||
|
|
||||||
<modules>
|
<modules>
|
||||||
<module>../opensync-ext-interface</module>
|
<module>../opensync-ext-interface</module>
|
||||||
<module>../opensync-ext-static</module>
|
|
||||||
<module>../opensync-ext-cloud</module>
|
|
||||||
<module>../opensync-gateway</module>
|
<module>../opensync-gateway</module>
|
||||||
|
<module>../opensync-ext-static</module>
|
||||||
<module>../opensync-gateway-static-process</module>
|
<module>../opensync-gateway-static-process</module>
|
||||||
|
<module>../opensync-ext-cloud</module>
|
||||||
<module>../opensync-gateway-cloud-process</module>
|
<module>../opensync-gateway-cloud-process</module>
|
||||||
</modules>
|
</modules>
|
||||||
</profile>
|
</profile>
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<artifactId>tip-wlan-cloud-root-pom</artifactId>
|
<artifactId>tip-wlan-cloud-root-pom</artifactId>
|
||||||
<version>0.0.1-SNAPSHOT</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
<relativePath>../../wlan-cloud-root</relativePath>
|
<relativePath>../../wlan-cloud-root</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>opensync-gateway-cloud-docker</artifactId>
|
<artifactId>opensync-gateway-cloud-docker</artifactId>
|
||||||
@@ -11,16 +11,18 @@
|
|||||||
<name>opensync-gateway-cloud-docker</name>
|
<name>opensync-gateway-cloud-docker</name>
|
||||||
<description>Docker definition for opensync gateway that uses cloud configuration</description>
|
<description>Docker definition for opensync gateway that uses cloud configuration</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<docker.fabric.version>0.28.0</docker.fabric.version>
|
<docker.fabric.version>0.28.0</docker.fabric.version>
|
||||||
<docker.push.registry>tip-tip-wlan-cloud-docker-repo.jfrog.io</docker.push.registry>
|
<docker.push.registry>tip-tip-wlan-cloud-docker-repo.jfrog.io</docker.push.registry>
|
||||||
|
<timestamp>${maven.build.timestamp}</timestamp>
|
||||||
|
<maven.build.timestamp.format>yyyy-MM-dd</maven.build.timestamp.format>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<artifactId>opensync-gateway-cloud-process</artifactId>
|
<artifactId>opensync-gateway-cloud-process</artifactId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
@@ -38,6 +40,9 @@
|
|||||||
<image>
|
<image>
|
||||||
<name>opensync-gateway-cloud:${project.version}</name>
|
<name>opensync-gateway-cloud:${project.version}</name>
|
||||||
<build>
|
<build>
|
||||||
|
<tags>
|
||||||
|
<tag>${project.version}-${timestamp}</tag>
|
||||||
|
</tags>
|
||||||
<filter>@</filter>
|
<filter>@</filter>
|
||||||
<cleanup>try</cleanup>
|
<cleanup>try</cleanup>
|
||||||
<dockerFileDir>${project.basedir}/src/main/docker</dockerFileDir>
|
<dockerFileDir>${project.basedir}/src/main/docker</dockerFileDir>
|
||||||
|
|||||||
@@ -1,33 +0,0 @@
|
|||||||
FROM adoptopenjdk/openjdk13:alpine-jre
|
|
||||||
|
|
||||||
LABEL maintainer="ConnectUs.ai as part of the Telecom Infrastructure Project"
|
|
||||||
LABEL version="1.0"
|
|
||||||
LABEL description="This image runs the mqtt broker (mosquitto) and \
|
|
||||||
an OpenSync gateway."
|
|
||||||
|
|
||||||
# Update the package list and upgrade installed packages
|
|
||||||
RUN apk update && apk upgrade
|
|
||||||
RUN mkdir -p /opt/tip-wlan/certs
|
|
||||||
VOLUME ["/opt/tip-wlan/certs"]
|
|
||||||
|
|
||||||
# Configure mqtt broker
|
|
||||||
RUN apk add mosquitto
|
|
||||||
RUN mkdir -p /mosquitto/data /mosquitto/log
|
|
||||||
COPY app/mqtt/mosquitto.conf /etc/mosquitto/mosquitto.conf
|
|
||||||
VOLUME ["/mosquitto/data", "/mosquitto/log"]
|
|
||||||
|
|
||||||
|
|
||||||
# Configure OpenSync Gateway
|
|
||||||
RUN mkdir -p /app/logs /app/opensync /app/config
|
|
||||||
COPY maven/app.jar /app
|
|
||||||
COPY app/opensync/logback.xml /app/opensync/logback.xml
|
|
||||||
COPY app/run.sh /app
|
|
||||||
VOLUME ["/app/logs", "/app/config"]
|
|
||||||
|
|
||||||
RUN chmod +x /app/run.sh
|
|
||||||
|
|
||||||
EXPOSE 1883 6640 6643 4043
|
|
||||||
|
|
||||||
WORKDIR /app
|
|
||||||
ENTRYPOINT ["/app/run.sh"]
|
|
||||||
CMD [""]
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
cafile /opt/tip-wlan/certs/cacert.pem
|
|
||||||
certfile /opt/tip-wlan/certs/mqttservercert.pem
|
|
||||||
keyfile /opt/tip-wlan/certs/mqttserverkey_dec.pem
|
|
||||||
require_certificate true
|
|
||||||
use_identity_as_username true
|
|
||||||
allow_anonymous false
|
|
||||||
allow_duplicate_messages true
|
|
||||||
autosave_interval 900
|
|
||||||
log_dest file /mosquitto/log/mosquitto.log
|
|
||||||
max_queued_bytes 0
|
|
||||||
max_queued_messages 0
|
|
||||||
message_size_limit 0
|
|
||||||
persistence true
|
|
||||||
persistence_file mosquitto.db
|
|
||||||
persistence_location /mosquitto/data/
|
|
||||||
pid_file /mosquitto/mosquitto.pid
|
|
||||||
port 1883
|
|
||||||
|
|
||||||
@@ -1,80 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
|
|
||||||
<!-- For assistance related to logback-translator or configuration -->
|
|
||||||
<!-- files in general, please contact the logback user mailing list -->
|
|
||||||
<!-- at http://www.qos.ch/mailman/listinfo/logback-user -->
|
|
||||||
<!-- -->
|
|
||||||
<!-- For professional support please see -->
|
|
||||||
<!-- http://www.qos.ch/shop/products/professionalSupport -->
|
|
||||||
<!-- -->
|
|
||||||
<configuration>
|
|
||||||
<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
|
|
||||||
<encoder>
|
|
||||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
|
|
||||||
</encoder>
|
|
||||||
</appender>
|
|
||||||
|
|
||||||
<appender name="mqttDataFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
|
||||||
<file>/app/logs/mqttData.log</file>
|
|
||||||
<append>true</append>
|
|
||||||
<encoder>
|
|
||||||
<pattern>%date %msg%n</pattern>
|
|
||||||
</encoder>
|
|
||||||
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
|
|
||||||
<fileNamePattern>/app/logs/mqttData.%i.log.gz</fileNamePattern>
|
|
||||||
<minIndex>1</minIndex>
|
|
||||||
<maxIndex>3</maxIndex>
|
|
||||||
</rollingPolicy>
|
|
||||||
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
|
|
||||||
<maxFileSize>20MB</maxFileSize>
|
|
||||||
</triggeringPolicy>
|
|
||||||
</appender>
|
|
||||||
|
|
||||||
|
|
||||||
<appender name="logfile" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
|
||||||
<file>/app/logs/opensyncgw.log</file>
|
|
||||||
<append>true</append>
|
|
||||||
<encoder>
|
|
||||||
<pattern>%date %level [%thread] %logger{36} [%file:%line] %msg%n</pattern>
|
|
||||||
</encoder>
|
|
||||||
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
|
|
||||||
<fileNamePattern>/app/logs/opensyncgw.%i.log.gz</fileNamePattern>
|
|
||||||
<minIndex>1</minIndex>
|
|
||||||
<maxIndex>3</maxIndex>
|
|
||||||
</rollingPolicy>
|
|
||||||
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
|
|
||||||
<maxFileSize>20MB</maxFileSize>
|
|
||||||
</triggeringPolicy>
|
|
||||||
</appender>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
details: http://logback.qos.ch/manual/configuration.html#auto_configuration
|
|
||||||
|
|
||||||
runtime configuration, if need to override the defaults:
|
|
||||||
-Dlogback.configurationFile=/path/to/logback.xml
|
|
||||||
|
|
||||||
for log configuration debugging - use
|
|
||||||
-Dlogback.statusListenerClass=ch.qos.logback.core.status.OnConsoleStatusListener
|
|
||||||
|
|
||||||
log levels:
|
|
||||||
OFF ERROR WARN INFO DEBUG TRACE
|
|
||||||
-->
|
|
||||||
<logger name="org.apache.catalina.startup.DigesterFactory" level="ERROR"/>
|
|
||||||
<logger name="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping" level="INFO"/>
|
|
||||||
<logger name="org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer" level="INFO"/>
|
|
||||||
|
|
||||||
<logger name="com.telecominfraproject.wlan" level="INFO"/>
|
|
||||||
<logger name="ai.connectus" level="INFO"/>
|
|
||||||
<logger name="com.netflix.servo.tag.aws.AwsInjectableTag" level="OFF"/>
|
|
||||||
<logger name="com.vmware.ovsdb.service.OvsdbConnectionInfo" level="OFF"/>
|
|
||||||
<logger name="com.vmware.ovsdb.netty.OvsdbConnectionHandler" level="ERROR"/>
|
|
||||||
|
|
||||||
<logger name="MQTT_DATA" level="DEBUG" additivity="false">
|
|
||||||
<appender-ref ref="mqttDataFile"/>
|
|
||||||
</logger>
|
|
||||||
|
|
||||||
<root level="WARN">
|
|
||||||
<appender-ref ref="logfile"/>
|
|
||||||
</root>
|
|
||||||
|
|
||||||
</configuration>
|
|
||||||
@@ -1,126 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
# Prepare the hosts file - do it only if does not have required entries
|
|
||||||
n1=`grep opensync-mqtt-broker /etc/hosts | wc -l`
|
|
||||||
|
|
||||||
if [[ $n1 -eq 0 ]]
|
|
||||||
then
|
|
||||||
echo Adding opensync-mqtt-broker to /etc/hosts
|
|
||||||
echo "127.0.0.1 opensync-mqtt-broker" >> /etc/hosts
|
|
||||||
fi
|
|
||||||
|
|
||||||
n2=`grep opensync-wifi-controller /etc/hosts | wc -l`
|
|
||||||
|
|
||||||
if [[ $n2 -eq 0 ]]
|
|
||||||
then
|
|
||||||
echo Adding opensync-wifi-controller to /etc/hosts
|
|
||||||
echo "127.0.0.1 opensync-wifi-controller" >> /etc/hosts
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
echo Starting mosquitto MQTT broker
|
|
||||||
/usr/sbin/mosquitto -d -c /etc/mosquitto/mosquitto.conf
|
|
||||||
|
|
||||||
# Provide default values for the environment variables
|
|
||||||
MQTT_CLIENT_KEYSTORE_PASSWORD="${MQTT_CLIENT_KEYSTORE_PASSWORD:=mypassword}"
|
|
||||||
MQTT_CLIENT_KEYSTORE_FILE="${MQTT_CLIENT_KEYSTORE_FILE:=/opt/tip-wlan/certs/client_keystore.jks}"
|
|
||||||
MQTT_TRUSTSTORE_FILE="${MQTT_TRUSTSTORE_FILE:=/opt/tip-wlan/certs/truststore.jks}"
|
|
||||||
MQTT_TRUSTSTORE_PASSWORD="${MQTT_TRUSTSTORE_PASSWORD:=mypassword}"
|
|
||||||
|
|
||||||
OVSDB_SERVER_KEYSTORE_FILE="${OVSDB_SERVER_KEYSTORE_FILE:=/opt/tip-wlan/certs/server.pkcs12}"
|
|
||||||
OVSDB_SERVER_KEYSTORE_PASSWORD="${OVSDB_SERVER_KEYSTORE_PASSWORD:=mypassword}"
|
|
||||||
OVSDB_SERVER_TRUSTSTORE_FILE="${OVSDB_SERVER_TRUSTSTORE_FILE:=/opt/tip-wlan/certs/truststore.jks}"
|
|
||||||
OVSDB_SERVER_TRUSTSTORE_PASSWORD="${OVSDB_SERVER_TRUSTSTORE_PASSWORD:=mypassword}"
|
|
||||||
OVSDB_CONFIG_FILE="${OVSDB_CONFIG_FILE:=/app/opensync/config_2_ssids.json}"
|
|
||||||
|
|
||||||
echo Reading AP configuration from $OVSDB_CONFIG_FILE
|
|
||||||
|
|
||||||
EXT_CLIENT_KEYSTORE_PASSWORD="${EXT_CLIENT_KEYSTORE_PASSWORD:=mypassword}"
|
|
||||||
EXT_CLIENT_KEYSTORE_FILE="${EXT_CLIENT_KEYSTORE_FILE:=/opt/tip-wlan/certs/client_keystore.jks}"
|
|
||||||
EXT_TRUSTSTORE_FILE="${EXT_TRUSTSTORE_FILE:=/opt/tip-wlan/certs/truststore.jks}"
|
|
||||||
EXT_TRUSTSTORE_PASSWORD="${EXT_TRUSTSTORE_PASSWORD:=mypassword}"
|
|
||||||
|
|
||||||
MQTT_BROKER_HOST="${MQTT_BROKER_HOST:=opensync-mqtt-broker}"
|
|
||||||
OVSDB_MANAGER_HOST="${OVSDB_MANAGER_HOST:=opensync-wifi-controller}"
|
|
||||||
|
|
||||||
LOGBACK_CONFIG_FILE="${LOGBACK_CONFIG_FILE:=/app/opensync/logback.xml}"
|
|
||||||
|
|
||||||
# Create ssl.properties file
|
|
||||||
cat > /app/ssl.properties <<END_OF_FILE
|
|
||||||
truststorePass=$OVSDB_SERVER_TRUSTSTORE_PASSWORD
|
|
||||||
truststoreFile=file:$OVSDB_SERVER_TRUSTSTORE_FILE
|
|
||||||
truststoreType=JKS
|
|
||||||
truststoreProvider=SUN
|
|
||||||
|
|
||||||
keyAlias=1
|
|
||||||
keystorePass=$OVSDB_SERVER_KEYSTORE_PASSWORD
|
|
||||||
keystoreFile=file:$OVSDB_SERVER_KEYSTORE_FILE
|
|
||||||
keystoreType=pkcs12
|
|
||||||
keystoreProvider=SunJSSE
|
|
||||||
|
|
||||||
sslProtocol=TLS
|
|
||||||
END_OF_FILE
|
|
||||||
|
|
||||||
# Create httpClientConfig.json file
|
|
||||||
cat > /app/httpClientConfig.json <<END_OF_FILE
|
|
||||||
{
|
|
||||||
"maxConnectionsTotal":100,
|
|
||||||
"maxConnectionsPerRoute":10,
|
|
||||||
"truststoreType":"JKS",
|
|
||||||
"truststoreProvider":"SUN",
|
|
||||||
"truststoreFile":"file:$EXT_TRUSTSTORE_FILE",
|
|
||||||
"truststorePass":"$EXT_TRUSTSTORE_PASSWORD",
|
|
||||||
"keystoreType":"JKS",
|
|
||||||
"keystoreProvider":"SUN",
|
|
||||||
"keystoreFile":"file:$EXT_CLIENT_KEYSTORE_FILE",
|
|
||||||
"keystorePass":"$EXT_CLIENT_KEYSTORE_PASSWORD",
|
|
||||||
"keyAlias":"clientkeyalias",
|
|
||||||
"credentialsList":[
|
|
||||||
{"host":"localhost","port":-1,"user":"user","password":"password"}
|
|
||||||
]
|
|
||||||
|
|
||||||
}
|
|
||||||
END_OF_FILE
|
|
||||||
|
|
||||||
# Set environment for the opensync gateway process
|
|
||||||
PROFILES=" -Dspring.profiles.include=mqtt_receiver,ovsdb_redirector,ovsdb_manager"
|
|
||||||
|
|
||||||
SSL_PROPS=" "
|
|
||||||
SSL_PROPS="$SSL_PROPS -Dssl.props=file:/app/ssl.properties"
|
|
||||||
SSL_PROPS="$SSL_PROPS -Dtip.wlan.httpClientConfig=file:/app/httpClientConfig.json"
|
|
||||||
|
|
||||||
CLIENT_MQTT_SSL_PROPS=" "
|
|
||||||
CLIENT_MQTT_SSL_PROPS="$CLIENT_MQTT_SSL_PROPS -Djavax.net.ssl.keyStore=$MQTT_CLIENT_KEYSTORE_FILE"
|
|
||||||
CLIENT_MQTT_SSL_PROPS="$CLIENT_MQTT_SSL_PROPS -Djavax.net.ssl.keyStorePassword=$MQTT_CLIENT_KEYSTORE_PASSWORD"
|
|
||||||
CLIENT_MQTT_SSL_PROPS="$CLIENT_MQTT_SSL_PROPS -Djavax.net.ssl.trustStore=$MQTT_TRUSTSTORE_FILE"
|
|
||||||
CLIENT_MQTT_SSL_PROPS="$CLIENT_MQTT_SSL_PROPS -Djavax.net.ssl.trustStorePassword=$MQTT_TRUSTSTORE_PASSWORD"
|
|
||||||
|
|
||||||
OVSDB_PROPS=" "
|
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.managerAddr=$OVSDB_MANAGER_HOST"
|
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.listenPort=6640 "
|
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.redirector.listenPort=6643"
|
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.timeoutSec=30"
|
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.trustStore=$OVSDB_SERVER_TRUSTSTORE_FILE"
|
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.trustStorePassword=$OVSDB_SERVER_TRUSTSTORE_PASSWORD"
|
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.keyStore=$OVSDB_SERVER_KEYSTORE_FILE"
|
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.keyStorePassword=$OVSDB_SERVER_KEYSTORE_PASSWORD"
|
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.configFileName=$OVSDB_CONFIG_FILE"
|
|
||||||
|
|
||||||
MQTT_PROPS=" "
|
|
||||||
MQTT_PROPS="$MQTT_PROPS -Dconnectus.mqttBroker.address=$MQTT_BROKER_HOST"
|
|
||||||
MQTT_PROPS="$MQTT_PROPS -Dconnectus.mqttBroker.listenPort=1883"
|
|
||||||
|
|
||||||
LOGGING_PROPS=" -Dlogging.config=file:$LOGBACK_CONFIG_FILE"
|
|
||||||
|
|
||||||
RESTAPI_PROPS=" "
|
|
||||||
RESTAPI_PROPS="$RESTAPI_PROPS -Dserver.port=4043"
|
|
||||||
|
|
||||||
SPRING_EXTRA_PROPS=" --add-opens java.base/java.lang=ALL-UNNAMED"
|
|
||||||
|
|
||||||
export ALL_PROPS="$PROFILES $SSL_PROPS $CLIENT_MQTT_SSL_PROPS $OVSDB_PROPS $MQTT_PROPS $LOGGING_PROPS $RESTAPI_PROPS $SPRING_EXTRA_PROPS "
|
|
||||||
|
|
||||||
echo Starting opensync wifi controller
|
|
||||||
|
|
||||||
#echo Result: $ALL_PROPS
|
|
||||||
java $ALL_PROPS -jar app.jar > /app/opensync-wifi-controller-stdout.out 2>&1
|
|
||||||
|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
FROM adoptopenjdk/openjdk13:alpine-jre
|
FROM adoptopenjdk/openjdk13:alpine-jre
|
||||||
MAINTAINER ConnectUs
|
MAINTAINER TipWlan
|
||||||
|
|
||||||
# Update the package list and upgrade installed packages
|
# Update the package list and upgrade installed packages
|
||||||
RUN apk update && apk upgrade && apk add bash
|
RUN apk update && apk upgrade && apk add bash
|
||||||
@@ -9,6 +9,7 @@ RUN mkdir -p /opt/tip-wlan/certs
|
|||||||
COPY maven/app.jar /app
|
COPY maven/app.jar /app
|
||||||
COPY app/opensync/logback.xml /app/opensync/logback.xml
|
COPY app/opensync/logback.xml /app/opensync/logback.xml
|
||||||
COPY app/run.sh /app
|
COPY app/run.sh /app
|
||||||
|
COPY app/commit.properties /app
|
||||||
|
|
||||||
RUN chmod +x /app/run.sh
|
RUN chmod +x /app/run.sh
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,4 @@
|
|||||||
|
#This is a dummy property file to be used when running docker locally
|
||||||
|
date=${date}
|
||||||
|
commitId=${commit.id}
|
||||||
|
projectVersion=${project.version}
|
||||||
@@ -13,16 +13,38 @@
|
|||||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
|
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
|
||||||
</encoder>
|
</encoder>
|
||||||
</appender>
|
</appender>
|
||||||
|
|
||||||
<!--
|
|
||||||
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
|
|
||||||
<file>myApp.log</file>
|
|
||||||
|
|
||||||
|
<appender name="mqttDataFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||||
|
<file>/app/logs/mqttData.log</file>
|
||||||
|
<append>true</append>
|
||||||
<encoder>
|
<encoder>
|
||||||
<pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</pattern>
|
<pattern>%date %msg%n</pattern>
|
||||||
</encoder>
|
</encoder>
|
||||||
|
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
|
||||||
|
<fileNamePattern>/app/logs/mqttData.%i.log.gz</fileNamePattern>
|
||||||
|
<minIndex>1</minIndex>
|
||||||
|
<maxIndex>3</maxIndex>
|
||||||
|
</rollingPolicy>
|
||||||
|
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
|
||||||
|
<maxFileSize>20MB</maxFileSize>
|
||||||
|
</triggeringPolicy>
|
||||||
|
</appender>
|
||||||
|
|
||||||
|
<appender name="mqttMsgTracer" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||||
|
<file>/app/logs/mqttMsgTracer.log</file>
|
||||||
|
<append>true</append>
|
||||||
|
<encoder>
|
||||||
|
<pattern>%date %msg%n</pattern>
|
||||||
|
</encoder>
|
||||||
|
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
|
||||||
|
<fileNamePattern>/app/logs/mqttMsgTracer.%i.log.gz</fileNamePattern>
|
||||||
|
<minIndex>1</minIndex>
|
||||||
|
<maxIndex>3</maxIndex>
|
||||||
|
</rollingPolicy>
|
||||||
|
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
|
||||||
|
<maxFileSize>20MB</maxFileSize>
|
||||||
|
</triggeringPolicy>
|
||||||
</appender>
|
</appender>
|
||||||
-->
|
|
||||||
|
|
||||||
<appender name="logfile" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
<appender name="logfile" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||||
<file>/app/logs/opensyncgw.log</file>
|
<file>/app/logs/opensyncgw.log</file>
|
||||||
@@ -57,20 +79,16 @@
|
|||||||
<logger name="org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer" level="INFO"/>
|
<logger name="org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer" level="INFO"/>
|
||||||
|
|
||||||
<logger name="com.telecominfraproject.wlan" level="DEBUG"/>
|
<logger name="com.telecominfraproject.wlan" level="DEBUG"/>
|
||||||
<logger name="ai.connectus" level="DEBUG"/>
|
|
||||||
<logger name="com.netflix.servo.tag.aws.AwsInjectableTag" level="OFF"/>
|
<logger name="com.netflix.servo.tag.aws.AwsInjectableTag" level="OFF"/>
|
||||||
<logger name="com.vmware.ovsdb.service.OvsdbConnectionInfo" level="OFF"/>
|
<logger name="com.vmware.ovsdb.service.OvsdbConnectionInfo" level="OFF"/>
|
||||||
<logger name="com.vmware.ovsdb.netty.OvsdbConnectionHandler" level="ERROR"/>
|
<logger name="com.vmware.ovsdb.netty.OvsdbConnectionHandler" level="ERROR"/>
|
||||||
|
|
||||||
<logger name="MQTT_DATA" level="DEBUG"/>
|
|
||||||
|
|
||||||
<!--
|
<logger name="MQTT_DATA" level="INFO" additivity="false">
|
||||||
<logger name="org.springframework.security.web.authentication.preauth" level="DEBUG"/>
|
<appender-ref ref="mqttDataFile"/>
|
||||||
-->
|
</logger>
|
||||||
|
|
||||||
<root level="WARN">
|
<root level="WARN">
|
||||||
<!-- <appender-ref ref="stdout"/>-->
|
|
||||||
<appender-ref ref="logfile"/>
|
<appender-ref ref="logfile"/>
|
||||||
</root>
|
</root>
|
||||||
|
|
||||||
</configuration>
|
</configuration>
|
||||||
|
|||||||
@@ -10,28 +10,123 @@ CLIENT_MQTT_SSL_PROPS+=" -Djavax.net.ssl.keyStore=/opt/tip-wlan/certs/client_key
|
|||||||
CLIENT_MQTT_SSL_PROPS+=" -Djavax.net.ssl.keyStorePassword=mypassword"
|
CLIENT_MQTT_SSL_PROPS+=" -Djavax.net.ssl.keyStorePassword=mypassword"
|
||||||
CLIENT_MQTT_SSL_PROPS+=" -Djavax.net.ssl.trustStore=/opt/tip-wlan/certs/truststore.jks"
|
CLIENT_MQTT_SSL_PROPS+=" -Djavax.net.ssl.trustStore=/opt/tip-wlan/certs/truststore.jks"
|
||||||
CLIENT_MQTT_SSL_PROPS+=" -Djavax.net.ssl.trustStorePassword=mypassword"
|
CLIENT_MQTT_SSL_PROPS+=" -Djavax.net.ssl.trustStorePassword=mypassword"
|
||||||
CLIENT_MQTT_SSL_PROPS+=" -Dconnectus.mqttBroker.password=admin"
|
CLIENT_MQTT_SSL_PROPS+=" -Dtip.wlan.mqttBroker.password=admin"
|
||||||
|
|
||||||
|
OVSDB_MANAGER_HOST=${OVSDB_MANAGER}
|
||||||
|
MQTT_BROKER_HOST_INTERNAL="${MQTT_SERVER_INTERNAL}"
|
||||||
|
MQTT_BROKER_HOST_EXTERNAL="${MQTT_SERVER_EXTERNAL}"
|
||||||
|
PROV_SERVER_HOST="${PROV_SERVER}"
|
||||||
|
SSC_SERVER_HOST="${SSC_SERVER}"
|
||||||
|
ALL_IN_ONE_HOST="${INTEGRATED_SERVER}"
|
||||||
|
FILE_STORE_DIRECTORY="${FILE_STORE_DIRECTORY_INTERNAL:=/tmp/filestore}"
|
||||||
|
FILE_STORE_EXTERNAL_URL="${FILE_STORE_URL}"
|
||||||
|
MQTT_BROKER_EXTERNAL_PORT="${MQTT_BROKER_EXTERNAL_PORT}"
|
||||||
|
OVSDB_EXTERNAL_PORT="${OVSDB_EXTERNAL_PORT}"
|
||||||
|
OFF_CHANNEL_REPORTING_INTERVAL_SECONDS="${OFF_CHANNEL_REPORTING_INTERVAL_SECONDS:=120}"
|
||||||
|
REPORTING_INTERVAL_SECONDS="${REPORTING_INTERVAL_SECONDS:=60}"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
OVSDB_PROPS=" "
|
OVSDB_PROPS=" "
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.managerAddr=opensync-controller"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.managerAddr=$OVSDB_MANAGER_HOST"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.listenPort=6640 "
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.listenPort=6640 "
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.redirector.listenPort=6643"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.redirector.listenPort=6643"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.timeoutSec=30"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.timeoutSec=30"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.trustStore=/opt/tip-wlan/certs/truststore.jks"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.trustStore=/opt/tip-wlan/certs/truststore.jks"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.keyStore=/opt/tip-wlan/certs/server.pkcs12"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.keyStore=/opt/tip-wlan/certs/server.pkcs12"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.configFileName=/app/opensync/config_2_ssids.json"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.configFileName=/app/opensync/config_2_ssids.json"
|
||||||
|
|
||||||
MQTT_PROPS=" "
|
MQTT_PROPS=" "
|
||||||
MQTT_PROPS+=" -Dconnectus.mqttBroker.address=tip-wlan-opensync-mqtt-broker"
|
MQTT_PROPS+=" -Dtip.wlan.mqttBroker.address.internal=$MQTT_BROKER_HOST_INTERNAL"
|
||||||
MQTT_PROPS+=" -Dconnectus.mqttBroker.listenPort=1883"
|
MQTT_PROPS+=" -Dtip.wlan.mqttBroker.address.external=$MQTT_BROKER_HOST_EXTERNAL"
|
||||||
|
MQTT_PROPS+=" -Dtip.wlan.ovsdb.externalPort=$OVSDB_EXTERNAL_PORT"
|
||||||
|
MQTT_PROPS+=" -Dtip.wlan.mqttBroker.externalPort=$MQTT_BROKER_EXTERNAL_PORT"
|
||||||
|
MQTT_PROPS+=" -Dtip.wlan.mqttBroker.listenPort=1883"
|
||||||
|
|
||||||
LOGGING_PROPS=" -Dlogging.config=file:/app/opensync/logback.xml"
|
LOGBACK_CONFIG_FILE="${LOGBACK_CONFIG_FILE:=/app/opensync/logback.xml}"
|
||||||
|
LOGGING_PROPS=" -Dlogging.config=file:$LOGBACK_CONFIG_FILE"
|
||||||
|
|
||||||
RESTAPI_PROPS=" "
|
RESTAPI_PROPS=" "
|
||||||
RESTAPI_PROPS+=" -Dserver.port=443"
|
RESTAPI_PROPS+=" -Dserver.port=9096 -Dtip.wlan.secondaryPort=9097"
|
||||||
|
|
||||||
SPRING_EXTRA_PROPS=" --add-opens java.base/java.lang=ALL-UNNAMED"
|
SPRING_EXTRA_PROPS=" --add-opens java.base/java.lang=ALL-UNNAMED"
|
||||||
|
|
||||||
export ALL_PROPS="$PROFILES $SSL_PROPS $CLIENT_MQTT_SSL_PROPS $OVSDB_PROPS $MQTT_PROPS $LOGGING_PROPS $RESTAPI_PROPS $SPRING_EXTRA_PROPS"
|
HOST_PROPS=" "
|
||||||
|
|
||||||
java $ALL_PROPS -jar app.jar
|
## These properties are used by the Routing Service and the values will be
|
||||||
|
## overridden in Helm chart to the IP-Address of running opensync-gw pod
|
||||||
|
## If OVSDB_MANAGER_IP variable is not defined, these properties default
|
||||||
|
## to the Hostname of the container
|
||||||
|
if [[ -n ${OVSDB_MANAGER_IP} ]]
|
||||||
|
then
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.externalHostName=${OVSDB_MANAGER_IP}"
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.internalHostName=${OVSDB_MANAGER_IP}"
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.introspectTokenApi.host=${OVSDB_MANAGER_IP}:9096"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -n $PROV_SERVER_HOST && -n $SSC_SERVER_HOST ]]
|
||||||
|
then
|
||||||
|
echo Use specifed local host
|
||||||
|
SSC_URL=https://${SSC_SERVER_HOST}:9031
|
||||||
|
PROV_URL=https://${PROV_SERVER_HOST}:9091
|
||||||
|
else
|
||||||
|
echo Its an Integrated server environment
|
||||||
|
SSC_URL=https://${ALL_IN_ONE_HOST}:9092
|
||||||
|
PROV_URL=https://${ALL_IN_ONE_HOST}:9092
|
||||||
|
fi
|
||||||
|
# SSC URLs
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.cloudEventDispatcherBaseUrl=$SSC_URL"
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.statusServiceBaseUrl=$SSC_URL"
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.routingServiceBaseUrl=$SSC_URL"
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.alarmServiceBaseUrl=$SSC_URL"
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.systemEventServiceBaseUrl=$SSC_URL"
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.clientServiceBaseUrl=$SSC_URL"
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.serviceMetricServiceBaseUrl=$SSC_URL"
|
||||||
|
|
||||||
|
# PROV URLs
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.customerServiceBaseUrl=$PROV_URL"
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.portalUserServiceBaseUrl=$PROV_URL"
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.firmwareServiceBaseUrl=$PROV_URL"
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.locationServiceBaseUrl=$PROV_URL"
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.manufacturerServiceBaseUrl=$PROV_URL"
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.equipmentServiceBaseUrl=$PROV_URL"
|
||||||
|
HOST_PROPS+=" -Dtip.wlan.profileServiceBaseUrl=$PROV_URL"
|
||||||
|
|
||||||
|
DEFAULT_BRIDGE="${DEFAULT_BRIDGE:=lan}"
|
||||||
|
DEFAULT_WAN_TYPE="${DEFAULT_WAN_TYPE:=bridge}"
|
||||||
|
DEFAULT_LAN_TYPE="${DEFAULT_LAN_TYPE:=bridge}"
|
||||||
|
DEFAULT_LAN_NAME="${DEFAULT_LAN_NAME:=lan}"
|
||||||
|
DEFAULT_WAN_NAME="${DEFAULT_WAN_NAME:=wan}"
|
||||||
|
|
||||||
|
|
||||||
|
AUTO_PROV_CUSTOMER_ID="${AUTO_PROV_CUSTOMER_ID:=2}"
|
||||||
|
|
||||||
|
PROV_PROPS=" "
|
||||||
|
PROV_PROPS+=" -Dtip.wlan.ovsdb.wifi-iface.default_bridge=$DEFAULT_BRIDGE"
|
||||||
|
PROV_PROPS+=" -Dtip.wlan.ovsdb.wifi-iface.default_wan_type=$DEFAULT_WAN_TYPE"
|
||||||
|
PROV_PROPS+=" -Dtip.wlan.ovsdb.wifi-iface.default_wan_name=$DEFAULT_WAN_NAME"
|
||||||
|
PROV_PROPS+=" -Dtip.wlan.ovsdb.wifi-iface.default_lan_type=$DEFAULT_LAN_TYPE"
|
||||||
|
PROV_PROPS+=" -Dtip.wlan.ovsdb.wifi-iface.default_lan_name=$DEFAULT_LAN_NAME"
|
||||||
|
PROV_PROPS+=" -Dtip.wlan.defaultOffChannelReportingIntervalSeconds=$OFF_CHANNEL_REPORTING_INTERVAL_SECONDS"
|
||||||
|
PROV_PROPS+=" -Dtip.wlan.defaultReportingIntervalSeconds=$REPORTING_INTERVAL_SECONDS"
|
||||||
|
|
||||||
|
PROV_PROPS+=" -Dtip.wlan.ovsdb.autoProvisionedCustomerId=$AUTO_PROV_CUSTOMER_ID"
|
||||||
|
|
||||||
|
FILE_STORE_PROPS=" "
|
||||||
|
FILE_STORE_PROPS+=" -Dtip.wlan.fileStoreDirectory=$FILE_STORE_DIRECTORY"
|
||||||
|
FILE_STORE_PROPS+=" -Dtip.wlan.externalFileStoreURL=$FILE_STORE_EXTERNAL_URL"
|
||||||
|
|
||||||
|
REMOTE_DEBUG_PORT=${REMOTE_DEBUG_PORT:-'5005'}
|
||||||
|
if [ "x$REMOTE_DEBUG_ENABLE" == "xtrue" ]
|
||||||
|
then
|
||||||
|
REMOTE_DEBUG=" -agentlib:jdwp=transport=dt_socket,server=y,address=*:$REMOTE_DEBUG_PORT,suspend=n"
|
||||||
|
else
|
||||||
|
REMOTE_DEBUG=" "
|
||||||
|
fi
|
||||||
|
|
||||||
|
JVM_EXTRA_PROPS=" ${JVM_MEM_OPTIONS:- } "
|
||||||
|
|
||||||
|
export ALL_PROPS="$JVM_EXTRA_PROPS $PROFILES $SSL_PROPS $CLIENT_MQTT_SSL_PROPS $OVSDB_PROPS $MQTT_PROPS $LOGGING_PROPS $RESTAPI_PROPS $SPRING_EXTRA_PROPS $HOST_PROPS $PROV_PROPS $FILE_STORE_PROPS $REMOTE_DEBUG"
|
||||||
|
|
||||||
|
java $ALL_PROPS -jar app.jar
|
||||||
|
|||||||
1
opensync-gateway-cloud-process/.gitignore
vendored
1
opensync-gateway-cloud-process/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
/target/
|
|
||||||
@@ -1,11 +1,9 @@
|
|||||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<artifactId>tip-wlan-cloud-root-pom</artifactId>
|
<artifactId>tip-wlan-cloud-root-pom</artifactId>
|
||||||
<version>0.0.1-SNAPSHOT</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
<relativePath>../../wlan-cloud-root</relativePath>
|
<relativePath>../../wlan-cloud-root</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>opensync-gateway-cloud-process</artifactId>
|
<artifactId>opensync-gateway-cloud-process</artifactId>
|
||||||
@@ -18,107 +16,99 @@
|
|||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<!-- <dependency> <groupId>com.telecominfraproject.wlan</groupId> <artifactId>opensync-gateway</artifactId>
|
<!-- <dependency> <groupId>com.telecominfraproject.wlan</groupId> <artifactId>opensync-gateway</artifactId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version> </dependency> -->
|
<version>0.0.1-SNAPSHOT</version> </dependency> -->
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<artifactId>opensync-ext-cloud</artifactId>
|
<artifactId>opensync-ext-cloud</artifactId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
|
||||||
<artifactId>base-container</artifactId>
|
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>filestore-service</artifactId>
|
<artifactId>filestore-service</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>customer-service-remote</artifactId>
|
<artifactId>customer-service-remote</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>location-service-remote</artifactId>
|
<artifactId>location-service-remote</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>equipment-service-remote</artifactId>
|
<artifactId>equipment-service-remote</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>profile-service-remote</artifactId>
|
<artifactId>profile-service-remote</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>portal-user-service-remote</artifactId>
|
<artifactId>portal-user-service-remote</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>service-metric-service-remote</artifactId>
|
<artifactId>service-metric-service-remote</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>system-event-service-remote</artifactId>
|
<artifactId>system-event-service-remote</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>alarm-service-remote</artifactId>
|
<artifactId>alarm-service-remote</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>status-service-remote</artifactId>
|
<artifactId>status-service-remote</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>client-service-remote</artifactId>
|
<artifactId>client-service-remote</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>routing-service-remote</artifactId>
|
<artifactId>routing-service-remote</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>firmware-service-remote</artifactId>
|
<artifactId>firmware-service-remote</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>manufacturer-service-remote</artifactId>
|
<artifactId>manufacturer-service-remote</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<artifactId>cloud-event-dispatcher-remote</artifactId>
|
<artifactId>cloud-event-dispatcher-remote</artifactId>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|||||||
@@ -0,0 +1,40 @@
|
|||||||
|
package com.telecominfraproject.wlan.opensync.startuptasks;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.boot.ApplicationArguments;
|
||||||
|
import org.springframework.boot.ApplicationRunner;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
import com.telecominfraproject.wlan.core.model.pair.PairIntString;
|
||||||
|
import com.telecominfraproject.wlan.customer.service.CustomerServiceInterface;
|
||||||
|
import com.telecominfraproject.wlan.equipment.EquipmentServiceInterface;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
public class OpensyncGatewayStartupListener implements ApplicationRunner {
|
||||||
|
|
||||||
|
private static final Logger LOG = LoggerFactory.getLogger(OpensyncGatewayStartupListener.class);
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private CustomerServiceInterface customerServiceInterface;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private EquipmentServiceInterface equipmentServiceInterface;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void run(ApplicationArguments args) throws Exception {
|
||||||
|
LOG.debug("OSGW startup commands");
|
||||||
|
try {
|
||||||
|
// List<PairIntString> first10Customers = customerServiceInterface.getAll(10, -1);
|
||||||
|
// LOG.info("first10Customers: {}", first10Customers);
|
||||||
|
|
||||||
|
} catch (Exception e) {
|
||||||
|
LOG.error("Got Exception ", e);
|
||||||
|
}
|
||||||
|
LOG.debug("Completed OSGW startup commands");
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -11,7 +11,6 @@
|
|||||||
"keystorePass":"mypassword",
|
"keystorePass":"mypassword",
|
||||||
"keyAlias":"clientqrcode",
|
"keyAlias":"clientqrcode",
|
||||||
"credentialsList":[
|
"credentialsList":[
|
||||||
{"host":"localhost","port":-1,"user":"user","password":"password"}
|
|
||||||
]
|
]
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -81,7 +81,9 @@ spring.profiles.include=use_ssl_with_client_cert_and_basic_auth,client_certifica
|
|||||||
tip.wlan.httpClientConfig=classpath:httpClientConfig.json
|
tip.wlan.httpClientConfig=classpath:httpClientConfig.json
|
||||||
#this user/password is used together with http_digest_auth and http_basic_auth spring profiles
|
#this user/password is used together with http_digest_auth and http_basic_auth spring profiles
|
||||||
tip.wlan.serviceUser=user
|
tip.wlan.serviceUser=user
|
||||||
tip.wlan.servicePassword=password
|
# The value in here is bcrypt-encoded string "password", generated with the following command
|
||||||
|
# htpasswd -nBC 10 "" | cut -d ':' -f2
|
||||||
|
tip.wlan.servicePassword=$2y$10$rXnaSR5q2PsFWs8WEfJAguKAPh0oHLFkAJFqd7Pf7PVa3cOIClGoS
|
||||||
|
|
||||||
spring.main.show-banner=false
|
spring.main.show-banner=false
|
||||||
server.port=9096
|
server.port=9096
|
||||||
@@ -94,6 +96,8 @@ tip.wlan.listOfPathsToProtect=/api,/filestore
|
|||||||
#this server only supports REST requests, CSRF would get in the way
|
#this server only supports REST requests, CSRF would get in the way
|
||||||
tip.wlan.csrf-enabled=false
|
tip.wlan.csrf-enabled=false
|
||||||
|
|
||||||
|
# do not allow clientCn alteration
|
||||||
|
tip.wlan.preventClientCnAlteration=false
|
||||||
#properties that configure remote interfaces to communicate with cloud
|
#properties that configure remote interfaces to communicate with cloud
|
||||||
# when separate portal - prov - ssc processes are in use:
|
# when separate portal - prov - ssc processes are in use:
|
||||||
##SSC-related services
|
##SSC-related services
|
||||||
@@ -101,6 +105,9 @@ tip.wlan.csrf-enabled=false
|
|||||||
#tip.wlan.statusServiceBaseUrl=https://localhost:9031
|
#tip.wlan.statusServiceBaseUrl=https://localhost:9031
|
||||||
#tip.wlan.routingServiceBaseUrl=https://localhost:9031
|
#tip.wlan.routingServiceBaseUrl=https://localhost:9031
|
||||||
#tip.wlan.alarmServiceBaseUrl=https://localhost:9031
|
#tip.wlan.alarmServiceBaseUrl=https://localhost:9031
|
||||||
|
#tip.wlan.clientServiceBaseUrl=https://localhost:9031
|
||||||
|
#tip.wlan.systemEventServiceBaseUrl=https://localhost:9031
|
||||||
|
#tip.wlan.serviceMetricServiceBaseUrl=https://localhost:9031
|
||||||
##PROV-related services
|
##PROV-related services
|
||||||
#tip.wlan.customerServiceBaseUrl=https://localhost:9091
|
#tip.wlan.customerServiceBaseUrl=https://localhost:9091
|
||||||
#tip.wlan.locationServiceBaseUrl=https://localhost:9091
|
#tip.wlan.locationServiceBaseUrl=https://localhost:9091
|
||||||
@@ -108,6 +115,7 @@ tip.wlan.csrf-enabled=false
|
|||||||
#tip.wlan.profileServiceBaseUrl=https://localhost:9091
|
#tip.wlan.profileServiceBaseUrl=https://localhost:9091
|
||||||
#tip.wlan.firmwareServiceBaseUrl=https://localhost:9091
|
#tip.wlan.firmwareServiceBaseUrl=https://localhost:9091
|
||||||
#tip.wlan.manufacturerServiceBaseUrl=https://localhost:9091
|
#tip.wlan.manufacturerServiceBaseUrl=https://localhost:9091
|
||||||
|
#tip.wlan.portalUserServiceBaseUrl=https://localhost:9091
|
||||||
|
|
||||||
# For all-cloud-in-one-process :
|
# For all-cloud-in-one-process :
|
||||||
#SSC-related services
|
#SSC-related services
|
||||||
@@ -115,14 +123,20 @@ tip.wlan.cloudEventDispatcherBaseUrl=https://localhost:9092
|
|||||||
tip.wlan.statusServiceBaseUrl=https://localhost:9092
|
tip.wlan.statusServiceBaseUrl=https://localhost:9092
|
||||||
tip.wlan.routingServiceBaseUrl=https://localhost:9092
|
tip.wlan.routingServiceBaseUrl=https://localhost:9092
|
||||||
tip.wlan.alarmServiceBaseUrl=https://localhost:9092
|
tip.wlan.alarmServiceBaseUrl=https://localhost:9092
|
||||||
|
tip.wlan.clientServiceBaseUrl=https://localhost:9092
|
||||||
|
tip.wlan.systemEventServiceBaseUrl=https://localhost:9092
|
||||||
|
tip.wlan.serviceMetricServiceBaseUrl=https://localhost:9092
|
||||||
#PROV-related services
|
#PROV-related services
|
||||||
tip.wlan.customerServiceBaseUrl=https://localhost:9092
|
tip.wlan.customerServiceBaseUrl=https://localhost:9092
|
||||||
tip.wlan.locationServiceBaseUrl=https://localhost:9092
|
tip.wlan.locationServiceBaseUrl=https://localhost:9092
|
||||||
tip.wlan.equipmentServiceBaseUrl=https://localhost:9092
|
tip.wlan.equipmentServiceBaseUrl=https://localhost:9092
|
||||||
tip.wlan.profileServiceBaseUrl=https://localhost:9092
|
tip.wlan.profileServiceBaseUrl=https://localhost:9092
|
||||||
tip.wlan.clientServiceBaseUrl=https://localhost:9092
|
|
||||||
tip.wlan.firmwareServiceBaseUrl=https://localhost:9092
|
tip.wlan.firmwareServiceBaseUrl=https://localhost:9092
|
||||||
tip.wlan.manufacturerServiceBaseUrl=https://localhost:9092
|
tip.wlan.manufacturerServiceBaseUrl=https://localhost:9092
|
||||||
|
tip.wlan.portalUserServiceBaseUrl=https://localhost:9092
|
||||||
|
|
||||||
|
tip.wlan.fileStoreDirectory=/tmp/tip-wlan-filestore
|
||||||
|
tip.wlan.externalFileStoreURL=https://localhost:9092
|
||||||
|
|
||||||
#server.session-timeout= # session timeout in seconds
|
#server.session-timeout= # session timeout in seconds
|
||||||
#server.tomcat.max-threads = 0 # number of threads in protocol handler
|
#server.tomcat.max-threads = 0 # number of threads in protocol handler
|
||||||
|
|||||||
@@ -7,6 +7,7 @@
|
|||||||
<listEntry value="1"/>
|
<listEntry value="1"/>
|
||||||
</listAttribute>
|
</listAttribute>
|
||||||
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_EXCLUDE_TEST_CODE" value="true"/>
|
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_EXCLUDE_TEST_CODE" value="true"/>
|
||||||
|
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_SHOW_CODEDETAILS_IN_EXCEPTION_MESSAGES" value="true"/>
|
||||||
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_CLASSPATH_ONLY_JAR" value="false"/>
|
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_CLASSPATH_ONLY_JAR" value="false"/>
|
||||||
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_START_ON_FIRST_THREAD" value="true"/>
|
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_START_ON_FIRST_THREAD" value="true"/>
|
||||||
<listAttribute key="org.eclipse.jdt.launching.CLASSPATH">
|
<listAttribute key="org.eclipse.jdt.launching.CLASSPATH">
|
||||||
@@ -21,5 +22,5 @@
|
|||||||
<stringAttribute key="org.eclipse.jdt.launching.MODULE_NAME" value="opensync-gateway-cloud-process"/>
|
<stringAttribute key="org.eclipse.jdt.launching.MODULE_NAME" value="opensync-gateway-cloud-process"/>
|
||||||
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="opensync-gateway-cloud-process"/>
|
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="opensync-gateway-cloud-process"/>
|
||||||
<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.m2e.launchconfig.sourcepathProvider"/>
|
<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.m2e.launchconfig.sourcepathProvider"/>
|
||||||
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="--add-opens java.base/java.lang=ALL-UNNAMED -Dssl.props=file://${project_loc:opensync-gateway-cloud-process}/src/main/resources/app/certs/ssl.properties -Dtip.wlan.httpClientConfig=file://${project_loc:opensync-gateway-cloud-process}/src/main/resources/app/certs/httpClientConfig.json -Djavax.net.ssl.keyStore=${connectus_certs}/client_keystore.jks -Djavax.net.ssl.keyStorePassword=mypassword -Djavax.net.ssl.trustStore=${connectus_certs}/truststore.jks -Djavax.net.ssl.trustStorePassword=mypassword -Dconnectus.ovsdb.managerAddr=${local_server_address} -Dconnectus.ovsdb.listenPort=6640 -Dconnectus.ovsdb.redirector.listenPort=6643 -Dconnectus.ovsdb.timeoutSec=30 -Dconnectus.ovsdb.trustStore=${connectus_certs}/truststore.jks -Dconnectus.ovsdb.keyStore=${connectus_certs}/server.pkcs12 -Dconnectus.mqttBroker.address=${local_server_address} -Dconnectus.mqttBroker.listenPort=1883 -Dconnectus.ovsdb.wifi-iface.default_bridge=br-lan -Dtip.wlan.introspectTokenApi.host=${local_server_address}:9096 -Dtip.wlan.introspectTokenApi.clientToken=token_placeholder -Dtip.wlan.serviceUser=user -Dtip.wlan.servicePassword=password -Dconnectus.ovsdb.autoProvisionedCustomerId=2 -Dconnectus.ovsdb.autoProvisionedSsid=Connectus-cloud -Dspring.main.show-banner=false -Dserver.port=9096 -Dtip.wlan.secondaryPort=7071 -Dtip.wlan.csrf-enabled=false -Dspring.profiles.include=opensync_cloud_config,mqtt_receiver,ovsdb_redirector,ovsdb_manager"/>
|
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="--add-opens java.base/java.lang=ALL-UNNAMED -Dssl.props=file://${project_loc:opensync-gateway-cloud-process}/src/main/resources/app/certs/ssl.properties -Dtip.wlan.httpClientConfig=file://${project_loc:opensync-gateway-cloud-process}/src/main/resources/app/certs/httpClientConfig.json -Djavax.net.ssl.keyStore=${tip_wlan_service_certs}/client_keystore.jks -Djavax.net.ssl.keyStorePassword=mypassword -Djavax.net.ssl.trustStore=${tip_wlan_service_certs}/truststore.jks -Djavax.net.ssl.trustStorePassword=mypassword -Dtip.wlan.ovsdb.managerAddr=${local_server_address} -Dtip.wlan.ovsdb.listenPort=6640 -Dtip.wlan.ovsdb.redirector.listenPort=6643 -Dtip.wlan.ovsdb.timeoutSec=30 -Dtip.wlan.ovsdb.trustStore=${tip_wlan_service_certs}/truststore.jks -Dtip.wlan.ovsdb.keyStore=${tip_wlan_service_certs}/server.pkcs12 -Dtip.wlan.mqttBroker.address.internal=${mqtt_broker_address} -Dtip.wlan.mqttBroker.address.external=${mqtt_broker_address} -Dtip.wlan.mqttBroker.listenPort=1883 -Dtip.wlan.introspectTokenApi.host=${local_server_address}:9096 -Dtip.wlan.introspectTokenApi.clientToken=token_placeholder -Dtip.wlan.ovsdb.autoProvisionedCustomerId=2 -Dtip.wlan.ovsdb.autoProvisionedSsid=TipWlan-cloud -Dtip.wlan.preventClientCnAlteration=false -Dserver.port=9096 -Dtip.wlan.secondaryPort=7071 -Dspring.profiles.include=opensync_cloud_config,mqtt_receiver,ovsdb_redirector,ovsdb_manager"/>
|
||||||
</launchConfiguration>
|
</launchConfiguration>
|
||||||
|
|||||||
@@ -60,11 +60,10 @@
|
|||||||
<logger name ="com.telecominfraproject.wlan.core.server.webconfig.WebMvcRegistrationsConfiguration$1$1" level="INFO"/>
|
<logger name ="com.telecominfraproject.wlan.core.server.webconfig.WebMvcRegistrationsConfiguration$1$1" level="INFO"/>
|
||||||
|
|
||||||
<logger name="com.telecominfraproject.wlan" level="DEBUG"/>
|
<logger name="com.telecominfraproject.wlan" level="DEBUG"/>
|
||||||
<logger name="ai.connectus" level="DEBUG"/>
|
|
||||||
<logger name="com.vmware.ovsdb.service.OvsdbConnectionInfo" level="OFF"/>
|
<logger name="com.vmware.ovsdb.service.OvsdbConnectionInfo" level="OFF"/>
|
||||||
<logger name="com.vmware.ovsdb.netty.OvsdbConnectionHandler" level="ERROR"/>
|
<logger name="com.vmware.ovsdb.netty.OvsdbConnectionHandler" level="ERROR"/>
|
||||||
|
|
||||||
<logger name="MQTT_DATA" level="DEBUG"/>
|
<logger name="MQTT_DATA" level="INFO"/>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
<logger name="org.springframework.security.web.authentication.preauth" level="DEBUG"/>
|
<logger name="org.springframework.security.web.authentication.preauth" level="DEBUG"/>
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<artifactId>tip-wlan-cloud-root-pom</artifactId>
|
<artifactId>tip-wlan-cloud-root-pom</artifactId>
|
||||||
<version>0.0.1-SNAPSHOT</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
<relativePath>../../wlan-cloud-root</relativePath>
|
<relativePath>../../wlan-cloud-root</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>opensync-gateway-static-docker</artifactId>
|
<artifactId>opensync-gateway-static-docker</artifactId>
|
||||||
@@ -14,13 +14,15 @@
|
|||||||
<properties>
|
<properties>
|
||||||
<docker.fabric.version>0.28.0</docker.fabric.version>
|
<docker.fabric.version>0.28.0</docker.fabric.version>
|
||||||
<docker.push.registry>tip-tip-wlan-cloud-docker-repo.jfrog.io</docker.push.registry>
|
<docker.push.registry>tip-tip-wlan-cloud-docker-repo.jfrog.io</docker.push.registry>
|
||||||
|
<timestamp>${maven.build.timestamp}</timestamp>
|
||||||
|
<maven.build.timestamp.format>yyyy-MM-dd</maven.build.timestamp.format>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.telecominfraproject.wlan</groupId>
|
<groupId>com.telecominfraproject.wlan</groupId>
|
||||||
<artifactId>opensync-gateway-static-process</artifactId>
|
<artifactId>opensync-gateway-static-process</artifactId>
|
||||||
<version>${tip-wlan-cloud.release.version}</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
@@ -32,12 +34,15 @@
|
|||||||
<artifactId>docker-maven-plugin</artifactId>
|
<artifactId>docker-maven-plugin</artifactId>
|
||||||
<version>${docker.fabric.version}</version>
|
<version>${docker.fabric.version}</version>
|
||||||
<configuration>
|
<configuration>
|
||||||
<verbose>true</verbose>
|
<verbose>false</verbose>
|
||||||
<apiVersion>1.23</apiVersion>
|
<apiVersion>1.23</apiVersion>
|
||||||
<images>
|
<images>
|
||||||
<image>
|
<image>
|
||||||
<name>opensync-gateway-static:${project.version}</name>
|
<name>opensync-gateway-static:${project.version}</name>
|
||||||
<build>
|
<build>
|
||||||
|
<tags>
|
||||||
|
<tag>${project.version}-${timestamp}</tag>
|
||||||
|
</tags>
|
||||||
<filter>@</filter>
|
<filter>@</filter>
|
||||||
<cleanup>try</cleanup>
|
<cleanup>try</cleanup>
|
||||||
<dockerFileDir>${project.basedir}/src/main/docker</dockerFileDir>
|
<dockerFileDir>${project.basedir}/src/main/docker</dockerFileDir>
|
||||||
@@ -60,6 +65,9 @@
|
|||||||
<image>
|
<image>
|
||||||
<name>opensync-gateway-and-mqtt:${project.version}</name>
|
<name>opensync-gateway-and-mqtt:${project.version}</name>
|
||||||
<build>
|
<build>
|
||||||
|
<tags>
|
||||||
|
<tag>${project.version}-${timestamp}</tag>
|
||||||
|
</tags>
|
||||||
<filter>@</filter>
|
<filter>@</filter>
|
||||||
<cleanup>try</cleanup>
|
<cleanup>try</cleanup>
|
||||||
<dockerFileDir>${project.basedir}/src/main/docker-opensync-gateway-and-mqtt</dockerFileDir>
|
<dockerFileDir>${project.basedir}/src/main/docker-opensync-gateway-and-mqtt</dockerFileDir>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
FROM adoptopenjdk/openjdk13:alpine-jre
|
FROM adoptopenjdk/openjdk13:alpine-jre
|
||||||
|
|
||||||
LABEL maintainer="ConnectUs.ai as part of the Telecom Infrastructure Project"
|
LABEL maintainer="TipWlan"
|
||||||
LABEL version="1.0"
|
LABEL version="1.0"
|
||||||
LABEL description="This image runs the mqtt broker (mosquitto) and \
|
LABEL description="This image runs the mqtt broker (mosquitto) and \
|
||||||
a statically configured OpenSync gateway."
|
a statically configured OpenSync gateway."
|
||||||
@@ -26,6 +26,14 @@ COPY app/opensync/EquipmentExample.json /app/opensync/EquipmentExample.json
|
|||||||
COPY app/opensync/ProfileAPExample.json /app/opensync/ProfileAPExample.json
|
COPY app/opensync/ProfileAPExample.json /app/opensync/ProfileAPExample.json
|
||||||
COPY app/opensync/ProfileSsid.json /app/opensync/ProfileSsid.json
|
COPY app/opensync/ProfileSsid.json /app/opensync/ProfileSsid.json
|
||||||
COPY app/opensync/LocationBuildingExample.json /app/opensync/LocationBuildingExample.json
|
COPY app/opensync/LocationBuildingExample.json /app/opensync/LocationBuildingExample.json
|
||||||
|
COPY app/opensync/ProfileMetrics.json /app/opensync/ProfileMetrics.json
|
||||||
|
COPY app/opensync/ProfileRf.json /app/opensync/ProfileRf.json
|
||||||
|
COPY app/opensync/ProfileHotspot20.json /app/opensync/ProfileHotspot20.json
|
||||||
|
COPY app/opensync/ProfileOperator.json /app/opensync/ProfileOperator.json
|
||||||
|
COPY app/opensync/ProfileVenue.json /app/opensync/ProfileVenue.json
|
||||||
|
COPY app/opensync/ProfileIdProvider.json /app/opensync/ProfileIdProvider.json
|
||||||
|
COPY app/opensync/ProfileBonjour.json /app/opensync/ProfileBonjour.json
|
||||||
|
COPY app/commit.properties /app
|
||||||
|
|
||||||
VOLUME ["/app/logs", "/app/config"]
|
VOLUME ["/app/logs", "/app/config"]
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,4 @@
|
|||||||
|
#This is a dummy property file to be used when running docker locally
|
||||||
|
date=${date}
|
||||||
|
commitId=${commit.id}
|
||||||
|
projectVersion=${project.version}
|
||||||
@@ -1,293 +1,472 @@
|
|||||||
{
|
{
|
||||||
"model_type": "Equipment",
|
"model_type": "Equipment",
|
||||||
"id": 51,
|
"id": 1,
|
||||||
"customerId": 2,
|
"customerId": 2,
|
||||||
"profileId": 5,
|
"profileId": 8,
|
||||||
"locationId": 8,
|
"locationId": 8,
|
||||||
"equipmentType": "AP",
|
|
||||||
"inventoryId": "Test_Client_21P10C68818122",
|
|
||||||
"name": "Test_Client_21P10C68818122",
|
|
||||||
"details": {
|
|
||||||
"model_type": "ApElementConfiguration",
|
|
||||||
"equipmentModel": "EA8300-CA",
|
|
||||||
"elementConfigVersion": "AP-V1",
|
|
||||||
"equipmentType": "AP",
|
"equipmentType": "AP",
|
||||||
"deviceMode": "standaloneAP",
|
"inventoryId": "Open_AP_21P10C68818122",
|
||||||
"gettingIP": "dhcp",
|
"name": "Open_AP_21P10C68818122",
|
||||||
"staticIP": null,
|
"details": {
|
||||||
"staticIpMaskCidr": null,
|
"model_type": "ApElementConfiguration",
|
||||||
"staticIpGw": null,
|
"equipmentModel": "EA8300-CA",
|
||||||
"gettingDNS": "dhcp",
|
"elementConfigVersion": "AP-V1",
|
||||||
"staticDnsIp1": null,
|
"equipmentType": "AP",
|
||||||
"staticDnsIp2": null,
|
"deviceMode": "standaloneAP",
|
||||||
"peerInfoList": [],
|
"gettingIP": "dhcp",
|
||||||
"deviceName": "Default Device Name",
|
"staticIP": null,
|
||||||
"locationData": null,
|
"staticIpMaskCidr": null,
|
||||||
"locallyConfiguredMgmtVlan": 0,
|
"staticIpGw": null,
|
||||||
"locallyConfigured": false,
|
"gettingDNS": "dhcp",
|
||||||
"deploymentType": "CEILING",
|
"staticDnsIp1": null,
|
||||||
"syntheticClientEnabled": null,
|
"staticDnsIp2": null,
|
||||||
"frameReportThrottleEnabled": true,
|
"peerInfoList": [],
|
||||||
"antennaType": "OMNI",
|
"deviceName": "Open_AP_21P10C68818122",
|
||||||
"costSavingEventsEnabled": true,
|
"locationData": null,
|
||||||
"forwardMode": "BRIDGE",
|
"locallyConfiguredMgmtVlan": 0,
|
||||||
"radioMap": {
|
"locallyConfigured": false,
|
||||||
"is2dot4GHz": {
|
"deploymentType": "CEILING",
|
||||||
"model_type": "ElementRadioConfiguration",
|
"syntheticClientEnabled": null,
|
||||||
"radioType": "is2dot4GHz",
|
"frameReportThrottleEnabled": true,
|
||||||
"channelNumber": 6,
|
"antennaType": "OMNI",
|
||||||
"manualChannelNumber": 6,
|
"costSavingEventsEnabled": true,
|
||||||
"backupChannelNumber": 11,
|
"forwardMode": "BRIDGE",
|
||||||
"autoChannelSelection": false,
|
"radioMap": {
|
||||||
"channelBandwidth": "is20MHz",
|
"is5GHzU": {
|
||||||
"bannedChannels": [],
|
"model_type": "ElementRadioConfiguration",
|
||||||
"allowedChannels": [],
|
"radioType": "is5GHzU",
|
||||||
"rxCellSizeDb": {
|
"channelNumber": 149,
|
||||||
"model_type": "AutoOrManualValue",
|
"manualChannelNumber": 149,
|
||||||
"auto": true,
|
"backupChannelNumber": 157,
|
||||||
"value": -90
|
"manualBackupChannelNumber": 157,
|
||||||
|
"rxCellSizeDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"probeResponseThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"clientDisconnectThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"eirpTxPower": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": 18
|
||||||
|
},
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"bestAPSteerType": "both",
|
||||||
|
"deauthAttackDetection": null,
|
||||||
|
"allowedChannelsPowerLevels": [
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 161,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 100,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 132,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 165,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 104,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 136,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 108,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 140,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 112,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 144,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 116,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 149,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 153,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 157,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"is2dot4GHz": {
|
||||||
|
"model_type": "ElementRadioConfiguration",
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"channelNumber": 6,
|
||||||
|
"manualChannelNumber": 6,
|
||||||
|
"backupChannelNumber": 11,
|
||||||
|
"manualBackupChannelNumber": 11,
|
||||||
|
"rxCellSizeDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"probeResponseThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"clientDisconnectThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"eirpTxPower": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": 18
|
||||||
|
},
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"bestAPSteerType": "both",
|
||||||
|
"deauthAttackDetection": null,
|
||||||
|
"allowedChannelsPowerLevels": [
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 1,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 2,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 3,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 4,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 5,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 6,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 7,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 8,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 9,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 10,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 11,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"is5GHzL": {
|
||||||
|
"model_type": "ElementRadioConfiguration",
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"channelNumber": 36,
|
||||||
|
"manualChannelNumber": 36,
|
||||||
|
"backupChannelNumber": 44,
|
||||||
|
"manualBackupChannelNumber": 44,
|
||||||
|
"rxCellSizeDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"probeResponseThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"clientDisconnectThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"eirpTxPower": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": 18
|
||||||
|
},
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"bestAPSteerType": "both",
|
||||||
|
"deauthAttackDetection": null,
|
||||||
|
"allowedChannelsPowerLevels": [
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 52,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 36,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 56,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 40,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 60,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 44,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 64,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 48,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"probeResponseThresholdDb": {
|
"advancedRadioMap": {
|
||||||
"model_type": "AutoOrManualValue",
|
"is2dot4GHz": {
|
||||||
"auto": true,
|
"model_type": "RadioConfiguration",
|
||||||
"value": -90
|
"radioType": "is2dot4GHz",
|
||||||
},
|
"radioAdminState": "enabled",
|
||||||
"clientDisconnectThresholdDb": {
|
"fragmentationThresholdBytes": 2346,
|
||||||
"model_type": "AutoOrManualValue",
|
"uapsdState": "enabled",
|
||||||
"auto": true,
|
"stationIsolation": "disabled",
|
||||||
"value": -90
|
"multicastRate": {
|
||||||
},
|
"model_type": "SourceSelectionMulticast",
|
||||||
"eirpTxPower": {
|
"source": "profile",
|
||||||
"model_type": "AutoOrManualValue",
|
"value": "auto"
|
||||||
"auto": false,
|
},
|
||||||
"value": 32
|
"managementRate": {
|
||||||
},
|
"model_type": "SourceSelectionManagement",
|
||||||
"bestApEnabled": null,
|
"source": "profile",
|
||||||
"neighbouringListApConfig": {
|
"value": "auto"
|
||||||
"model_type": "NeighbouringAPListConfiguration",
|
},
|
||||||
"minSignal": -85,
|
"bestApSettings": {
|
||||||
"maxAps": 25
|
"model_type": "SourceSelectionSteering",
|
||||||
},
|
"source": "manual",
|
||||||
"minAutoCellSize": -80,
|
"value": {
|
||||||
"perimeterDetectionEnabled": true,
|
"model_type": "RadioBestApSettings",
|
||||||
"bestAPSteerType": "both",
|
"mlComputed": true,
|
||||||
"deauthAttackDetection": null,
|
"dropInSnrPercentage": 20,
|
||||||
"allowedChannelsPowerLevels": [],
|
"minLoadFactor": 50
|
||||||
"activeChannel": 6
|
}
|
||||||
},
|
},
|
||||||
"is5GHzU": {
|
"legacyBSSRate": "enabled",
|
||||||
"model_type": "ElementRadioConfiguration",
|
"dtimPeriod": 2,
|
||||||
"radioType": "is5GHzU",
|
"deauthAttackDetection": null
|
||||||
"channelNumber": 149,
|
},
|
||||||
"manualChannelNumber": 149,
|
"is5GHzU": {
|
||||||
"backupChannelNumber": 154,
|
"model_type": "RadioConfiguration",
|
||||||
"autoChannelSelection": false,
|
"radioType": "is5GHzU",
|
||||||
"channelBandwidth": "is80MHz",
|
"radioAdminState": "enabled",
|
||||||
"bannedChannels": [],
|
"fragmentationThresholdBytes": 2346,
|
||||||
"allowedChannels": [],
|
"uapsdState": "enabled",
|
||||||
"rxCellSizeDb": {
|
"stationIsolation": "disabled",
|
||||||
"model_type": "AutoOrManualValue",
|
"multicastRate": {
|
||||||
"auto": true,
|
"model_type": "SourceSelectionMulticast",
|
||||||
"value": -90
|
"source": "profile",
|
||||||
},
|
"value": "auto"
|
||||||
"probeResponseThresholdDb": {
|
},
|
||||||
"model_type": "AutoOrManualValue",
|
"managementRate": {
|
||||||
"auto": true,
|
"model_type": "SourceSelectionManagement",
|
||||||
"value": -90
|
"source": "profile",
|
||||||
},
|
"value": "auto"
|
||||||
"clientDisconnectThresholdDb": {
|
},
|
||||||
"model_type": "AutoOrManualValue",
|
"bestApSettings": {
|
||||||
"auto": true,
|
"model_type": "SourceSelectionSteering",
|
||||||
"value": -90
|
"source": "manual",
|
||||||
},
|
"value": {
|
||||||
"eirpTxPower": {
|
"model_type": "RadioBestApSettings",
|
||||||
"model_type": "AutoOrManualValue",
|
"mlComputed": true,
|
||||||
"auto": false,
|
"dropInSnrPercentage": 30,
|
||||||
"value": 32
|
"minLoadFactor": 40
|
||||||
},
|
}
|
||||||
"bestApEnabled": null,
|
},
|
||||||
"neighbouringListApConfig": {
|
"legacyBSSRate": "enabled",
|
||||||
"model_type": "NeighbouringAPListConfiguration",
|
"dtimPeriod": 2,
|
||||||
"minSignal": -85,
|
"deauthAttackDetection": null
|
||||||
"maxAps": 25
|
},
|
||||||
},
|
"is5GHzL": {
|
||||||
"minAutoCellSize": -80,
|
"model_type": "RadioConfiguration",
|
||||||
"perimeterDetectionEnabled": true,
|
"radioType": "is5GHzL",
|
||||||
"bestAPSteerType": "both",
|
"radioAdminState": "enabled",
|
||||||
"deauthAttackDetection": null,
|
"fragmentationThresholdBytes": 2346,
|
||||||
"allowedChannelsPowerLevels": [],
|
"uapsdState": "enabled",
|
||||||
"activeChannel": 149
|
"stationIsolation": "disabled",
|
||||||
},
|
"multicastRate": {
|
||||||
"is5GHzL": {
|
"model_type": "SourceSelectionMulticast",
|
||||||
"model_type": "ElementRadioConfiguration",
|
"source": "profile",
|
||||||
"radioType": "is5GHzL",
|
"value": "auto"
|
||||||
"channelNumber": 36,
|
},
|
||||||
"manualChannelNumber": 36,
|
"managementRate": {
|
||||||
"backupChannelNumber": 44,
|
"model_type": "SourceSelectionManagement",
|
||||||
"autoChannelSelection": false,
|
"source": "profile",
|
||||||
"channelBandwidth": "is80MHz",
|
"value": "auto"
|
||||||
"bannedChannels": [],
|
},
|
||||||
"allowedChannels": [],
|
"bestApSettings": {
|
||||||
"rxCellSizeDb": {
|
"model_type": "SourceSelectionSteering",
|
||||||
"model_type": "AutoOrManualValue",
|
"source": "manual",
|
||||||
"auto": true,
|
"value": {
|
||||||
"value": -90
|
"model_type": "RadioBestApSettings",
|
||||||
},
|
"mlComputed": true,
|
||||||
"probeResponseThresholdDb": {
|
"dropInSnrPercentage": 30,
|
||||||
"model_type": "AutoOrManualValue",
|
"minLoadFactor": 40
|
||||||
"auto": true,
|
}
|
||||||
"value": -90
|
},
|
||||||
},
|
"legacyBSSRate": "enabled",
|
||||||
"clientDisconnectThresholdDb": {
|
"dtimPeriod": 2,
|
||||||
"model_type": "AutoOrManualValue",
|
"deauthAttackDetection": null
|
||||||
"auto": true,
|
}
|
||||||
"value": -90
|
}
|
||||||
},
|
|
||||||
"eirpTxPower": {
|
|
||||||
"model_type": "AutoOrManualValue",
|
|
||||||
"auto": false,
|
|
||||||
"value": 32
|
|
||||||
},
|
|
||||||
"bestApEnabled": null,
|
|
||||||
"neighbouringListApConfig": {
|
|
||||||
"model_type": "NeighbouringAPListConfiguration",
|
|
||||||
"minSignal": -85,
|
|
||||||
"maxAps": 25
|
|
||||||
},
|
|
||||||
"minAutoCellSize": -80,
|
|
||||||
"perimeterDetectionEnabled": true,
|
|
||||||
"bestAPSteerType": "both",
|
|
||||||
"deauthAttackDetection": null,
|
|
||||||
"allowedChannelsPowerLevels": [],
|
|
||||||
"activeChannel": 36
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"advancedRadioMap": {
|
"latitude": null,
|
||||||
"is2dot4GHz": {
|
"longitude": null,
|
||||||
"model_type": "RadioConfiguration",
|
"baseMacAddress": {
|
||||||
"radioType": "is2dot4GHz",
|
"model_type": "MacAddress",
|
||||||
"radioAdminState": "enabled",
|
"address": "JPWi7y5T",
|
||||||
"fragmentationThresholdBytes": 2346,
|
"addressAsString": "24:f5:a2:ef:2e:53"
|
||||||
"rtsCtsThreshold": 65535,
|
},
|
||||||
"autoChannelSelection": "disabled",
|
"serial": "21P10C68818122",
|
||||||
"radioMode": "modeN",
|
"createdTimestamp": 1612285288821,
|
||||||
"mimoMode": "twoByTwo",
|
"lastModifiedTimestamp": 1612285293922
|
||||||
"wmmState": "enabled",
|
|
||||||
"uapsdState": "enabled",
|
|
||||||
"maxNumClients": 100,
|
|
||||||
"stationIsolation": "disabled",
|
|
||||||
"multicastRate": "auto",
|
|
||||||
"managementRate": "auto",
|
|
||||||
"activeScanSettings": {
|
|
||||||
"model_type": "ActiveScanSettings",
|
|
||||||
"enabled": true,
|
|
||||||
"scanFrequencySeconds": 10,
|
|
||||||
"scanDurationMillis": 65
|
|
||||||
},
|
|
||||||
"channelHopSettings": {
|
|
||||||
"model_type": "ChannelHopSettings",
|
|
||||||
"noiseFloorThresholdInDB": -75,
|
|
||||||
"noiseFloorThresholdTimeInSeconds": 180,
|
|
||||||
"nonWifiThresholdInPercentage": 50,
|
|
||||||
"nonWifiThresholdTimeInSeconds": 180,
|
|
||||||
"obssHopMode": "NON_WIFI"
|
|
||||||
},
|
|
||||||
"bestApSettings": {
|
|
||||||
"model_type": "RadioBestApSettings",
|
|
||||||
"mlComputed": true,
|
|
||||||
"dropInSnrPercentage": 20,
|
|
||||||
"minLoadFactor": 50
|
|
||||||
},
|
|
||||||
"forceScanDuringVoice": "disabled",
|
|
||||||
"legacyBSSRate": "enabled",
|
|
||||||
"beaconInterval": 100,
|
|
||||||
"deauthAttackDetection": null
|
|
||||||
},
|
|
||||||
"is5GHzU": {
|
|
||||||
"model_type": "RadioConfiguration",
|
|
||||||
"radioType": "is5GHzU",
|
|
||||||
"radioAdminState": "enabled",
|
|
||||||
"fragmentationThresholdBytes": 2346,
|
|
||||||
"rtsCtsThreshold": 65535,
|
|
||||||
"autoChannelSelection": "disabled",
|
|
||||||
"radioMode": "modeAC",
|
|
||||||
"mimoMode": "twoByTwo",
|
|
||||||
"wmmState": "enabled",
|
|
||||||
"uapsdState": "enabled",
|
|
||||||
"maxNumClients": 100,
|
|
||||||
"stationIsolation": "disabled",
|
|
||||||
"multicastRate": "auto",
|
|
||||||
"managementRate": "auto",
|
|
||||||
"activeScanSettings": {
|
|
||||||
"model_type": "ActiveScanSettings",
|
|
||||||
"enabled": true,
|
|
||||||
"scanFrequencySeconds": 10,
|
|
||||||
"scanDurationMillis": 65
|
|
||||||
},
|
|
||||||
"channelHopSettings": {
|
|
||||||
"model_type": "ChannelHopSettings",
|
|
||||||
"noiseFloorThresholdInDB": -75,
|
|
||||||
"noiseFloorThresholdTimeInSeconds": 180,
|
|
||||||
"nonWifiThresholdInPercentage": 50,
|
|
||||||
"nonWifiThresholdTimeInSeconds": 180,
|
|
||||||
"obssHopMode": "NON_WIFI"
|
|
||||||
},
|
|
||||||
"bestApSettings": {
|
|
||||||
"model_type": "RadioBestApSettings",
|
|
||||||
"mlComputed": true,
|
|
||||||
"dropInSnrPercentage": 30,
|
|
||||||
"minLoadFactor": 40
|
|
||||||
},
|
|
||||||
"forceScanDuringVoice": "disabled",
|
|
||||||
"legacyBSSRate": "enabled",
|
|
||||||
"beaconInterval": 100,
|
|
||||||
"deauthAttackDetection": null
|
|
||||||
},
|
|
||||||
"is5GHzL": {
|
|
||||||
"model_type": "RadioConfiguration",
|
|
||||||
"radioType": "is5GHzL",
|
|
||||||
"radioAdminState": "enabled",
|
|
||||||
"fragmentationThresholdBytes": 2346,
|
|
||||||
"rtsCtsThreshold": 65535,
|
|
||||||
"autoChannelSelection": "disabled",
|
|
||||||
"radioMode": "modeAC",
|
|
||||||
"mimoMode": "twoByTwo",
|
|
||||||
"wmmState": "enabled",
|
|
||||||
"uapsdState": "enabled",
|
|
||||||
"maxNumClients": 100,
|
|
||||||
"stationIsolation": "disabled",
|
|
||||||
"multicastRate": "auto",
|
|
||||||
"managementRate": "auto",
|
|
||||||
"activeScanSettings": {
|
|
||||||
"model_type": "ActiveScanSettings",
|
|
||||||
"enabled": true,
|
|
||||||
"scanFrequencySeconds": 10,
|
|
||||||
"scanDurationMillis": 65
|
|
||||||
},
|
|
||||||
"channelHopSettings": {
|
|
||||||
"model_type": "ChannelHopSettings",
|
|
||||||
"noiseFloorThresholdInDB": -75,
|
|
||||||
"noiseFloorThresholdTimeInSeconds": 180,
|
|
||||||
"nonWifiThresholdInPercentage": 50,
|
|
||||||
"nonWifiThresholdTimeInSeconds": 180,
|
|
||||||
"obssHopMode": "NON_WIFI"
|
|
||||||
},
|
|
||||||
"bestApSettings": {
|
|
||||||
"model_type": "RadioBestApSettings",
|
|
||||||
"mlComputed": true,
|
|
||||||
"dropInSnrPercentage": 30,
|
|
||||||
"minLoadFactor": 40
|
|
||||||
},
|
|
||||||
"forceScanDuringVoice": "disabled",
|
|
||||||
"legacyBSSRate": "enabled",
|
|
||||||
"beaconInterval": 100,
|
|
||||||
"deauthAttackDetection": null
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"latitude": null,
|
|
||||||
"longitude": null,
|
|
||||||
"serial": "21P10C68818122",
|
|
||||||
"createdTimestamp": 1591653239821,
|
|
||||||
"lastModifiedTimestamp": 1591653241398
|
|
||||||
}
|
}
|
||||||
@@ -1,67 +1,61 @@
|
|||||||
{
|
{
|
||||||
"model_type" : "Location",
|
"model_type": "Location",
|
||||||
"id" : 8,
|
"id": 8,
|
||||||
"parentId" : 0,
|
"parentId": 0,
|
||||||
"locationType" : "SITE",
|
"locationType": "SITE",
|
||||||
"customerId" : 2,
|
"customerId": 2,
|
||||||
"name" : "Ottawa",
|
"name": "Ottawa",
|
||||||
"details" : {
|
"details": {
|
||||||
"model_type" : "LocationDetails",
|
"model_type": "LocationDetails",
|
||||||
"countryCode" : "ca",
|
"countryCode": "CA",
|
||||||
"maintenanceWindow" : null,
|
"dailyActivityDetails": {
|
||||||
"rrmEnabled" : true,
|
"SUNDAY": {
|
||||||
"dailyRebalancingDetails" : {
|
"model_type": "LocationActivityDetails",
|
||||||
"SUNDAY" : {
|
"busyTime": "13:30",
|
||||||
"model_type" : "LocationActivityDetails",
|
"quietTime": "3:00",
|
||||||
"busyTime" : "13:30",
|
"timezone": "US/Eastern"
|
||||||
"quietTime" : "3:30",
|
},
|
||||||
"timezone" : "US/Eastern",
|
"MONDAY": {
|
||||||
"lastBusySnapshot" : 0
|
"model_type": "LocationActivityDetails",
|
||||||
},
|
"busyTime": "13:30",
|
||||||
"MONDAY" : {
|
"quietTime": "3:00",
|
||||||
"model_type" : "LocationActivityDetails",
|
"timezone": "US/Eastern"
|
||||||
"busyTime" : "13:30",
|
},
|
||||||
"quietTime" : "3:30",
|
"TUESDAY": {
|
||||||
"timezone" : "US/Eastern",
|
"model_type": "LocationActivityDetails",
|
||||||
"lastBusySnapshot" : 0
|
"busyTime": "13:30",
|
||||||
},
|
"quietTime": "3:00",
|
||||||
"TUESDAY" : {
|
"timezone": "US/Eastern"
|
||||||
"model_type" : "LocationActivityDetails",
|
},
|
||||||
"busyTime" : "13:30",
|
"WEDNESDAY": {
|
||||||
"quietTime" : "3:30",
|
"model_type": "LocationActivityDetails",
|
||||||
"timezone" : "US/Eastern",
|
"busyTime": "13:30",
|
||||||
"lastBusySnapshot" : 0
|
"quietTime": "3:00",
|
||||||
},
|
"timezone": "US/Eastern"
|
||||||
"WEDNESDAY" : {
|
},
|
||||||
"model_type" : "LocationActivityDetails",
|
"THURSDAY": {
|
||||||
"busyTime" : "13:30",
|
"model_type": "LocationActivityDetails",
|
||||||
"quietTime" : "3:30",
|
"busyTime": "13:30",
|
||||||
"timezone" : "US/Eastern",
|
"quietTime": "3:00",
|
||||||
"lastBusySnapshot" : 0
|
"timezone": "US/Eastern"
|
||||||
},
|
},
|
||||||
"THURSDAY" : {
|
"FRIDAY": {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type": "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime": "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime": "3:00",
|
||||||
"timezone" : "US/Eastern",
|
"timezone": "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
},
|
||||||
},
|
"SATURDAY": {
|
||||||
"FRIDAY" : {
|
"model_type": "LocationActivityDetails",
|
||||||
"model_type" : "LocationActivityDetails",
|
"busyTime": "13:30",
|
||||||
"busyTime" : "13:30",
|
"quietTime": "3:00",
|
||||||
"quietTime" : "3:30",
|
"timezone": "US/Eastern"
|
||||||
"timezone" : "US/Eastern",
|
}
|
||||||
"lastBusySnapshot" : 0
|
},
|
||||||
},
|
"maintenanceWindow": null,
|
||||||
"SATURDAY" : {
|
"rrmEnabled": true,
|
||||||
"model_type" : "LocationActivityDetails",
|
"timezone": "US/Eastern"
|
||||||
"busyTime" : "13:30",
|
},
|
||||||
"quietTime" : "3:30",
|
"createdTimestamp": 1612285243534,
|
||||||
"timezone" : "US/Eastern",
|
"lastModifiedTimestamp": 1612285243534
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"createdTimestamp" : 1590607043540,
|
|
||||||
"lastModifiedTimestamp" : 1590607043540
|
|
||||||
}
|
}
|
||||||
@@ -10,55 +10,48 @@
|
|||||||
"countryCode" : "usa",
|
"countryCode" : "usa",
|
||||||
"maintenanceWindow" : null,
|
"maintenanceWindow" : null,
|
||||||
"rrmEnabled" : true,
|
"rrmEnabled" : true,
|
||||||
"dailyRebalancingDetails" : {
|
"dailyActivityDetails" : {
|
||||||
"SUNDAY" : {
|
"SUNDAY" : {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type" : "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime" : "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime" : "3:30",
|
||||||
"timezone" : "US/Eastern",
|
"timezone" : "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
},
|
},
|
||||||
"MONDAY" : {
|
"MONDAY" : {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type" : "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime" : "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime" : "3:30",
|
||||||
"timezone" : "US/Eastern",
|
"timezone" : "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
},
|
},
|
||||||
"TUESDAY" : {
|
"TUESDAY" : {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type" : "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime" : "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime" : "3:30",
|
||||||
"timezone" : "US/Eastern",
|
"timezone" : "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
},
|
},
|
||||||
"WEDNESDAY" : {
|
"WEDNESDAY" : {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type" : "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime" : "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime" : "3:30",
|
||||||
"timezone" : "US/Eastern",
|
"timezone" : "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
},
|
},
|
||||||
"THURSDAY" : {
|
"THURSDAY" : {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type" : "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime" : "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime" : "3:30",
|
||||||
"timezone" : "US/Eastern",
|
"timezone" : "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
},
|
},
|
||||||
"FRIDAY" : {
|
"FRIDAY" : {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type" : "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime" : "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime" : "3:30",
|
||||||
"timezone" : "US/Eastern",
|
"timezone" : "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
},
|
},
|
||||||
"SATURDAY" : {
|
"SATURDAY" : {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type" : "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime" : "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime" : "3:30",
|
||||||
"timezone" : "US/Eastern",
|
"timezone" : "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,54 +1,58 @@
|
|||||||
{
|
{
|
||||||
"model_type": "Profile",
|
"model_type": "Profile",
|
||||||
"id": 5,
|
"id": 8,
|
||||||
"customerId": 2,
|
"customerId": 2,
|
||||||
"profileType": "equipment_ap",
|
"profileType": "equipment_ap",
|
||||||
"name": "DefaultApProfile",
|
"name": "ApProfile-3-radios",
|
||||||
"details": {
|
"details": {
|
||||||
"model_type": "ApNetworkConfiguration",
|
"model_type": "ApNetworkConfiguration",
|
||||||
"networkConfigVersion": "AP-1",
|
"networkConfigVersion": "AP-1",
|
||||||
"equipmentType": "AP",
|
"equipmentType": "AP",
|
||||||
"vlanNative": true,
|
"vlanNative": true,
|
||||||
"vlan": 0,
|
"vlan": 0,
|
||||||
"ntpServer": {
|
"ntpServer": {
|
||||||
"model_type": "AutoOrManualString",
|
"model_type": "AutoOrManualString",
|
||||||
"auto": true,
|
"auto": true,
|
||||||
"value": "pool.ntp.org"
|
"value": "pool.ntp.org"
|
||||||
|
},
|
||||||
|
"syslogRelay": null,
|
||||||
|
"rtlsSettings": null,
|
||||||
|
"syntheticClientEnabled": true,
|
||||||
|
"ledControlEnabled": true,
|
||||||
|
"equipmentDiscovery": false,
|
||||||
|
"radioMap": {
|
||||||
|
"is2dot4GHz": {
|
||||||
|
"model_type": "RadioProfileConfiguration",
|
||||||
|
"bestApEnabled": true,
|
||||||
|
"bestAPSteerType": "both"
|
||||||
|
},
|
||||||
|
"is5GHzU": {
|
||||||
|
"model_type": "RadioProfileConfiguration",
|
||||||
|
"bestApEnabled": true,
|
||||||
|
"bestAPSteerType": "both"
|
||||||
|
},
|
||||||
|
"is5GHzL": {
|
||||||
|
"model_type": "RadioProfileConfiguration",
|
||||||
|
"bestApEnabled": true,
|
||||||
|
"bestAPSteerType": "both"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"greTunnelConfigurations": [
|
||||||
|
{
|
||||||
|
"model_type": "GreTunnelConfiguration",
|
||||||
|
"greTunnelName": "gre1",
|
||||||
|
"greRemoteInetAddr": "192.168.1.101",
|
||||||
|
"vlanIdsInGreTunnel": [
|
||||||
|
100
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"profileType": "equipment_ap"
|
||||||
},
|
},
|
||||||
"syslogRelay": null,
|
"createdTimestamp": 1612285248925,
|
||||||
"rtlsSettings": null,
|
"lastModifiedTimestamp": 1612285628377,
|
||||||
"syntheticClientEnabled": true,
|
"childProfileIds": [
|
||||||
"ledControlEnabled": true,
|
2,
|
||||||
"equipmentDiscovery": false,
|
4
|
||||||
"radioMap": {
|
]
|
||||||
"is5GHz": {
|
|
||||||
"model_type": "RadioProfileConfiguration",
|
|
||||||
"bestApEnabled": true,
|
|
||||||
"bestAPSteerType": "both"
|
|
||||||
},
|
|
||||||
"is2dot4GHz": {
|
|
||||||
"model_type": "RadioProfileConfiguration",
|
|
||||||
"bestApEnabled": true,
|
|
||||||
"bestAPSteerType": "both"
|
|
||||||
},
|
|
||||||
"is5GHzU": {
|
|
||||||
"model_type": "RadioProfileConfiguration",
|
|
||||||
"bestApEnabled": true,
|
|
||||||
"bestAPSteerType": "both"
|
|
||||||
},
|
|
||||||
"is5GHzL": {
|
|
||||||
"model_type": "RadioProfileConfiguration",
|
|
||||||
"bestApEnabled": true,
|
|
||||||
"bestAPSteerType": "both"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"profileType": "equipment_ap"
|
|
||||||
},
|
|
||||||
"createdTimestamp": 1591653239947,
|
|
||||||
"lastModifiedTimestamp": 1591654336724,
|
|
||||||
"childProfileIds": [
|
|
||||||
6,
|
|
||||||
7,
|
|
||||||
8
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 100,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "bonjour",
|
||||||
|
"name": "Bonjour-gateway",
|
||||||
|
"details": {
|
||||||
|
"model_type": "BonjourGatewayProfile",
|
||||||
|
"profileDescription": "Bonjour Gateway Configuration for Design Testing",
|
||||||
|
"profileType": "bonjour",
|
||||||
|
"bonjourServices": [
|
||||||
|
{
|
||||||
|
"model_type": "BonjourServiceSet",
|
||||||
|
"vlanId": 1,
|
||||||
|
"supportAllServices": false,
|
||||||
|
"serviceNames": [
|
||||||
|
"AirPort",
|
||||||
|
"SFTP",
|
||||||
|
"SSH"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1599234550774,
|
||||||
|
"lastModifiedTimestamp": 1599234550774,
|
||||||
|
"childProfileIds": []
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -0,0 +1,58 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 5,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "captive_portal",
|
||||||
|
"name": "Captive-portal",
|
||||||
|
"details": {
|
||||||
|
"model_type": "CaptivePortalConfiguration",
|
||||||
|
"name": "Default",
|
||||||
|
"browserTitle": "Captive-portal",
|
||||||
|
"headerContent": "Captive Portal",
|
||||||
|
"userAcceptancePolicy": "Please agree to the following terms for using this network:",
|
||||||
|
"successPageMarkdownText": "You are now authorized and connected to the network.",
|
||||||
|
"redirectURL": "https://www.google.com",
|
||||||
|
"externalCaptivePortalURL": null,
|
||||||
|
"sessionTimeoutInMinutes": 10,
|
||||||
|
"logoFile": {
|
||||||
|
"model_type": "ManagedFileInfo",
|
||||||
|
"md5checksum": null,
|
||||||
|
"lastModifiedTimestamp": null,
|
||||||
|
"apExportUrl": "/filestore/tip-logo-mobile",
|
||||||
|
"fileCategory": "CaptivePortalLogo",
|
||||||
|
"fileType": "PNG",
|
||||||
|
"altSlot": false
|
||||||
|
},
|
||||||
|
"backgroundFile": {
|
||||||
|
"model_type": "ManagedFileInfo",
|
||||||
|
"md5checksum": null,
|
||||||
|
"lastModifiedTimestamp": null,
|
||||||
|
"apExportUrl": "/filestore/tip-logo",
|
||||||
|
"fileCategory": "CaptivePortalBackground",
|
||||||
|
"fileType": "PNG",
|
||||||
|
"altSlot": false
|
||||||
|
},
|
||||||
|
"walledGardenAllowlist": [
|
||||||
|
],
|
||||||
|
"usernamePasswordFile": null,
|
||||||
|
"authenticationType": "guest",
|
||||||
|
"radiusAuthMethod": "CHAP",
|
||||||
|
"maxUsersWithSameCredentials": 3,
|
||||||
|
"externalPolicyFile": null,
|
||||||
|
"backgroundPosition": "left_top",
|
||||||
|
"backgroundRepeat": "no_repeat",
|
||||||
|
"radiusServiceId": 0,
|
||||||
|
"expiryType": "time_limited",
|
||||||
|
"userList": [
|
||||||
|
],
|
||||||
|
"macAllowList": [
|
||||||
|
],
|
||||||
|
"profileType": "captive_portal"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1611857459118,
|
||||||
|
"lastModifiedTimestamp": 1611857459118,
|
||||||
|
"childProfileIds": [
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -0,0 +1,71 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 37,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "passpoint",
|
||||||
|
"name": "hotspot20-profile-2021-01-21T21:28:59.171Z",
|
||||||
|
"details": {
|
||||||
|
"model_type": "PasspointProfile",
|
||||||
|
"enableInterworkingAndHs20": true,
|
||||||
|
"hessid": null,
|
||||||
|
"passpointAccessNetworkType": "free_public_network",
|
||||||
|
"passpointNetworkAuthenticationType": "acceptance_of_terms_and_conditions",
|
||||||
|
"additionalStepsRequiredForAccess": 0,
|
||||||
|
"deauthRequestTimeout": 0,
|
||||||
|
"operatingClass": 0,
|
||||||
|
"termsAndConditionsFile": {
|
||||||
|
"model_type": "ManagedFileInfo",
|
||||||
|
"md5checksum": null,
|
||||||
|
"lastModifiedTimestamp": null,
|
||||||
|
"apExportUrl": "https://localhost:9091/filestore/termsAndConditions",
|
||||||
|
"fileCategory": "ExternalPolicyConfiguration",
|
||||||
|
"fileType": "TEXT",
|
||||||
|
"altSlot": false
|
||||||
|
},
|
||||||
|
"whitelistDomain": null,
|
||||||
|
"emergencyServicesReachable": true,
|
||||||
|
"unauthenticatedEmergencyServiceAccessible": false,
|
||||||
|
"internetConnectivity": true,
|
||||||
|
"connectionCapabilitySet": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointConnectionCapability",
|
||||||
|
"connectionCapabilitiesPortNumber": 8888,
|
||||||
|
"connectionCapabilitiesIpProtocol": "TCP",
|
||||||
|
"connectionCapabilitiesStatus": "open"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ipAddressTypeAvailability": "public_IPv4_address_available",
|
||||||
|
"qosMapSetConfiguration": null,
|
||||||
|
"apGeospatialLocation": null,
|
||||||
|
"apCivicLocation": null,
|
||||||
|
"apPublicLocationIdUri": null,
|
||||||
|
"gasAddr3Behaviour": "p2pSpecWorkaroundFromRequest",
|
||||||
|
"anqpDomainId": 1234,
|
||||||
|
"disableDownstreamGroupAddressedForwarding": false,
|
||||||
|
"enable2pt4GHz": true,
|
||||||
|
"enable5GHz": true,
|
||||||
|
"associatedAccessSsidProfileIds": [
|
||||||
|
32
|
||||||
|
],
|
||||||
|
"osuSsidProfileId": 31,
|
||||||
|
"passpointOperatorProfileId": 34,
|
||||||
|
"passpointVenueProfileId": 33,
|
||||||
|
"passpointOsuProviderProfileIds": [
|
||||||
|
35,
|
||||||
|
36
|
||||||
|
],
|
||||||
|
"accessNetworkType": "free_public_network",
|
||||||
|
"networkAuthenticationType": "acceptance_of_terms_and_conditions",
|
||||||
|
"profileType": "passpoint"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 0,
|
||||||
|
"lastModifiedTimestamp": 1611264539331,
|
||||||
|
"childProfileIds": [
|
||||||
|
33,
|
||||||
|
34,
|
||||||
|
35,
|
||||||
|
36
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -0,0 +1,263 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 35,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "passpoint_osu_id_provider",
|
||||||
|
"name": "provider1-profile-2021-01-21T21:28:59.057Z",
|
||||||
|
"details": {
|
||||||
|
"model_type": "PasspointOsuProviderProfile",
|
||||||
|
"mccMncList": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointMccMnc",
|
||||||
|
"mcc": 302,
|
||||||
|
"mnc": 720,
|
||||||
|
"iso": "ca",
|
||||||
|
"country": "Canada",
|
||||||
|
"countryCode": 1,
|
||||||
|
"network": "Rogers AT&T Wireless",
|
||||||
|
"mccMncPairing": "302,720"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"naiRealmList": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointNaiRealmInformation",
|
||||||
|
"naiRealms": [
|
||||||
|
"rogers.com"
|
||||||
|
],
|
||||||
|
"encoding": 0,
|
||||||
|
"eapMethods": [
|
||||||
|
"EAP-TTLS with username/password",
|
||||||
|
"EAP-TLS with certificate"
|
||||||
|
],
|
||||||
|
"eapMap": {
|
||||||
|
"EAP-TTLS with username/password": [
|
||||||
|
"Credential Type:username/password",
|
||||||
|
"Non-EAP Inner Authentication Type:MSCHAPV2"
|
||||||
|
],
|
||||||
|
"EAP-TLS with certificate": [
|
||||||
|
"Credential Type:Certificate"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"osuIconList": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointOsuIcon",
|
||||||
|
"iconWidth": 32,
|
||||||
|
"iconHeight": 32,
|
||||||
|
"languageCode": "eng",
|
||||||
|
"iconLocale": "en_CA",
|
||||||
|
"iconName": "icon32eng",
|
||||||
|
"filePath": "/tmp/icon32eng.png",
|
||||||
|
"imageUrl": "https://localhost:9096/icon32eng.png",
|
||||||
|
"hs20IconString": "32:32:eng:image/png:icon32eng:/tmp/icon32eng.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointOsuIcon",
|
||||||
|
"iconWidth": 32,
|
||||||
|
"iconHeight": 32,
|
||||||
|
"languageCode": "fra",
|
||||||
|
"iconLocale": "fr_CA",
|
||||||
|
"iconName": "icon32fra",
|
||||||
|
"filePath": "/tmp/icon32fra.png",
|
||||||
|
"imageUrl": "https://localhost:9096/icon32fra.png",
|
||||||
|
"hs20IconString": "32:32:fra:image/png:icon32fra:/tmp/icon32fra.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointOsuIcon",
|
||||||
|
"iconWidth": 32,
|
||||||
|
"iconHeight": 32,
|
||||||
|
"languageCode": "eng",
|
||||||
|
"iconLocale": "en_US",
|
||||||
|
"iconName": "icon32usa",
|
||||||
|
"filePath": "/tmp/icon32usa.png",
|
||||||
|
"imageUrl": "https://localhost:9096/icon32usa.png",
|
||||||
|
"hs20IconString": "32:32:eng:image/png:icon32usa:/tmp/icon32usa.png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"osuServerUri": "https://example.com/osu/rogers",
|
||||||
|
"osuFriendlyName": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "eng",
|
||||||
|
"dupleIso3Language": "eng",
|
||||||
|
"dupleName": "Example provider rogers",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "eng:Example provider rogers"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "fra",
|
||||||
|
"dupleIso3Language": "fra",
|
||||||
|
"dupleName": "Exemple de fournisseur rogers",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "fra:Exemple de fournisseur rogers"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"osuNaiStandalone": "anonymous@rogers.com",
|
||||||
|
"osuNaiShared": "anonymous@rogers.com",
|
||||||
|
"osuMethodList": [
|
||||||
|
1,
|
||||||
|
0
|
||||||
|
],
|
||||||
|
"osuServiceDescription": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "eng",
|
||||||
|
"dupleIso3Language": "eng",
|
||||||
|
"dupleName": "Example services rogers",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "eng:Example services rogers"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "fra",
|
||||||
|
"dupleIso3Language": "fra",
|
||||||
|
"dupleName": "Exemples de services rogers",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "fra:Exemples de services rogers"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"roamingOi": [
|
||||||
|
"BAA2D00100",
|
||||||
|
"BAA2D00000"
|
||||||
|
],
|
||||||
|
"profileType": "passpoint_osu_id_provider"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1611264539070,
|
||||||
|
"lastModifiedTimestamp": 1611264539070,
|
||||||
|
"childProfileIds": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 36,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "passpoint_osu_id_provider",
|
||||||
|
"name": "provider2-profile-2021-01-21T21:28:59.118Z",
|
||||||
|
"details": {
|
||||||
|
"model_type": "PasspointOsuProviderProfile",
|
||||||
|
"mccMncList": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointMccMnc",
|
||||||
|
"mcc": 302,
|
||||||
|
"mnc": 220,
|
||||||
|
"iso": "ca",
|
||||||
|
"country": "Canada",
|
||||||
|
"countryCode": 1,
|
||||||
|
"network": "Telus Mobility",
|
||||||
|
"mccMncPairing": "302,220"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"naiRealmList": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointNaiRealmInformation",
|
||||||
|
"naiRealms": [
|
||||||
|
"telus.com"
|
||||||
|
],
|
||||||
|
"encoding": 0,
|
||||||
|
"eapMethods": [
|
||||||
|
"EAP-TTLS with username/password",
|
||||||
|
"EAP-TLS with certificate"
|
||||||
|
],
|
||||||
|
"eapMap": {
|
||||||
|
"EAP-TTLS with username/password": [
|
||||||
|
"Credential Type:username/password",
|
||||||
|
"Non-EAP Inner Authentication Type:MSCHAPV2"
|
||||||
|
],
|
||||||
|
"EAP-TLS with certificate": [
|
||||||
|
"Credential Type:Certificate"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"osuIconList": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointOsuIcon",
|
||||||
|
"iconWidth": 32,
|
||||||
|
"iconHeight": 32,
|
||||||
|
"languageCode": "eng",
|
||||||
|
"iconLocale": "en_CA",
|
||||||
|
"iconName": "icon32eng",
|
||||||
|
"filePath": "/tmp/icon32eng.png",
|
||||||
|
"imageUrl": "https://localhost:9096/icon32eng.png",
|
||||||
|
"hs20IconString": "32:32:eng:image/png:icon32eng:/tmp/icon32eng.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointOsuIcon",
|
||||||
|
"iconWidth": 32,
|
||||||
|
"iconHeight": 32,
|
||||||
|
"languageCode": "fra",
|
||||||
|
"iconLocale": "fr_CA",
|
||||||
|
"iconName": "icon32fra",
|
||||||
|
"filePath": "/tmp/icon32fra.png",
|
||||||
|
"imageUrl": "https://localhost:9096/icon32fra.png",
|
||||||
|
"hs20IconString": "32:32:fra:image/png:icon32fra:/tmp/icon32fra.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointOsuIcon",
|
||||||
|
"iconWidth": 32,
|
||||||
|
"iconHeight": 32,
|
||||||
|
"languageCode": "eng",
|
||||||
|
"iconLocale": "en_US",
|
||||||
|
"iconName": "icon32usa",
|
||||||
|
"filePath": "/tmp/icon32usa.png",
|
||||||
|
"imageUrl": "https://localhost:9096/icon32usa.png",
|
||||||
|
"hs20IconString": "32:32:eng:image/png:icon32usa:/tmp/icon32usa.png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"osuServerUri": "https://example.com/osu/telus",
|
||||||
|
"osuFriendlyName": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "eng",
|
||||||
|
"dupleIso3Language": "eng",
|
||||||
|
"dupleName": "Example provider telus",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "eng:Example provider telus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "fra",
|
||||||
|
"dupleIso3Language": "fra",
|
||||||
|
"dupleName": "Exemple de fournisseur telus",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "fra:Exemple de fournisseur telus"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"osuNaiStandalone": "anonymous@telus.com",
|
||||||
|
"osuNaiShared": "anonymous@telus.com",
|
||||||
|
"osuMethodList": [
|
||||||
|
1,
|
||||||
|
0
|
||||||
|
],
|
||||||
|
"osuServiceDescription": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "eng",
|
||||||
|
"dupleIso3Language": "eng",
|
||||||
|
"dupleName": "Example services telus",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "eng:Example services telus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "fra",
|
||||||
|
"dupleIso3Language": "fra",
|
||||||
|
"dupleName": "Exemples de services telus",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "fra:Exemples de services telus"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"roamingOi": [
|
||||||
|
"004096",
|
||||||
|
"005014",
|
||||||
|
"F4F5E8F5F4"
|
||||||
|
],
|
||||||
|
"profileType": "passpoint_osu_id_provider"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1611264539131,
|
||||||
|
"lastModifiedTimestamp": 1611264539131,
|
||||||
|
"childProfileIds": []
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -0,0 +1,299 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 10,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "service_metrics_collection_config",
|
||||||
|
"name": "Metrics-Profile-3-Radios",
|
||||||
|
"details": {
|
||||||
|
"model_type": "ServiceMetricsCollectionConfigProfile",
|
||||||
|
"radioTypes": [
|
||||||
|
"is5GHzL",
|
||||||
|
"is2dot4GHz",
|
||||||
|
"is5GHzU"
|
||||||
|
],
|
||||||
|
"serviceMetricDataTypes": [
|
||||||
|
"ApNode",
|
||||||
|
"ApSsid",
|
||||||
|
"Client",
|
||||||
|
"Channel",
|
||||||
|
"Neighbour"
|
||||||
|
],
|
||||||
|
"metricConfigParameterMap": {
|
||||||
|
"ApNode": [
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"serviceMetricDataType": "ApNode",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"serviceMetricDataType": "ApNode",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"serviceMetricDataType": "ApNode",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"serviceMetricDataType": "ApNode",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"serviceMetricDataType": "ApNode",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"serviceMetricDataType": "ApNode",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ApSsid": [
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricRadioConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"serviceMetricDataType": "ApSsid"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricRadioConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"serviceMetricDataType": "ApSsid"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricRadioConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"serviceMetricDataType": "ApSsid"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Client": [
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricRadioConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"serviceMetricDataType": "Client"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricRadioConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"serviceMetricDataType": "Client"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricRadioConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"serviceMetricDataType": "Client"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Channel": [
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"serviceMetricDataType": "Channel",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"serviceMetricDataType": "Channel",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"serviceMetricDataType": "Channel",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"serviceMetricDataType": "Channel",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"serviceMetricDataType": "Channel",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"serviceMetricDataType": "Channel",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Neighbour": [
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"serviceMetricDataType": "Neighbour",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"serviceMetricDataType": "Neighbour",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"serviceMetricDataType": "Neighbour",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"serviceMetricDataType": "Neighbour",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"serviceMetricDataType": "Neighbour",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"serviceMetricDataType": "Neighbour",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"profileType": "service_metrics_collection_config"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1606778369931,
|
||||||
|
"lastModifiedTimestamp": 1606778369931,
|
||||||
|
"childProfileIds": [
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 34,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "passpoint_operator",
|
||||||
|
"name": "operator-profile-2021-01-21T21:28:58.994Z",
|
||||||
|
"details": {
|
||||||
|
"model_type": "PasspointOperatorProfile",
|
||||||
|
"serverOnlyAuthenticatedL2EncryptionNetwork": false,
|
||||||
|
"x509CertificateLocation": "/etc/ca.pem",
|
||||||
|
"operatorFriendlyName": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "fra",
|
||||||
|
"dupleIso3Language": "fra",
|
||||||
|
"dupleName": "Nom de l'opérateur convivial par défaut",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "fra:Nom de l'opérateur convivial par défaut"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "eng",
|
||||||
|
"dupleIso3Language": "eng",
|
||||||
|
"dupleName": "Default friendly passpoint_operator name",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "eng:Default friendly passpoint_operator name"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"domainNameList": [
|
||||||
|
"bell.ca",
|
||||||
|
"telus.com",
|
||||||
|
"rogers.com"
|
||||||
|
],
|
||||||
|
"profileType": "passpoint_operator"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1611264539004,
|
||||||
|
"lastModifiedTimestamp": 1611264539004,
|
||||||
|
"childProfileIds": []
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -1,34 +1,24 @@
|
|||||||
[
|
[
|
||||||
{
|
{
|
||||||
"model_type": "Profile",
|
"model_type": "Profile",
|
||||||
"id": 1,
|
"id": 1,
|
||||||
"customerId": 2,
|
"customerId": 2,
|
||||||
"profileType": "radius",
|
"profileType": "radius",
|
||||||
"name": "RadiusProfileOttawa",
|
"name": "Radius-Profile",
|
||||||
"details": {
|
"details": {
|
||||||
"model_type": "RadiusProfile",
|
"model_type": "RadiusProfile",
|
||||||
"subnetConfiguration": null,
|
"primaryRadiusAuthServer": {
|
||||||
"serviceRegionMap": {
|
"model_type": "RadiusServer",
|
||||||
"Ottawa": {
|
"ipAddress": "192.168.0.1",
|
||||||
"model_type": "RadiusServiceRegion",
|
"secret": "testing123",
|
||||||
"serverMap": {
|
"port": 1812,
|
||||||
"RadiusProfileOttawa": [
|
"timeout": null
|
||||||
{
|
},
|
||||||
"model_type": "RadiusServer",
|
"profileType": "radius"
|
||||||
"ipAddress": "localhost",
|
|
||||||
"secret": "testing123",
|
|
||||||
"authPort": 1812,
|
|
||||||
"timeout": null
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"regionName": "Ottawa"
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"profileType": "radius"
|
"createdTimestamp": 1611262628767,
|
||||||
},
|
"lastModifiedTimestamp": 1611262628767,
|
||||||
"createdTimestamp": 1591653174195,
|
"childProfileIds": [
|
||||||
"lastModifiedTimestamp": 1591653174195,
|
]
|
||||||
"childProfileIds": []
|
}
|
||||||
}
|
]
|
||||||
]
|
|
||||||
|
|||||||
@@ -0,0 +1,204 @@
|
|||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 4,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "rf",
|
||||||
|
"name": "TipWlan-rf",
|
||||||
|
"details": {
|
||||||
|
"model_type": "RfConfiguration",
|
||||||
|
"rfConfigMap": {
|
||||||
|
"is5GHz": {
|
||||||
|
"model_type": "RfElementConfiguration",
|
||||||
|
"radioType": "is5GHz",
|
||||||
|
"radioMode": "modeAC",
|
||||||
|
"rf": "TipWlan-rf",
|
||||||
|
"beaconInterval": 100,
|
||||||
|
"forceScanDuringVoice": "disabled",
|
||||||
|
"rtsCtsThreshold": 65535,
|
||||||
|
"channelBandwidth": "is80MHz",
|
||||||
|
"mimoMode": "twoByTwo",
|
||||||
|
"maxNumClients": 100,
|
||||||
|
"autoChannelSelection": false,
|
||||||
|
"activeScanSettings": {
|
||||||
|
"model_type": "ActiveScanSettings",
|
||||||
|
"enabled": true,
|
||||||
|
"scanFrequencySeconds": 10,
|
||||||
|
"scanDurationMillis": 65
|
||||||
|
},
|
||||||
|
"neighbouringListApConfig": {
|
||||||
|
"model_type": "NeighbouringAPListConfiguration",
|
||||||
|
"minSignal": -85,
|
||||||
|
"maxAps": 25
|
||||||
|
},
|
||||||
|
"minAutoCellSize": -65,
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"channelHopSettings": {
|
||||||
|
"model_type": "ChannelHopSettings",
|
||||||
|
"noiseFloorThresholdInDB": -75,
|
||||||
|
"noiseFloorThresholdTimeInSeconds": 180,
|
||||||
|
"nonWifiThresholdInPercentage": 50,
|
||||||
|
"nonWifiThresholdTimeInSeconds": 180,
|
||||||
|
"obssHopMode": "NON_WIFI"
|
||||||
|
},
|
||||||
|
"bestApEnabled": null,
|
||||||
|
"multicastRate": "auto",
|
||||||
|
"managementRate": "auto",
|
||||||
|
"rxCellSizeDb": -90,
|
||||||
|
"probeResponseThresholdDb": -90,
|
||||||
|
"clientDisconnectThresholdDb": -90,
|
||||||
|
"eirpTxPower": 18,
|
||||||
|
"bestApSettings": {
|
||||||
|
"model_type": "RadioBestApSettings",
|
||||||
|
"mlComputed": true,
|
||||||
|
"dropInSnrPercentage": 30,
|
||||||
|
"minLoadFactor": 40
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"is2dot4GHz": {
|
||||||
|
"model_type": "RfElementConfiguration",
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"radioMode": "modeN",
|
||||||
|
"rf": "TipWlan-rf",
|
||||||
|
"beaconInterval": 100,
|
||||||
|
"forceScanDuringVoice": "disabled",
|
||||||
|
"rtsCtsThreshold": 65535,
|
||||||
|
"channelBandwidth": "is20MHz",
|
||||||
|
"mimoMode": "twoByTwo",
|
||||||
|
"maxNumClients": 100,
|
||||||
|
"autoChannelSelection": false,
|
||||||
|
"activeScanSettings": {
|
||||||
|
"model_type": "ActiveScanSettings",
|
||||||
|
"enabled": true,
|
||||||
|
"scanFrequencySeconds": 10,
|
||||||
|
"scanDurationMillis": 65
|
||||||
|
},
|
||||||
|
"neighbouringListApConfig": {
|
||||||
|
"model_type": "NeighbouringAPListConfiguration",
|
||||||
|
"minSignal": -85,
|
||||||
|
"maxAps": 25
|
||||||
|
},
|
||||||
|
"minAutoCellSize": -65,
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"channelHopSettings": {
|
||||||
|
"model_type": "ChannelHopSettings",
|
||||||
|
"noiseFloorThresholdInDB": -75,
|
||||||
|
"noiseFloorThresholdTimeInSeconds": 180,
|
||||||
|
"nonWifiThresholdInPercentage": 50,
|
||||||
|
"nonWifiThresholdTimeInSeconds": 180,
|
||||||
|
"obssHopMode": "NON_WIFI"
|
||||||
|
},
|
||||||
|
"bestApEnabled": null,
|
||||||
|
"multicastRate": "auto",
|
||||||
|
"managementRate": "auto",
|
||||||
|
"rxCellSizeDb": -90,
|
||||||
|
"probeResponseThresholdDb": -90,
|
||||||
|
"clientDisconnectThresholdDb": -90,
|
||||||
|
"eirpTxPower": 18,
|
||||||
|
"bestApSettings": {
|
||||||
|
"model_type": "RadioBestApSettings",
|
||||||
|
"mlComputed": true,
|
||||||
|
"dropInSnrPercentage": 20,
|
||||||
|
"minLoadFactor": 50
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"is5GHzU": {
|
||||||
|
"model_type": "RfElementConfiguration",
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"radioMode": "modeAC",
|
||||||
|
"rf": "TipWlan-rf",
|
||||||
|
"beaconInterval": 100,
|
||||||
|
"forceScanDuringVoice": "disabled",
|
||||||
|
"rtsCtsThreshold": 65535,
|
||||||
|
"channelBandwidth": "is80MHz",
|
||||||
|
"mimoMode": "twoByTwo",
|
||||||
|
"maxNumClients": 100,
|
||||||
|
"autoChannelSelection": false,
|
||||||
|
"activeScanSettings": {
|
||||||
|
"model_type": "ActiveScanSettings",
|
||||||
|
"enabled": true,
|
||||||
|
"scanFrequencySeconds": 10,
|
||||||
|
"scanDurationMillis": 65
|
||||||
|
},
|
||||||
|
"neighbouringListApConfig": {
|
||||||
|
"model_type": "NeighbouringAPListConfiguration",
|
||||||
|
"minSignal": -85,
|
||||||
|
"maxAps": 25
|
||||||
|
},
|
||||||
|
"minAutoCellSize": -65,
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"channelHopSettings": {
|
||||||
|
"model_type": "ChannelHopSettings",
|
||||||
|
"noiseFloorThresholdInDB": -75,
|
||||||
|
"noiseFloorThresholdTimeInSeconds": 180,
|
||||||
|
"nonWifiThresholdInPercentage": 50,
|
||||||
|
"nonWifiThresholdTimeInSeconds": 180,
|
||||||
|
"obssHopMode": "NON_WIFI"
|
||||||
|
},
|
||||||
|
"bestApEnabled": null,
|
||||||
|
"multicastRate": "auto",
|
||||||
|
"managementRate": "auto",
|
||||||
|
"rxCellSizeDb": -90,
|
||||||
|
"probeResponseThresholdDb": -90,
|
||||||
|
"clientDisconnectThresholdDb": -90,
|
||||||
|
"eirpTxPower": 18,
|
||||||
|
"bestApSettings": {
|
||||||
|
"model_type": "RadioBestApSettings",
|
||||||
|
"mlComputed": true,
|
||||||
|
"dropInSnrPercentage": 30,
|
||||||
|
"minLoadFactor": 40
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"is5GHzL": {
|
||||||
|
"model_type": "RfElementConfiguration",
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"radioMode": "modeAC",
|
||||||
|
"rf": "TipWlan-rf",
|
||||||
|
"beaconInterval": 100,
|
||||||
|
"forceScanDuringVoice": "disabled",
|
||||||
|
"rtsCtsThreshold": 65535,
|
||||||
|
"channelBandwidth": "is80MHz",
|
||||||
|
"mimoMode": "twoByTwo",
|
||||||
|
"maxNumClients": 100,
|
||||||
|
"autoChannelSelection": false,
|
||||||
|
"activeScanSettings": {
|
||||||
|
"model_type": "ActiveScanSettings",
|
||||||
|
"enabled": true,
|
||||||
|
"scanFrequencySeconds": 10,
|
||||||
|
"scanDurationMillis": 65
|
||||||
|
},
|
||||||
|
"neighbouringListApConfig": {
|
||||||
|
"model_type": "NeighbouringAPListConfiguration",
|
||||||
|
"minSignal": -85,
|
||||||
|
"maxAps": 25
|
||||||
|
},
|
||||||
|
"minAutoCellSize": -65,
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"channelHopSettings": {
|
||||||
|
"model_type": "ChannelHopSettings",
|
||||||
|
"noiseFloorThresholdInDB": -75,
|
||||||
|
"noiseFloorThresholdTimeInSeconds": 180,
|
||||||
|
"nonWifiThresholdInPercentage": 50,
|
||||||
|
"nonWifiThresholdTimeInSeconds": 180,
|
||||||
|
"obssHopMode": "NON_WIFI"
|
||||||
|
},
|
||||||
|
"bestApEnabled": null,
|
||||||
|
"multicastRate": "auto",
|
||||||
|
"managementRate": "auto",
|
||||||
|
"rxCellSizeDb": -90,
|
||||||
|
"probeResponseThresholdDb": -90,
|
||||||
|
"clientDisconnectThresholdDb": -90,
|
||||||
|
"eirpTxPower": 18,
|
||||||
|
"bestApSettings": {
|
||||||
|
"model_type": "RadioBestApSettings",
|
||||||
|
"mlComputed": true,
|
||||||
|
"dropInSnrPercentage": 30,
|
||||||
|
"minLoadFactor": 40
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"profileType": "rf"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1612285248650,
|
||||||
|
"lastModifiedTimestamp": 1612285248650,
|
||||||
|
"childProfileIds": []
|
||||||
|
}
|
||||||
@@ -1,184 +1,75 @@
|
|||||||
[
|
[
|
||||||
{
|
{
|
||||||
"model_type": "Profile",
|
"model_type": "Profile",
|
||||||
"id": 6,
|
"id": 2,
|
||||||
"customerId": 2,
|
"customerId": 2,
|
||||||
"profileType": "ssid",
|
"profileType": "ssid",
|
||||||
"name": "DefaultSsid-2g",
|
"name": "TipWlan-cloud-3-radios",
|
||||||
"details": {
|
"details": {
|
||||||
"model_type": "SsidConfiguration",
|
"model_type": "SsidConfiguration",
|
||||||
"ssid": "Default-SSID-2g",
|
"ssid": "TipWlan-cloud-3-radios",
|
||||||
"appliedRadios": [
|
"appliedRadios": [
|
||||||
"is2dot4GHz"
|
"is5GHzU",
|
||||||
],
|
"is2dot4GHz",
|
||||||
"ssidAdminState": "enabled",
|
"is5GHzL"
|
||||||
"secureMode": "wpa2PSK",
|
],
|
||||||
"vlanId": 1,
|
"ssidAdminState": "enabled",
|
||||||
"keyStr": "12345678",
|
"secureMode": "wpa2OnlyPSK",
|
||||||
"broadcastSsid": "enabled",
|
"vlanId": 1,
|
||||||
"keyRefresh": 0,
|
"keyStr": "openwifi",
|
||||||
"noLocalSubnets": false,
|
"broadcastSsid": "enabled",
|
||||||
"radiusServiceName": null,
|
"keyRefresh": 0,
|
||||||
"captivePortalId": null,
|
"noLocalSubnets": false,
|
||||||
"bandwidthLimitDown": 0,
|
"radiusServiceId": 0,
|
||||||
"bandwidthLimitUp": 0,
|
"radiusAcountingServiceInterval": 60,
|
||||||
"videoTrafficOnly": false,
|
"captivePortalId": null,
|
||||||
"radioBasedConfigs": {
|
"bandwidthLimitDown": 0,
|
||||||
"is5GHz": {
|
"bandwidthLimitUp": 0,
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
"clientBandwidthLimitDown": 0,
|
||||||
"enable80211r": null,
|
"clientBandwidthLimitUp": 0,
|
||||||
"enable80211k": null,
|
"videoTrafficOnly": false,
|
||||||
"enable80211v": null
|
"radioBasedConfigs": {
|
||||||
},
|
"is5GHzU": {
|
||||||
"is2dot4GHz": {
|
"model_type": "RadioBasedSsidConfiguration",
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
"enable80211r": null,
|
||||||
"enable80211r": null,
|
"enable80211k": null,
|
||||||
"enable80211k": null,
|
"enable80211v": null
|
||||||
"enable80211v": null
|
},
|
||||||
},
|
"is2dot4GHz": {
|
||||||
"is5GHzU": {
|
"model_type": "RadioBasedSsidConfiguration",
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
"enable80211r": null,
|
||||||
"enable80211r": null,
|
"enable80211k": null,
|
||||||
"enable80211k": null,
|
"enable80211v": null
|
||||||
"enable80211v": null
|
},
|
||||||
},
|
"is5GHz": {
|
||||||
"is5GHzL": {
|
"model_type": "RadioBasedSsidConfiguration",
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
"enable80211r": null,
|
||||||
"enable80211r": null,
|
"enable80211k": null,
|
||||||
"enable80211k": null,
|
"enable80211v": null
|
||||||
"enable80211v": null
|
},
|
||||||
}
|
"is5GHzL": {
|
||||||
|
"model_type": "RadioBasedSsidConfiguration",
|
||||||
|
"enable80211r": null,
|
||||||
|
"enable80211k": null,
|
||||||
|
"enable80211v": null
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"bonjourGatewayProfileId": null,
|
||||||
|
"enable80211w": null,
|
||||||
|
"wepConfig": null,
|
||||||
|
"forwardMode": "BRIDGE",
|
||||||
|
"profileType": "ssid",
|
||||||
|
"radiusClientConfiguration": {
|
||||||
|
"model_type": "RadiusNasConfiguration",
|
||||||
|
"nasClientId": "DEFAULT",
|
||||||
|
"nasClientIp": "WAN_IP",
|
||||||
|
"userDefinedNasId": null,
|
||||||
|
"userDefinedNasIp": null,
|
||||||
|
"operatorId": null
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"bonjourGatewayProfileId": null,
|
"createdTimestamp": 1612285248638,
|
||||||
"enable80211w": null,
|
"lastModifiedTimestamp": 1612285248638,
|
||||||
"wepConfig": null,
|
"childProfileIds": []
|
||||||
"forwardMode": null,
|
|
||||||
"profileType": "ssid"
|
|
||||||
},
|
|
||||||
"createdTimestamp": 1591653239983,
|
|
||||||
"lastModifiedTimestamp": 1591653239983,
|
|
||||||
"childProfileIds": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"model_type": "Profile",
|
|
||||||
"id": 7,
|
|
||||||
"customerId": 2,
|
|
||||||
"profileType": "ssid",
|
|
||||||
"name": "DefaultSsid-5gl",
|
|
||||||
"details": {
|
|
||||||
"model_type": "SsidConfiguration",
|
|
||||||
"ssid": "Default-SSID-5gl",
|
|
||||||
"appliedRadios": [
|
|
||||||
"is5GHzL"
|
|
||||||
],
|
|
||||||
"ssidAdminState": "enabled",
|
|
||||||
"secureMode": "wpaEAP",
|
|
||||||
"vlanId": 1,
|
|
||||||
"keyStr": "12345678",
|
|
||||||
"broadcastSsid": "enabled",
|
|
||||||
"keyRefresh": 0,
|
|
||||||
"noLocalSubnets": false,
|
|
||||||
"radiusServiceName": "RadiusProfileOttawa",
|
|
||||||
"captivePortalId": null,
|
|
||||||
"bandwidthLimitDown": 0,
|
|
||||||
"bandwidthLimitUp": 0,
|
|
||||||
"videoTrafficOnly": false,
|
|
||||||
"radioBasedConfigs": {
|
|
||||||
"is5GHz": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is2dot4GHz": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is5GHzU": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is5GHzL": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"bonjourGatewayProfileId": null,
|
|
||||||
"enable80211w": null,
|
|
||||||
"wepConfig": null,
|
|
||||||
"forwardMode": null,
|
|
||||||
"profileType": "ssid"
|
|
||||||
},
|
|
||||||
"createdTimestamp": 1591653240017,
|
|
||||||
"lastModifiedTimestamp": 1591654215374,
|
|
||||||
"childProfileIds": [
|
|
||||||
1
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"model_type": "Profile",
|
|
||||||
"id": 8,
|
|
||||||
"customerId": 2,
|
|
||||||
"profileType": "ssid",
|
|
||||||
"name": "DefaultSsid-5gu",
|
|
||||||
"details": {
|
|
||||||
"model_type": "SsidConfiguration",
|
|
||||||
"ssid": "Default-SSID-5gu",
|
|
||||||
"appliedRadios": [
|
|
||||||
"is5GHzU"
|
|
||||||
],
|
|
||||||
"ssidAdminState": "enabled",
|
|
||||||
"secureMode": "wpa2PSK",
|
|
||||||
"vlanId": 1,
|
|
||||||
"keyStr": "12345678",
|
|
||||||
"broadcastSsid": "enabled",
|
|
||||||
"keyRefresh": 0,
|
|
||||||
"noLocalSubnets": false,
|
|
||||||
"radiusServiceName": null,
|
|
||||||
"captivePortalId": null,
|
|
||||||
"bandwidthLimitDown": 0,
|
|
||||||
"bandwidthLimitUp": 0,
|
|
||||||
"videoTrafficOnly": false,
|
|
||||||
"radioBasedConfigs": {
|
|
||||||
"is5GHz": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is2dot4GHz": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is5GHzU": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is5GHzL": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"bonjourGatewayProfileId": null,
|
|
||||||
"enable80211w": null,
|
|
||||||
"wepConfig": null,
|
|
||||||
"forwardMode": null,
|
|
||||||
"profileType": "ssid"
|
|
||||||
},
|
|
||||||
"createdTimestamp": 1591654301763,
|
|
||||||
"lastModifiedTimestamp": 1591654301763,
|
|
||||||
"childProfileIds": []
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -0,0 +1,42 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 33,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "passpoint_venue",
|
||||||
|
"name": "venue-profile-2021-01-21T21:28:58.934Z",
|
||||||
|
"details": {
|
||||||
|
"model_type": "PasspointVenueProfile",
|
||||||
|
"venueNameSet": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointVenueName",
|
||||||
|
"locale": "fra",
|
||||||
|
"dupleIso3Language": "fra",
|
||||||
|
"dupleName": "Exemple de lieu",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"venueUrl": "http://www.example.com/info-fra",
|
||||||
|
"asDuple": "fra:Exemple de lieu"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointVenueName",
|
||||||
|
"locale": "eng",
|
||||||
|
"dupleIso3Language": "eng",
|
||||||
|
"dupleName": "Example passpoint_venue",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"venueUrl": "http://www.example.com/info-eng",
|
||||||
|
"asDuple": "eng:Example passpoint_venue"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"venueTypeAssignment": {
|
||||||
|
"model_type": "PasspointVenueTypeAssignment",
|
||||||
|
"venueDescription": "Research and Development Facility",
|
||||||
|
"venueGroupId": 2,
|
||||||
|
"venueTypeId": 8
|
||||||
|
},
|
||||||
|
"profileType": "passpoint_venue"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1611264538947,
|
||||||
|
"lastModifiedTimestamp": 1611264538947,
|
||||||
|
"childProfileIds": []
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -64,7 +64,6 @@
|
|||||||
<logger name="org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer" level="INFO"/>
|
<logger name="org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer" level="INFO"/>
|
||||||
|
|
||||||
<logger name="com.telecominfraproject.wlan" level="INFO"/>
|
<logger name="com.telecominfraproject.wlan" level="INFO"/>
|
||||||
<logger name="ai.connectus" level="INFO"/>
|
|
||||||
<logger name="com.netflix.servo.tag.aws.AwsInjectableTag" level="OFF"/>
|
<logger name="com.netflix.servo.tag.aws.AwsInjectableTag" level="OFF"/>
|
||||||
<logger name="com.vmware.ovsdb.service.OvsdbConnectionInfo" level="OFF"/>
|
<logger name="com.vmware.ovsdb.service.OvsdbConnectionInfo" level="OFF"/>
|
||||||
<logger name="com.vmware.ovsdb.netty.OvsdbConnectionHandler" level="ERROR"/>
|
<logger name="com.vmware.ovsdb.netty.OvsdbConnectionHandler" level="ERROR"/>
|
||||||
|
|||||||
@@ -1,20 +1,20 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
# Prepare the hosts file - do it only if does not have required entries
|
# Prepare the hosts file - do it only if does not have required entries
|
||||||
n1=`grep opensync-mqtt-broker /etc/hosts | wc -l`
|
n1=`grep opensync-mqtt-broker.zone1.lab.wlan.tip.build /etc/hosts | wc -l`
|
||||||
|
|
||||||
if [[ $n1 -eq 0 ]]
|
if [[ $n1 -eq 0 ]]
|
||||||
then
|
then
|
||||||
echo Adding opensync-mqtt-broker to /etc/hosts
|
echo Adding opensync-mqtt-broker.zone1.lab.wlan.tip.build to /etc/hosts
|
||||||
echo "127.0.0.1 opensync-mqtt-broker" >> /etc/hosts
|
echo "127.0.0.1 opensync-mqtt-broker.zone1.lab.wlan.tip.build" >> /etc/hosts
|
||||||
fi
|
fi
|
||||||
|
|
||||||
n2=`grep opensync-wifi-controller /etc/hosts | wc -l`
|
n2=`grep opensync-controller.zone1.lab.wlan.tip.build /etc/hosts | wc -l`
|
||||||
|
|
||||||
if [[ $n2 -eq 0 ]]
|
if [[ $n2 -eq 0 ]]
|
||||||
then
|
then
|
||||||
echo Adding opensync-wifi-controller to /etc/hosts
|
echo Adding opensync-controller.zone1.lab.wlan.tip.build to /etc/hosts
|
||||||
echo "127.0.0.1 opensync-wifi-controller" >> /etc/hosts
|
echo "127.0.0.1 opensync-controller.zone1.lab.wlan.tip.build" >> /etc/hosts
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
@@ -33,24 +33,36 @@ OVSDB_SERVER_TRUSTSTORE_FILE="${OVSDB_SERVER_TRUSTSTORE_FILE:=/opt/tip-wlan/cert
|
|||||||
OVSDB_SERVER_TRUSTSTORE_PASSWORD="${OVSDB_SERVER_TRUSTSTORE_PASSWORD:=mypassword}"
|
OVSDB_SERVER_TRUSTSTORE_PASSWORD="${OVSDB_SERVER_TRUSTSTORE_PASSWORD:=mypassword}"
|
||||||
OVSDB_EQUIPMENT_CONFIG_FILE="${OVSDB_EQUIPMENT_CONFIG_FILE:=/app/opensync/EquipmentExample.json}"
|
OVSDB_EQUIPMENT_CONFIG_FILE="${OVSDB_EQUIPMENT_CONFIG_FILE:=/app/opensync/EquipmentExample.json}"
|
||||||
OVSDB_APPROFILE_CONFIG_FILE="${OVSDB_AP_PROFILE_CONFIG_FILE:=/app/opensync/ProfileAPExample.json}"
|
OVSDB_APPROFILE_CONFIG_FILE="${OVSDB_AP_PROFILE_CONFIG_FILE:=/app/opensync/ProfileAPExample.json}"
|
||||||
|
OVSDB_METRICSPROFILE_CONFIG_FILE="${OVSDB_METRICSPROFILE_CONFIG_FILE:=/app/opensync/ProfileMetrics.json}"
|
||||||
|
OVSDB_HOTSPOT20SPROFILE_CONFIG_FILE="${OVSDB_HOTSPOT20PROFILE_CONFIG_FILE:=/app/opensync/ProfileHotspot20.json}"
|
||||||
|
OVSDB_OPERATORPROFILE_CONFIG_FILE="${OVSDB_OPERATORPROFILE_CONFIG_FILE:=/app/opensync/ProfileOperator.json}"
|
||||||
|
OVSDB_BONJOURPROFILE_CONFIG_FILE="${OVSDB_BONJOURPROFILE_CONFIG_FILE:=/app/opensync/ProfileBonjour.json}"
|
||||||
|
OVSDB_VENUEPROFILE_CONFIG_FILE="${OVSDB_VENUEPROFILE_CONFIG_FILE:=/app/opensync/ProfileVenue.json}"
|
||||||
|
OVSDB_IDPROVIDERPROFILE_CONFIG_FILE="${OVSDB_IDPROVIDERPROFILE_CONFIG_FILE:=/app/opensync/ProfileIdProvider.json}"
|
||||||
|
OVSDB_RFPROFILE_CONFIG_FILE="${OVSDB_RF_PROFILE_CONFIG_FILE:=/app/opensync/ProfileRf.json}"
|
||||||
OVSDB_SSIDPROFILE_CONFIG_FILE="${OVSDB_SSIDPROFILE_CONFIG_FILE:=/app/opensync/ProfileSsid.json}"
|
OVSDB_SSIDPROFILE_CONFIG_FILE="${OVSDB_SSIDPROFILE_CONFIG_FILE:=/app/opensync/ProfileSsid.json}"
|
||||||
OVSDB_LOCATION_CONFIG_FILE="${OVSDB_LOCATION_CONFIG_FILE:=/app/opensync/LocationBuildingExample.json}"
|
OVSDB_LOCATION_CONFIG_FILE="${OVSDB_LOCATION_CONFIG_FILE:=/app/opensync/LocationBuildingExample.json}"
|
||||||
OVSDB_RADIUSPROFILE_CONFIG_FILE="${OVSDB_RADIUSPROFILE_CONFIG_FILE:=/app/opensync/ProfileRadius.json}"
|
OVSDB_RADIUSPROFILE_CONFIG_FILE="${OVSDB_RADIUSPROFILE_CONFIG_FILE:=/app/opensync/ProfileRadius.json}"
|
||||||
|
OVSDB_CAPTIVEPROFILE_CONFIG_FILE="${OVSDB_CAPTIVEPROFILE_CONFIG_FILE:=/app/opensync/ProfileCaptive.json}"
|
||||||
|
|
||||||
OVSDB_IF_DEFAULT_BRIDGE="${OVSDB_IF_DEFAULT_BRIDGE:=br-home}"
|
OVSDB_IF_DEFAULT_BRIDGE="${OVSDB_IF_DEFAULT_BRIDGE:=lan}"
|
||||||
echo $OVSDB_IF_DEFAULT_BRIDGE
|
echo $OVSDB_IF_DEFAULT_BRIDGE
|
||||||
OVSDB_IF_DEFAULT_RADIO_0="${OVSDB_IF_DEFAULT_RADIO_0:=home-ap-u50}"
|
OVSDB_IF_DEFAULT_RADIO_0="${OVSDB_IF_DEFAULT_RADIO_0:=wlan0}"
|
||||||
echo $OVSDB_IF_DEFAULT_RADIO_0
|
echo $OVSDB_IF_DEFAULT_RADIO_0
|
||||||
OVSDB_IF_DEFAULT_RADIO_1="${OVSDB_IF_DEFAULT_RADIO_1:=home-ap-24}"
|
OVSDB_IF_DEFAULT_RADIO_1="${OVSDB_IF_DEFAULT_RADIO_1:=wlan1}"
|
||||||
echo $OVSDB_IF_DEFAULT_RADIO_1
|
echo $OVSDB_IF_DEFAULT_RADIO_1
|
||||||
OVSDB_IF_DEFAULT_RADIO_2="${OVSDB_IF_DEFAULT_RADIO_2:=home-ap-l50}"
|
OVSDB_IF_DEFAULT_RADIO_2="${OVSDB_IF_DEFAULT_RADIO_2:=wlan2}"
|
||||||
echo $OVSDB_IF_DEFAULT_RADIO_2
|
echo $OVSDB_IF_DEFAULT_RADIO_2
|
||||||
OVSDB_DEVICE_RADIO_0="${OVSDB_DEVICE_RADIO_0:=wifi2}"
|
OVSDB_DEVICE_DEFAULT_WAN_TYPE="${OVSDB_DEVICE_DEFAULT_WAN_TYPE:=bridge}"
|
||||||
echo $OVSDB_DEVICE_RADIO_0
|
echo $OVSDB_DEVICE_DEFAULT_WAN_TYPE
|
||||||
OVSDB_DEVICE_RADIO_1="${OVSDB_DEVICE_RADIO_1:=wifi0}"
|
OVSDB_DEVICE_DEFAULT_WAN_NAME="${OVSDB_DEVICE_DEFAULT_WAN_NAME:=wan}"
|
||||||
echo $OVSDB_DEVICE_RADIO_1
|
echo $OVSDB_DEVICE_DEFAULT_WAN_NAME
|
||||||
OVSDB_DEVICE_RADIO_2="${OVSDB_DEVICE_RADIO_2:=wifi1}"
|
OVSDB_DEVICE_DEFAULT_LAN_TYPE="${OVSDB_DEVICE_DEFAULT_LAN_TYPE:=bridge}"
|
||||||
echo $OVSDB_DEVICE_RADIO_2
|
echo $OVSDB_DEVICE_DEFAULT_LAN_TYPE
|
||||||
|
OVSDB_DEVICE_DEFAULT_LAN_NAME="${OVSDB_DEVICE_DEFAULT_LAN_NAME:=lan}"
|
||||||
|
echo $OVSDB_DEVICE_DEFAULT_LAN_NAME
|
||||||
|
OVSDB_PREVENT_CLIENTCN_ALTERATION="${OVSDB_PREVENT_CLIENTCN_ALTERATION:=false}"
|
||||||
|
echo $OVSDB_PREVENT_CLIENTCN_ALTERATION
|
||||||
|
|
||||||
echo Reading AP configuration from $OVSDB_CONFIG_FILE
|
echo Reading AP configuration from $OVSDB_CONFIG_FILE
|
||||||
|
|
||||||
@@ -59,8 +71,9 @@ EXT_CLIENT_KEYSTORE_FILE="${EXT_CLIENT_KEYSTORE_FILE:=/opt/tip-wlan/certs/client
|
|||||||
EXT_TRUSTSTORE_FILE="${EXT_TRUSTSTORE_FILE:=/opt/tip-wlan/certs/truststore.jks}"
|
EXT_TRUSTSTORE_FILE="${EXT_TRUSTSTORE_FILE:=/opt/tip-wlan/certs/truststore.jks}"
|
||||||
EXT_TRUSTSTORE_PASSWORD="${EXT_TRUSTSTORE_PASSWORD:=mypassword}"
|
EXT_TRUSTSTORE_PASSWORD="${EXT_TRUSTSTORE_PASSWORD:=mypassword}"
|
||||||
|
|
||||||
MQTT_BROKER_HOST="${MQTT_BROKER_HOST:=opensync-mqtt-broker}"
|
MQTT_BROKER_HOST_INTERNAL="${MQTT_BROKER_HOST_INTERNAL:=opensync-mqtt-broker.zone1.lab.wlan.tip.build}"
|
||||||
OVSDB_MANAGER_HOST="${OVSDB_MANAGER_HOST:=opensync-wifi-controller}"
|
MQTT_BROKER_HOST_EXTERNAL="${MQTT_BROKER_HOST_EXTERNAL:=opensync-mqtt-broker.zone1.lab.wlan.tip.build}"
|
||||||
|
OVSDB_MANAGER_HOST="${OVSDB_MANAGER_HOST:=opensync-controller.zone1.lab.wlan.tip.build}"
|
||||||
|
|
||||||
LOGBACK_CONFIG_FILE="${LOGBACK_CONFIG_FILE:=/app/opensync/logback.xml}"
|
LOGBACK_CONFIG_FILE="${LOGBACK_CONFIG_FILE:=/app/opensync/logback.xml}"
|
||||||
|
|
||||||
@@ -115,33 +128,44 @@ CLIENT_MQTT_SSL_PROPS="$CLIENT_MQTT_SSL_PROPS -Djavax.net.ssl.trustStore=$MQTT_T
|
|||||||
CLIENT_MQTT_SSL_PROPS="$CLIENT_MQTT_SSL_PROPS -Djavax.net.ssl.trustStorePassword=$MQTT_TRUSTSTORE_PASSWORD"
|
CLIENT_MQTT_SSL_PROPS="$CLIENT_MQTT_SSL_PROPS -Djavax.net.ssl.trustStorePassword=$MQTT_TRUSTSTORE_PASSWORD"
|
||||||
|
|
||||||
OVSDB_PROPS=" "
|
OVSDB_PROPS=" "
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.managerAddr=$OVSDB_MANAGER_HOST"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.managerAddr=$OVSDB_MANAGER_HOST"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.listenPort=6640 "
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.listenPort=6640 "
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.redirector.listenPort=6643"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.redirector.listenPort=6643"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.timeoutSec=30"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.timeoutSec=30"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.trustStore=$OVSDB_SERVER_TRUSTSTORE_FILE"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.trustStore=$OVSDB_SERVER_TRUSTSTORE_FILE"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.trustStorePassword=$OVSDB_SERVER_TRUSTSTORE_PASSWORD"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.trustStorePassword=$OVSDB_SERVER_TRUSTSTORE_PASSWORD"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.keyStore=$OVSDB_SERVER_KEYSTORE_FILE"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.keyStore=$OVSDB_SERVER_KEYSTORE_FILE"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.keyStorePassword=$OVSDB_SERVER_KEYSTORE_PASSWORD"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.keyStorePassword=$OVSDB_SERVER_KEYSTORE_PASSWORD"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.customerEquipmentFileName=$OVSDB_EQUIPMENT_CONFIG_FILE"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.customerEquipmentFileName=$OVSDB_EQUIPMENT_CONFIG_FILE"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.apProfileFileName=$OVSDB_APPROFILE_CONFIG_FILE"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.apProfileFileName=$OVSDB_APPROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.ssidProfileFileName=$OVSDB_SSIDPROFILE_CONFIG_FILE"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.metricsProfileFileName=$OVSDB_METRICSPROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.radiusProfileFileName=$OVSDB_RADIUSPROFILE_CONFIG_FILE"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.hotspot20ProfileFileName=$OVSDB_HOTSPOT20PROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.locationFileName=$OVSDB_LOCATION_CONFIG_FILE"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.operatorProfileFileName=$OVSDB_OPERATORPROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.wifi-iface.default_bridge=$OVSDB_IF_DEFAULT_BRIDGE"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.venueProfileFileName=$OVSDB_VENUEPROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.wifi-iface.default_radio0=$OVSDB_IF_DEFAULT_RADIO_0"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.idProviderProfileFileName=$OVSDB_IDPROVIDERPROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.wifi-iface.default_radio1=$OVSDB_IF_DEFAULT_RADIO_1"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.rfProfileFileName=$OVSDB_RFPROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.wifi-iface.default_radio2=$OVSDB_IF_DEFAULT_RADIO_2"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.preventClientCnAlteration=$OVSDB_PREVENT_CLIENTCN_ALTERATION"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.wifi-device.radio0=$OVSDB_DEVICE_RADIO_0"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.ssidProfileFileName=$OVSDB_SSIDPROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.wifi-device.radio1=$OVSDB_DEVICE_RADIO_1"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.radiusProfileFileName=$OVSDB_RADIUSPROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS="$OVSDB_PROPS -Dconnectus.ovsdb.wifi-device.radio2=$OVSDB_DEVICE_RADIO_2"
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.locationFileName=$OVSDB_LOCATION_CONFIG_FILE"
|
||||||
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.captiveProfileFileName=$OVSDB_CAPTIVEPROFILE_CONFIG_FILE"
|
||||||
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.bonjourProfileFileName=$OVSDB_BONJOURPROFILE_CONFIG_FILE"
|
||||||
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.wifi-iface.default_bridge=$OVSDB_IF_DEFAULT_BRIDGE"
|
||||||
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.wifi-iface.default_wan_type=$OVSDB_DEVICE_DEFAULT_WAN_TYPE"
|
||||||
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.wifi-iface.default_wan_name=$OVSDB_DEVICE_DEFAULT_WAN_NAME"
|
||||||
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.wifi-iface.default_lan_type=$OVSDB_DEVICE_DEFAULT_LAN_TYPE"
|
||||||
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.wifi-iface.default_lan_name=$OVSDB_DEVICE_DEFAULT_LAN_NAME"
|
||||||
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.wifi-iface.default_radio0=$OVSDB_IF_DEFAULT_RADIO_0"
|
||||||
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.wifi-iface.default_radio1=$OVSDB_IF_DEFAULT_RADIO_1"
|
||||||
|
OVSDB_PROPS="$OVSDB_PROPS -Dtip.wlan.ovsdb.wifi-iface.default_radio2=$OVSDB_IF_DEFAULT_RADIO_2"
|
||||||
|
|
||||||
echo OVSDB_PROPS $OVSDB_PROPS
|
echo OVSDB_PROPS $OVSDB_PROPS
|
||||||
|
|
||||||
|
|
||||||
MQTT_PROPS=" "
|
MQTT_PROPS=" "
|
||||||
MQTT_PROPS="$MQTT_PROPS -Dconnectus.mqttBroker.address=$MQTT_BROKER_HOST"
|
MQTT_PROPS="$MQTT_PROPS -Dtip.wlan.mqttBroker.address.internal=$MQTT_BROKER_HOST_INTERNAL"
|
||||||
MQTT_PROPS="$MQTT_PROPS -Dconnectus.mqttBroker.listenPort=1883"
|
MQTT_PROPS="$MQTT_PROPS -Dtip.wlan.mqttBroker.address.external=$MQTT_BROKER_HOST_EXTERNAL"
|
||||||
|
MQTT_PROPS="$MQTT_PROPS -Dtip.wlan.mqttBroker.listenPort=1883"
|
||||||
|
|
||||||
LOGGING_PROPS=" -Dlogging.config=file:$LOGBACK_CONFIG_FILE"
|
LOGGING_PROPS=" -Dlogging.config=file:$LOGBACK_CONFIG_FILE"
|
||||||
|
|
||||||
@@ -150,7 +174,9 @@ RESTAPI_PROPS="$RESTAPI_PROPS -Dserver.port=4043"
|
|||||||
|
|
||||||
SPRING_EXTRA_PROPS=" --add-opens java.base/java.lang=ALL-UNNAMED"
|
SPRING_EXTRA_PROPS=" --add-opens java.base/java.lang=ALL-UNNAMED"
|
||||||
|
|
||||||
export ALL_PROPS="$PROFILES $SSL_PROPS $CLIENT_MQTT_SSL_PROPS $OVSDB_PROPS $MQTT_PROPS $LOGGING_PROPS $RESTAPI_PROPS $SPRING_EXTRA_PROPS "
|
JVM_EXTRA_PROPS=" ${JVM_MEM_OPTIONS:- } "
|
||||||
|
|
||||||
|
export ALL_PROPS="$JVM_EXTRA_PROPS $PROFILES $SSL_PROPS $CLIENT_MQTT_SSL_PROPS $OVSDB_PROPS $MQTT_PROPS $LOGGING_PROPS $RESTAPI_PROPS $SPRING_EXTRA_PROPS "
|
||||||
|
|
||||||
echo Starting opensync wifi controller
|
echo Starting opensync wifi controller
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
FROM adoptopenjdk/openjdk13:alpine-jre
|
FROM adoptopenjdk/openjdk13:alpine-jre
|
||||||
MAINTAINER ConnectUs
|
MAINTAINER TipWlan
|
||||||
|
|
||||||
# Update the package list and upgrade installed packages
|
# Update the package list and upgrade installed packages
|
||||||
RUN apk update && apk upgrade && apk add bash
|
RUN apk update && apk upgrade && apk add bash
|
||||||
@@ -13,7 +13,15 @@ COPY app/opensync/EquipmentExample.json /app/opensync/EquipmentExample.json
|
|||||||
COPY app/opensync/ProfileAPExample.json /app/opensync/ProfileAPExample.json
|
COPY app/opensync/ProfileAPExample.json /app/opensync/ProfileAPExample.json
|
||||||
COPY app/opensync/ProfileSsid.json /app/opensync/ProfileSsid.json
|
COPY app/opensync/ProfileSsid.json /app/opensync/ProfileSsid.json
|
||||||
COPY app/opensync/LocationBuildingExample.json /app/opensync/LocationBuildingExample.json
|
COPY app/opensync/LocationBuildingExample.json /app/opensync/LocationBuildingExample.json
|
||||||
|
COPY app/opensync/ProfileMetrics.json /app/opensync/ProfileMetrics.json
|
||||||
|
COPY app/opensync/ProfileRf.json /app/opensync/ProfileRf.json
|
||||||
|
COPY app/opensync/ProfileHotspot20.json /app/opensync/ProfileHotspot20.json
|
||||||
|
COPY app/opensync/ProfileOperator.json /app/opensync/ProfileOperator.json
|
||||||
|
COPY app/opensync/ProfileVenue.json /app/opensync/ProfileVenue.json
|
||||||
|
COPY app/opensync/ProfileIdProvider.json /app/opensync/ProfileIdProvider.json
|
||||||
|
COPY app/opensync/ProfileBonjour.json /app/opensync/ProfileBonjour.json
|
||||||
|
|
||||||
|
COPY app/commit.properties /app
|
||||||
RUN chmod +x /app/run.sh
|
RUN chmod +x /app/run.sh
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|||||||
@@ -0,0 +1,4 @@
|
|||||||
|
#This is a dummy property file to be used when running docker locally
|
||||||
|
date=${date}
|
||||||
|
commitId=${commit.id}
|
||||||
|
projectVersion=${project.version}
|
||||||
@@ -1,293 +1,472 @@
|
|||||||
{
|
{
|
||||||
"model_type": "Equipment",
|
"model_type": "Equipment",
|
||||||
"id": 51,
|
"id": 1,
|
||||||
"customerId": 2,
|
"customerId": 2,
|
||||||
"profileId": 5,
|
"profileId": 8,
|
||||||
"locationId": 8,
|
"locationId": 8,
|
||||||
"equipmentType": "AP",
|
|
||||||
"inventoryId": "Test_Client_21P10C68818122",
|
|
||||||
"name": "Test_Client_21P10C68818122",
|
|
||||||
"details": {
|
|
||||||
"model_type": "ApElementConfiguration",
|
|
||||||
"equipmentModel": "EA8300-CA",
|
|
||||||
"elementConfigVersion": "AP-V1",
|
|
||||||
"equipmentType": "AP",
|
"equipmentType": "AP",
|
||||||
"deviceMode": "standaloneAP",
|
"inventoryId": "Open_AP_21P10C68818122",
|
||||||
"gettingIP": "dhcp",
|
"name": "Open_AP_21P10C68818122",
|
||||||
"staticIP": null,
|
"details": {
|
||||||
"staticIpMaskCidr": null,
|
"model_type": "ApElementConfiguration",
|
||||||
"staticIpGw": null,
|
"equipmentModel": "EA8300-CA",
|
||||||
"gettingDNS": "dhcp",
|
"elementConfigVersion": "AP-V1",
|
||||||
"staticDnsIp1": null,
|
"equipmentType": "AP",
|
||||||
"staticDnsIp2": null,
|
"deviceMode": "standaloneAP",
|
||||||
"peerInfoList": [],
|
"gettingIP": "dhcp",
|
||||||
"deviceName": "Default Device Name",
|
"staticIP": null,
|
||||||
"locationData": null,
|
"staticIpMaskCidr": null,
|
||||||
"locallyConfiguredMgmtVlan": 0,
|
"staticIpGw": null,
|
||||||
"locallyConfigured": false,
|
"gettingDNS": "dhcp",
|
||||||
"deploymentType": "CEILING",
|
"staticDnsIp1": null,
|
||||||
"syntheticClientEnabled": null,
|
"staticDnsIp2": null,
|
||||||
"frameReportThrottleEnabled": true,
|
"peerInfoList": [],
|
||||||
"antennaType": "OMNI",
|
"deviceName": "Open_AP_21P10C68818122",
|
||||||
"costSavingEventsEnabled": true,
|
"locationData": null,
|
||||||
"forwardMode": "BRIDGE",
|
"locallyConfiguredMgmtVlan": 0,
|
||||||
"radioMap": {
|
"locallyConfigured": false,
|
||||||
"is2dot4GHz": {
|
"deploymentType": "CEILING",
|
||||||
"model_type": "ElementRadioConfiguration",
|
"syntheticClientEnabled": null,
|
||||||
"radioType": "is2dot4GHz",
|
"frameReportThrottleEnabled": true,
|
||||||
"channelNumber": 6,
|
"antennaType": "OMNI",
|
||||||
"manualChannelNumber": 6,
|
"costSavingEventsEnabled": true,
|
||||||
"backupChannelNumber": 11,
|
"forwardMode": "BRIDGE",
|
||||||
"autoChannelSelection": false,
|
"radioMap": {
|
||||||
"channelBandwidth": "is20MHz",
|
"is5GHzU": {
|
||||||
"bannedChannels": [],
|
"model_type": "ElementRadioConfiguration",
|
||||||
"allowedChannels": [],
|
"radioType": "is5GHzU",
|
||||||
"rxCellSizeDb": {
|
"channelNumber": 149,
|
||||||
"model_type": "AutoOrManualValue",
|
"manualChannelNumber": 149,
|
||||||
"auto": true,
|
"backupChannelNumber": 157,
|
||||||
"value": -90
|
"manualBackupChannelNumber": 157,
|
||||||
|
"rxCellSizeDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"probeResponseThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"clientDisconnectThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"eirpTxPower": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": 18
|
||||||
|
},
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"bestAPSteerType": "both",
|
||||||
|
"deauthAttackDetection": null,
|
||||||
|
"allowedChannelsPowerLevels": [
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 161,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 100,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 132,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 165,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 104,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 136,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 108,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 140,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 112,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 144,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 116,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 149,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 153,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 157,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"is2dot4GHz": {
|
||||||
|
"model_type": "ElementRadioConfiguration",
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"channelNumber": 6,
|
||||||
|
"manualChannelNumber": 6,
|
||||||
|
"backupChannelNumber": 11,
|
||||||
|
"manualBackupChannelNumber": 11,
|
||||||
|
"rxCellSizeDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"probeResponseThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"clientDisconnectThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"eirpTxPower": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": 18
|
||||||
|
},
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"bestAPSteerType": "both",
|
||||||
|
"deauthAttackDetection": null,
|
||||||
|
"allowedChannelsPowerLevels": [
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 1,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 2,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 3,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 4,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 5,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 6,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 7,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 8,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 9,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 10,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 11,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 20
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"is5GHzL": {
|
||||||
|
"model_type": "ElementRadioConfiguration",
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"channelNumber": 36,
|
||||||
|
"manualChannelNumber": 36,
|
||||||
|
"backupChannelNumber": 44,
|
||||||
|
"manualBackupChannelNumber": 44,
|
||||||
|
"rxCellSizeDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"probeResponseThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"clientDisconnectThresholdDb": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": -90
|
||||||
|
},
|
||||||
|
"eirpTxPower": {
|
||||||
|
"model_type": "SourceSelectionValue",
|
||||||
|
"source": "profile",
|
||||||
|
"value": 18
|
||||||
|
},
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"bestAPSteerType": "both",
|
||||||
|
"deauthAttackDetection": null,
|
||||||
|
"allowedChannelsPowerLevels": [
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 52,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 36,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 56,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 40,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 60,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 44,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 64,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": true,
|
||||||
|
"channelWidth": 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ChannelPowerLevel",
|
||||||
|
"channelNumber": 48,
|
||||||
|
"powerLevel": 18,
|
||||||
|
"dfs": false,
|
||||||
|
"channelWidth": 80
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"probeResponseThresholdDb": {
|
"advancedRadioMap": {
|
||||||
"model_type": "AutoOrManualValue",
|
"is2dot4GHz": {
|
||||||
"auto": true,
|
"model_type": "RadioConfiguration",
|
||||||
"value": -90
|
"radioType": "is2dot4GHz",
|
||||||
},
|
"radioAdminState": "enabled",
|
||||||
"clientDisconnectThresholdDb": {
|
"fragmentationThresholdBytes": 2346,
|
||||||
"model_type": "AutoOrManualValue",
|
"uapsdState": "enabled",
|
||||||
"auto": true,
|
"stationIsolation": "disabled",
|
||||||
"value": -90
|
"multicastRate": {
|
||||||
},
|
"model_type": "SourceSelectionMulticast",
|
||||||
"eirpTxPower": {
|
"source": "profile",
|
||||||
"model_type": "AutoOrManualValue",
|
"value": "auto"
|
||||||
"auto": false,
|
},
|
||||||
"value": 32
|
"managementRate": {
|
||||||
},
|
"model_type": "SourceSelectionManagement",
|
||||||
"bestApEnabled": null,
|
"source": "profile",
|
||||||
"neighbouringListApConfig": {
|
"value": "auto"
|
||||||
"model_type": "NeighbouringAPListConfiguration",
|
},
|
||||||
"minSignal": -85,
|
"bestApSettings": {
|
||||||
"maxAps": 25
|
"model_type": "SourceSelectionSteering",
|
||||||
},
|
"source": "manual",
|
||||||
"minAutoCellSize": -80,
|
"value": {
|
||||||
"perimeterDetectionEnabled": true,
|
"model_type": "RadioBestApSettings",
|
||||||
"bestAPSteerType": "both",
|
"mlComputed": true,
|
||||||
"deauthAttackDetection": null,
|
"dropInSnrPercentage": 20,
|
||||||
"allowedChannelsPowerLevels": [],
|
"minLoadFactor": 50
|
||||||
"activeChannel": 6
|
}
|
||||||
},
|
},
|
||||||
"is5GHzU": {
|
"legacyBSSRate": "enabled",
|
||||||
"model_type": "ElementRadioConfiguration",
|
"dtimPeriod": 2,
|
||||||
"radioType": "is5GHzU",
|
"deauthAttackDetection": null
|
||||||
"channelNumber": 149,
|
},
|
||||||
"manualChannelNumber": 149,
|
"is5GHzU": {
|
||||||
"backupChannelNumber": 154,
|
"model_type": "RadioConfiguration",
|
||||||
"autoChannelSelection": false,
|
"radioType": "is5GHzU",
|
||||||
"channelBandwidth": "is80MHz",
|
"radioAdminState": "enabled",
|
||||||
"bannedChannels": [],
|
"fragmentationThresholdBytes": 2346,
|
||||||
"allowedChannels": [],
|
"uapsdState": "enabled",
|
||||||
"rxCellSizeDb": {
|
"stationIsolation": "disabled",
|
||||||
"model_type": "AutoOrManualValue",
|
"multicastRate": {
|
||||||
"auto": true,
|
"model_type": "SourceSelectionMulticast",
|
||||||
"value": -90
|
"source": "profile",
|
||||||
},
|
"value": "auto"
|
||||||
"probeResponseThresholdDb": {
|
},
|
||||||
"model_type": "AutoOrManualValue",
|
"managementRate": {
|
||||||
"auto": true,
|
"model_type": "SourceSelectionManagement",
|
||||||
"value": -90
|
"source": "profile",
|
||||||
},
|
"value": "auto"
|
||||||
"clientDisconnectThresholdDb": {
|
},
|
||||||
"model_type": "AutoOrManualValue",
|
"bestApSettings": {
|
||||||
"auto": true,
|
"model_type": "SourceSelectionSteering",
|
||||||
"value": -90
|
"source": "manual",
|
||||||
},
|
"value": {
|
||||||
"eirpTxPower": {
|
"model_type": "RadioBestApSettings",
|
||||||
"model_type": "AutoOrManualValue",
|
"mlComputed": true,
|
||||||
"auto": false,
|
"dropInSnrPercentage": 30,
|
||||||
"value": 32
|
"minLoadFactor": 40
|
||||||
},
|
}
|
||||||
"bestApEnabled": null,
|
},
|
||||||
"neighbouringListApConfig": {
|
"legacyBSSRate": "enabled",
|
||||||
"model_type": "NeighbouringAPListConfiguration",
|
"dtimPeriod": 2,
|
||||||
"minSignal": -85,
|
"deauthAttackDetection": null
|
||||||
"maxAps": 25
|
},
|
||||||
},
|
"is5GHzL": {
|
||||||
"minAutoCellSize": -80,
|
"model_type": "RadioConfiguration",
|
||||||
"perimeterDetectionEnabled": true,
|
"radioType": "is5GHzL",
|
||||||
"bestAPSteerType": "both",
|
"radioAdminState": "enabled",
|
||||||
"deauthAttackDetection": null,
|
"fragmentationThresholdBytes": 2346,
|
||||||
"allowedChannelsPowerLevels": [],
|
"uapsdState": "enabled",
|
||||||
"activeChannel": 149
|
"stationIsolation": "disabled",
|
||||||
},
|
"multicastRate": {
|
||||||
"is5GHzL": {
|
"model_type": "SourceSelectionMulticast",
|
||||||
"model_type": "ElementRadioConfiguration",
|
"source": "profile",
|
||||||
"radioType": "is5GHzL",
|
"value": "auto"
|
||||||
"channelNumber": 36,
|
},
|
||||||
"manualChannelNumber": 36,
|
"managementRate": {
|
||||||
"backupChannelNumber": 44,
|
"model_type": "SourceSelectionManagement",
|
||||||
"autoChannelSelection": false,
|
"source": "profile",
|
||||||
"channelBandwidth": "is80MHz",
|
"value": "auto"
|
||||||
"bannedChannels": [],
|
},
|
||||||
"allowedChannels": [],
|
"bestApSettings": {
|
||||||
"rxCellSizeDb": {
|
"model_type": "SourceSelectionSteering",
|
||||||
"model_type": "AutoOrManualValue",
|
"source": "manual",
|
||||||
"auto": true,
|
"value": {
|
||||||
"value": -90
|
"model_type": "RadioBestApSettings",
|
||||||
},
|
"mlComputed": true,
|
||||||
"probeResponseThresholdDb": {
|
"dropInSnrPercentage": 30,
|
||||||
"model_type": "AutoOrManualValue",
|
"minLoadFactor": 40
|
||||||
"auto": true,
|
}
|
||||||
"value": -90
|
},
|
||||||
},
|
"legacyBSSRate": "enabled",
|
||||||
"clientDisconnectThresholdDb": {
|
"dtimPeriod": 2,
|
||||||
"model_type": "AutoOrManualValue",
|
"deauthAttackDetection": null
|
||||||
"auto": true,
|
}
|
||||||
"value": -90
|
}
|
||||||
},
|
|
||||||
"eirpTxPower": {
|
|
||||||
"model_type": "AutoOrManualValue",
|
|
||||||
"auto": false,
|
|
||||||
"value": 32
|
|
||||||
},
|
|
||||||
"bestApEnabled": null,
|
|
||||||
"neighbouringListApConfig": {
|
|
||||||
"model_type": "NeighbouringAPListConfiguration",
|
|
||||||
"minSignal": -85,
|
|
||||||
"maxAps": 25
|
|
||||||
},
|
|
||||||
"minAutoCellSize": -80,
|
|
||||||
"perimeterDetectionEnabled": true,
|
|
||||||
"bestAPSteerType": "both",
|
|
||||||
"deauthAttackDetection": null,
|
|
||||||
"allowedChannelsPowerLevels": [],
|
|
||||||
"activeChannel": 36
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"advancedRadioMap": {
|
"latitude": null,
|
||||||
"is2dot4GHz": {
|
"longitude": null,
|
||||||
"model_type": "RadioConfiguration",
|
"baseMacAddress": {
|
||||||
"radioType": "is2dot4GHz",
|
"model_type": "MacAddress",
|
||||||
"radioAdminState": "enabled",
|
"address": "JPWi7y5T",
|
||||||
"fragmentationThresholdBytes": 2346,
|
"addressAsString": "24:f5:a2:ef:2e:53"
|
||||||
"rtsCtsThreshold": 65535,
|
},
|
||||||
"autoChannelSelection": "disabled",
|
"serial": "21P10C68818122",
|
||||||
"radioMode": "modeN",
|
"createdTimestamp": 1612285288821,
|
||||||
"mimoMode": "twoByTwo",
|
"lastModifiedTimestamp": 1612285293922
|
||||||
"wmmState": "enabled",
|
|
||||||
"uapsdState": "enabled",
|
|
||||||
"maxNumClients": 100,
|
|
||||||
"stationIsolation": "disabled",
|
|
||||||
"multicastRate": "auto",
|
|
||||||
"managementRate": "auto",
|
|
||||||
"activeScanSettings": {
|
|
||||||
"model_type": "ActiveScanSettings",
|
|
||||||
"enabled": true,
|
|
||||||
"scanFrequencySeconds": 10,
|
|
||||||
"scanDurationMillis": 65
|
|
||||||
},
|
|
||||||
"channelHopSettings": {
|
|
||||||
"model_type": "ChannelHopSettings",
|
|
||||||
"noiseFloorThresholdInDB": -75,
|
|
||||||
"noiseFloorThresholdTimeInSeconds": 180,
|
|
||||||
"nonWifiThresholdInPercentage": 50,
|
|
||||||
"nonWifiThresholdTimeInSeconds": 180,
|
|
||||||
"obssHopMode": "NON_WIFI"
|
|
||||||
},
|
|
||||||
"bestApSettings": {
|
|
||||||
"model_type": "RadioBestApSettings",
|
|
||||||
"mlComputed": true,
|
|
||||||
"dropInSnrPercentage": 20,
|
|
||||||
"minLoadFactor": 50
|
|
||||||
},
|
|
||||||
"forceScanDuringVoice": "disabled",
|
|
||||||
"legacyBSSRate": "enabled",
|
|
||||||
"beaconInterval": 100,
|
|
||||||
"deauthAttackDetection": null
|
|
||||||
},
|
|
||||||
"is5GHzU": {
|
|
||||||
"model_type": "RadioConfiguration",
|
|
||||||
"radioType": "is5GHzU",
|
|
||||||
"radioAdminState": "enabled",
|
|
||||||
"fragmentationThresholdBytes": 2346,
|
|
||||||
"rtsCtsThreshold": 65535,
|
|
||||||
"autoChannelSelection": "disabled",
|
|
||||||
"radioMode": "modeAC",
|
|
||||||
"mimoMode": "twoByTwo",
|
|
||||||
"wmmState": "enabled",
|
|
||||||
"uapsdState": "enabled",
|
|
||||||
"maxNumClients": 100,
|
|
||||||
"stationIsolation": "disabled",
|
|
||||||
"multicastRate": "auto",
|
|
||||||
"managementRate": "auto",
|
|
||||||
"activeScanSettings": {
|
|
||||||
"model_type": "ActiveScanSettings",
|
|
||||||
"enabled": true,
|
|
||||||
"scanFrequencySeconds": 10,
|
|
||||||
"scanDurationMillis": 65
|
|
||||||
},
|
|
||||||
"channelHopSettings": {
|
|
||||||
"model_type": "ChannelHopSettings",
|
|
||||||
"noiseFloorThresholdInDB": -75,
|
|
||||||
"noiseFloorThresholdTimeInSeconds": 180,
|
|
||||||
"nonWifiThresholdInPercentage": 50,
|
|
||||||
"nonWifiThresholdTimeInSeconds": 180,
|
|
||||||
"obssHopMode": "NON_WIFI"
|
|
||||||
},
|
|
||||||
"bestApSettings": {
|
|
||||||
"model_type": "RadioBestApSettings",
|
|
||||||
"mlComputed": true,
|
|
||||||
"dropInSnrPercentage": 30,
|
|
||||||
"minLoadFactor": 40
|
|
||||||
},
|
|
||||||
"forceScanDuringVoice": "disabled",
|
|
||||||
"legacyBSSRate": "enabled",
|
|
||||||
"beaconInterval": 100,
|
|
||||||
"deauthAttackDetection": null
|
|
||||||
},
|
|
||||||
"is5GHzL": {
|
|
||||||
"model_type": "RadioConfiguration",
|
|
||||||
"radioType": "is5GHzL",
|
|
||||||
"radioAdminState": "enabled",
|
|
||||||
"fragmentationThresholdBytes": 2346,
|
|
||||||
"rtsCtsThreshold": 65535,
|
|
||||||
"autoChannelSelection": "disabled",
|
|
||||||
"radioMode": "modeAC",
|
|
||||||
"mimoMode": "twoByTwo",
|
|
||||||
"wmmState": "enabled",
|
|
||||||
"uapsdState": "enabled",
|
|
||||||
"maxNumClients": 100,
|
|
||||||
"stationIsolation": "disabled",
|
|
||||||
"multicastRate": "auto",
|
|
||||||
"managementRate": "auto",
|
|
||||||
"activeScanSettings": {
|
|
||||||
"model_type": "ActiveScanSettings",
|
|
||||||
"enabled": true,
|
|
||||||
"scanFrequencySeconds": 10,
|
|
||||||
"scanDurationMillis": 65
|
|
||||||
},
|
|
||||||
"channelHopSettings": {
|
|
||||||
"model_type": "ChannelHopSettings",
|
|
||||||
"noiseFloorThresholdInDB": -75,
|
|
||||||
"noiseFloorThresholdTimeInSeconds": 180,
|
|
||||||
"nonWifiThresholdInPercentage": 50,
|
|
||||||
"nonWifiThresholdTimeInSeconds": 180,
|
|
||||||
"obssHopMode": "NON_WIFI"
|
|
||||||
},
|
|
||||||
"bestApSettings": {
|
|
||||||
"model_type": "RadioBestApSettings",
|
|
||||||
"mlComputed": true,
|
|
||||||
"dropInSnrPercentage": 30,
|
|
||||||
"minLoadFactor": 40
|
|
||||||
},
|
|
||||||
"forceScanDuringVoice": "disabled",
|
|
||||||
"legacyBSSRate": "enabled",
|
|
||||||
"beaconInterval": 100,
|
|
||||||
"deauthAttackDetection": null
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"latitude": null,
|
|
||||||
"longitude": null,
|
|
||||||
"serial": "21P10C68818122",
|
|
||||||
"createdTimestamp": 1591653239821,
|
|
||||||
"lastModifiedTimestamp": 1591653241398
|
|
||||||
}
|
}
|
||||||
@@ -1,67 +1,61 @@
|
|||||||
{
|
{
|
||||||
"model_type" : "Location",
|
"model_type": "Location",
|
||||||
"id" : 8,
|
"id": 8,
|
||||||
"parentId" : 0,
|
"parentId": 0,
|
||||||
"locationType" : "SITE",
|
"locationType": "SITE",
|
||||||
"customerId" : 2,
|
"customerId": 2,
|
||||||
"name" : "Ottawa",
|
"name": "Ottawa",
|
||||||
"details" : {
|
"details": {
|
||||||
"model_type" : "LocationDetails",
|
"model_type": "LocationDetails",
|
||||||
"countryCode" : "ca",
|
"countryCode": "CA",
|
||||||
"maintenanceWindow" : null,
|
"dailyActivityDetails": {
|
||||||
"rrmEnabled" : true,
|
"SUNDAY": {
|
||||||
"dailyRebalancingDetails" : {
|
"model_type": "LocationActivityDetails",
|
||||||
"SUNDAY" : {
|
"busyTime": "13:30",
|
||||||
"model_type" : "LocationActivityDetails",
|
"quietTime": "3:00",
|
||||||
"busyTime" : "13:30",
|
"timezone": "US/Eastern"
|
||||||
"quietTime" : "3:30",
|
},
|
||||||
"timezone" : "US/Eastern",
|
"MONDAY": {
|
||||||
"lastBusySnapshot" : 0
|
"model_type": "LocationActivityDetails",
|
||||||
},
|
"busyTime": "13:30",
|
||||||
"MONDAY" : {
|
"quietTime": "3:00",
|
||||||
"model_type" : "LocationActivityDetails",
|
"timezone": "US/Eastern"
|
||||||
"busyTime" : "13:30",
|
},
|
||||||
"quietTime" : "3:30",
|
"TUESDAY": {
|
||||||
"timezone" : "US/Eastern",
|
"model_type": "LocationActivityDetails",
|
||||||
"lastBusySnapshot" : 0
|
"busyTime": "13:30",
|
||||||
},
|
"quietTime": "3:00",
|
||||||
"TUESDAY" : {
|
"timezone": "US/Eastern"
|
||||||
"model_type" : "LocationActivityDetails",
|
},
|
||||||
"busyTime" : "13:30",
|
"WEDNESDAY": {
|
||||||
"quietTime" : "3:30",
|
"model_type": "LocationActivityDetails",
|
||||||
"timezone" : "US/Eastern",
|
"busyTime": "13:30",
|
||||||
"lastBusySnapshot" : 0
|
"quietTime": "3:00",
|
||||||
},
|
"timezone": "US/Eastern"
|
||||||
"WEDNESDAY" : {
|
},
|
||||||
"model_type" : "LocationActivityDetails",
|
"THURSDAY": {
|
||||||
"busyTime" : "13:30",
|
"model_type": "LocationActivityDetails",
|
||||||
"quietTime" : "3:30",
|
"busyTime": "13:30",
|
||||||
"timezone" : "US/Eastern",
|
"quietTime": "3:00",
|
||||||
"lastBusySnapshot" : 0
|
"timezone": "US/Eastern"
|
||||||
},
|
},
|
||||||
"THURSDAY" : {
|
"FRIDAY": {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type": "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime": "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime": "3:00",
|
||||||
"timezone" : "US/Eastern",
|
"timezone": "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
},
|
||||||
},
|
"SATURDAY": {
|
||||||
"FRIDAY" : {
|
"model_type": "LocationActivityDetails",
|
||||||
"model_type" : "LocationActivityDetails",
|
"busyTime": "13:30",
|
||||||
"busyTime" : "13:30",
|
"quietTime": "3:00",
|
||||||
"quietTime" : "3:30",
|
"timezone": "US/Eastern"
|
||||||
"timezone" : "US/Eastern",
|
}
|
||||||
"lastBusySnapshot" : 0
|
},
|
||||||
},
|
"maintenanceWindow": null,
|
||||||
"SATURDAY" : {
|
"rrmEnabled": true,
|
||||||
"model_type" : "LocationActivityDetails",
|
"timezone": "US/Eastern"
|
||||||
"busyTime" : "13:30",
|
},
|
||||||
"quietTime" : "3:30",
|
"createdTimestamp": 1612285243534,
|
||||||
"timezone" : "US/Eastern",
|
"lastModifiedTimestamp": 1612285243534
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"createdTimestamp" : 1590607043540,
|
|
||||||
"lastModifiedTimestamp" : 1590607043540
|
|
||||||
}
|
}
|
||||||
@@ -10,55 +10,48 @@
|
|||||||
"countryCode" : "usa",
|
"countryCode" : "usa",
|
||||||
"maintenanceWindow" : null,
|
"maintenanceWindow" : null,
|
||||||
"rrmEnabled" : true,
|
"rrmEnabled" : true,
|
||||||
"dailyRebalancingDetails" : {
|
"dailyActivityDetails" : {
|
||||||
"SUNDAY" : {
|
"SUNDAY" : {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type" : "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime" : "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime" : "3:30",
|
||||||
"timezone" : "US/Eastern",
|
"timezone" : "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
},
|
},
|
||||||
"MONDAY" : {
|
"MONDAY" : {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type" : "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime" : "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime" : "3:30",
|
||||||
"timezone" : "US/Eastern",
|
"timezone" : "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
},
|
},
|
||||||
"TUESDAY" : {
|
"TUESDAY" : {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type" : "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime" : "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime" : "3:30",
|
||||||
"timezone" : "US/Eastern",
|
"timezone" : "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
},
|
},
|
||||||
"WEDNESDAY" : {
|
"WEDNESDAY" : {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type" : "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime" : "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime" : "3:30",
|
||||||
"timezone" : "US/Eastern",
|
"timezone" : "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
},
|
},
|
||||||
"THURSDAY" : {
|
"THURSDAY" : {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type" : "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime" : "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime" : "3:30",
|
||||||
"timezone" : "US/Eastern",
|
"timezone" : "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
},
|
},
|
||||||
"FRIDAY" : {
|
"FRIDAY" : {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type" : "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime" : "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime" : "3:30",
|
||||||
"timezone" : "US/Eastern",
|
"timezone" : "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
},
|
},
|
||||||
"SATURDAY" : {
|
"SATURDAY" : {
|
||||||
"model_type" : "LocationActivityDetails",
|
"model_type" : "LocationActivityDetails",
|
||||||
"busyTime" : "13:30",
|
"busyTime" : "13:30",
|
||||||
"quietTime" : "3:30",
|
"quietTime" : "3:30",
|
||||||
"timezone" : "US/Eastern",
|
"timezone" : "US/Eastern"
|
||||||
"lastBusySnapshot" : 0
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,54 +1,58 @@
|
|||||||
{
|
{
|
||||||
"model_type": "Profile",
|
"model_type": "Profile",
|
||||||
"id": 5,
|
"id": 8,
|
||||||
"customerId": 2,
|
"customerId": 2,
|
||||||
"profileType": "equipment_ap",
|
"profileType": "equipment_ap",
|
||||||
"name": "DefaultApProfile",
|
"name": "ApProfile-3-radios",
|
||||||
"details": {
|
"details": {
|
||||||
"model_type": "ApNetworkConfiguration",
|
"model_type": "ApNetworkConfiguration",
|
||||||
"networkConfigVersion": "AP-1",
|
"networkConfigVersion": "AP-1",
|
||||||
"equipmentType": "AP",
|
"equipmentType": "AP",
|
||||||
"vlanNative": true,
|
"vlanNative": true,
|
||||||
"vlan": 0,
|
"vlan": 0,
|
||||||
"ntpServer": {
|
"ntpServer": {
|
||||||
"model_type": "AutoOrManualString",
|
"model_type": "AutoOrManualString",
|
||||||
"auto": true,
|
"auto": true,
|
||||||
"value": "pool.ntp.org"
|
"value": "pool.ntp.org"
|
||||||
|
},
|
||||||
|
"syslogRelay": null,
|
||||||
|
"rtlsSettings": null,
|
||||||
|
"syntheticClientEnabled": true,
|
||||||
|
"ledControlEnabled": true,
|
||||||
|
"equipmentDiscovery": false,
|
||||||
|
"radioMap": {
|
||||||
|
"is2dot4GHz": {
|
||||||
|
"model_type": "RadioProfileConfiguration",
|
||||||
|
"bestApEnabled": true,
|
||||||
|
"bestAPSteerType": "both"
|
||||||
|
},
|
||||||
|
"is5GHzU": {
|
||||||
|
"model_type": "RadioProfileConfiguration",
|
||||||
|
"bestApEnabled": true,
|
||||||
|
"bestAPSteerType": "both"
|
||||||
|
},
|
||||||
|
"is5GHzL": {
|
||||||
|
"model_type": "RadioProfileConfiguration",
|
||||||
|
"bestApEnabled": true,
|
||||||
|
"bestAPSteerType": "both"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"greTunnelConfigurations": [
|
||||||
|
{
|
||||||
|
"model_type": "GreTunnelConfiguration",
|
||||||
|
"greTunnelName": "gre1",
|
||||||
|
"greRemoteInetAddr": "192.168.1.101",
|
||||||
|
"vlanIdsInGreTunnel": [
|
||||||
|
100
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"profileType": "equipment_ap"
|
||||||
},
|
},
|
||||||
"syslogRelay": null,
|
"createdTimestamp": 1612285248925,
|
||||||
"rtlsSettings": null,
|
"lastModifiedTimestamp": 1612285628377,
|
||||||
"syntheticClientEnabled": true,
|
"childProfileIds": [
|
||||||
"ledControlEnabled": true,
|
2,
|
||||||
"equipmentDiscovery": false,
|
4
|
||||||
"radioMap": {
|
]
|
||||||
"is5GHz": {
|
|
||||||
"model_type": "RadioProfileConfiguration",
|
|
||||||
"bestApEnabled": true,
|
|
||||||
"bestAPSteerType": "both"
|
|
||||||
},
|
|
||||||
"is2dot4GHz": {
|
|
||||||
"model_type": "RadioProfileConfiguration",
|
|
||||||
"bestApEnabled": true,
|
|
||||||
"bestAPSteerType": "both"
|
|
||||||
},
|
|
||||||
"is5GHzU": {
|
|
||||||
"model_type": "RadioProfileConfiguration",
|
|
||||||
"bestApEnabled": true,
|
|
||||||
"bestAPSteerType": "both"
|
|
||||||
},
|
|
||||||
"is5GHzL": {
|
|
||||||
"model_type": "RadioProfileConfiguration",
|
|
||||||
"bestApEnabled": true,
|
|
||||||
"bestAPSteerType": "both"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"profileType": "equipment_ap"
|
|
||||||
},
|
|
||||||
"createdTimestamp": 1591653239947,
|
|
||||||
"lastModifiedTimestamp": 1591654336724,
|
|
||||||
"childProfileIds": [
|
|
||||||
6,
|
|
||||||
7,
|
|
||||||
8
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 100,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "bonjour",
|
||||||
|
"name": "Bonjour-gateway",
|
||||||
|
"details": {
|
||||||
|
"model_type": "BonjourGatewayProfile",
|
||||||
|
"profileDescription": "Bonjour Gateway Configuration for Design Testing",
|
||||||
|
"profileType": "bonjour",
|
||||||
|
"bonjourServices": [
|
||||||
|
{
|
||||||
|
"model_type": "BonjourServiceSet",
|
||||||
|
"vlanId": 1,
|
||||||
|
"supportAllServices": false,
|
||||||
|
"serviceNames": [
|
||||||
|
"AirPort",
|
||||||
|
"SFTP",
|
||||||
|
"SSH"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1599234550774,
|
||||||
|
"lastModifiedTimestamp": 1599234550774,
|
||||||
|
"childProfileIds": []
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -0,0 +1,58 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 5,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "captive_portal",
|
||||||
|
"name": "Captive-portal",
|
||||||
|
"details": {
|
||||||
|
"model_type": "CaptivePortalConfiguration",
|
||||||
|
"name": "Default",
|
||||||
|
"browserTitle": "Captive-portal",
|
||||||
|
"headerContent": "Captive Portal",
|
||||||
|
"userAcceptancePolicy": "Please agree to the following terms for using this network:",
|
||||||
|
"successPageMarkdownText": "You are now authorized and connected to the network.",
|
||||||
|
"redirectURL": "https://www.google.com",
|
||||||
|
"externalCaptivePortalURL": null,
|
||||||
|
"sessionTimeoutInMinutes": 10,
|
||||||
|
"logoFile": {
|
||||||
|
"model_type": "ManagedFileInfo",
|
||||||
|
"md5checksum": null,
|
||||||
|
"lastModifiedTimestamp": null,
|
||||||
|
"apExportUrl": "/filestore/tip-logo-mobile",
|
||||||
|
"fileCategory": "CaptivePortalLogo",
|
||||||
|
"fileType": "PNG",
|
||||||
|
"altSlot": false
|
||||||
|
},
|
||||||
|
"backgroundFile": {
|
||||||
|
"model_type": "ManagedFileInfo",
|
||||||
|
"md5checksum": null,
|
||||||
|
"lastModifiedTimestamp": null,
|
||||||
|
"apExportUrl": "/filestore/tip-logo",
|
||||||
|
"fileCategory": "CaptivePortalBackground",
|
||||||
|
"fileType": "PNG",
|
||||||
|
"altSlot": false
|
||||||
|
},
|
||||||
|
"walledGardenAllowlist": [
|
||||||
|
],
|
||||||
|
"usernamePasswordFile": null,
|
||||||
|
"authenticationType": "guest",
|
||||||
|
"radiusAuthMethod": "CHAP",
|
||||||
|
"maxUsersWithSameCredentials": 3,
|
||||||
|
"externalPolicyFile": null,
|
||||||
|
"backgroundPosition": "left_top",
|
||||||
|
"backgroundRepeat": "no_repeat",
|
||||||
|
"radiusServiceId": 0,
|
||||||
|
"expiryType": "time_limited",
|
||||||
|
"userList": [
|
||||||
|
],
|
||||||
|
"macAllowList": [
|
||||||
|
],
|
||||||
|
"profileType": "captive_portal"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1611857459118,
|
||||||
|
"lastModifiedTimestamp": 1611857459118,
|
||||||
|
"childProfileIds": [
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -0,0 +1,71 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 37,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "passpoint",
|
||||||
|
"name": "hotspot20-profile-2021-01-21T21:28:59.171Z",
|
||||||
|
"details": {
|
||||||
|
"model_type": "PasspointProfile",
|
||||||
|
"enableInterworkingAndHs20": true,
|
||||||
|
"hessid": null,
|
||||||
|
"passpointAccessNetworkType": "free_public_network",
|
||||||
|
"passpointNetworkAuthenticationType": "acceptance_of_terms_and_conditions",
|
||||||
|
"additionalStepsRequiredForAccess": 0,
|
||||||
|
"deauthRequestTimeout": 0,
|
||||||
|
"operatingClass": 0,
|
||||||
|
"termsAndConditionsFile": {
|
||||||
|
"model_type": "ManagedFileInfo",
|
||||||
|
"md5checksum": null,
|
||||||
|
"lastModifiedTimestamp": null,
|
||||||
|
"apExportUrl": "https://localhost:9091/filestore/termsAndConditions",
|
||||||
|
"fileCategory": "ExternalPolicyConfiguration",
|
||||||
|
"fileType": "TEXT",
|
||||||
|
"altSlot": false
|
||||||
|
},
|
||||||
|
"whitelistDomain": null,
|
||||||
|
"emergencyServicesReachable": true,
|
||||||
|
"unauthenticatedEmergencyServiceAccessible": false,
|
||||||
|
"internetConnectivity": true,
|
||||||
|
"connectionCapabilitySet": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointConnectionCapability",
|
||||||
|
"connectionCapabilitiesPortNumber": 8888,
|
||||||
|
"connectionCapabilitiesIpProtocol": "TCP",
|
||||||
|
"connectionCapabilitiesStatus": "open"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ipAddressTypeAvailability": "public_IPv4_address_available",
|
||||||
|
"qosMapSetConfiguration": null,
|
||||||
|
"apGeospatialLocation": null,
|
||||||
|
"apCivicLocation": null,
|
||||||
|
"apPublicLocationIdUri": null,
|
||||||
|
"gasAddr3Behaviour": "p2pSpecWorkaroundFromRequest",
|
||||||
|
"anqpDomainId": 1234,
|
||||||
|
"disableDownstreamGroupAddressedForwarding": false,
|
||||||
|
"enable2pt4GHz": true,
|
||||||
|
"enable5GHz": true,
|
||||||
|
"associatedAccessSsidProfileIds": [
|
||||||
|
32
|
||||||
|
],
|
||||||
|
"osuSsidProfileId": 31,
|
||||||
|
"passpointOperatorProfileId": 34,
|
||||||
|
"passpointVenueProfileId": 33,
|
||||||
|
"passpointOsuProviderProfileIds": [
|
||||||
|
35,
|
||||||
|
36
|
||||||
|
],
|
||||||
|
"accessNetworkType": "free_public_network",
|
||||||
|
"networkAuthenticationType": "acceptance_of_terms_and_conditions",
|
||||||
|
"profileType": "passpoint"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 0,
|
||||||
|
"lastModifiedTimestamp": 1611264539331,
|
||||||
|
"childProfileIds": [
|
||||||
|
33,
|
||||||
|
34,
|
||||||
|
35,
|
||||||
|
36
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -0,0 +1,263 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 35,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "passpoint_osu_id_provider",
|
||||||
|
"name": "provider1-profile-2021-01-21T21:28:59.057Z",
|
||||||
|
"details": {
|
||||||
|
"model_type": "PasspointOsuProviderProfile",
|
||||||
|
"mccMncList": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointMccMnc",
|
||||||
|
"mcc": 302,
|
||||||
|
"mnc": 720,
|
||||||
|
"iso": "ca",
|
||||||
|
"country": "Canada",
|
||||||
|
"countryCode": 1,
|
||||||
|
"network": "Rogers AT&T Wireless",
|
||||||
|
"mccMncPairing": "302,720"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"naiRealmList": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointNaiRealmInformation",
|
||||||
|
"naiRealms": [
|
||||||
|
"rogers.com"
|
||||||
|
],
|
||||||
|
"encoding": 0,
|
||||||
|
"eapMethods": [
|
||||||
|
"EAP-TTLS with username/password",
|
||||||
|
"EAP-TLS with certificate"
|
||||||
|
],
|
||||||
|
"eapMap": {
|
||||||
|
"EAP-TTLS with username/password": [
|
||||||
|
"Credential Type:username/password",
|
||||||
|
"Non-EAP Inner Authentication Type:MSCHAPV2"
|
||||||
|
],
|
||||||
|
"EAP-TLS with certificate": [
|
||||||
|
"Credential Type:Certificate"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"osuIconList": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointOsuIcon",
|
||||||
|
"iconWidth": 32,
|
||||||
|
"iconHeight": 32,
|
||||||
|
"languageCode": "eng",
|
||||||
|
"iconLocale": "en_CA",
|
||||||
|
"iconName": "icon32eng",
|
||||||
|
"filePath": "/tmp/icon32eng.png",
|
||||||
|
"imageUrl": "https://localhost:9096/icon32eng.png",
|
||||||
|
"hs20IconString": "32:32:eng:image/png:icon32eng:/tmp/icon32eng.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointOsuIcon",
|
||||||
|
"iconWidth": 32,
|
||||||
|
"iconHeight": 32,
|
||||||
|
"languageCode": "fra",
|
||||||
|
"iconLocale": "fr_CA",
|
||||||
|
"iconName": "icon32fra",
|
||||||
|
"filePath": "/tmp/icon32fra.png",
|
||||||
|
"imageUrl": "https://localhost:9096/icon32fra.png",
|
||||||
|
"hs20IconString": "32:32:fra:image/png:icon32fra:/tmp/icon32fra.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointOsuIcon",
|
||||||
|
"iconWidth": 32,
|
||||||
|
"iconHeight": 32,
|
||||||
|
"languageCode": "eng",
|
||||||
|
"iconLocale": "en_US",
|
||||||
|
"iconName": "icon32usa",
|
||||||
|
"filePath": "/tmp/icon32usa.png",
|
||||||
|
"imageUrl": "https://localhost:9096/icon32usa.png",
|
||||||
|
"hs20IconString": "32:32:eng:image/png:icon32usa:/tmp/icon32usa.png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"osuServerUri": "https://example.com/osu/rogers",
|
||||||
|
"osuFriendlyName": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "eng",
|
||||||
|
"dupleIso3Language": "eng",
|
||||||
|
"dupleName": "Example provider rogers",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "eng:Example provider rogers"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "fra",
|
||||||
|
"dupleIso3Language": "fra",
|
||||||
|
"dupleName": "Exemple de fournisseur rogers",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "fra:Exemple de fournisseur rogers"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"osuNaiStandalone": "anonymous@rogers.com",
|
||||||
|
"osuNaiShared": "anonymous@rogers.com",
|
||||||
|
"osuMethodList": [
|
||||||
|
1,
|
||||||
|
0
|
||||||
|
],
|
||||||
|
"osuServiceDescription": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "eng",
|
||||||
|
"dupleIso3Language": "eng",
|
||||||
|
"dupleName": "Example services rogers",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "eng:Example services rogers"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "fra",
|
||||||
|
"dupleIso3Language": "fra",
|
||||||
|
"dupleName": "Exemples de services rogers",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "fra:Exemples de services rogers"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"roamingOi": [
|
||||||
|
"BAA2D00100",
|
||||||
|
"BAA2D00000"
|
||||||
|
],
|
||||||
|
"profileType": "passpoint_osu_id_provider"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1611264539070,
|
||||||
|
"lastModifiedTimestamp": 1611264539070,
|
||||||
|
"childProfileIds": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 36,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "passpoint_osu_id_provider",
|
||||||
|
"name": "provider2-profile-2021-01-21T21:28:59.118Z",
|
||||||
|
"details": {
|
||||||
|
"model_type": "PasspointOsuProviderProfile",
|
||||||
|
"mccMncList": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointMccMnc",
|
||||||
|
"mcc": 302,
|
||||||
|
"mnc": 220,
|
||||||
|
"iso": "ca",
|
||||||
|
"country": "Canada",
|
||||||
|
"countryCode": 1,
|
||||||
|
"network": "Telus Mobility",
|
||||||
|
"mccMncPairing": "302,220"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"naiRealmList": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointNaiRealmInformation",
|
||||||
|
"naiRealms": [
|
||||||
|
"telus.com"
|
||||||
|
],
|
||||||
|
"encoding": 0,
|
||||||
|
"eapMethods": [
|
||||||
|
"EAP-TTLS with username/password",
|
||||||
|
"EAP-TLS with certificate"
|
||||||
|
],
|
||||||
|
"eapMap": {
|
||||||
|
"EAP-TTLS with username/password": [
|
||||||
|
"Credential Type:username/password",
|
||||||
|
"Non-EAP Inner Authentication Type:MSCHAPV2"
|
||||||
|
],
|
||||||
|
"EAP-TLS with certificate": [
|
||||||
|
"Credential Type:Certificate"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"osuIconList": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointOsuIcon",
|
||||||
|
"iconWidth": 32,
|
||||||
|
"iconHeight": 32,
|
||||||
|
"languageCode": "eng",
|
||||||
|
"iconLocale": "en_CA",
|
||||||
|
"iconName": "icon32eng",
|
||||||
|
"filePath": "/tmp/icon32eng.png",
|
||||||
|
"imageUrl": "https://localhost:9096/icon32eng.png",
|
||||||
|
"hs20IconString": "32:32:eng:image/png:icon32eng:/tmp/icon32eng.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointOsuIcon",
|
||||||
|
"iconWidth": 32,
|
||||||
|
"iconHeight": 32,
|
||||||
|
"languageCode": "fra",
|
||||||
|
"iconLocale": "fr_CA",
|
||||||
|
"iconName": "icon32fra",
|
||||||
|
"filePath": "/tmp/icon32fra.png",
|
||||||
|
"imageUrl": "https://localhost:9096/icon32fra.png",
|
||||||
|
"hs20IconString": "32:32:fra:image/png:icon32fra:/tmp/icon32fra.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointOsuIcon",
|
||||||
|
"iconWidth": 32,
|
||||||
|
"iconHeight": 32,
|
||||||
|
"languageCode": "eng",
|
||||||
|
"iconLocale": "en_US",
|
||||||
|
"iconName": "icon32usa",
|
||||||
|
"filePath": "/tmp/icon32usa.png",
|
||||||
|
"imageUrl": "https://localhost:9096/icon32usa.png",
|
||||||
|
"hs20IconString": "32:32:eng:image/png:icon32usa:/tmp/icon32usa.png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"osuServerUri": "https://example.com/osu/telus",
|
||||||
|
"osuFriendlyName": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "eng",
|
||||||
|
"dupleIso3Language": "eng",
|
||||||
|
"dupleName": "Example provider telus",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "eng:Example provider telus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "fra",
|
||||||
|
"dupleIso3Language": "fra",
|
||||||
|
"dupleName": "Exemple de fournisseur telus",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "fra:Exemple de fournisseur telus"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"osuNaiStandalone": "anonymous@telus.com",
|
||||||
|
"osuNaiShared": "anonymous@telus.com",
|
||||||
|
"osuMethodList": [
|
||||||
|
1,
|
||||||
|
0
|
||||||
|
],
|
||||||
|
"osuServiceDescription": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "eng",
|
||||||
|
"dupleIso3Language": "eng",
|
||||||
|
"dupleName": "Example services telus",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "eng:Example services telus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "fra",
|
||||||
|
"dupleIso3Language": "fra",
|
||||||
|
"dupleName": "Exemples de services telus",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "fra:Exemples de services telus"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"roamingOi": [
|
||||||
|
"004096",
|
||||||
|
"005014",
|
||||||
|
"F4F5E8F5F4"
|
||||||
|
],
|
||||||
|
"profileType": "passpoint_osu_id_provider"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1611264539131,
|
||||||
|
"lastModifiedTimestamp": 1611264539131,
|
||||||
|
"childProfileIds": []
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -0,0 +1,299 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 10,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "service_metrics_collection_config",
|
||||||
|
"name": "Metrics-Profile-3-Radios",
|
||||||
|
"details": {
|
||||||
|
"model_type": "ServiceMetricsCollectionConfigProfile",
|
||||||
|
"radioTypes": [
|
||||||
|
"is5GHzL",
|
||||||
|
"is2dot4GHz",
|
||||||
|
"is5GHzU"
|
||||||
|
],
|
||||||
|
"serviceMetricDataTypes": [
|
||||||
|
"ApNode",
|
||||||
|
"ApSsid",
|
||||||
|
"Client",
|
||||||
|
"Channel",
|
||||||
|
"Neighbour"
|
||||||
|
],
|
||||||
|
"metricConfigParameterMap": {
|
||||||
|
"ApNode": [
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"serviceMetricDataType": "ApNode",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"serviceMetricDataType": "ApNode",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"serviceMetricDataType": "ApNode",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"serviceMetricDataType": "ApNode",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"serviceMetricDataType": "ApNode",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"serviceMetricDataType": "ApNode",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ApSsid": [
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricRadioConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"serviceMetricDataType": "ApSsid"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricRadioConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"serviceMetricDataType": "ApSsid"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricRadioConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"serviceMetricDataType": "ApSsid"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Client": [
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricRadioConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"serviceMetricDataType": "Client"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricRadioConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"serviceMetricDataType": "Client"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricRadioConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"serviceMetricDataType": "Client"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Channel": [
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"serviceMetricDataType": "Channel",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"serviceMetricDataType": "Channel",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"serviceMetricDataType": "Channel",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"serviceMetricDataType": "Channel",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"serviceMetricDataType": "Channel",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"serviceMetricDataType": "Channel",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Neighbour": [
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"serviceMetricDataType": "Neighbour",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"serviceMetricDataType": "Neighbour",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"serviceMetricDataType": "Neighbour",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"serviceMetricDataType": "Neighbour",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 120,
|
||||||
|
"channelSurveyType": "OFF_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"serviceMetricDataType": "Neighbour",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "ServiceMetricSurveyConfigParameters",
|
||||||
|
"samplingInterval": 30,
|
||||||
|
"reportingIntervalSeconds": 60,
|
||||||
|
"channelSurveyType": "ON_CHANNEL",
|
||||||
|
"scanIntervalMillis": 0,
|
||||||
|
"percentUtilizationThreshold": 10,
|
||||||
|
"delayMillisecondsThreshold": 600,
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"serviceMetricDataType": "Neighbour",
|
||||||
|
"statsReportFormat": "RAW"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"profileType": "service_metrics_collection_config"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1606778369931,
|
||||||
|
"lastModifiedTimestamp": 1606778369931,
|
||||||
|
"childProfileIds": [
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 34,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "passpoint_operator",
|
||||||
|
"name": "operator-profile-2021-01-21T21:28:58.994Z",
|
||||||
|
"details": {
|
||||||
|
"model_type": "PasspointOperatorProfile",
|
||||||
|
"serverOnlyAuthenticatedL2EncryptionNetwork": false,
|
||||||
|
"x509CertificateLocation": "/etc/ca.pem",
|
||||||
|
"operatorFriendlyName": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "fra",
|
||||||
|
"dupleIso3Language": "fra",
|
||||||
|
"dupleName": "Nom de l'opérateur convivial par défaut",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "fra:Nom de l'opérateur convivial par défaut"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointDuple",
|
||||||
|
"locale": "eng",
|
||||||
|
"dupleIso3Language": "eng",
|
||||||
|
"dupleName": "Default friendly passpoint_operator name",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"asDuple": "eng:Default friendly passpoint_operator name"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"domainNameList": [
|
||||||
|
"bell.ca",
|
||||||
|
"telus.com",
|
||||||
|
"rogers.com"
|
||||||
|
],
|
||||||
|
"profileType": "passpoint_operator"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1611264539004,
|
||||||
|
"lastModifiedTimestamp": 1611264539004,
|
||||||
|
"childProfileIds": []
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -1,34 +1,24 @@
|
|||||||
[
|
[
|
||||||
{
|
{
|
||||||
"model_type": "Profile",
|
"model_type": "Profile",
|
||||||
"id": 1,
|
"id": 1,
|
||||||
"customerId": 2,
|
"customerId": 2,
|
||||||
"profileType": "radius",
|
"profileType": "radius",
|
||||||
"name": "RadiusProfileOttawa",
|
"name": "Radius-Profile",
|
||||||
"details": {
|
"details": {
|
||||||
"model_type": "RadiusProfile",
|
"model_type": "RadiusProfile",
|
||||||
"subnetConfiguration": null,
|
"primaryRadiusAuthServer": {
|
||||||
"serviceRegionMap": {
|
"model_type": "RadiusServer",
|
||||||
"Ottawa": {
|
"ipAddress": "192.168.0.1",
|
||||||
"model_type": "RadiusServiceRegion",
|
"secret": "testing123",
|
||||||
"serverMap": {
|
"port": 1812,
|
||||||
"RadiusProfileOttawa": [
|
"timeout": null
|
||||||
{
|
},
|
||||||
"model_type": "RadiusServer",
|
"profileType": "radius"
|
||||||
"ipAddress": "localhost",
|
|
||||||
"secret": "testing123",
|
|
||||||
"authPort": 1812,
|
|
||||||
"timeout": null
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"regionName": "Ottawa"
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"profileType": "radius"
|
"createdTimestamp": 1611262628767,
|
||||||
},
|
"lastModifiedTimestamp": 1611262628767,
|
||||||
"createdTimestamp": 1591653174195,
|
"childProfileIds": [
|
||||||
"lastModifiedTimestamp": 1591653174195,
|
]
|
||||||
"childProfileIds": []
|
}
|
||||||
}
|
]
|
||||||
]
|
|
||||||
|
|||||||
@@ -0,0 +1,204 @@
|
|||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 4,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "rf",
|
||||||
|
"name": "TipWlan-rf",
|
||||||
|
"details": {
|
||||||
|
"model_type": "RfConfiguration",
|
||||||
|
"rfConfigMap": {
|
||||||
|
"is5GHz": {
|
||||||
|
"model_type": "RfElementConfiguration",
|
||||||
|
"radioType": "is5GHz",
|
||||||
|
"radioMode": "modeAC",
|
||||||
|
"rf": "TipWlan-rf",
|
||||||
|
"beaconInterval": 100,
|
||||||
|
"forceScanDuringVoice": "disabled",
|
||||||
|
"rtsCtsThreshold": 65535,
|
||||||
|
"channelBandwidth": "is80MHz",
|
||||||
|
"mimoMode": "twoByTwo",
|
||||||
|
"maxNumClients": 100,
|
||||||
|
"autoChannelSelection": false,
|
||||||
|
"activeScanSettings": {
|
||||||
|
"model_type": "ActiveScanSettings",
|
||||||
|
"enabled": true,
|
||||||
|
"scanFrequencySeconds": 10,
|
||||||
|
"scanDurationMillis": 65
|
||||||
|
},
|
||||||
|
"neighbouringListApConfig": {
|
||||||
|
"model_type": "NeighbouringAPListConfiguration",
|
||||||
|
"minSignal": -85,
|
||||||
|
"maxAps": 25
|
||||||
|
},
|
||||||
|
"minAutoCellSize": -65,
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"channelHopSettings": {
|
||||||
|
"model_type": "ChannelHopSettings",
|
||||||
|
"noiseFloorThresholdInDB": -75,
|
||||||
|
"noiseFloorThresholdTimeInSeconds": 180,
|
||||||
|
"nonWifiThresholdInPercentage": 50,
|
||||||
|
"nonWifiThresholdTimeInSeconds": 180,
|
||||||
|
"obssHopMode": "NON_WIFI"
|
||||||
|
},
|
||||||
|
"bestApEnabled": null,
|
||||||
|
"multicastRate": "auto",
|
||||||
|
"managementRate": "auto",
|
||||||
|
"rxCellSizeDb": -90,
|
||||||
|
"probeResponseThresholdDb": -90,
|
||||||
|
"clientDisconnectThresholdDb": -90,
|
||||||
|
"eirpTxPower": 18,
|
||||||
|
"bestApSettings": {
|
||||||
|
"model_type": "RadioBestApSettings",
|
||||||
|
"mlComputed": true,
|
||||||
|
"dropInSnrPercentage": 30,
|
||||||
|
"minLoadFactor": 40
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"is2dot4GHz": {
|
||||||
|
"model_type": "RfElementConfiguration",
|
||||||
|
"radioType": "is2dot4GHz",
|
||||||
|
"radioMode": "modeN",
|
||||||
|
"rf": "TipWlan-rf",
|
||||||
|
"beaconInterval": 100,
|
||||||
|
"forceScanDuringVoice": "disabled",
|
||||||
|
"rtsCtsThreshold": 65535,
|
||||||
|
"channelBandwidth": "is20MHz",
|
||||||
|
"mimoMode": "twoByTwo",
|
||||||
|
"maxNumClients": 100,
|
||||||
|
"autoChannelSelection": false,
|
||||||
|
"activeScanSettings": {
|
||||||
|
"model_type": "ActiveScanSettings",
|
||||||
|
"enabled": true,
|
||||||
|
"scanFrequencySeconds": 10,
|
||||||
|
"scanDurationMillis": 65
|
||||||
|
},
|
||||||
|
"neighbouringListApConfig": {
|
||||||
|
"model_type": "NeighbouringAPListConfiguration",
|
||||||
|
"minSignal": -85,
|
||||||
|
"maxAps": 25
|
||||||
|
},
|
||||||
|
"minAutoCellSize": -65,
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"channelHopSettings": {
|
||||||
|
"model_type": "ChannelHopSettings",
|
||||||
|
"noiseFloorThresholdInDB": -75,
|
||||||
|
"noiseFloorThresholdTimeInSeconds": 180,
|
||||||
|
"nonWifiThresholdInPercentage": 50,
|
||||||
|
"nonWifiThresholdTimeInSeconds": 180,
|
||||||
|
"obssHopMode": "NON_WIFI"
|
||||||
|
},
|
||||||
|
"bestApEnabled": null,
|
||||||
|
"multicastRate": "auto",
|
||||||
|
"managementRate": "auto",
|
||||||
|
"rxCellSizeDb": -90,
|
||||||
|
"probeResponseThresholdDb": -90,
|
||||||
|
"clientDisconnectThresholdDb": -90,
|
||||||
|
"eirpTxPower": 18,
|
||||||
|
"bestApSettings": {
|
||||||
|
"model_type": "RadioBestApSettings",
|
||||||
|
"mlComputed": true,
|
||||||
|
"dropInSnrPercentage": 20,
|
||||||
|
"minLoadFactor": 50
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"is5GHzU": {
|
||||||
|
"model_type": "RfElementConfiguration",
|
||||||
|
"radioType": "is5GHzU",
|
||||||
|
"radioMode": "modeAC",
|
||||||
|
"rf": "TipWlan-rf",
|
||||||
|
"beaconInterval": 100,
|
||||||
|
"forceScanDuringVoice": "disabled",
|
||||||
|
"rtsCtsThreshold": 65535,
|
||||||
|
"channelBandwidth": "is80MHz",
|
||||||
|
"mimoMode": "twoByTwo",
|
||||||
|
"maxNumClients": 100,
|
||||||
|
"autoChannelSelection": false,
|
||||||
|
"activeScanSettings": {
|
||||||
|
"model_type": "ActiveScanSettings",
|
||||||
|
"enabled": true,
|
||||||
|
"scanFrequencySeconds": 10,
|
||||||
|
"scanDurationMillis": 65
|
||||||
|
},
|
||||||
|
"neighbouringListApConfig": {
|
||||||
|
"model_type": "NeighbouringAPListConfiguration",
|
||||||
|
"minSignal": -85,
|
||||||
|
"maxAps": 25
|
||||||
|
},
|
||||||
|
"minAutoCellSize": -65,
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"channelHopSettings": {
|
||||||
|
"model_type": "ChannelHopSettings",
|
||||||
|
"noiseFloorThresholdInDB": -75,
|
||||||
|
"noiseFloorThresholdTimeInSeconds": 180,
|
||||||
|
"nonWifiThresholdInPercentage": 50,
|
||||||
|
"nonWifiThresholdTimeInSeconds": 180,
|
||||||
|
"obssHopMode": "NON_WIFI"
|
||||||
|
},
|
||||||
|
"bestApEnabled": null,
|
||||||
|
"multicastRate": "auto",
|
||||||
|
"managementRate": "auto",
|
||||||
|
"rxCellSizeDb": -90,
|
||||||
|
"probeResponseThresholdDb": -90,
|
||||||
|
"clientDisconnectThresholdDb": -90,
|
||||||
|
"eirpTxPower": 18,
|
||||||
|
"bestApSettings": {
|
||||||
|
"model_type": "RadioBestApSettings",
|
||||||
|
"mlComputed": true,
|
||||||
|
"dropInSnrPercentage": 30,
|
||||||
|
"minLoadFactor": 40
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"is5GHzL": {
|
||||||
|
"model_type": "RfElementConfiguration",
|
||||||
|
"radioType": "is5GHzL",
|
||||||
|
"radioMode": "modeAC",
|
||||||
|
"rf": "TipWlan-rf",
|
||||||
|
"beaconInterval": 100,
|
||||||
|
"forceScanDuringVoice": "disabled",
|
||||||
|
"rtsCtsThreshold": 65535,
|
||||||
|
"channelBandwidth": "is80MHz",
|
||||||
|
"mimoMode": "twoByTwo",
|
||||||
|
"maxNumClients": 100,
|
||||||
|
"autoChannelSelection": false,
|
||||||
|
"activeScanSettings": {
|
||||||
|
"model_type": "ActiveScanSettings",
|
||||||
|
"enabled": true,
|
||||||
|
"scanFrequencySeconds": 10,
|
||||||
|
"scanDurationMillis": 65
|
||||||
|
},
|
||||||
|
"neighbouringListApConfig": {
|
||||||
|
"model_type": "NeighbouringAPListConfiguration",
|
||||||
|
"minSignal": -85,
|
||||||
|
"maxAps": 25
|
||||||
|
},
|
||||||
|
"minAutoCellSize": -65,
|
||||||
|
"perimeterDetectionEnabled": true,
|
||||||
|
"channelHopSettings": {
|
||||||
|
"model_type": "ChannelHopSettings",
|
||||||
|
"noiseFloorThresholdInDB": -75,
|
||||||
|
"noiseFloorThresholdTimeInSeconds": 180,
|
||||||
|
"nonWifiThresholdInPercentage": 50,
|
||||||
|
"nonWifiThresholdTimeInSeconds": 180,
|
||||||
|
"obssHopMode": "NON_WIFI"
|
||||||
|
},
|
||||||
|
"bestApEnabled": null,
|
||||||
|
"multicastRate": "auto",
|
||||||
|
"managementRate": "auto",
|
||||||
|
"rxCellSizeDb": -90,
|
||||||
|
"probeResponseThresholdDb": -90,
|
||||||
|
"clientDisconnectThresholdDb": -90,
|
||||||
|
"eirpTxPower": 18,
|
||||||
|
"bestApSettings": {
|
||||||
|
"model_type": "RadioBestApSettings",
|
||||||
|
"mlComputed": true,
|
||||||
|
"dropInSnrPercentage": 30,
|
||||||
|
"minLoadFactor": 40
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"profileType": "rf"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1612285248650,
|
||||||
|
"lastModifiedTimestamp": 1612285248650,
|
||||||
|
"childProfileIds": []
|
||||||
|
}
|
||||||
@@ -1,184 +1,75 @@
|
|||||||
[
|
[
|
||||||
{
|
{
|
||||||
"model_type": "Profile",
|
"model_type": "Profile",
|
||||||
"id": 6,
|
"id": 2,
|
||||||
"customerId": 2,
|
"customerId": 2,
|
||||||
"profileType": "ssid",
|
"profileType": "ssid",
|
||||||
"name": "DefaultSsid-2g",
|
"name": "TipWlan-cloud-3-radios",
|
||||||
"details": {
|
"details": {
|
||||||
"model_type": "SsidConfiguration",
|
"model_type": "SsidConfiguration",
|
||||||
"ssid": "Default-SSID-2g",
|
"ssid": "TipWlan-cloud-3-radios",
|
||||||
"appliedRadios": [
|
"appliedRadios": [
|
||||||
"is2dot4GHz"
|
"is5GHzU",
|
||||||
],
|
"is2dot4GHz",
|
||||||
"ssidAdminState": "enabled",
|
"is5GHzL"
|
||||||
"secureMode": "wpa2PSK",
|
],
|
||||||
"vlanId": 1,
|
"ssidAdminState": "enabled",
|
||||||
"keyStr": "12345678",
|
"secureMode": "wpa2OnlyPSK",
|
||||||
"broadcastSsid": "enabled",
|
"vlanId": 1,
|
||||||
"keyRefresh": 0,
|
"keyStr": "openwifi",
|
||||||
"noLocalSubnets": false,
|
"broadcastSsid": "enabled",
|
||||||
"radiusServiceName": null,
|
"keyRefresh": 0,
|
||||||
"captivePortalId": null,
|
"noLocalSubnets": false,
|
||||||
"bandwidthLimitDown": 0,
|
"radiusServiceId": 0,
|
||||||
"bandwidthLimitUp": 0,
|
"radiusAcountingServiceInterval": 60,
|
||||||
"videoTrafficOnly": false,
|
"captivePortalId": null,
|
||||||
"radioBasedConfigs": {
|
"bandwidthLimitDown": 0,
|
||||||
"is5GHz": {
|
"bandwidthLimitUp": 0,
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
"clientBandwidthLimitDown": 0,
|
||||||
"enable80211r": null,
|
"clientBandwidthLimitUp": 0,
|
||||||
"enable80211k": null,
|
"videoTrafficOnly": false,
|
||||||
"enable80211v": null
|
"radioBasedConfigs": {
|
||||||
},
|
"is5GHzU": {
|
||||||
"is2dot4GHz": {
|
"model_type": "RadioBasedSsidConfiguration",
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
"enable80211r": null,
|
||||||
"enable80211r": null,
|
"enable80211k": null,
|
||||||
"enable80211k": null,
|
"enable80211v": null
|
||||||
"enable80211v": null
|
},
|
||||||
},
|
"is2dot4GHz": {
|
||||||
"is5GHzU": {
|
"model_type": "RadioBasedSsidConfiguration",
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
"enable80211r": null,
|
||||||
"enable80211r": null,
|
"enable80211k": null,
|
||||||
"enable80211k": null,
|
"enable80211v": null
|
||||||
"enable80211v": null
|
},
|
||||||
},
|
"is5GHz": {
|
||||||
"is5GHzL": {
|
"model_type": "RadioBasedSsidConfiguration",
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
"enable80211r": null,
|
||||||
"enable80211r": null,
|
"enable80211k": null,
|
||||||
"enable80211k": null,
|
"enable80211v": null
|
||||||
"enable80211v": null
|
},
|
||||||
}
|
"is5GHzL": {
|
||||||
|
"model_type": "RadioBasedSsidConfiguration",
|
||||||
|
"enable80211r": null,
|
||||||
|
"enable80211k": null,
|
||||||
|
"enable80211v": null
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"bonjourGatewayProfileId": null,
|
||||||
|
"enable80211w": null,
|
||||||
|
"wepConfig": null,
|
||||||
|
"forwardMode": "BRIDGE",
|
||||||
|
"profileType": "ssid",
|
||||||
|
"radiusClientConfiguration": {
|
||||||
|
"model_type": "RadiusNasConfiguration",
|
||||||
|
"nasClientId": "DEFAULT",
|
||||||
|
"nasClientIp": "WAN_IP",
|
||||||
|
"userDefinedNasId": null,
|
||||||
|
"userDefinedNasIp": null,
|
||||||
|
"operatorId": null
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"bonjourGatewayProfileId": null,
|
"createdTimestamp": 1612285248638,
|
||||||
"enable80211w": null,
|
"lastModifiedTimestamp": 1612285248638,
|
||||||
"wepConfig": null,
|
"childProfileIds": []
|
||||||
"forwardMode": null,
|
|
||||||
"profileType": "ssid"
|
|
||||||
},
|
|
||||||
"createdTimestamp": 1591653239983,
|
|
||||||
"lastModifiedTimestamp": 1591653239983,
|
|
||||||
"childProfileIds": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"model_type": "Profile",
|
|
||||||
"id": 7,
|
|
||||||
"customerId": 2,
|
|
||||||
"profileType": "ssid",
|
|
||||||
"name": "DefaultSsid-5gl",
|
|
||||||
"details": {
|
|
||||||
"model_type": "SsidConfiguration",
|
|
||||||
"ssid": "Default-SSID-5gl",
|
|
||||||
"appliedRadios": [
|
|
||||||
"is5GHzL"
|
|
||||||
],
|
|
||||||
"ssidAdminState": "enabled",
|
|
||||||
"secureMode": "wpaEAP",
|
|
||||||
"vlanId": 1,
|
|
||||||
"keyStr": "12345678",
|
|
||||||
"broadcastSsid": "enabled",
|
|
||||||
"keyRefresh": 0,
|
|
||||||
"noLocalSubnets": false,
|
|
||||||
"radiusServiceName": "RadiusProfileOttawa",
|
|
||||||
"captivePortalId": null,
|
|
||||||
"bandwidthLimitDown": 0,
|
|
||||||
"bandwidthLimitUp": 0,
|
|
||||||
"videoTrafficOnly": false,
|
|
||||||
"radioBasedConfigs": {
|
|
||||||
"is5GHz": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is2dot4GHz": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is5GHzU": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is5GHzL": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"bonjourGatewayProfileId": null,
|
|
||||||
"enable80211w": null,
|
|
||||||
"wepConfig": null,
|
|
||||||
"forwardMode": null,
|
|
||||||
"profileType": "ssid"
|
|
||||||
},
|
|
||||||
"createdTimestamp": 1591653240017,
|
|
||||||
"lastModifiedTimestamp": 1591654215374,
|
|
||||||
"childProfileIds": [
|
|
||||||
1
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"model_type": "Profile",
|
|
||||||
"id": 8,
|
|
||||||
"customerId": 2,
|
|
||||||
"profileType": "ssid",
|
|
||||||
"name": "DefaultSsid-5gu",
|
|
||||||
"details": {
|
|
||||||
"model_type": "SsidConfiguration",
|
|
||||||
"ssid": "Default-SSID-5gu",
|
|
||||||
"appliedRadios": [
|
|
||||||
"is5GHzU"
|
|
||||||
],
|
|
||||||
"ssidAdminState": "enabled",
|
|
||||||
"secureMode": "wpa2PSK",
|
|
||||||
"vlanId": 1,
|
|
||||||
"keyStr": "12345678",
|
|
||||||
"broadcastSsid": "enabled",
|
|
||||||
"keyRefresh": 0,
|
|
||||||
"noLocalSubnets": false,
|
|
||||||
"radiusServiceName": null,
|
|
||||||
"captivePortalId": null,
|
|
||||||
"bandwidthLimitDown": 0,
|
|
||||||
"bandwidthLimitUp": 0,
|
|
||||||
"videoTrafficOnly": false,
|
|
||||||
"radioBasedConfigs": {
|
|
||||||
"is5GHz": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is2dot4GHz": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is5GHzU": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
},
|
|
||||||
"is5GHzL": {
|
|
||||||
"model_type": "RadioBasedSsidConfiguration",
|
|
||||||
"enable80211r": null,
|
|
||||||
"enable80211k": null,
|
|
||||||
"enable80211v": null
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"bonjourGatewayProfileId": null,
|
|
||||||
"enable80211w": null,
|
|
||||||
"wepConfig": null,
|
|
||||||
"forwardMode": null,
|
|
||||||
"profileType": "ssid"
|
|
||||||
},
|
|
||||||
"createdTimestamp": 1591654301763,
|
|
||||||
"lastModifiedTimestamp": 1591654301763,
|
|
||||||
"childProfileIds": []
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -0,0 +1,42 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"model_type": "Profile",
|
||||||
|
"id": 33,
|
||||||
|
"customerId": 2,
|
||||||
|
"profileType": "passpoint_venue",
|
||||||
|
"name": "venue-profile-2021-01-21T21:28:58.934Z",
|
||||||
|
"details": {
|
||||||
|
"model_type": "PasspointVenueProfile",
|
||||||
|
"venueNameSet": [
|
||||||
|
{
|
||||||
|
"model_type": "PasspointVenueName",
|
||||||
|
"locale": "fra",
|
||||||
|
"dupleIso3Language": "fra",
|
||||||
|
"dupleName": "Exemple de lieu",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"venueUrl": "http://www.example.com/info-fra",
|
||||||
|
"asDuple": "fra:Exemple de lieu"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model_type": "PasspointVenueName",
|
||||||
|
"locale": "eng",
|
||||||
|
"dupleIso3Language": "eng",
|
||||||
|
"dupleName": "Example passpoint_venue",
|
||||||
|
"defaultDupleSeparator": ":",
|
||||||
|
"venueUrl": "http://www.example.com/info-eng",
|
||||||
|
"asDuple": "eng:Example passpoint_venue"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"venueTypeAssignment": {
|
||||||
|
"model_type": "PasspointVenueTypeAssignment",
|
||||||
|
"venueDescription": "Research and Development Facility",
|
||||||
|
"venueGroupId": 2,
|
||||||
|
"venueTypeId": 8
|
||||||
|
},
|
||||||
|
"profileType": "passpoint_venue"
|
||||||
|
},
|
||||||
|
"createdTimestamp": 1611264538947,
|
||||||
|
"lastModifiedTimestamp": 1611264538947,
|
||||||
|
"childProfileIds": []
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -57,7 +57,6 @@
|
|||||||
<logger name="org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer" level="INFO"/>
|
<logger name="org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer" level="INFO"/>
|
||||||
|
|
||||||
<logger name="com.telecominfraproject.wlan" level="DEBUG"/>
|
<logger name="com.telecominfraproject.wlan" level="DEBUG"/>
|
||||||
<logger name="ai.connectus" level="DEBUG"/>
|
|
||||||
<logger name="com.netflix.servo.tag.aws.AwsInjectableTag" level="OFF"/>
|
<logger name="com.netflix.servo.tag.aws.AwsInjectableTag" level="OFF"/>
|
||||||
<logger name="com.vmware.ovsdb.service.OvsdbConnectionInfo" level="OFF"/>
|
<logger name="com.vmware.ovsdb.service.OvsdbConnectionInfo" level="OFF"/>
|
||||||
<logger name="com.vmware.ovsdb.netty.OvsdbConnectionHandler" level="ERROR"/>
|
<logger name="com.vmware.ovsdb.netty.OvsdbConnectionHandler" level="ERROR"/>
|
||||||
|
|||||||
@@ -10,33 +10,44 @@ CLIENT_MQTT_SSL_PROPS+=" -Djavax.net.ssl.keyStore=/opt/tip-wlan/certs/client_key
|
|||||||
CLIENT_MQTT_SSL_PROPS+=" -Djavax.net.ssl.keyStorePassword=mypassword"
|
CLIENT_MQTT_SSL_PROPS+=" -Djavax.net.ssl.keyStorePassword=mypassword"
|
||||||
CLIENT_MQTT_SSL_PROPS+=" -Djavax.net.ssl.trustStore=/opt/tip-wlan/certs/truststore.jks"
|
CLIENT_MQTT_SSL_PROPS+=" -Djavax.net.ssl.trustStore=/opt/tip-wlan/certs/truststore.jks"
|
||||||
CLIENT_MQTT_SSL_PROPS+=" -Djavax.net.ssl.trustStorePassword=mypassword"
|
CLIENT_MQTT_SSL_PROPS+=" -Djavax.net.ssl.trustStorePassword=mypassword"
|
||||||
CLIENT_MQTT_SSL_PROPS+=" -Dconnectus.mqttBroker.password=admin"
|
CLIENT_MQTT_SSL_PROPS+=" -Dtip.wlan.mqttBroker.password=admin"
|
||||||
|
|
||||||
OVSDB_PROPS=" "
|
OVSDB_PROPS=" "
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.managerAddr=opensync-controller"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.managerAddr=opensync-controller"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.listenPort=6640 "
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.listenPort=6640 "
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.redirector.listenPort=6643"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.redirector.listenPort=6643"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.timeoutSec=30"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.timeoutSec=30"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.trustStore=/opt/tip-wlan/certs/truststore.jks"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.trustStore=/opt/tip-wlan/certs/truststore.jks"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.keyStore=/opt/tip-wlan/certs/server.pkcs12"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.keyStore=/opt/tip-wlan/certs/server.pkcs12"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.customerEquipmentFileName=$OVSDB_EQUIPMENT_CONFIG_FILE"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.customerEquipmentFileName=$OVSDB_EQUIPMENT_CONFIG_FILE"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.apProfileFileName=$OVSDB_APPROFILE_CONFIG_FILE"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.apProfileFileName=$OVSDB_APPROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.ssidProfileFileName=$OVSDB_SSIDPROFILE_CONFIG_FILE"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.metricsProfileFileName=$OVSDB_METRICSPROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.radiusProfileFileName=$OVSDB_RADIUSPROFILE_CONFIG_FILE"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.hotspot20ProfileFileName=$OVSDB_HOTSPOT20PROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.locationFileName=$OVSDB_LOCATION_CONFIG_FILE"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.operatorProfileFileName=$OVSDB_OPERATORPROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.wifi-iface.default_bridge=$OVSDB_IF_DEFAULT_BRIDGE"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.venueProfileFileName=$OVSDB_VENUEPROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.wifi-iface.default_radio0=$OVSDB_IF_DEFAULT_RADIO_0"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.idProviderProfileFileName=$OVSDB_IDPROVIDERPROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.wifi-iface.default_radio1=$OVSDB_IF_DEFAULT_RADIO_1"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.rfProfileFileName=$OVSDB_RFPROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.wifi-iface.default_radio2=$OVSDB_IF_DEFAULT_RADIO_2"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.ssidProfileFileName=$OVSDB_SSIDPROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.wifi-device.radio0=$OVSDB_DEVICE_RADIO_0"
|
OVSDB_PROPS+=" -Dtip.wlan.preventClientCnAlteration=$OVSDB_PREVENT_CLIENTCN_ALTERATION"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.wifi-device.radio1=$OVSDB_DEVICE_RADIO_1"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.radiusProfileFileName=$OVSDB_RADIUSPROFILE_CONFIG_FILE"
|
||||||
OVSDB_PROPS+=" -Dconnectus.ovsdb.wifi-device.radio2=$OVSDB_DEVICE_RADIO_2"
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.captiveProfileFileName=$OVSDB_CAPTIVEPROFILE_CONFIG_FILE"
|
||||||
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.bonjourProfileFileName=$OVSDB_BONJOURPROFILE_CONFIG_FILE"
|
||||||
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.locationFileName=$OVSDB_LOCATION_CONFIG_FILE"
|
||||||
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.wifi-iface.default_bridge=$OVSDB_IF_DEFAULT_BRIDGE"
|
||||||
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.wifi-iface.default_wan_type=$OVSDB_DEVICE_DEFAULT_WAN_TYPE"
|
||||||
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.wifi-iface.default_wan_name=$OVSDB_DEVICE_DEFAULT_WAN_NAME"
|
||||||
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.wifi-iface.default_lan_type=$OVSDB_DEVICE_DEFAULT_LAN_TYPE"
|
||||||
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.wifi-iface.default_lan_name=$OVSDB_DEVICE_DEFAULT_LAN_NAME"
|
||||||
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.wifi-iface.default_radio0=$OVSDB_IF_DEFAULT_RADIO_0"
|
||||||
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.wifi-iface.default_radio1=$OVSDB_IF_DEFAULT_RADIO_1"
|
||||||
|
OVSDB_PROPS+=" -Dtip.wlan.ovsdb.wifi-iface.default_radio2=$OVSDB_IF_DEFAULT_RADIO_2"
|
||||||
|
|
||||||
echo OVSDB_PROPS $OVSDB_PROPS
|
echo OVSDB_PROPS $OVSDB_PROPS
|
||||||
|
|
||||||
MQTT_PROPS=" "
|
MQTT_PROPS=" "
|
||||||
MQTT_PROPS+=" -Dconnectus.mqttBroker.address=tip-wlan-opensync-mqtt-broker"
|
MQTT_PROPS+=" -Dtip.wlan.mqttBroker.address.internal=tip-wlan-opensync-mqtt-broker-internal"
|
||||||
MQTT_PROPS+=" -Dconnectus.mqttBroker.listenPort=1883"
|
MQTT_PROPS+=" -Dtip.wlan.mqttBroker.address.external=tip-wlan-opensync-mqtt-broker-external"
|
||||||
|
MQTT_PROPS+=" -Dtip.wlan.mqttBroker.listenPort=1883"
|
||||||
|
|
||||||
LOGGING_PROPS=" -Dlogging.config=file:/app/opensync/logback.xml"
|
LOGGING_PROPS=" -Dlogging.config=file:/app/opensync/logback.xml"
|
||||||
|
|
||||||
@@ -45,6 +56,8 @@ RESTAPI_PROPS+=" -Dserver.port=443"
|
|||||||
|
|
||||||
SPRING_EXTRA_PROPS=" --add-opens java.base/java.lang=ALL-UNNAMED"
|
SPRING_EXTRA_PROPS=" --add-opens java.base/java.lang=ALL-UNNAMED"
|
||||||
|
|
||||||
export ALL_PROPS="$PROFILES $SSL_PROPS $CLIENT_MQTT_SSL_PROPS $OVSDB_PROPS $MQTT_PROPS $LOGGING_PROPS $RESTAPI_PROPS $SPRING_EXTRA_PROPS"
|
JVM_EXTRA_PROPS=" ${JVM_MEM_OPTIONS:- } "
|
||||||
|
|
||||||
java $ALL_PROPS -jar app.jar
|
export ALL_PROPS="$JVM_EXTRA_PROPS $PROFILES $SSL_PROPS $CLIENT_MQTT_SSL_PROPS $OVSDB_PROPS $MQTT_PROPS $LOGGING_PROPS $RESTAPI_PROPS $SPRING_EXTRA_PROPS"
|
||||||
|
|
||||||
|
java $ALL_PROPS -jar app.jar
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user