Prefix Based Barring provides a mechanism for an operator to augment the implicit or explicit condition of a MMTelOCB barring rule, so that the rule will also apply when the called party number matches some prefix with optional length criteria .
What is Prefix Based Barring
Prefix Based Barring is an enhancement to Outgoing Call Barring, to trigger certain barring treatments based on the dialled number.
How to Configure Prefix Based Barring
${platform.operator.name}_PrefixBarring_AddressListEntryTable
An address list called ${platform.operator.name}_PrefixBarring_AddressListEntryTable
is used to classify the called number for prefix based barring.
It is an extension of the standard Address List Entry Profile and has the same structure with the following additional field.
Parameter | Type | Description |
---|---|---|
… |
… |
… |
NumberClassification |
String[] |
A list of 1 or more items where each is the name of a |
PrefixBarringClassificationsTable
The prefix barring address list references a classification for the matching prefixes.
Details of how that classification is treated are stored in PrefixBarringClassificationsTable
profile table.
Attribute Name | Type | Default | Description |
---|---|---|---|
ClassificationID |
String |
n/a |
The identifier of this classification, and the name of this profile. |
DisplayName |
String |
n/a |
User readable name for the classification that will be used to select it in the address list. |
MatchMinLength |
Integer |
no minimum length criteria |
The minimum number of digits in dial string to match this classification. |
MatchMaxLength |
Integer |
no maximum length criteria |
The maximum number of digits in dial string to match this classification. |
MatchInternational |
boolean |
false |
When true, this classification will only match international targets. |
BarringTreatment |
String |
n/a |
How to treat matching calls. See below. |
OverrideOCBAnnouncement |
boolean |
n/a |
When set to true |
AnnouncementID |
int |
n/a |
An announcement to be played when a matching number is called and barred and |
Barring Treatments
BarringTreatment | Description |
---|---|
OperatorAllow |
The call will not be barred. |
OperatorBar |
The call will be barred if no OSB rules or |
OSBType1 |
Operator Specific barring rules will be processed as though the |
OSBType2 |
Operator Specific barring rules will be processed as though the |
OSBType3 |
Operator Specific barring rules will be processed as though the |
OSBType4 |
Operator Specific barring rules will be processed as though the |
PremiumRateInformation |
Premium-rate communication barring options will be processed as though the call was classified with |
PremiumRateEntertainment |
Premium-rate communication barring options will be processed as though the call was classified with |
Behaviour
Before other OCB rules are applied, the feature extracts the target from the Request URI. The target consists of the dialled digit string, and any international number indicator. If no digits can be found ODB and OCB proceed as normal.
The target will have had normalisation applied.
If the target is international but within the home country code, the home country code prefix is stripped from the digits, and the target is treated as national.
The feature attempts longest prefix matching of the target’s digits in the address list. If no address list entry is found ODB and OCB proceed as normal.
If an address list entry is found the NumberClassification
values are used to retrieve corresponding profiles from the PrefixBarringClassificationsTable
.
For each of these classification profiles in specified order:
-
If the national/international indicator of the target conflicts with the classification’s
MatchInternational
value, that profile is discarded. -
If the number of digits in the target conflicts with the
MatchMinLength
orMatchMaxLength
values in the profile, that profile is discarded.
If there are no remaining profiles ODB and OCB proceed as normal.
If more than one remaining profile has the same BarringTreatment
value, the stats counter FoundConflictingPrefixBarringClassifications
is incremented and all except the first of those profiles are discarded.
This avoids having more than one applicable announcement configuration for an applied rule.
If one of the remaining profiles has a treatment of OperatorAllow
, the call is allowed and the OCB feature completes.
If the subscriber has ODB data provisioned, then Operator-specific ODB rules are applied, except the condition of each rule is assumed true if any of the remaining profiles has a BarringTreatment
value corresponding to the OSB rule type.
If any of the remaining profiles has a treatment of OperatorBar
that takes precedence over any Operator-specific ODB rules that bar, but not those that whitelist.
The classification with OperatorBar
treatment may override the announcement settings.
If an OSB rule bars the call due to a prefix barring treatment, and does not retarget it, then the profile may override the announcement settings.
Premium-rate communication barring options are then evaluated against PremiumRateInformation
and/or PremiumRateEntertainment
BarringTreatment
values.
If the call is barred due to any of these, then the profile may override the announcement settings.
See Bar Outgoing Premium-Rate Communication for more information on premium-rate communication barring.
If the subscriber has no ODB data, then any profiles with a treatment of OperatorBar
will be applied, but profiles with OSB rule types or premium-rate communication barring will have no effect.
If the call has not been barred or allowed, ODB and OCB proceed as normal.