Create a Phone Number Pattern Match Normalizer

A phone number pattern match normalizer defines a list of patterns to compare to a phone number in an incoming network message during rating. Patterns include actual digits, an asterisk wildcard that is valid at the end of a pattern, a question mark wildcard that is valid at any location in a pattern, and choices and ranges, which are also valid at any location in a pattern.

Before you begin

My MATRIXX must contain the normalizer template that you want to use for this normalizer that implements the Phone Number Pattern Match normalization algorithm.

About this task

The first matching pattern in the normalizer is used to determine whether the incoming phone number is a match. To reorder the list of patterns, drag the list items into the desired order.

Procedure

  1. In Normalizers, click New Normalizer.
  2. In Create New Normalizer:
    1. In Name, enter a unique name.
    2. (Optional) In Description, enter descriptive information about the item.
    3. (Optional) In External ID, enter any alphanumeric character to serve as a unique ID on this pricing object. The external ID can be used for any reason that is meaningful to your implementation of MATRIXX Engine. External IDs are saved to the pricing configuration file and loaded into the Pricing database.
    4. From the Normalizer Template list, select the name of the normalizer template that implements the normalization algorithm you want to use for this normalizer.
    5. Click Create.
  3. In Start Date/Time, use the date picker to select the date on which the object becomes active in the Pricing database and is first available for use, or enter the date in the format YYYY-MM-DD. Optionally, enter a time for when the object becomes active. The default start date/time is 2000–01–01 00:00:00. If applicable, the range in which the start date/time must fall is listed. For example:
    • Select a date on or before 2021–12–01.
    • Select a date on or after 2020–01–27.
    • Select a date between 2000–01–02 and 2021–10–04.
    Note: If you are creating a new revision of this object, the start date/time must be after the start date/time of the preceding revision and before the start date/time of the next revision. If you are making a copy of this object, the start date/time is not copied. The new object is the first revision, so it has the default start date/time of 2000–01–01 00:00:00.
  4. Skip the Value If Field not Present and Default settings for now. These lists are populated with the normalizer parameter values that get defined later in this procedure.
  5. If any metadata fields were defined in the normalizer template, they are listed under Default Metadata. For each piece of metadata, enter the fixed value to be associated with a result. The value entered must correspond to the configured data type. This value is used in the following ways:
    • No default value is defined in the normalizer template and --default-- is used to define the metadata value in the normalizer instance using the Edit Normalizer Values dialog.
    • The default value is defined in the normalizer template under the Values table as --default--.
  6. Add values to your normalizer's Value List by selecting a normalizer value list (step 7), entering values manually (step 8), or by importing a CSV file (step 9).
    Note: If using a normalizer value list, metadata is not supported. Therefore, any metadata listed under Default Metadata in Edit Normalizer does not display as columns in the Values table in Edit Normalizer Values if Use Normalizer Value List is selected.
  7. To edit values by selecting a normalizer value list:
    1. Click or hover over the Rows menu icon and select Edit Values to open Edit Normalizer Values.
    2. If the normalizer already has values defined, click Create a Normalizer Value List to save the list of manually created values as a normalizer value list. Enter a unique name and click Create. The new normalizer value list is added to the Normalizer Value List drop-down menu and can be selected for this and other normalizers.
      Important: Any existing values in the normalizer that are not saved as part of creating a normalizer value list are deleted after you click Save.
    3. Check Use Normalizer Value List to enable the menu. This disables the option to add a value manually by clicking New Value. Any existing values assigned to the normalizer are removed.
    4. Select a normalizer value list from the drop-down menu. Values from the selected list are displayed in the table.
  8. If the normalizer template does not define any normalizer values and you are not using a normalizer value list, then you can define the values within the normalizer instance by performing the following steps for each parameter value to create:
    1. Click or hover over the Rows menu icon and select Edit Values to open Edit Normalizer Values.
    2. Click New Value.
      A row is added to the list with an ID that is used internally to look up the parameter value during rating. Any metadata defined in the normalizer template is displayed as columns in the Values table.
    3. Click the Name cell in the row and enter a descriptive name for the range.
      For example, for a pattern that matches Toll Free numbers, name the parameter Toll Free.
    4. Click the Description cell in the row and enter information about the purpose of the parameter value.
    5. To assign a color to the parameter that displays as the background color for each row in the Rows table, do one of the following:
      • Hover your mouse over the Color cell in the row and select a color from the color palette.
      • Click the Color cell in the row and assign a color to the value by setting the color's hue, saturation, and lightness. The following methods are available:
        • Use the eyedropper tool to select any color on your screen or select a color on the color strip to pick a main color. Then use the color gradient area to fine tune the color.
        • Enter the RGB/HSL/Hex values of a certain color if they are known.
    6. If metadata columns are displayed and no values were defined for the metadata in the normalizer template, enter the value for the metadata. Metadata can be associated with each result value. The value entered must correspond to the configured data type.
      Default and non-values can be defined as follows:
      • Enter --none-- if no value is assigned to this field.
      • Enter --default-- to use the default value for this field.
      For example:
      1. The test1 metadata has a default value of 1, and the test2 metadata has a default value of 2 as defined in the Default Metadata table in Edit Normalizer.
      2. In Edit Normalizer Values, the string value for test1 is configured as --default--, and test2 is configured as --none--.
      3. When a row is added to the Rows table, test1 has the value of 1 and test2 is empty.
      If actual values are defined for the metadata in Edit Normalizer Values, then those values are displayed in the metadata columns in the Rows table.
  9. To add values by importing a CSV file, see the discussion about importing/exporting normalizer row values.
  10. Click Save.
  11. Perform the following steps for each parameter string you defined.
    1. Click or hover over the Rows menu icon and select Add Row.
      • If the normalizer is using a normalizer value list, the first item in the list is added.
      • If the normalizer is not using a normalizer value list, an empty row is added.
      Any metadata defined in the normalizer template is displayed as columns in the Rows table.
    2. Click the cell under Name and select a parameter from the list.
    3. Click the cell under Value and enter the pattern for the phone number.
      Note: Do not use the Validate option to check the contents of the parameter list. Any syntax errors are reported during pricing compilation.
      Valid phone number values for a pattern are 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, A, B, C, D, E, #, and *. Because the * character is also used as a wild card in pattern matching strings, if the string to match has the * character, it must be escaped as follows: ''\*". For more information about how to define phone number patterns, see the discussion about specifying phone number patterns.
    4. Repeat these steps as needed. When adding or editing a row, a blue bar appears by the row to indicate that changes have been made. When the changes are saved, the UI automatically takes you to the newly added or updated row in the table after resorting the rows by name.
  12. In Value If Field Not Present, select a parameter value to use when the field value is not set at the time of rating.
  13. (Optional) In Default, select a default parameter value to use when the incoming value does not match any of the defined values. If your normalizer has no rows, it must contain a default value.