blob: ea025bf7c2289a76ac4bff25fefcf56094367caa [file] [log] [blame]
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -07001/*
2 * Copyright (c) 2018 - present. Boling Consulting Solutions (bcsw.net)
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 * http://www.apache.org/licenses/LICENSE-2.0
8 * Unless required by applicable law or agreed to in writing, software
9 * distributed under the License is distributed on an "AS IS" BASIS,
10 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 * See the License for the specific language governing permissions and
12 * limitations under the License.
13 */
14/*
15 * NOTE: This file was generated, manual edits will be overwritten!
16 *
17 * Generated by 'goCodeGenerator.py':
18 * https://github.com/cboling/OMCI-parser/README.md
19 */
20package generated
21
22import "github.com/deckarep/golang-set"
23
24const RtpProfileDataClassId ClassID = ClassID(143)
25
26var rtpprofiledataBME *ManagedEntityDefinition
27
28// RtpProfileData (class ID #143)
29// This ME configures RTP. It is conditionally required for ONUs that offer VoIP service. If a non-
30// OMCI interface is used to manage VoIP, this ME is unnecessary.
31//
32// An instance of this ME is created and deleted by the OLT. An RTP profile is needed for each
33// unique set of attributes.
34//
35// Relationships
36// An instance of this ME may be associated with one or more VoIP media profile MEs.
37//
38// Attributes
39// Managed Entity Id
40// Managed entity ID: This attribute uniquely identifies each instance of this ME. (R, setbycreate)
41// (mandatory) (2 bytes)
42//
43// Local Port Min
44// Local port min: This attribute defines the base UDP port that should be used by RTP for voice
45// traffic. The recommended default is 50000 (R, W, set-by-create) (mandatory) (2 bytes)
46//
47// Local Port Max
48// Local port max: This attribute defines the highest UDP port used by RTP for voice traffic. The
49// value must be greater than the local port minimum. The value 0 specifies that the local port
50// maximum be equal to the local port minimum. (R, W, set-by-create) (optional) (2 bytes)
51//
52// Dscp Mark
53// DSCP mark: Diffserv code point to be used for outgoing RTP packets for this profile. The
54// recommended default value is expedited forwarding (EF) = 0x2E. (R, W, setbycreate) (mandatory)
55// (1 byte)
56//
57// Piggyback Events
58// (R, W, setbycreate) (mandatory) (1 byte)
59//
60// Tone Events
61// (R, W, setbycreate) (mandatory) (1 byte)
62//
63// Dtmf Events
64// (R, W, setbycreate) (mandatory) (1 byte)
65//
66// Cas Events
67// (R, W, setbycreate) (mandatory) (1 byte)
68//
69// Ip Host Config Pointer
70// IP host config pointer: This optional pointer associates the bearer (voice) flow with an IP host
71// config data or IPv6 host config data ME. If this attribute is not present or is not populated
72// with a valid pointer value, the bearer flow uses the same IP stack that is used for signalling,
73// indicated by the TCP/UDP pointer in the associated SIP agent or MGC config data. The default
74// value is 0xFFFF, a null pointer. (R, W) (optional) (2 bytes)
75//
76type RtpProfileData struct {
77 ManagedEntityDefinition
78 Attributes AttributeValueMap
79}
80
81func init() {
82 rtpprofiledataBME = &ManagedEntityDefinition{
83 Name: "RtpProfileData",
84 ClassID: 143,
85 MessageTypes: mapset.NewSetWith(
86 Create,
87 Delete,
88 Get,
89 Set,
90 ),
91 AllowedAttributeMask: 0XFF00,
92 AttributeDefinitions: AttributeDefinitionMap{
93 0: Uint16Field("ManagedEntityId", 0, mapset.NewSetWith(Read, SetByCreate), false, false, false, false, 0),
94 1: Uint16Field("LocalPortMin", 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, false, 1),
95 2: Uint16Field("LocalPortMax", 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, true, false, 2),
96 3: ByteField("DscpMark", 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, false, 3),
97 4: ByteField("PiggybackEvents", 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, false, 4),
98 5: ByteField("ToneEvents", 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, false, 5),
99 6: ByteField("DtmfEvents", 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, false, 6),
100 7: ByteField("CasEvents", 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, false, 7),
101 8: Uint16Field("IpHostConfigPointer", 0, mapset.NewSetWith(Read, Write), false, false, true, false, 8),
102 },
103 }
104}
105
106// NewRtpProfileData (class ID 143 creates the basic
107// Managed Entity definition that is used to validate an ME of this type that
108// is received from the wire, about to be sent on the wire.
109func NewRtpProfileData(params ...ParamData) (*ManagedEntity, OmciErrors) {
110 return NewManagedEntity(rtpprofiledataBME, params...)
111}