Call Normalization rules act as an intelligent pre-filter between subscriber endpoints and the PBX Outbound Routes.
Different devices originate calls with completely different user habits:
desktop / sip): Users frequently dial a trunk access prefix (0 in Europe/Turkey, 9 in North America) before dialing an outside number (00537... or 91212...).mobile / mob-webrtc): Users tap contacts stored in their address book in full E.164 (+90..., +1..., +49...) or 10-digit national format (537...). Mobile users never enter an outside trunk code.web / webrtc): Browser-based agent softphone and CRM click-to-dial calls.Without ingress normalization, supporting both desk phones and mobile apps required duplicated or conflicting outbound routes. With normalization rules, the dialed string is shaped into a standard format first.
To guarantee that call centers, queues, faxes and IVRs are never disrupted:
from-internal-pbx-ortak, featurecodes-pbx). Numbers like 101, 1002, *97 (Voicemail), 7000 (IVR) never reach normalization rules.from-internal-desktop → includes sub-norm-desktop-Nfrom-internal-mobile → includes sub-norm-mobile-Nfrom-internal-web → includes sub-norm-web-Nfrom-internal-outbound-N. A defense-in-depth hop guard (__AIPBX_NORM_COUNT > 3) acts as a fail-safe circuit breaker, guaranteeing that external dialplan loops or macro re-entrancy can never cause infinite recursion.00 + country code, so with this rule 0049... would become 049.... Switch it on only when your desk phone users dial 0 for an outside line. Faxes and call forwarding also use the desk phone rules.+90 → 0, 5XXXXXXXXX → 05XXXXXXXXX) are loaded with Load defaults for the selected country. An upgrade switches them off on installations that are not set up for that country._+90. beats _+X.), not the row order. The simulator shows the rule that really applies.On the Trunks → Call Normalization (/dialplan-rules) page, the interactive simulator lets administrators input any test number (e.g. +905379902352 or 005379902352), select the target device type, and inspect the real-time pattern match and resulting number.