Adding Custom AVPs

Simple AVP Tag Format

The format must be used to define new custom AVP:
<avp name="<avpName>"
display="<displayText>"
[vendor-id="<vendorId>"]
code="<code>"
type="<type>"/>
where
  • name must be a unique AVP identifier in the dictionary file, if the vendorId is present then the name should be preceded by vendor-id
  • display is the text displayed for this AVP (usually the same as name)
  • vendor-id is optional and, if present, then must be either defined in the custom dictionary file, or must be one of the predefined ones
  • type must be a predefined type:
    • OctetString
    • Integer32, Unsigned32, Integer64, Unsigned64
    • UTFString
    • IPAddress
    • TBCD
    • Enumerated
    • Grouped
Example:
<avp name = "3GPP:3GPP-IMSI"
display="3GPP-IMSI"
code="1"
vendor-id="3GPP"
type="UTF8String"/>

Enumerated AVP Tag Format

The XML tag format must be used to define new enumerated AVP
:
<avp name="<avpName>"
display="<displayText>" 
[vendor-id="<vendorId>"] 
code="<code>"
type=" Enumerated">
<enum code="<value>" name="<enumDisplayText>"/>
. . .
</avp>
where
  • name, display, vendor-id, code, and type are the same as in the case of simple AVP format
  • code is the numeric value
  • name is a text which is displayed in the full decoding window. If the name value is not defined, the decoder displays just the simple numeric code value.

Example:

<avp name="Framed-Routing" display="Framed-Routing" code="10" type="Enumerated" >
    <enum code="0" name="None"/>
    <enum code="1" name="Broadcast"/>
    <enum code="2" name="Listen"/>
    <enum code="3" name="Broadcast-Listen"/>
</avp>

Grouped AVP Tag Format

The XML tag format must be used to define new custom grouped AVP:
<avp name="<avpName>"
display="<displayText>"
[vendor-id="<vendorId>"]
code="<code>"
type="Grouped">
<avp ref="<refAvpName>"/>
. . .
</avp>
where
  • name, display, vendor-id, code, and type are the same as in the case of simple AVP format
  • avp contains the ref name, which must be the name of an existing AVP defined in the custom dictionary

Example:

<avp name="3GPP:User-Identity" display="User-Identity" code="700" vendor-id="3GPP" type="Grouped">
    <avp ref="Public-Identity"/>
    <avp ref="3GPP:MSISDN"/>
    <avp ref="3GPP:Public-Identity"/>
</avp>