Number Translation
Number Translation
Prior to having their initial Diameter request constructed, number translation may need to be applied for both billing and call connection.
Number translation may be applied to various fields in the received call trigger. Rules are applied in the order listed and the first match made is processed. When a rule matches: 1. The translated number is sent in place of the source number to the OCS, as appropriate, and 2. Should the call be allowed to proceed by the OCS (or by other DSG functionalities), the translated number is sent in a Connect operation to the network.
If a rule does not specify any matching criteria, it will always match. This would be an unusual use of number translation, however.
Number translation occurs after tag assignment and billing bypass handling.
Configuration Details
Each rule can support the following attributes:
(Default: `true`) | | `forwarding` | Boolean | Whether this rule applies for [MF calls](/applications/dsg_scp.html#traffic-type-determination).
(Default: `true`) | | `terminating` | Boolean | Whether this rule applies for [MT calls](/applications/dsg_scp.html#traffic-type-determination).
(Default: `true`) | | `mandatory` | Boolean | Whether this translation must complete successfully for the call to continue. If `false`, the call will be allowed to continue if the translation fails (e.g. due to a missing source value). If `true`, [Error Handling Rules](/config/dsg_scp/diameter/error_handling.html) will be used to end the call.
*(Default = `false`, continue on failure)* | | (other available fields) | (various) | Any number of selector rule [available fields](/config/dsg_scp/diameter/selector_rules.html#available-fields). |
Note that, unlike other selector rules, the call state selectors at_initial,
at_update, and at_terminate are not used, as number translation can only occur at the start of a call.
Number Sources
The following number sources are available to attempt number translation on:
| Attribute | Source | Description |
|---|---|---|
calling |
String | The normalised InitialDP → callingPartyNumber decoded digits. |
called |
String | The normalised InitialDP → calledPartyNumber decoded digits, if available. Otherwise, the normalised InitialDP → calledPartyBCDNumber decoded digits. |
redirecting |
String | The normalised InitialDP → redirectingPartyID decoded digits. |
| (tag name) | String | A configured tag name. |