blob: 3dc0f64f62abcabea9ca7ec2a4b542397fec69c2 [file] [log] [blame]
Wei-Yu Chen49950b92021-11-08 19:19:18 +08001"""
2Copyright 2020 The Magma Authors.
3
4This source code is licensed under the BSD-style license found in the
5LICENSE file in the root directory of this source tree.
6
7Unless required by applicable law or agreed to in writing, software
8distributed under the License is distributed on an "AS IS" BASIS,
9WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10See the License for the specific language governing permissions and
11limitations under the License.
12"""
13
14from typing import Any, List, Optional
15
16from tr069 import models
17
18
19class Tr069MessageBuilder:
20 @classmethod
21 def get_parameter_value_struct(
22 cls,
23 name: str,
24 val_type: str,
25 data: Any,
26 ) -> models.ParameterValueStruct:
27 param_value = models.ParameterValueStruct()
28 param_value.Name = name
29 value = models.anySimpleType()
30 value.type = val_type
31 value.Data = data
32 param_value.Value = value
33 return param_value
34
35 @classmethod
36 def get_fault(cls) -> models.Fault:
37 msg = models.Fault()
38 msg.FaultCode = 0
39 msg.FaultString = 'Some sort of fault'
40 return msg
41
42 @classmethod
43 def get_reboot_inform(cls) -> models.Inform:
44 msg = cls.get_inform()
45 events = []
46
47 event_boot = models.EventStruct()
48 event_boot.EventCode = '1 BOOT'
49 events.append(event_boot)
50
51 event_reboot = models.EventStruct()
52 event_reboot.EventCode = 'M Reboot'
53 events.append(event_reboot)
54
55 msg.Event.EventStruct = events
56 return msg
57
58 @classmethod
59 def get_qafb_inform(
60 cls,
61 oui: str = '48BF74',
62 sw_version: str = 'BaiBS_QAFB_1.6.4',
63 enb_serial: str = '1202000181186TB0006',
64 event_codes: Optional[List[str]] = None,
65 ) -> models.Inform:
66 if event_codes is None:
67 event_codes = []
68 msg = models.Inform()
69
70 # DeviceId
71 device_id = models.DeviceIdStruct()
72 device_id.Manufacturer = 'Unused'
73 device_id.OUI = oui
74 device_id.ProductClass = 'Unused'
75 device_id.SerialNumber = enb_serial
76 msg.DeviceId = device_id
77
78 # Event
79 msg.Event = models.EventList()
80 event_list = []
81 for code in event_codes:
82 event = models.EventStruct()
83 event.EventCode = code
84 event.CommandKey = ''
85 event_list.append(event)
86 msg.Event.EventStruct = event_list
87
88 # ParameterList
89 val_list = []
90 val_list.append(
91 cls.get_parameter_value_struct(
92 name='InternetGatewayDevice.DeviceInfo.HardwareVersion',
93 val_type='string',
94 data='VER.C',
95 ),
96 )
97 val_list.append(
98 cls.get_parameter_value_struct(
99 name='InternetGatewayDevice.DeviceInfo.ManufacturerOUI',
100 val_type='string',
101 data=oui,
102 ),
103 )
104 val_list.append(
105 cls.get_parameter_value_struct(
106 name='InternetGatewayDevice.DeviceInfo.SoftwareVersion',
107 val_type='string',
108 data=sw_version,
109 ),
110 )
111 val_list.append(
112 cls.get_parameter_value_struct(
113 name='InternetGatewayDevice.DeviceInfo.SerialNumber',
114 val_type='string',
115 data=enb_serial,
116 ),
117 )
118 val_list.append(
119 cls.get_parameter_value_struct(
120 name='InternetGatewayDevice.ManagementServer.ConnectionRequestURL',
121 val_type='string',
122 data='http://192.168.60.248:7547/25dbc91d31276f0cb03391160531ecae',
123 ),
124 )
125 msg.ParameterList = models.ParameterValueList()
126 msg.ParameterList.ParameterValueStruct = val_list
127
128 return msg
129
130 pass
131
132 @classmethod
133 def get_inform(
134 cls,
135 oui: str = '48BF74',
136 sw_version: str = 'BaiBS_RTS_3.1.6',
137 enb_serial: str = '120200002618AGP0003',
138 event_codes: Optional[List[str]] = None,
139 ) -> models.Inform:
140 if event_codes is None:
141 event_codes = []
142 msg = models.Inform()
143
144 # DeviceId
145 device_id = models.DeviceIdStruct()
146 device_id.Manufacturer = 'Unused'
147 device_id.OUI = oui
148 device_id.ProductClass = 'Unused'
149 device_id.SerialNumber = enb_serial
150 msg.DeviceId = device_id
151
152 # Event
153 msg.Event = models.EventList()
154 event_list = []
155 for code in event_codes:
156 event = models.EventStruct()
157 event.EventCode = code
158 event.CommandKey = ''
159 event_list.append(event)
160 msg.Event.EventStruct = event_list
161
162 # ParameterList
163 val_list = []
164 val_list.append(
165 cls.get_parameter_value_struct(
166 name='Device.DeviceInfo.HardwareVersion',
167 val_type='string',
168 data='VER.C',
169 ),
170 )
171 val_list.append(
172 cls.get_parameter_value_struct(
173 name='Device.DeviceInfo.ManufacturerOUI',
174 val_type='string',
175 data=oui,
176 ),
177 )
178 val_list.append(
179 cls.get_parameter_value_struct(
180 name='Device.DeviceInfo.SoftwareVersion',
181 val_type='string',
182 data=sw_version,
183 ),
184 )
185 val_list.append(
186 cls.get_parameter_value_struct(
187 name='Device.DeviceInfo.SerialNumber',
188 val_type='string',
189 data=enb_serial,
190 ),
191 )
192 val_list.append(
193 cls.get_parameter_value_struct(
194 name='Device.ManagementServer.ConnectionRequestURL',
195 val_type='string',
196 data='http://192.168.60.248:7547/25dbc91d31276f0cb03391160531ecae',
197 ),
198 )
199 msg.ParameterList = models.ParameterValueList()
200 msg.ParameterList.ParameterValueStruct = val_list
201
202 return msg
203
204 @classmethod
205 def get_qafb_read_only_param_values_response(
206 cls,
207 ) -> models.GetParameterValuesResponse:
208 msg = models.GetParameterValuesResponse()
209 param_val_list = []
210 param_val_list.append(
211 cls.get_parameter_value_struct(
212 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.1.LTE.X_QUALCOMM_FAPControl.OpState',
213 val_type='boolean',
214 data='false',
215 ),
216 )
217 param_val_list.append(
218 cls.get_parameter_value_struct(
219 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.1.LTE.X_QUALCOMM_FAPControl.OpState',
220 val_type='boolean',
221 data='false',
222 ),
223 )
224 param_val_list.append(
225 cls.get_parameter_value_struct(
226 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.1.LTE.X_QUALCOMM_FAPControl.OpState',
227 val_type='boolean',
228 data='false',
229 ),
230 )
231 param_val_list.append(
232 cls.get_parameter_value_struct(
233 name='InternetGatewayDevice.FAP.GPS.latitude',
234 val_type='int',
235 data='0',
236 ),
237 )
238 param_val_list.append(
239 cls.get_parameter_value_struct(
240 name='InternetGatewayDevice.FAP.GPS.longitude',
241 val_type='int',
242 data='0',
243 ),
244 )
245 msg.ParameterList = models.ParameterValueList()
246 msg.ParameterList.ParameterValueStruct = param_val_list
247 return msg
248
249 @classmethod
250 def get_read_only_param_values_response(
251 cls,
252 ) -> models.GetParameterValuesResponse:
253 msg = models.GetParameterValuesResponse()
254 param_val_list = []
255 param_val_list.append(
256 cls.get_parameter_value_struct(
257 name='Device.Services.FAPService.1.FAPControl.LTE.OpState',
258 val_type='boolean',
259 data='false',
260 ),
261 )
262 param_val_list.append(
263 cls.get_parameter_value_struct(
264 name='Device.Services.FAPService.1.FAPControl.LTE.RFTxStatus',
265 val_type='boolean',
266 data='false',
267 ),
268 )
269 param_val_list.append(
270 cls.get_parameter_value_struct(
271 name='Device.DeviceInfo.X_BAICELLS_COM_GPS_Status',
272 val_type='boolean',
273 data='0',
274 ),
275 )
276 param_val_list.append(
277 cls.get_parameter_value_struct(
278 name='Device.DeviceInfo.X_BAICELLS_COM_1588_Status',
279 val_type='boolean',
280 data='0',
281 ),
282 )
283 param_val_list.append(
284 cls.get_parameter_value_struct(
285 name='Device.DeviceInfo.X_BAICELLS_COM_MME_Status',
286 val_type='boolean',
287 data='false',
288 ),
289 )
290 param_val_list.append(
291 cls.get_parameter_value_struct(
292 name='Device.FAP.GPS.LockedLatitude',
293 val_type='int',
294 data='0',
295 ),
296 )
297 param_val_list.append(
298 cls.get_parameter_value_struct(
299 name='Device.FAP.GPS.LockedLongitude',
300 val_type='int',
301 data='0',
302 ),
303 )
304 msg.ParameterList = models.ParameterValueList()
305 msg.ParameterList.ParameterValueStruct = param_val_list
306 return msg
307
308 @classmethod
309 def get_cavium_param_values_response(
310 cls,
311 admin_state: bool = False,
312 earfcndl: int = 2405,
313 num_plmns: int = 0,
314 ) -> models.GetParameterValuesResponse:
315 msg = models.GetParameterValuesResponse()
316 param_val_list = []
317 param_val_list.append(
318 cls.get_parameter_value_struct(
319 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.RF.DLBandwidth',
320 val_type='string',
321 data='20',
322 ),
323 )
324 param_val_list.append(
325 cls.get_parameter_value_struct(
326 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.RF.FreqBandIndicator',
327 val_type='string',
328 data='5',
329 ),
330 )
331 param_val_list.append(
332 cls.get_parameter_value_struct(
333 name='Device.ManagementServer.PeriodicInformInterval',
334 val_type='int',
335 data='5',
336 ),
337 )
338 param_val_list.append(
339 cls.get_parameter_value_struct(
340 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.CellRestriction.CellReservedForOperatorUse',
341 val_type='boolean',
342 data='false',
343 ),
344 )
345 param_val_list.append(
346 cls.get_parameter_value_struct(
347 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.RF.ULBandwidth',
348 val_type='string',
349 data='n100',
350 ),
351 )
352 param_val_list.append(
353 cls.get_parameter_value_struct(
354 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.Common.CellIdentity',
355 val_type='int',
356 data='138777000',
357 ),
358 )
359 # MME IP
360 param_val_list.append(
361 cls.get_parameter_value_struct(
362 name='Device.Services.FAPService.1.FAPControl.LTE.Gateway.S1SigLinkServerList',
363 val_type='string',
364 data='"192.168.60.142"',
365 ),
366 )
367 # perf mgmt enable
368 param_val_list.append(
369 cls.get_parameter_value_struct(
370 name='Device.Services.FAPService.1.PerfMgmt.Config.1.Enable',
371 val_type='boolean',
372 data='true',
373 ),
374 )
375 param_val_list.append(
376 cls.get_parameter_value_struct(
377 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.CellRestriction.CellBarred',
378 val_type='boolean',
379 data='false',
380 ),
381 )
382 param_val_list.append(
383 cls.get_parameter_value_struct(
384 name='Device.Services.FAPService.1.PerfMgmt.Config.1.PeriodicUploadInterval',
385 val_type='int',
386 data='600',
387 ),
388 )
389 param_val_list.append(
390 cls.get_parameter_value_struct(
391 name='Device.Services.FAPService.1.FAPControl.LTE.AdminState',
392 val_type='boolean',
393 data=admin_state,
394 ),
395 )
396 # Perf mgmt upload url
397 param_val_list.append(
398 cls.get_parameter_value_struct(
399 name='Device.Services.FAPService.1.PerfMgmt.Config.1.URL',
400 val_type='string',
401 data='http://192.168.60.142:8081/',
402 ),
403 )
404 param_val_list.append(
405 cls.get_parameter_value_struct(
406 name='Device.Services.FAPService.1.CellConfig.LTE.EPC.TAC',
407 val_type='int',
408 data='1',
409 ),
410 )
411 # PCI
412 param_val_list.append(
413 cls.get_parameter_value_struct(
414 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.RF.PhyCellID',
415 val_type='int',
416 data='260',
417 ),
418 )
419 # MME port
420 param_val_list.append(
421 cls.get_parameter_value_struct(
422 name='Device.Services.FAPService.1.FAPControl.LTE.Gateway.S1SigLinkPort',
423 val_type='int',
424 data='36412',
425 ),
426 )
427 param_val_list.append(
428 cls.get_parameter_value_struct(
429 name='Device.IPsec.Enable',
430 val_type='boolean',
431 data='false',
432 ),
433 )
434 param_val_list.append(
435 cls.get_parameter_value_struct(
436 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.RF.EARFCNDL',
437 val_type='int',
438 data='2405',
439 ),
440 )
441 param_val_list.append(
442 cls.get_parameter_value_struct(
443 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.RF.EARFCNUL',
444 val_type='int',
445 data='20405',
446 ),
447 )
448 param_val_list.append(
449 cls.get_parameter_value_struct(
450 name='Device.Services.FAPService.1.Capabilities.LTE.DuplexMode',
451 val_type='string',
452 data='FDDMode',
453 ),
454 )
455 param_val_list.append(
456 cls.get_parameter_value_struct(
457 name='Device.Services.FAPService.1.Capabilities.LTE.BandsSupported',
458 val_type='string',
459 data='5',
460 ),
461 )
462 param_val_list.append(
463 cls.get_parameter_value_struct(
464 name='Device.ManagementServer.PeriodicInformEnable',
465 val_type='int',
466 data='5',
467 ),
468 )
469 param_val_list.append(
470 cls.get_parameter_value_struct(
471 name='Device.Services.FAPService.1.CellConfig.LTE.EPC.PLMNListNumberOfEntries',
472 val_type='int',
473 data=str(num_plmns),
474 ),
475 )
476 msg.ParameterList = models.ParameterValueList()
477 msg.ParameterList.ParameterValueStruct = param_val_list
478 return msg
479
480 @classmethod
481 def get_regular_param_values_response(
482 cls,
483 admin_state: bool = False,
484 earfcndl: int = 39250,
485 exclude_num_plmns: bool = False,
486 ) -> models.GetParameterValuesResponse:
487 msg = models.GetParameterValuesResponse()
488 param_val_list = []
489 param_val_list.append(
490 cls.get_parameter_value_struct(
491 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.RF.DLBandwidth',
492 val_type='string',
493 data='n100',
494 ),
495 )
496 param_val_list.append(
497 cls.get_parameter_value_struct(
498 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.RF.FreqBandIndicator',
499 val_type='string',
500 data='40',
501 ),
502 )
503 param_val_list.append(
504 cls.get_parameter_value_struct(
505 name='Device.ManagementServer.PeriodicInformInterval',
506 val_type='int',
507 data='5',
508 ),
509 )
510 param_val_list.append(
511 cls.get_parameter_value_struct(
512 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.CellRestriction.CellReservedForOperatorUse',
513 val_type='boolean',
514 data='false',
515 ),
516 )
517 param_val_list.append(
518 cls.get_parameter_value_struct(
519 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.RF.ULBandwidth',
520 val_type='string',
521 data='20',
522 ),
523 )
524 param_val_list.append(
525 cls.get_parameter_value_struct(
526 name='Device.Services.FAPService.1.X_BAICELLS_COM_LTE.EARFCNDLInUse',
527 val_type='string',
528 data=earfcndl,
529 ),
530 )
531 param_val_list.append(
532 cls.get_parameter_value_struct(
533 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.PHY.TDDFrame.SpecialSubframePatterns',
534 val_type='int',
535 data='7',
536 ),
537 )
538 param_val_list.append(
539 cls.get_parameter_value_struct(
540 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.Common.CellIdentity',
541 val_type='int',
542 data='138777000',
543 ),
544 )
545 # MME IP
546 param_val_list.append(
547 cls.get_parameter_value_struct(
548 name='Device.Services.FAPService.1.FAPControl.LTE.Gateway.S1SigLinkServerList',
549 val_type='string',
550 data='"192.168.60.142"',
551 ),
552 )
553 if not exclude_num_plmns:
554 param_val_list.append(
555 cls.get_parameter_value_struct(
556 name='Device.Services.FAPService.1.CellConfig.LTE.EPC.PLMNListNumberOfEntries',
557 val_type='int',
558 data='1',
559 ),
560 )
561 # perf mgmt enable
562 param_val_list.append(
563 cls.get_parameter_value_struct(
564 name='Device.FAP.PerfMgmt.Config.1.Enable',
565 val_type='boolean',
566 data='true',
567 ),
568 )
569 param_val_list.append(
570 cls.get_parameter_value_struct(
571 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.CellRestriction.CellBarred',
572 val_type='boolean',
573 data='false',
574 ),
575 )
576 param_val_list.append(
577 cls.get_parameter_value_struct(
578 name='Device.FAP.PerfMgmt.Config.1.PeriodicUploadInterval',
579 val_type='int',
580 data='300',
581 ),
582 )
583 param_val_list.append(
584 cls.get_parameter_value_struct(
585 name='Device.Services.FAPService.1.FAPControl.LTE.AdminState',
586 val_type='boolean',
587 data=admin_state,
588 ),
589 )
590 # Local gateway enable
591 param_val_list.append(
592 cls.get_parameter_value_struct(
593 name='Device.DeviceInfo.X_BAICELLS_COM_LTE_LGW_Switch',
594 val_type='boolean',
595 data='0',
596 ),
597 )
598 # Perf mgmt upload url
599 param_val_list.append(
600 cls.get_parameter_value_struct(
601 name='Device.FAP.PerfMgmt.Config.1.URL',
602 val_type='string',
603 data='http://192.168.60.142:8081/',
604 ),
605 )
606 param_val_list.append(
607 cls.get_parameter_value_struct(
608 name='Device.Services.FAPService.1.CellConfig.LTE.EPC.TAC',
609 val_type='int',
610 data='1',
611 ),
612 )
613 param_val_list.append(
614 cls.get_parameter_value_struct(
615 name='Device.Services.FAPService.1.FAPControl.LTE.Gateway.X_BAICELLS_COM_MmePool.Enable',
616 val_type='boolean',
617 data='false',
618 ),
619 )
620 param_val_list.append(
621 cls.get_parameter_value_struct(
622 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.PHY.TDDFrame.SubFrameAssignment',
623 val_type='int',
624 data='2',
625 ),
626 )
627 # PCI
628 param_val_list.append(
629 cls.get_parameter_value_struct(
630 name='Device.Services.FAPService.1.CellConfig.LTE.RAN.RF.PhyCellID',
631 val_type='int',
632 data='260',
633 ),
634 )
635 # MME port
636 param_val_list.append(
637 cls.get_parameter_value_struct(
638 name='Device.Services.FAPService.1.FAPControl.LTE.Gateway.S1SigLinkPort',
639 val_type='int',
640 data='36412',
641 ),
642 )
643 param_val_list.append(
644 cls.get_parameter_value_struct(
645 name='Device.Services.FAPService.Ipsec.IPSEC_ENABLE',
646 val_type='boolean',
647 data='false',
648 ),
649 )
650 param_val_list.append(
651 cls.get_parameter_value_struct(
652 name='Device.Services.FAPService.1.X_BAICELLS_COM_LTE.EARFCNULInUse',
653 val_type='int',
654 data='39150',
655 ),
656 )
657 param_val_list.append(
658 cls.get_parameter_value_struct(
659 name='Device.Services.FAPService.1.Capabilities.LTE.DuplexMode',
660 val_type='string',
661 data='TDDMode',
662 ),
663 )
664 param_val_list.append(
665 cls.get_parameter_value_struct(
666 name='Device.Services.FAPService.1.Capabilities.LTE.BandsSupported',
667 val_type='string',
668 data='40',
669 ),
670 )
671 param_val_list.append(
672 cls.get_parameter_value_struct(
673 name='Device.ManagementServer.PeriodicInformEnable',
674 val_type='int',
675 data='5',
676 ),
677 )
678 msg.ParameterList = models.ParameterValueList()
679 msg.ParameterList.ParameterValueStruct = param_val_list
680 return msg
681
682 @classmethod
683 def get_qafb_regular_param_values_response(
684 cls,
685 admin_state: bool = False,
686 earfcndl: int = 39250,
687 ) -> models.GetParameterValuesResponse:
688 msg = models.GetParameterValuesResponse()
689 param_val_list = []
690 param_val_list.append(
691 cls.get_parameter_value_struct(
692 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.LTE.RAN.RF.DLBandwidth',
693 val_type='string',
694 data='20',
695 ),
696 )
697 param_val_list.append(
698 cls.get_parameter_value_struct(
699 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.LTE.RAN.RF.FreqBandIndicator',
700 val_type='string',
701 data='40',
702 ),
703 )
704 param_val_list.append(
705 cls.get_parameter_value_struct(
706 name='InternetGatewayDevice.ManagementServer.PeriodicInformInterval',
707 val_type='int',
708 data='5',
709 ),
710 )
711 param_val_list.append(
712 cls.get_parameter_value_struct(
713 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.LTE.RAN.CellRestriction.CellReservedForOperatorUse',
714 val_type='boolean',
715 data='false',
716 ),
717 )
718 param_val_list.append(
719 cls.get_parameter_value_struct(
720 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.LTE.RAN.RF.ULBandwidth',
721 val_type='string',
722 data='20',
723 ),
724 )
725 param_val_list.append(
726 cls.get_parameter_value_struct(
727 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.LTE.RAN.RF.ULBandwidth',
728 val_type='int',
729 data='1',
730 ),
731 )
732 param_val_list.append(
733 cls.get_parameter_value_struct(
734 name='InternetGatewayDevice.Services.FAPService.1.X_BAICELLS_COM_LTE.EARFCNDLInUse',
735 val_type='string',
736 data=earfcndl,
737 ),
738 )
739 param_val_list.append(
740 cls.get_parameter_value_struct(
741 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.LTE.RAN.PHY.TDDFrame.SpecialSubframePatterns',
742 val_type='int',
743 data='7',
744 ),
745 )
746 # MME IP
747 param_val_list.append(
748 cls.get_parameter_value_struct(
749 name='InternetGatewayDevice.Services.FAPService.1.FAPControl.LTE.Gateway.S1SigLinkServerList',
750 val_type='string',
751 data='"192.168.60.142"',
752 ),
753 )
754 param_val_list.append(
755 cls.get_parameter_value_struct(
756 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.LTE.EPC.PLMNListNumberOfEntries',
757 val_type='int',
758 data='1',
759 ),
760 )
761 # perf mgmt enable
762 param_val_list.append(
763 cls.get_parameter_value_struct(
764 name='InternetGatewayDevice.FAP.PerfMgmt.Config.1.Enable',
765 val_type='boolean',
766 data='true',
767 ),
768 )
769 param_val_list.append(
770 cls.get_parameter_value_struct(
771 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.LTE.RAN.CellRestriction.CellBarred',
772 val_type='boolean',
773 data='false',
774 ),
775 )
776 param_val_list.append(
777 cls.get_parameter_value_struct(
778 name='InternetGatewayDevice.FAP.PerfMgmt.Config.1.PeriodicUploadInterval',
779 val_type='int',
780 data='300',
781 ),
782 )
783 param_val_list.append(
784 cls.get_parameter_value_struct(
785 name='InternetGatewayDevice.Services.FAPService.1.FAPControl.LTE.AdminState',
786 val_type='boolean',
787 data='false',
788 ),
789 )
790 # Local gateway enable
791 param_val_list.append(
792 cls.get_parameter_value_struct(
793 name='InternetGatewayDevice.DeviceInfo.X_BAICELLS_COM_LTE_LGW_Switch',
794 val_type='boolean',
795 data='0',
796 ),
797 )
798 # Perf mgmt upload url
799 param_val_list.append(
800 cls.get_parameter_value_struct(
801 name='InternetGatewayDevice.FAP.PerfMgmt.Config.1.URL',
802 val_type='string',
803 data='http://192.168.60.142:8081/',
804 ),
805 )
806 param_val_list.append(
807 cls.get_parameter_value_struct(
808 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.LTE.EPC.TAC',
809 val_type='int',
810 data='1',
811 ),
812 )
813 param_val_list.append(
814 cls.get_parameter_value_struct(
815 name='InternetGatewayDevice.Services.FAPService.1.FAPControl.LTE.Gateway.X_BAICELLS_COM_MmePool.Enable',
816 val_type='boolean',
817 data='false',
818 ),
819 )
820 param_val_list.append(
821 cls.get_parameter_value_struct(
822 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.LTE.RAN.PHY.TDDFrame.SubFrameAssignment',
823 val_type='int',
824 data='2',
825 ),
826 )
827 # PCI
828 param_val_list.append(
829 cls.get_parameter_value_struct(
830 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.LTE.RAN.RF.PhyCellID',
831 val_type='int',
832 data='260',
833 ),
834 )
835 # MME port
836 param_val_list.append(
837 cls.get_parameter_value_struct(
838 name='InternetGatewayDevice.Services.FAPService.1.FAPControl.LTE.Gateway.S1SigLinkPort',
839 val_type='int',
840 data='36412',
841 ),
842 )
843 param_val_list.append(
844 cls.get_parameter_value_struct(
845 name='boardconf.ipsec.ipsecConfig.onBoot',
846 val_type='boolean',
847 data='false',
848 ),
849 )
850 param_val_list.append(
851 cls.get_parameter_value_struct(
852 name='InternetGatewayDevice.Services.FAPService.1.X_BAICELLS_COM_LTE.EARFCNULInUse',
853 val_type='int',
854 data='9212',
855 ),
856 )
857 param_val_list.append(
858 cls.get_parameter_value_struct(
859 name='boardconf.status.eepromInfo.div_multiple',
860 val_type='string',
861 data='02',
862 ),
863 )
864 param_val_list.append(
865 cls.get_parameter_value_struct(
866 name='boardconf.status.eepromInfo.work_mode',
867 val_type='string',
868 data='1C000400',
869 ),
870 )
871 param_val_list.append(
872 cls.get_parameter_value_struct(
873 name='InternetGatewayDevice.ManagementServer.PeriodicInformEnable',
874 val_type='int',
875 data='5',
876 ),
877 )
878 msg.ParameterList = models.ParameterValueList()
879 msg.ParameterList.ParameterValueStruct = param_val_list
880 return msg
881
882 @classmethod
883 def get_cavium_object_param_values_response(
884 cls,
885 num_plmns: int,
886 ) -> models.GetParameterValuesResponse:
887 msg = models.GetParameterValuesResponse()
888 param_val_list = []
889 for i in range(1, num_plmns + 1):
890 param_val_list.append(
891 cls.get_parameter_value_struct(
892 name='Device.Services.FAPService.1.CellConfig.LTE.EPC.PLMNList.%d.IsPrimary' % i,
893 val_type='boolean',
894 data='true',
895 ),
896 )
897 param_val_list.append(
898 cls.get_parameter_value_struct(
899 name='Device.Services.FAPService.1.CellConfig.LTE.EPC.PLMNList.%d.CellReservedForOperatorUse' % i,
900 val_type='boolean',
901 data='false',
902 ),
903 )
904 param_val_list.append(
905 cls.get_parameter_value_struct(
906 name='Device.Services.FAPService.1.CellConfig.LTE.EPC.PLMNList.%d.PLMNID' % i,
907 val_type='string',
908 data='00101',
909 ),
910 )
911 param_val_list.append(
912 cls.get_parameter_value_struct(
913 name='Device.Services.FAPService.1.CellConfig.LTE.EPC.PLMNList.%d.Enable' % i,
914 val_type='boolean',
915 data='true',
916 ),
917 )
918 msg.ParameterList = models.ParameterValueList()
919 msg.ParameterList.ParameterValueStruct = param_val_list
920 return msg
921
922 @classmethod
923 def get_object_param_values_response(
924 cls,
925 ) -> models.GetParameterValuesResponse:
926 msg = models.GetParameterValuesResponse()
927 param_val_list = []
928 param_val_list.append(
929 cls.get_parameter_value_struct(
930 name='Device.Services.FAPService.1.CellConfig.LTE.EPC.PLMNList.1.IsPrimary',
931 val_type='boolean',
932 data='true',
933 ),
934 )
935 param_val_list.append(
936 cls.get_parameter_value_struct(
937 name='Device.Services.FAPService.1.CellConfig.LTE.EPC.PLMNList.1.CellReservedForOperatorUse',
938 val_type='boolean',
939 data='false',
940 ),
941 )
942 param_val_list.append(
943 cls.get_parameter_value_struct(
944 name='Device.Services.FAPService.1.CellConfig.LTE.EPC.PLMNList.1.PLMNID',
945 val_type='string',
946 data='00101',
947 ),
948 )
949 param_val_list.append(
950 cls.get_parameter_value_struct(
951 name='Device.Services.FAPService.1.CellConfig.LTE.EPC.PLMNList.1.Enable',
952 val_type='boolean',
953 data='true',
954 ),
955 )
956 msg.ParameterList = models.ParameterValueList()
957 msg.ParameterList.ParameterValueStruct = param_val_list
958 return msg
959
960 @classmethod
961 def get_qafb_object_param_values_response(
962 cls,
963 ) -> models.GetParameterValuesResponse:
964 msg = models.GetParameterValuesResponse()
965 param_val_list = []
966 param_val_list.append(
967 cls.get_parameter_value_struct(
968 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.LTE.EPC.PLMNList.1.IsPrimary',
969 val_type='boolean',
970 data='true',
971 ),
972 )
973 param_val_list.append(
974 cls.get_parameter_value_struct(
975 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.LTE.EPC.PLMNList.1.CellReservedForOperatorUse',
976 val_type='boolean',
977 data='false',
978 ),
979 )
980 param_val_list.append(
981 cls.get_parameter_value_struct(
982 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.LTE.EPC.PLMNList.1.PLMNID',
983 val_type='string',
984 data='00101',
985 ),
986 )
987 param_val_list.append(
988 cls.get_parameter_value_struct(
989 name='InternetGatewayDevice.Services.FAPService.1.CellConfig.LTE.EPC.PLMNList.1.Enable',
990 val_type='boolean',
991 data='true',
992 ),
993 )
994 msg.ParameterList = models.ParameterValueList()
995 msg.ParameterList.ParameterValueStruct = param_val_list
996 return msg
997
998 @classmethod
999 def get_reboot_response(cls) -> models.RebootResponse:
1000 return models.RebootResponse()