3. AVP's names and aliases

The AVP core (provided by OpenSER core) defines two types of AVPs: with numerical ID and with string names. Each of them has its own advantage: the ID AVPs are faster to manipulate internally (no string operation involved); the name AVPs are easier to use (by nature, humans remember more easier names than numbers). AVPOPS allows the usage of both types of AVPS, using the following grammar:

avp_name = string | ('I'|'i')':'ID | ('S'|'s')':'string

Examples:

To combine the benefits from both types of AVPS, AVPOPS module allows you to define aliases for AVP names. So you can use an ID avp - which is faster, but refer it by alias - as easy to remember string. The substitution of aliases with real AVP names is done only once, at configuration script compilation (at startup).

alias_definition = alias'='avp_name

alias = no_space_string

When used, the aliases are invoked with '$' sign in front (to avoid overlapping with predefined strings or AVP's name).