When a call arrives at a Transformation Table, the incoming message contains a number of Informational Elements (IEs). These IEs include important call information such as: Called Address/Number, Called Extension, Calling Name, Redirecting Number and others.
Each Informational Element is processed row by row in the Transformation Table.
In an incoming call processed by the above transformation table:
Once all the transformations are complete, the Mandatory/Optional Match Type determines if the Transformation Table, and by extension the Call Route, is successful or failed.
The Mandatory/Optional Match Type configuration determines whether a particular transformation is critical to the success of the Transformation Table/Call Route. Any single transformation entry which is deemed critical to successfully routing a call should be marked Mandatory, the remainder should be marked Optional.
It is important to note that the Mandatory/Optional Match Type configuration works on a per Input Field Type basis. The Mandatory/Optional settings for Called Number are evaluated separately from Redirecting Number. We show some examples below to highlight this very important distinction.
The most basic scenario is the scenario in which a Transformation Table contains only one entry, and that entry is a mandatory entry, as shown here.
When the Called Number is processed against this single transformation, the Called Number must match the regex value in the Input Field Value. If the Input Field Value does not match the Called Number, this transformation will fail, and so will the route entry that called this transformation talbe
When there are multiple mandatory entries in a transformation table, each Input Field Type is evaluated independently for its Match Type.
In the case above, the first transformation entry, Calling Address/Number, has its Match Type set to Mandatory. The second transformation entry, Calling Name, also has its Match Type set to Mandatory. Both of these transformations must match: The calling number must be +15105744912 and the Calling Name must be John Doe, otherwise, the table fails.
Each Input Field Type is evaluated independently. In the case above, the Mandatory setting for Calling Address/Number is evaluated separately from Calling Name.
As with Mandatory matching, Optional matches are performed per Input Field Type. At least ONE row for EACH Input Field Type must match, otherwise the table fails (see the figure below).
In this example, if the Calling Name is John Doe, Mary Kay, or Bill Smith, the table is true (passed).
If a Transformation Table only contains multiple entries for a single Input Field Type (e.g. Calling Name above), and all of entries have a Match Type of Optional, then the table is true if any one of the transformations succeed.
In the example above, there is only one transformational entry for Calling Extension and Calling Address/Number Input Field Types. If there is only one transformation for a particular Input Field Type, then the Match Type setting for that entry is irrelevant. Each Input Field Type must have at least one successful transformation. If there is only one transformation entry for a particular Input Field Type, like the Calling Extension above, then that transformation must be successful. In this case of a sole Input Field Type, the configuration of the Match Type, either Mandatory or Optional, has no bearing: that tranformation must succeed or the tranformation table will be false (failed).
When a Transformation table has a mixture of both Optional and Mandatory matching criteria:
In the example above, the Redirecting Number transformation must be successful because it is the only translation entry for the Redirecting Number Input Field Type; the Match Type for Redirecting Number is irrelevant.
There are several transformation entries for Called Address/Number Input Field Type and those all have a Match Type set to Optional. In addtion to the outcome evaluation of the Redirecting Number, at least one of the Called Number transformations must be successful for the translation table to be true (passed)..
The table below is the same as the table above, with an additional Called Number transformation entry at the bottom of the table.
The addtional Mandatory Called Address/Number means only the Mandatory translation must match the transformation table to possibly be true, with respect to the other Called Number Optional translation entries. Of course, the Redirecting Number transformation entry must also be evaluated in order to determine whether the transformation table will be ultimately true (pass) or false (fail).