3.12.2 Prefixes
In order to differentiate the ONNET and OFFNET traffic and to be able to set a separate routing for each, there is a special prefix being added to one of the types. Which one depends on particular deployment but in general the prefix int is used to distinguish the OFFNET calls and messages.
When a call is made to an OFFNET number the softphones adds int to the number before it is sent to voipswitch. For example if the number is 44208745690 (after normalization to E164 format), the number will be changed to int44208745690.
If the number 44208745690 belongs to the RCS contact it may be also the user’s SIP login[1]. For ONNET call the number will come to voipswitch as it is, without a prefix. If we did not have a prefix for OFFNET there would be no way of differentiating the routing.
By default, in RCS deployments, all accounts have the dialing plan rule set to
DP:int-> OR onnet
This rule makes voipswitch strip the int prefix if exists, otherwise add onnet prefix to the number. Dialing plan has an entry for onnet which points to the Retail client/User lookup function (in older VSM versions it is Map to username).
The lookup function search for users with login equal the phone number. If there is a match the call is directed to that user.
OFFNET calls, as they come with prefix int, are stripped the int first so they are in E164 format. Then the voipswitch looks for entries for matching prefixed in the dialing plan.
You can wonder why the int is added to OFFNET on the app and then stripped on the server. Instead we could add “onnet” prefix to ONNET calls so that we would not need any modification on the voipswitch side. It is true and so we can do now, however in the past we used the approach with int and had a separate dialing plan entries beginning with int. All other entries were for ONNET. As we introduced alphanumeric logins the approach became difficult to manage as it required entries in the dialing plan for all possible characters. To eliminate this need we added the dialing plan rule which now groups all ONNET calls under single entry in the dialing plan. Adding the rule does not require any changes in the softphones which can be problematic for existing services.